1 | /*! \file DoubleElementResult.h
|
---|
2 | * \brief: header file for IssmDouble result object
|
---|
3 | * A IssmDouble result object is just derived from a DoubleInput object, with additional time and step information.
|
---|
4 | */
|
---|
5 |
|
---|
6 |
|
---|
7 | #ifndef _DOUBLEELEMENTRESULT_H_
|
---|
8 | #define _DOUBLEELEMENTRESULT_H_
|
---|
9 |
|
---|
10 | /*Headers:*/
|
---|
11 | /*{{{*/
|
---|
12 | #include "../Inputs/Input.h"
|
---|
13 | #include "../../../include/include.h"
|
---|
14 | class Parameters;
|
---|
15 | /*}}}*/
|
---|
16 |
|
---|
17 | class DoubleElementResult: public ElementResult{
|
---|
18 |
|
---|
19 | private:
|
---|
20 | int enum_type;
|
---|
21 | IssmDouble value;
|
---|
22 | int step;
|
---|
23 | IssmDouble time;
|
---|
24 |
|
---|
25 | public:
|
---|
26 |
|
---|
27 | /*DoubleElementResult constructors, destructors: {{{*/
|
---|
28 | DoubleElementResult();
|
---|
29 | DoubleElementResult(int enum_type,IssmDouble value,int step,IssmDouble time);
|
---|
30 | ~DoubleElementResult();
|
---|
31 | /*}}}*/
|
---|
32 | /*Object virtual functions definitions:{{{ */
|
---|
33 | void Echo();
|
---|
34 | void DeepEcho();
|
---|
35 | int Id();
|
---|
36 | int ObjectEnum();
|
---|
37 | Object* copy();
|
---|
38 | /*}}}*/
|
---|
39 | /*ElementResult virtual functions definitions: {{{*/
|
---|
40 | ElementResult* SpawnTriaElementResult(int* indices);
|
---|
41 | IssmDouble GetTime(void){return time;};
|
---|
42 | int GetStep(void){return step;};
|
---|
43 | void ProcessUnits(Parameters* parameters);
|
---|
44 | int NumberOfNodalValues(void);
|
---|
45 | void PatchFill(int row, Patch* patch);
|
---|
46 | /*}}}*/
|
---|
47 | /*DoubleElementResult management: {{{*/
|
---|
48 | int InstanceEnum();
|
---|
49 | void GetVectorFromResults(Vector<IssmDouble>* vector,int* doflist,int* connectivitylist,int numdofs);
|
---|
50 | void GetElementVectorFromResults(Vector<IssmDouble>* vector,int dof);
|
---|
51 | /*}}}*/
|
---|
52 | };
|
---|
53 | #endif /* _DOUBLEELEMENTRESULT_H */
|
---|