IDL UDF Structures

The following sections describe the UDF IDL data and vidf structure through both description and examples.

IDL UDF DATA STRUCTURE

The IDL UDF data structure is a blanket term for a structure which contains the returned UDF data. The structures are almost entirely defined not only by the data which is being returned but also by the UDF IDL keyword settings. While there are a few static field names in the structure most are derived from the PIDF names for the measurements being returned.

In spite of the extreme variability in the structur make up there is an impression of similarity. The IDL UDF Data Structure fields are always generated in the same order. Fields which have no data associated with them, however, are omitted. The first 8 fields in the structure are always guaranteed to be present. Following these fields comes the measurement array index field which is absent if the returned data are not either arrays or matrices. The remaining fields contain the returned measurements. These are blocked so that the first returned measurements are those which the UDF recognizes as sensor measurements, followed by mode and then ancillary measurements.

Structure Name

The IDF UDF data structure name is formed as a concatination of several variables. Its general format is:

[VIRTUAL ACRONYM]_K[UDF Key Value]_V[VERSION NUMBER]_[SFORMAT]
where items in [] are the variables inserted into the structure name when it is defined. The [VIRTUAL ACRONYM] identifies the source of the data, while the K[UDF Key Value]_V[VERSION NUMBER] ensures a unique structure name. The [SFORMAT] indicates how the sensor data was formated.

The Fixed Fields

The first eight fields in the IDL udf data structure are fixed, that is they are always present with the same field name. These are described in the table below in the order they occur in the structure.

Field Format Description
BTIME STRUCT The beginning time of the data returned in the IDL UDF data structure. The time structure has the fields YEAR, DOY, HOUR, MIN, SEC, MSEC, and DP. DP is the number of days since January 1, 2000.
ETIME STRUCT The ending time of the data returned in the IDL UDF data structure. The time structure has the fields YEAR, DOY, HOUR, MIN, SEC, MSEC, and DP. DP is the number of days since January 1, 2000.
DLEN LONG The the number of elements returned by a sensor measurement. The sensor data array size in the IDL UDF data structure are maximized to hold the largest possible array size which might be returned by a given UDF. When the returned array sizes are less then the maximum the extra array elements are filled with zeros.
D_QUAL FLOAT The data quality flags. There is one flag for each returned UDF sensor measurement. Definitions of the values are given in the VIDF for the UDF source being returned. In general a 0 indicates that the returned data is OK.
START_AZ FLOAT The start azimuth (phase) angle associated with each data measurement. This field can be either an array or a matrix of data depending on how the AZIMUTH keyword is set. When the sensor data represents an array of data there is one start azimuth value for each of the measurement array elements.
STOP_AZ FLOAT The stop azimuth (phase) angle associated with each data measurement. This field can be either an array or a matrix of data depending on how the AZIMUTH keyword is set. When the sensor data represents an array of data there is one stop azimuth value for each of the measurement array elements.
START_TH FLOAT The start theta (elevation) angle associated with each data measurement. This field can be an array or matrix of values depending on both how the ELEVATION keyword is set and the dimensionality of the returned sensor measurements.
STOP_TH FLOAT The stop theta (elevation) angle associated with each data measurement. This field can be an array or matrix of values depending on both how the ELEVATION keyword is set and the dimensionality of the returned sensor measurements.

Example 1: SFORMAT 0 - The STANDARD Option

The following shows the IDL UDF data structure generated to hold data from the IMHMCPLH UDF definition when the SFORMAT keyword is set to STANDARD. Under this option all data are returned in individual structure fields whose names are derived from the measurement names found in the PIDF. The D_QUAL field dimension of 20 indicates that there are 20 sensor data definitions being returned. These are the 20 fields following the AINDICES field. All remaining fields represent either Mode or Ancillary measurements. You would have to consult the PIDF to determine how many MODE definitions exist for this UDF definition which in this case is four. These are the first four fields following the sensor data beginning at HV_STATE. The remaining data are ancillary data.

------------------------------------------------------------
** Structure IMHMCPLH_K101195919_V0_0, 41 tags, length=884:
   BTIME                STRUCT    -> UDF_TIME Array[1]
   ETIME                STRUCT    -> UDF_TIME Array[1]
   DLEN                 LONG      Array[1]
   D_QUAL               FLOAT     Array[20]
   START_AZ             FLOAT     Array[6]
   STOP_AZ              FLOAT     Array[6]
   START_TH             FLOAT     Array[20]
   STOP_TH              FLOAT     Array[20]
   AINDICES             FLOAT     Array[6]
   MCP_H_ELEV_0         FLOAT     Array[6]
   MCP_H_ELEV_1         FLOAT     Array[6]
   MCP_H_ELEV_2         FLOAT     Array[6]
   MCP_H_ELEV_3         FLOAT     Array[6]
   MCP_H_ELEV_4         FLOAT     Array[6]
   MCP_H_ELEV_5         FLOAT     Array[6]
   MCP_H_ELEV_6         FLOAT     Array[6]
   MCP_H_ELEV_7         FLOAT     Array[6]
   MCP_H_ELEV_8         FLOAT     Array[6]
   MCP_H_ELEV_9         FLOAT     Array[6]                        
   MCP_H_ELEV_10        FLOAT     Array[6]                        
   MCP_H_ELEV_11        FLOAT     Array[6]                        
   MCP_H_ELEV_12        FLOAT     Array[6]
   MCP_H_ELEV_13        FLOAT     Array[6]
   MCP_H_ELEV_14        FLOAT     Array[6]
   MCP_H_ELEV_15        FLOAT     Array[6]
   MCP_H_ELEV_16        FLOAT     Array[6]
   MCP_H_ELEV_17        FLOAT     Array[6]
   MCP_H_ELEV_18        FLOAT     Array[6]
   MCP_H_ELEV_19        FLOAT     Array[6]
   HV_STATE             FLOAT     Array[1]
   SHUTTER_STATE        FLOAT     Array[1]
   EARTH_IN_FOV_STATE   FLOAT     Array[1]
   SUN_IN_FOV_STATE     FLOAT     Array[1]
   SPIN_NUMBER          FLOAT     Array[1]
   START_SECTOR_NUMBER  FLOAT     Array[1]
   GCI_SATELLITE_X      FLOAT     Array[1]
   GCI_SATELLITE_Y      FLOAT     Array[1]                        
   GCI_SATELLITE_Z      FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_X  FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Y  FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Z  FLOAT     Array[1]
------------------------------------------------------------

Example 2: SFORMAT 1 - The COLLAPSED Option

The following shows the IDL UDF data structure generated to hold data from the IMHMCPLH UDF definition when the SFORMAT keyword is set to COLLAPSED. Under this option all the measurements which have a VIDF type of sensor are compressed into the single structure field labeled ALLSDATA. This is a matrix of data 6x20 which represents the 20 sensors each an array of 6 elements.

------------------------------------------------------------
** Structure IMHMCPLH_K101195919_V0_1, 22 tags, length=884:
   BTIME                STRUCT    -> UDF_TIME Array[1]
   ETIME                STRUCT    -> UDF_TIME Array[1]
   DLEN                 LONG      Array[1]
   D_QUAL               FLOAT     Array[20]
   START_AZ             FLOAT     Array[6]
   STOP_AZ              FLOAT     Array[6]
   START_TH             FLOAT     Array[20]
   STOP_TH              FLOAT     Array[20]
   AINDICES             FLOAT     Array[6]
   ALLSDATA             FLOAT     Array[6, 20]
   HV_STATE             FLOAT     Array[1]
   SHUTTER_STATE        FLOAT     Array[1]
   EARTH_IN_FOV_STATE   FLOAT     Array[1]
   SUN_IN_FOV_STATE     FLOAT     Array[1]
   SPIN_NUMBER          FLOAT     Array[1]
   START_SECTOR_NUMBER  FLOAT     Array[1]                      
   GCI_SATELLITE_X      FLOAT     Array[1]                        
   GCI_SATELLITE_Y      FLOAT     Array[1]                        
   GCI_SATELLITE_Z      FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_X  FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Y  FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Z  FLOAT     Array[1]
------------------------------------------------------------

Example 3: SFORMAT 3 - The GROUP Option

The following shows the IDL UDF data structure generated to hold data from the IMHMCPLH UDF definition when the SFORMAT keyword is set to GROUP. Under this option all the measurements which have a VIDF type of sensor and which are grouped under a common PIDF group definitions are compressed into a single structure field labeled with the PIDF group name. Because there is only one defined group in the PIDF for this UDF definition this structure is identical to the one generated under the COMPRESSED option above with the exception that the sensor field name is given as the group name, LOW_RES_MCP_H_IMAGE_PIXELS rather than ALLSDATA.

------------------------------------------------------------
** Structure IMHMCPLH_K101195919_V0_2, 22 tags, length=884:
   BTIME                       STRUCT    -> UDF_TIME Array[1]
   ETIME                       STRUCT    -> UDF_TIME Array[1]
   DLEN                        LONG      Array[1]
   D_QUAL                      FLOAT     Array[20]
   START_AZ                    FLOAT     Array[6]
   STOP_AZ                     FLOAT     Array[6]
   START_TH                    FLOAT     Array[20]
   STOP_TH                     FLOAT     Array[20]
   AINDICES                    FLOAT     Array[6]
   LOW_RES_MCP_H_IMAGE_PIXELS  FLOAT     Array[6, 20]
   HV_STATE                    FLOAT     Array[1]
   SHUTTER_STATE               FLOAT     Array[1]
   EARTH_IN_FOV_STATE          FLOAT     Array[1]
   SUN_IN_FOV_STATE            FLOAT     Array[1]
   SPIN_NUMBER                 FLOAT     Array[1]
   START_SECTOR_NUMBER         FLOAT     Array[1]                      
   GCI_SATELLITE_X             FLOAT     Array[1]
   GCI_SATELLITE_Y             FLOAT     Array[1]
   GCI_SATELLITE_Z             FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_X         FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Y         FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Z         FLOAT     Array[1]
------------------------------------------------

Example 4: DFORMAT 1 - The DOUBLE Option

The following shows the IDL UDF data structure generated to hold data from the IMHMCPLH UDF definition when the DFORMAT keyword is set to DOUBLE. Under this option all the UDF measurements (those listed below the AINDICES field if present) are returned as double precision floats. This structure is identical in format to the STANDARD structure shown in the first example but with the floats converted to doubles. The structure length has also increased with increasd resolution.

------------------------------------------------------------
** Structure IMHMCPLH_K101195919_V0_0, 41 tags, length=1412:
   BTIME                STRUCT     -> UDF_TIME Array[1]
   ETIME                STRUCT     -> UDF_TIME Array[1]
   DLEN                 LONG       Array[1]
   D_QUAL               FLOAT      Array[20]
   START_AZ             FLOAT      Array[6]
   STOP_AZ              FLOAT      Array[6]
   START_TH             FLOAT      Array[20]
   STOP_TH              FLOAT      Array[20]
   AINDICES             FLOAT      Array[6]
   MCP_H_ELEV_0         DOUBLE     Array[6]
   MCP_H_ELEV_1         DOUBLE     Array[6]
   MCP_H_ELEV_2         DOUBLE     Array[6]
   MCP_H_ELEV_3         DOUBLE     Array[6]
   MCP_H_ELEV_4         DOUBLE     Array[6]
   MCP_H_ELEV_5         DOUBLE     Array[6]
   MCP_H_ELEV_6         DOUBLE     Array[6]
   MCP_H_ELEV_7         DOUBLE     Array[6]
   MCP_H_ELEV_8         DOUBLE     Array[6]
   MCP_H_ELEV_9         DOUBLE     Array[6]                        
   MCP_H_ELEV_10        DOUBLE     Array[6]                        
   MCP_H_ELEV_11        DOUBLE     Array[6]                        
   MCP_H_ELEV_12        DOUBLE     Array[6]
   MCP_H_ELEV_13        DOUBLE     Array[6]
   MCP_H_ELEV_14        DOUBLE     Array[6]
   MCP_H_ELEV_15        DOUBLE     Array[6]
   MCP_H_ELEV_16        DOUBLE     Array[6]
   MCP_H_ELEV_17        DOUBLE     Array[6]
   MCP_H_ELEV_18        DOUBLE     Array[6]
   MCP_H_ELEV_19        DOUBLE     Array[6]
   HV_STATE             DOUBLE     Array[1]
   SHUTTER_STATE        DOUBLE     Array[1]
   EARTH_IN_FOV_STATE   DOUBLE     Array[1]
   SUN_IN_FOV_STATE     DOUBLE     Array[1]
   SPIN_NUMBER          DOUBLE     Array[1]
   START_SECTOR_NUMBER  DOUBLE     Array[1]
   GCI_SATELLITE_X      DOUBLE     Array[1]
   GCI_SATELLITE_Y      DOUBLE     Array[1]                        
   GCI_SATELLITE_Z      DOUBLE     Array[1]
   GCI_S_C_SPIN_AXIS_X  DOUBLE     Array[1]
   GCI_S_C_SPIN_AXIS_Y  DOUBLE     Array[1]
   GCI_S_C_SPIN_AXIS_Z  DOUBLE     Array[1]
------------------------------------------------------------

Example 5: AZIMUTH 1 - The ONCE/DATA Option

The following shows the IDL UDF data structure generated to hold data from the IMHMCPLH UDF definition when the AZIMUTH keyword is set to ONCE/DATA. Under this option all the START_AZ and STOP_AZ are returned at the data resolution. This structure is identical in format to the STANDARD structure shown in the first example with the exception that the START_AZ and STOP_AZ fields have been expanded to 6x20 matrices. This represents data for each element in the 20 returned sensors each an array of 6 elements.

------------------------------------------------------------
** Structure IMHMCPLH_K101195919_V0_0, 41 tags, length=1796:
   BTIME                STRUCT    -> UDF_TIME Array[1]
   ETIME                STRUCT    -> UDF_TIME Array[1]
   DLEN                 LONG      Array[1]
   D_QUAL               FLOAT     Array[20]
   START_AZ             FLOAT     Array[6, 20]
   STOP_AZ              FLOAT     Array[6, 20]
   START_TH             FLOAT     Array[20]
   STOP_TH              FLOAT     Array[20]
   AINDICES             FLOAT     Array[6]
   MCP_H_ELEV_0         FLOAT     Array[6]
   MCP_H_ELEV_1         FLOAT     Array[6]
   MCP_H_ELEV_2         FLOAT     Array[6]
   MCP_H_ELEV_3         FLOAT     Array[6]
   MCP_H_ELEV_4         FLOAT     Array[6]
   MCP_H_ELEV_5         FLOAT     Array[6]
   MCP_H_ELEV_6         FLOAT     Array[6]
   MCP_H_ELEV_7         FLOAT     Array[6]
   MCP_H_ELEV_8         FLOAT     Array[6]
   MCP_H_ELEV_9         FLOAT     Array[6]                        
   MCP_H_ELEV_10        FLOAT     Array[6]                        
   MCP_H_ELEV_11        FLOAT     Array[6]                        
   MCP_H_ELEV_12        FLOAT     Array[6]
   MCP_H_ELEV_13        FLOAT     Array[6]
   MCP_H_ELEV_14        FLOAT     Array[6]
   MCP_H_ELEV_15        FLOAT     Array[6]
   MCP_H_ELEV_16        FLOAT     Array[6]
   MCP_H_ELEV_17        FLOAT     Array[6]
   MCP_H_ELEV_18        FLOAT     Array[6]
   MCP_H_ELEV_19        FLOAT     Array[6]
   HV_STATE             FLOAT     Array[1]
   SHUTTER_STATE        FLOAT     Array[1]
   EARTH_IN_FOV_STATE   FLOAT     Array[1]
   SUN_IN_FOV_STATE     FLOAT     Array[1]
   SPIN_NUMBER          FLOAT     Array[1]
   START_SECTOR_NUMBER  FLOAT     Array[1]
   GCI_SATELLITE_X      FLOAT     Array[1]
   GCI_SATELLITE_Y      FLOAT     Array[1]                        
   GCI_SATELLITE_Z      FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_X  FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Y  FLOAT     Array[1]
   GCI_S_C_SPIN_AXIS_Z  FLOAT     Array[1]
------------------------------------------------------------

IDL UDF DATA STRUCTURE

The IDL UDF VIDF structure is a blanket term for a structure which contains returned VIDF data. There are 5 fixed formats associated with the structure whihc depend on what is being returned. The elements in the structure correspond to VIDF fields. Array fields in the VIDF are presented as array fields in the structures with the exception of arrays of strings which are presented as sets of numbered fields. The size of the array fields will depend on the UDF definition. VIDF fields which are unused in the VIDF are not included in the returned structures. Field names are derived from their VIDF field names but are not exact matches, most times being an unabbreviated description of the quantity.

Structure Name

The IDF UDF data structure name is formed as a concatination of several variables. Its general format is:

[VIRTUAL ACRONYM]_K[UDF Key Value]_V[VERSION NUMBER]_[ID]
where items in [] are the variables inserted into the structure name when it is defined. The [VIRTUAL ACRONYM] identifies the source of the data, while the K[UDF Key Value]_V[VERSION NUMBER] ensures a unique structure name. The [ID] defines the setting of Item in the call to UDF_VIDF. This is BV if the structure contains the VIDF Body fields, TR# if it contains a RAW TABLE, TC# if it contains a COOKED table, CR# if it contains a RAW CONSTANT and CC# if it contains a COOKED CONSTANT where # is the block number of the table or constant returned.

The Body [BV] Fields

The table below gives the fields present in the BV generated structure as well as their equivalent VIDF identifer field name and a brief description. Arrays of strings are included in the structure as a set of structure field names with the array index number attached to them. Indices begin at 0. The number of string array fields is given in [] following the field name. The brackets and number are not part of the field name. The range is generally an element in the structure.

Structure Field Vidf Field Short Description
PROJECT _ProjecT UDF Project name
MISSION _MissioN UDF Mission name
EXPERIMENT _ExpDesC UDF Experiment name
INSTRUMENT _InstDesC UDF Instrument name
CONTACT [5] _ContacT Contact
NUMCOMLINES _NumComntS Number of comment lines
COMMENT [NUMCOMLINES] _CommentS Comments
BYEAR _DsYeaR Beginning valid year
BDAY _DsDaY Beginning valid day
BMSEC _DsMseC Beginning valid millisecond
BUSEC _DsUseC Beginning valid microsecond
EYEAR _DeYeaR Ending valid year
EDAY _DeDaY Ending valid day
EMSEC _DeMseC Ending valid millisecond
EUSEC _DeUseC Ending valid microsecond
SMPID _SmpID Data storage format
SENMODE _SenModE Time flow format
NUMQUAL _NumQuaL Maximum quality flag value
ANCSETS _CalSetS Number of ancillary data sets
NUMTBLS _NumTbls Number of table blocks
NUMCONSTS _NumConstS Number of constant blocks
STATUS _StatuS Number of status definitions
PADEFINED _PaDefineD Pitch Angle defined flag
NUMSEN _SeN Number of VIDF sensors
ARRAYLEN _SwpLeN Maximum sensor array length
MAXNSS _MaxNsS Maximum number of sensor sets
DATALEN _DataLeN Data record byte size
FILLFLAG _FillFlaG Fill value defined flag
FILLVAL _FilL Fill value
DAMETHOD _DaMethoD Array Timing
STATUSNAME [STATUS] _StatusNamE Status definition descriptions
STATES _StateS Status definition ranges
SENNAMES [NUMSEN] _SenNamE Sensor descriptions
SENTYPE _DataTypE Sensor data formats
SENLEN _TdwLeN Sensor bit lengths
SENTIMEOFF _TimeOfF Sensor time offsets
ANCNAME [ANCSETS] _CalNameS Ancillary data set descriptions
ANCUSE _CalUsE Ancillary data set mappings
ANCLEN _CalWleN Ancillary data set bit lengths
ANCTARGET _CalTargeT Ancillary data set targets
QUALNAME [NUMQUAL] _QualNamE Quality flag definitions
PAFORMAT _PaFormaT Pitch Angle Algorithm Flag
PAPROJECT _PaProjecT PA magnetic field Project
PAMISSION _PaMissioN PA magnetic field Mission
PAEXPER _PaExpeR PA magnetic field Experiment
PAINST _PaVinsT PA magnetic field Instrument
PAVINST _PaVinsT PA magnetic field Virtual Instrument
PAMFSENS _PaBxbybZ PA (Bx,By Bz) VIDF sensor numbers
MFALGSTEPNUM _PaAppS Number of steps in MF alogrithm
PATBLS _PaTblS MF alogrithm tables
PAOPERS _PaOpS MF alogrithm operations

Example: VIDF BODY STRUCTURE

The following shows an example of an IDL UDF VIDF Body structure generated to hold data from the UDF Virtual Instrument IMES0IMG. Note that the lack of the STATUSNAME, STATES, FILLVAL, and PA fields. This indicated that those fields are not used in the VIDF.

------------------------------------------------------------
** Structure IMES0IMG_K101228673_V0_BV, 116 tags, length=1508, data length=1508:
   PROJECT         STRING    Array[1]
   MISSION         STRING    Array[1]
   EXPERIMENT      STRING    Array[1]
   INSTRUMENT      STRING    Array[1]
   CONTACT0        STRING    Array[1]
   CONTACT1        STRING    Array[1]
   CONTACT2        STRING    Array[1]
   CONTACT3        STRING    Array[1]
   CONTACT4        STRING    Array[1]
   NUMCOMLINES     LONG      Array[1]
   COMMENT0        STRING    Array[1]
   COMMENT1        STRING    Array[1]
   COMMENT2        STRING    Array[1]
   COMMENT3        STRING    Array[1]
   COMMENT4        STRING    Array[1]
   COMMENT5        STRING    Array[1]
   COMMENT6        STRING    Array[1]
   COMMENT7        STRING    Array[1]
   COMMENT8        STRING    Array[1]
   COMMENT9        STRING    Array[1]                        
   COMMENT10       STRING    Array[1]
   COMMENT11       STRING    Array[1]
   COMMENT12       STRING    Array[1]
   COMMENT13       STRING    Array[1]
   COMMENT14       STRING    Array[1]
   COMMENT15       STRING    Array[1]
   COMMENT16       STRING    Array[1]
   COMMENT17       STRING    Array[1]
   COMMENT18       STRING    Array[1]
   COMMENT19       STRING    Array[1]
   COMMENT20       STRING    Array[1]
   COMMENT21       STRING    Array[1]
   COMMENT22       STRING    Array[1]
   COMMENT23       STRING    Array[1]
   COMMENT24       STRING    Array[1]
   COMMENT25       STRING    Array[1]
   COMMENT26       STRING    Array[1]
   COMMENT27       STRING    Array[1]
   COMMENT28       STRING    Array[1]
   COMMENT29       STRING    Array[1]
   COMMENT30       STRING    Array[1]                        
   COMMENT31       STRING    Array[1]
   COMMENT32       STRING    Array[1]
   COMMENT33       STRING    Array[1]
   COMMENT34       STRING    Array[1]
   COMMENT35       STRING    Array[1]
   COMMENT36       STRING    Array[1]
   COMMENT37       STRING    Array[1]
   COMMENT38       STRING    Array[1]
   COMMENT39       STRING    Array[1]
   COMMENT40       STRING    Array[1]
   COMMENT41       STRING    Array[1]
   COMMENT42       STRING    Array[1]
   BYEAR           LONG      Array[1]
   BDAY            LONG      Array[1]
   BMSEC           LONG      Array[1]
   BUSEC           LONG      Array[1]
   EYEAR           LONG      Array[1]
   EDAY            LONG      Array[1]
   EMSEC           LONG      Array[1]
   EUSEC           LONG      Array[1]
   SMPID           LONG      Array[1]                        
   SENMODE         LONG      Array[1]
   NUMQUAL         LONG      Array[1]
   ANCSETS         LONG      Array[1]
   NUMTBLS         LONG      Array[1]
   NUMCONSTS       LONG      Array[1]
   STATUS          LONG      Array[1]
   PADEFINED       LONG      Array[1]
   NUMSEN          LONG      Array[1]
   ARRAYLEN        LONG      Array[1]
   MAXNSS          LONG      Array[1]
   DATALEN         LONG      Array[1]
   FILLFLAG        LONG      Array[1]
   DAMETHOD        LONG      Array[1]
   SENNAME0        STRING    Array[1]
   SENTYPE         LONG      Array[1]
   SENLEN          LONG      Array[1]
   SENTIMEOFF      LONG      Array[1]
   ANCNAME0        STRING    Array[1]
   ANCNAME1        STRING    Array[1]
   ANCNAME2        STRING    Array[1]
   ANCNAME3        STRING    Array[1]                        
   ANCNAME4        STRING    Array[1]
   ANCNAME5        STRING    Array[1]
   ANCNAME6        STRING    Array[1]
   ANCNAME7        STRING    Array[1]
   ANCNAME8        STRING    Array[1]
   ANCNAME9        STRING    Array[1]
   ANCNAME10       STRING    Array[1]
   ANCNAME11       STRING    Array[1]
   ANCNAME12       STRING    Array[1]
   ANCNAME13       STRING    Array[1]
   ANCNAME14       STRING    Array[1]
   ANCNAME15       STRING    Array[1]
   ANCNAME16       STRING    Array[1]
   ANCNAME17       STRING    Array[1]
   ANCNAME18       STRING    Array[1]
   ANCNAME19       STRING    Array[1]
   ANCNAME20       STRING    Array[1]
   ANCNAME21       STRING    Array[1]
   ANCNAME22       STRING    Array[1]
   ANCNAME23       STRING    Array[1]
   ANCNAME24       STRING    Array[1]                        
   ANCNAME25       STRING    Array[1]
   ANCNAME26       STRING    Array[1]
   ANCNAME27       STRING    Array[1]
   ANCNAME28       STRING    Array[1]
   ANCNAME29       STRING    Array[1]
   ANCUSE          LONG      Array[30]
   ANCLEN          LONG      Array[30]
   ANCTARGET       LONG      Array[30]
   QUALNAME0       STRING    Array[1]
   QUALNAME1       STRING    Array[1]
   QUALNAME2       STRING    Array[1]
   QUALNAME3       STRING    Array[1]
------------------------------------------------------------

The RAW TABLE [TR] Fields

The table below gives the fields present in the TR generated structure as well as their equivalent VIDF identifer field name and a brief description. Arrays of strings are included in the structure as a set of structure field names with the array index number attached to them. Indices begin at 0. The number of string array fields is given in [] following the field name. The brackets and number are not part of the field name. The range is generally an element in the structure.

Structure Field Vidf Field Short Description
TBLSCASZ _TblScaSZ Number of defined scaling values
TBLELEMSZ _TblEleSZ Number of defined table values
TBLTYPE _TblEleSZ Type of Table
NUMCOMLINES _TblDescLeN Number of comment lines
TBLCOMMENT [NUMCOMLINES] _TblDesC Table comment
TBLVAR _TblVaR Table application variable
TBLEXPAND _TblExpanD Table expansion flag
TBLCRITSTAT _CritStatuS Critical status bytes
TBLCRITOFFS _CritOfF Offsets into critical action table
TBLCRITACT _CritActioN Critical offsets into table values
TBLFMT _TblFmT Table formats
TBLOFFSETS _TbOfF Sensor offsets into table values
TBLSCALEVALS _TblScA Table values scales
TBLVALS _TbL Table values

Example: RAW TABLE STRUCTURE

The following shows an example of an the IDL UDF RAW TABLE structure generated to hold data from table 11 in the UDF Virtual Instrument IMES0IMG. Note that the lack of any CRITICAL fields. This indicated that those fields are not used in this Table definition.

------------------------------------------------------------
** Structure IMES0IMG_K101228673_V0_TR11, 12 tags, length=260, data length=260:
   TBLSCASZ        LONG      Array[1]
   TBLELEMSZ       LONG      Array[1]
   TBLTYPE         LONG      Array[1]
   NUMCOMLINES     LONG      Array[1]
   TBLCOMMENT0     STRING    Array[1]
   TBLCOMMENT1     STRING    Array[1]
   TBLVAR          LONG      Array[1]
   TBLEXPAND       LONG      Array[1]
   TBLFMT          LONG      Array[1]
   TBLOFFSETS      LONG      Array[1]
   TBLSCALEVALS    LONG      Array[1, 1]
   TBLVALS         LONG      Array[50, 1]
------------------------------------------------------------

The COOKED TABLE [TC] Fields

The table below gives the fields present in the TC generated structure as well as their equivalent VIDF identifer field name and a brief description. Arrays of strings are included in the structure as a set of structure field names with the array index number attached to them. Indices begin at 0. The number of string array fields is given in [] following the field name. The brackets and number are not part of the field name. The range is generally an element in the structure.

Structure Field Vidf Field Short Description
TBLTYPE _TblEleSZ Type of Table
NUMCOMLINES _TblDescLeN Number of comment lines
TBLCOMMENT [NUMCOMLINES] _TblDesC Table comment
TBLVAR _TblVaR Table application variable
TBLFMT _TblFmT Table formats
TBLVALS _TbL Table values

Example: COOKED TABLE STRUCTURE

The following shows an example of an the IDL UDF COOKED TABLE structure generated to hold data from table 11 in the UDF Virtual Instrument IMES0IMG. Note that the lack of any CRITICAL fields. This indicated that those fields are not used in this Table definition.

------------------------------------------------------------
** Structure IMES0IMG_K101228673_V0_TC11, 7 tags, length=440, data length=440:
   TBLTYPE         LONG      Array[1]
   NUMCOMLINES     LONG      Array[1]
   TBLCOMMENT0     STRING    Array[1]
   TBLCOMMENT1     STRING    Array[1]
   TBLVAR          LONG      Array[1]
   TBLFMT          LONG      Array[1]
   TBLVALS         DOUBLE    Array[50]
------------------------------------------------------------

The RAW CONSTANT Fields

The table below gives the fields present in the CR generated structure as well as their equivalent VIDF identifer field name and a brief description. Arrays of strings are included in the structure as a set of structure field names with the array index number attached to them. Indices begin at 0. The number of string array fields is given in [] following the field name. The brackets and number are not part of the field name. The range is generally an element in the structure.

Structure Field Vidf Field Short Description
CONSTANTID _ConstID Constant identifier
NUMCOMLINES _ConstDescLeN Number of comment lines
CONSTCOMMENT [NUMCOMLINES] _ConstDesC Constant comment
CONSTSCA _ConstScA Constant scaling values
CONSTVAL _TbL Constant values

Example: RAW CONSTANT STRUCTURE

The following shows an example of an the IDL UDF RAW CONSTANT structure generated to hold data from constant 0 in the UDF Virtual Instrument IMES0IMG.

------------------------------------------------------------
** Structure IMES0IMG_K101228673_V0_CR0, 6 tags, length=40, data length=40:
   CONSTANTID      LONG      Array[1]
   NUMCOMLINES     LONG      Array[1]
   CONSTCOMMENT0   STRING    Array[1]
   CONSTCOMMENT1   STRING    Array[1]
   CONSTSCA        LONG      Array[1]
   CONSTVAL        LONG      Array[1]
------------------------------------------------------------

The [CC] Fields

The table below gives the fields present in the CC generated structure as well as their equivalent VIDF identifer field name and a brief description. Arrays of strings are included in the structure as a set of structure field names with the array index number attached to them. Indices begin at 0. The number of string array fields is given in [] following the field name. The brackets and number are not part of the field name. The range is generally an element in the structure.

Structure Field Vidf Field Short Description
CONSTANTID _ConstID Constant identifier
NUMCOMLINES _ConstDescLeN Number of comment lines
CONSTCOMMENT [NUMCOMLINES] _ConstDesC Constant comment
CONSTVAL _TbL Constant values

Example: COOKED CONSTANT STRUCTURE

The following shows an example of an the IDL UDF COOKED CONSTANT structure generated to hold data from constant 0 in the UDF Virtual Instrument IMES0IMG.

------------------------------------------------------------
** Structure IMES0IMG_K101228673_V0_CC0, 5 tags, length=40, data length=40:
   CONSTANTID      LONG      Array[1]
   NUMCOMLINES     LONG      Array[1]
   CONSTCOMMENT0   STRING    Array[1]
   CONSTCOMMENT1   STRING    Array[1]
   CONSTVAL        DOUBLE    Array[1]
------------------------------------------------------------


&larr Previous TOC HOME Next &rarr
Unit Definitions Usage