source: issm/branches/trunk-dlcheng-ASE/src/c/classes/Inputs/ControlInput.h@ 27956

Last change on this file since 27956 was 27956, checked in by dlcheng, 18 months ago

CHG: Collecting dlcheng-ASE branch changes to misfit calculation. Changes work with r27296 and not from the current revision r27954.

File size: 1.5 KB
Line 
1/*! \file ControlInput.h
2 * \brief: header file for triavertexinput object
3 */
4
5#ifndef _CONTROLINPUT2_H_
6#define _CONTROLINPUT2_H_
7
8/*Headers:*/
9#include "./Input.h"
10class Gauss;
11class ElementInput;
12class TransientInput;
13
14class ControlInput: public Input{
15
16 public:
17 int control_id;
18 int enum_type;
19 int layout_enum;
20 Input *gradient;
21 Input *maxvalues;
22 Input *minvalues;
23 Input *savedvalues;
24 Input *values;
25
26 /*ControlInput constructors, destructors: {{{*/
27 ControlInput();
28 ControlInput(int nbe, int nbv,int input_layout_enum,int interp,int id);
29 ControlInput(int enum_in,int nbe, int nbv,int id,IssmDouble* times, int numtimes);
30 ~ControlInput();
31 /*}}}*/
32 /*Object virtual functions definitions:{{{ */
33 Input* copy();
34 void Configure(Parameters* params);
35 void DeepEcho();
36 void Echo();
37 int Id();
38 void Marshall(MarshallHandle* marshallhandle);
39 int ObjectEnum();
40 /*}}}*/
41 void SetInput(Input* in_input){_error_("not impelemented");};
42 void SetInput(Input* in_input,int timeoffset){_error_("not impelemented");};
43 ElementInput* GetInput(const char* data);
44 TransientInput* GetTransientInput(const char* data);
45 void SetControl(int interp,int numindices,int* indices,IssmDouble* values_in,IssmDouble* values_min,IssmDouble* values_max);
46 void SetGradient(int interp,int numindices,int* indices,IssmDouble* values_in);
47 void SetGradient(int interp,int numindices,int* indices,IssmDouble* values_in,int n);
48 TriaInput* GetTriaInput();
49 PentaInput* GetPentaInput();
50};
51#endif /* _CONTROLINPUT_H */
Note: See TracBrowser for help on using the repository browser.