OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
Information from the DDR defining one field. More...
#include <ossimIso8211.h>
Public Member Functions | |
ossimDDFFieldDefn () | |
~ossimDDFFieldDefn () | |
int | Create (const char *pszTag, const char *pszFieldName, const char *pszDescription, DDF_data_struct_code eDataStructCode, DDF_data_type_code eDataTypeCode, const char *pszFormat=NULL) |
void | AddSubfield (ossimDDFSubfieldDefn *poNewSFDefn, int bDontAddToFormat=false) |
void | AddSubfield (const char *pszName, const char *pszFormat) |
int | GenerateDDREntry (char **ppachData, int *pnLength) |
int | Initialize (ossimDDFModule *poModule, const char *pszTag, int nSize, const char *pachRecord) |
void | Dump (FILE *fp) |
Write out field definition info to debugging file. More... | |
const char * | GetName () |
Fetch a pointer to the field name (tag). More... | |
const char * | GetDescription () |
Fetch a longer descriptio of this field. More... | |
int | GetSubfieldCount () |
Get the number of subfields. More... | |
ossimDDFSubfieldDefn * | GetSubfield (int i) |
Fetch a subfield by index. More... | |
ossimDDFSubfieldDefn * | FindSubfieldDefn (const char *) |
Find a subfield definition by it's mnemonic tag. More... | |
int | GetFixedWidth () |
Get the width of this field. More... | |
int | IsRepeating () |
Fetch repeating flag. More... | |
void | SetRepeatingFlag (int n) |
this is just for an S-57 hack for swedish data More... | |
char * | GetDefaultValue (int *pnSize) |
Return default data for field instance. More... | |
Static Public Member Functions | |
static char * | ExpandFormat (const char *) |
Private Member Functions | |
int | BuildSubfields () |
int | ApplyFormats () |
Static Private Member Functions | |
static char * | ExtractSubstring (const char *) |
Private Attributes | |
ossimDDFModule * | poModule |
char * | pszTag |
char * | _fieldName |
char * | _arrayDescr |
char * | _formatControls |
int | bRepeatingSubfields |
int | nFixedWidth |
DDF_data_struct_code | _data_struct_code |
DDF_data_type_code | _data_type_code |
int | nSubfieldCount |
ossimDDFSubfieldDefn ** | papoSubfields |
Information from the DDR defining one field.
Note that just because a field is defined for a DDFModule doesn't mean that it actually occurs on any records in the module. DDFFieldDefns are normally just significant as containers of the DDFSubfieldDefns.
Definition at line 179 of file ossimIso8211.h.
ossimDDFFieldDefn::ossimDDFFieldDefn | ( | ) |
Definition at line 47 of file ossimDdffielddefn.cpp.
References _arrayDescr, _fieldName, _formatControls, bRepeatingSubfields, nFixedWidth, nSubfieldCount, papoSubfields, poModule, and pszTag.
ossimDDFFieldDefn::~ossimDDFFieldDefn | ( | ) |
Definition at line 65 of file ossimDdffielddefn.cpp.
References _arrayDescr, _fieldName, _formatControls, nSubfieldCount, papoSubfields, and pszTag.
void ossimDDFFieldDefn::AddSubfield | ( | ossimDDFSubfieldDefn * | poNewSFDefn, |
int | bDontAddToFormat = false |
||
) |
Definition at line 99 of file ossimDdffielddefn.cpp.
References _arrayDescr, _formatControls, ossimDDFSubfieldDefn::GetFormat(), ossimDDFSubfieldDefn::GetName(), nSubfieldCount, and papoSubfields.
Referenced by AddSubfield(), and BuildSubfields().
void ossimDDFFieldDefn::AddSubfield | ( | const char * | pszName, |
const char * | pszFormat | ||
) |
Definition at line 84 of file ossimDdffielddefn.cpp.
References AddSubfield(), ossimDDFSubfieldDefn::SetFormat(), and ossimDDFSubfieldDefn::SetName().
|
private |
Definition at line 659 of file ossimDdffielddefn.cpp.
References _formatControls, ExpandFormat(), ossimDDFSubfieldDefn::GetWidth(), nFixedWidth, nSubfieldCount, ossimCSLDestroy(), ossimCSLTokenizeStringComplex(), ossimNotify(), ossimNotifyLevel_DEBUG, ossimNotifyLevel_WARN, papoSubfields, and pszTag.
|
private |
Definition at line 481 of file ossimDdffielddefn.cpp.
References _arrayDescr, AddSubfield(), bRepeatingSubfields, ossimCSLCount(), ossimCSLDestroy(), ossimCSLTokenizeStringComplex(), and ossimDDFSubfieldDefn::SetName().
int ossimDDFFieldDefn::Create | ( | const char * | pszTag, |
const char * | pszFieldName, | ||
const char * | pszDescription, | ||
DDF_data_struct_code | eDataStructCode, | ||
DDF_data_type_code | eDataTypeCode, | ||
const char * | pszFormat = NULL |
||
) |
Definition at line 158 of file ossimDdffielddefn.cpp.
References _arrayDescr, _data_struct_code, _data_type_code, _fieldName, _formatControls, bRepeatingSubfields, poModule, and pszTag.
void ossimDDFFieldDefn::Dump | ( | FILE * | fp | ) |
Write out field definition info to debugging file.
A variety of information about this field definition, and all it's subfields is written to the give debugging file handle.
fp | The standard io file handle to write to. ie. stderr |
Definition at line 397 of file ossimDdffielddefn.cpp.
References _arrayDescr, _data_struct_code, _data_type_code, _fieldName, _formatControls, dsc_array, dsc_concatenated, dsc_elementary, dsc_vector, dtc_bit_string, dtc_char_bit_string, dtc_char_string, dtc_explicit_point, dtc_explicit_point_scaled, dtc_implicit_point, dtc_mixed_data_type, nSubfieldCount, papoSubfields, and pszTag.
Referenced by ossimDDFModule::Dump().
|
static |
Definition at line 557 of file ossimDdffielddefn.cpp.
References ExtractSubstring().
Referenced by ApplyFormats().
|
staticprivate |
ossimDDFSubfieldDefn * ossimDDFFieldDefn::FindSubfieldDefn | ( | const char * | pszMnemonic | ) |
Find a subfield definition by it's mnemonic tag.
pszMnemonic | The name of the field. |
Definition at line 771 of file ossimDdffielddefn.cpp.
References ossimDDFSubfieldDefn::GetName(), nSubfieldCount, and papoSubfields.
Referenced by ossimDDFRecord::GetFloatSubfield(), ossimDDFRecord::GetIntSubfield(), ossimDDFRecord::GetStringSubfield(), ossimAdrgHeader::parse(), ossimDDFRecord::SetFloatSubfield(), ossimDDFRecord::SetIntSubfield(), and ossimDDFRecord::SetStringSubfield().
int ossimDDFFieldDefn::GenerateDDREntry | ( | char ** | ppachData, |
int * | pnLength | ||
) |
Definition at line 188 of file ossimDdffielddefn.cpp.
References _arrayDescr, _data_struct_code, _data_type_code, _fieldName, _formatControls, dsc_array, dsc_concatenated, dsc_elementary, dsc_vector, dtc_bit_string, dtc_char_bit_string, dtc_char_string, dtc_explicit_point, dtc_explicit_point_scaled, dtc_implicit_point, dtc_mixed_data_type, OSSIM_DDF_FIELD_TERMINATOR, and OSSIM_DDF_UNIT_TERMINATOR.
Referenced by ossimDDFModule::Create().
char * ossimDDFFieldDefn::GetDefaultValue | ( | int * | pnSize | ) |
Return default data for field instance.
Definition at line 818 of file ossimDdffielddefn.cpp.
References nSubfieldCount, and papoSubfields.
Referenced by ossimDDFRecord::CreateDefaultFieldInstance().
|
inline |
Fetch a longer descriptio of this field.
Definition at line 208 of file ossimIso8211.h.
References _fieldName.
|
inline |
Get the width of this field.
This function isn't normally used by applications.
Definition at line 223 of file ossimIso8211.h.
References nFixedWidth.
Referenced by ossimDDFField::GetRepeatCount(), and ossimDDFField::GetSubfieldData().
|
inline |
Fetch a pointer to the field name (tag).
Definition at line 203 of file ossimIso8211.h.
References pszTag.
Referenced by ossimDDFRecord::CloneOn(), ossimDDFField::Dump(), ossimDDFRecord::FindField(), ossimDDFModule::FindFieldDefn(), and ossimDDFRecord::ResetDirectory().
ossimDDFSubfieldDefn * ossimDDFFieldDefn::GetSubfield | ( | int | i | ) |
Fetch a subfield by index.
i | The index subfield index. (Between 0 and GetSubfieldCount()-1) |
Definition at line 798 of file ossimDdffielddefn.cpp.
References nSubfieldCount, and papoSubfields.
Referenced by ossimDDFField::Dump(), ossimDDFField::GetInstanceData(), ossimDDFField::GetRepeatCount(), and ossimDDFField::GetSubfieldData().
|
inline |
Get the number of subfields.
Definition at line 211 of file ossimIso8211.h.
References nSubfieldCount.
Referenced by ossimDDFField::Dump(), ossimDDFField::GetInstanceData(), ossimDDFField::GetRepeatCount(), and ossimDDFField::GetSubfieldData().
int ossimDDFFieldDefn::Initialize | ( | ossimDDFModule * | poModule, |
const char * | pszTag, | ||
int | nSize, | ||
const char * | pachRecord | ||
) |
Definition at line 253 of file ossimDdffielddefn.cpp.
References _data_struct_code, dsc_array, dsc_concatenated, dsc_elementary, dsc_vector, ossimDDFModule::GetFieldControlLength(), poModule, and pszTag.
|
inline |
Fetch repeating flag.
Definition at line 230 of file ossimIso8211.h.
References bRepeatingSubfields.
Referenced by ossimDDFField::GetRepeatCount(), and ossimDDFRecord::SetFieldRaw().
|
inline |
this is just for an S-57 hack for swedish data
Definition at line 235 of file ossimIso8211.h.
References bRepeatingSubfields, and n.
|
private |
Definition at line 247 of file ossimIso8211.h.
Referenced by AddSubfield(), BuildSubfields(), Create(), Dump(), GenerateDDREntry(), ossimDDFFieldDefn(), and ~ossimDDFFieldDefn().
|
private |
Definition at line 256 of file ossimIso8211.h.
Referenced by Create(), Dump(), GenerateDDREntry(), and Initialize().
|
private |
Definition at line 258 of file ossimIso8211.h.
Referenced by Create(), Dump(), and GenerateDDREntry().
|
private |
Definition at line 246 of file ossimIso8211.h.
Referenced by Create(), Dump(), GenerateDDREntry(), GetDescription(), ossimDDFFieldDefn(), and ~ossimDDFFieldDefn().
|
private |
Definition at line 248 of file ossimIso8211.h.
Referenced by AddSubfield(), ApplyFormats(), Create(), Dump(), GenerateDDREntry(), ossimDDFFieldDefn(), and ~ossimDDFFieldDefn().
|
private |
Definition at line 250 of file ossimIso8211.h.
Referenced by BuildSubfields(), Create(), IsRepeating(), ossimDDFFieldDefn(), and SetRepeatingFlag().
|
private |
Definition at line 251 of file ossimIso8211.h.
Referenced by ApplyFormats(), GetFixedWidth(), and ossimDDFFieldDefn().
|
private |
Definition at line 260 of file ossimIso8211.h.
Referenced by AddSubfield(), ApplyFormats(), Dump(), FindSubfieldDefn(), GetDefaultValue(), GetSubfield(), GetSubfieldCount(), ossimDDFFieldDefn(), and ~ossimDDFFieldDefn().
|
private |
Definition at line 261 of file ossimIso8211.h.
Referenced by AddSubfield(), ApplyFormats(), Dump(), FindSubfieldDefn(), GetDefaultValue(), GetSubfield(), ossimDDFFieldDefn(), and ~ossimDDFFieldDefn().
|
private |
Definition at line 243 of file ossimIso8211.h.
Referenced by Create(), Initialize(), and ossimDDFFieldDefn().
|
private |
Definition at line 244 of file ossimIso8211.h.
Referenced by ApplyFormats(), Create(), Dump(), GetName(), Initialize(), ossimDDFFieldDefn(), and ~ossimDDFFieldDefn().