Time_Object provides instance variables for the task, frame and time handling, a Time_Parm instance for time-dependent parameter, the geometry which consists of a list of TimeStep sequences and the geometry inter for the current time section.
#CLASS Time_Object : Root { TASK_TYPE task, task_mask; /* Task description, needed for computation etc */ int frame, num_of_frames; /* Current frame number, total number of frames */ int *status; /* Pointer to memory for frame status (COMPUTED, MERGED etc)*/ double *time, *time_step; /* Pointer to current time and memory for the time of each frame */ TIME_PARM *time_parm; /* Time_Object parameter (see below) */ CHAIN *geometry, *inter; /* TimeSteps with Time_Object geometry */ /* Interpol instance for displays etc */ SCENE *tree; };
The task must be tskGeometry for Time_Objects, for subclasses which provide more than one geometry more tasks are available (tskDomain corresponds to the domain geometry of Surface, tskNewton correspond to the newton geometry of Amandus and so on):
typedef enum { tskGeometry, /* bitwise flags */ tskGauss, tskConjugate, tskDomain, tskNewton, tskExplicit, tskAny } TASK_TYPE;
To create or update the inter instance which holds the time section of the geometry for the current * time the method "get-object" is used, see section 4.4.4.
Copyright © by the Sonderforschungsbereich 256 at the Institut für Angewandte Mathematik, Universität Bonn.