InternalFields_CartProcess.hh 1.34 KB
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * File:   InternalFieldProcess.hh
 * Author: Furkan
 *
 * Created on July 5, 2022, 4:14 PM
 */

#ifndef INTERNALFIELDS_CARTPROCESS_HH
#define INTERNALFIELDS_CARTPROCESS_HH

#include "SingleParamProcess.hh"
#include "InternalFields.hh"
#include "libcon2020.h"

namespace AMDA
{
    namespace Parameters
    {

        class InternalFields_CartProcess : public AMDA::Parameters::SingleParamProcess_CRTP<InternalFields_CartProcess>
        {
        public:
            // InternalFieldProcess(void);
            InternalFields_CartProcess(Parameter &parameter);
            InternalFields_CartProcess(const InternalFields_CartProcess &pProcess, Parameter &pParameter);
            virtual ~InternalFields_CartProcess();

            /**
             * @overload DataWriter::init()
             */
            TimeStamp init();

        protected:
            std::string _processType;
            Con2020 con2020;

        private:
            double *mui_, *irho_, *r0_, *r1_, *d_, *xt_, *xp_, *disctilt_, *discshift_;
            char eqtype_[9];
            bool *Edwards_, *ErrChk_;
            bool *CartIn_, *CartOut_;
        };
    }
}
#endif /* INTERNALFIELDS_CARTPROCESS_HH */