1 | /*! \file DoubleMatParam.h
|
---|
2 | * \brief: header file for triavertexinput object
|
---|
3 | */
|
---|
4 |
|
---|
5 |
|
---|
6 | #ifndef _DOUBLEMATPARAM_H_
|
---|
7 | #define _DOUBLEMATPARAM_H_
|
---|
8 |
|
---|
9 | /*Headers:*/
|
---|
10 | /*{{{1*/
|
---|
11 | #include "./Param.h"
|
---|
12 | #include "../include/types.h"
|
---|
13 | #include "../shared/shared.h"
|
---|
14 | #include "../include/typedefs.h"
|
---|
15 | #include "../include/macros.h"
|
---|
16 | /*}}}*/
|
---|
17 |
|
---|
18 | class DoubleMatParam: public Param{
|
---|
19 |
|
---|
20 | private:
|
---|
21 | /*just hold 3 values for 3 vertices: */
|
---|
22 | int enum_type;
|
---|
23 | IssmDouble* value;
|
---|
24 | int M;
|
---|
25 | int N;
|
---|
26 |
|
---|
27 | public:
|
---|
28 | /*constructors, destructors: {{{1*/
|
---|
29 | DoubleMatParam();
|
---|
30 | DoubleMatParam(int enum_type,IssmDouble* value,int M,int N);
|
---|
31 | ~DoubleMatParam();
|
---|
32 | /*}}}*/
|
---|
33 | /*Object methods: {{{1*/
|
---|
34 | Object* copy();
|
---|
35 | void DeepEcho();
|
---|
36 | void Demarshall(char** pmarshalled_dataset);
|
---|
37 | void Echo();
|
---|
38 | int Enum();
|
---|
39 | int Id();
|
---|
40 | void Marshall(char** pmarshalled_dataset);
|
---|
41 | int MarshallSize();
|
---|
42 | int MyRank();
|
---|
43 | /*}}}*/
|
---|
44 | /*Param methods: {{{1*/
|
---|
45 | int EnumType(){return enum_type;}
|
---|
46 | void GetParameterValue(bool* pbool){ISSMERROR("DoubleMat param cannot return a bool");}
|
---|
47 | void GetParameterValue(int* pinteger){ISSMERROR("DoubleMat param cannot return an integer");}
|
---|
48 | void GetParameterValue(double* pdouble){ISSMERROR("DoubleMat param cannot return a double");}
|
---|
49 | void GetParameterValue(char** pstring){ISSMERROR("DoubleMat param cannot return a string");}
|
---|
50 | void GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("DoubleMat param cannot return a string arrayl");}
|
---|
51 | void GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("DoubleMat param cannot return a double array");}
|
---|
52 | void GetParameterValue(Vec* pvec){ISSMERROR("DoubleMat param cannot return a Vec");}
|
---|
53 | void GetParameterValue(Mat* pmat){ISSMERROR("DoubleMat param cannot return a Mat");}
|
---|
54 | char* GetParameterName(void);
|
---|
55 | void SetMatlabField(mxArray* dataref);
|
---|
56 | /*}}}*/
|
---|
57 | };
|
---|
58 | #endif /* _DOUBLEMATPARAM_H */
|
---|