Source

enzo-dev-problem-types / src / enzo / InitializationKernel.h

Full commit
/***********************************************************************
/
/  KERNELS FOR INITIALIZATION OF DATA
/
/  written by: Matthew Turk, Devin Silvia
/  date:       January 2012
/
/  PURPOSE:
/
************************************************************************/
#ifdef NEW_PROBLEM_TYPES

#include <string>

class FieldContainer;
class InitializationKernel
{
    public:

        InitializationKernel() {};
        virtual void apply(FieldContainer &fields,
                   FLOAT x, FLOAT y, FLOAT z,
                   FLOAT dx, FLOAT dy, FLOAT dz) = 0;

};

class InitializationKernelConstant : public InitializationKernel
{
    
    public:
        InitializationKernelConstant(FieldContainer *constants, int additive);
        void apply(FieldContainer &fields,
                   FLOAT x, FLOAT y, FLOAT z,
                   FLOAT dx, FLOAT dy, FLOAT dz);

    private:
        FieldContainer *constants;
        int additive;
};

#endif