NIREP

ResourceDescription Class Reference

Collaboration diagram for ResourceDescription:

List of all members.

Classes

struct  CoordinateSystem

Public Types

typedef std::map< std::string,
std::string > 
AlgList
typedef std::map< std::string,
std::string > 
AttributeList
typedef std::map< std::string,
CoordinateSystem
CSList
typedef std::map< std::string,
std::string > 
FilenameList

Public Member Functions

void AddAlgorithm (std::string key, const std::string &algorithmID)
void AddAttribute (std::string key, const std::string &value)
void AddCS (std::string key, CoordinateSystem cs)
void AddFilename (const std::string &index, const std::string &filename)
void Clear ()
 Removes all characters from strings and all elements from maps.
void ClearAlgorithms ()
void ClearAttributes ()
void ClearCSList ()
void ClearFilenames ()
const std::string CreateCSnsid (const std::string &index)
TiXmlElement * CreateDOM (const std::string &tag)
 Constructs a DOM (Document Object Model) from the member variables input DOM (Document Object Model)
std::string CreateLabelDMID ()
 Return a constructed dmid if label is present or empty string.
const std::string CreateReferenceCSnsid ()
 Return namespace & id of the last/reference coordinate system or empty string on error Returns a string and not an alias to a string.
std::string CreateTransformDMID ()
 Return a constructed dmid if label is present or empty string.
bool FillUsingDom (TiXmlElement *descrip)
 Sets the member variables of class to values given by the input DOM.
std::string GetAlgorithm (std::string key)
 Accessor function for algorithm descriptions.
std::string GetAttribute (std::string key)
 Accessor functions for non-required resource attributes.
const CoordinateSystemGetCS (std::string &index)
 Accessor functions for Coordinate System.
const CSListGetCS ()
 Accessor functions for Coordinate System.
std::string & GetDataType ()
 Accessor functions for data types. Data types correspond to IMAGE, OBJMAP, CONTOUR, etc.
std::string & GetDefaultNS ()
 Accessor functions for default namespace.
std::string & GetDirectory ()
 Accessor functions for directory. Directory is appended to relative filenames.
std::string & GetDMID ()
 Accessor functions for dmid.
std::string GetFilename (const std::string &index, bool normalize=true)
 Accessor functions for filename list.
std::string & GetFormat ()
 Accessor functions for transform format. Transform format correspond to DISPLACEMENT, DISPLACEMENT3, 3D_SICLE_COEFF, WARP_COEFF, etc.
std::string & GetLabel ()
 Accessor functions for label.
const size_t GetNumAlg ()
 Return number of algorithms.
const size_t GetNumCS ()
 Return number of coordinate systems.
std::string & GetTransformUnits ()
 Accessor functions for transform units. Transform units correspond to physical space, image space, or unit cube space.
 ResourceDescription (TiXmlElement *descrip, std::string default_ns)
 ResourceDescription (std::string default_ns)
 Input parameter is the default namespace Member objects initialize themselves automatically.
void SetDataType (const std::string &datatype)
void SetDefaultNS (std::string default_ns)
void SetDirectory (const std::string &directory)
void SetDMID (std::string dmid)
void SetFormat (const std::string &format)
void SetLabel (std::string label)
void SetTransformUnits (const std::string &transform_units)
 ~ResourceDescription ()
 Destructor clears all member objects.

Member Typedef Documentation

typedef std::map<std::string, std::string> ResourceDescription::AlgList
typedef std::map<std::string, std::string> ResourceDescription::AttributeList
typedef std::map<std::string, CoordinateSystem> ResourceDescription::CSList
typedef std::map<std::string, std::string> ResourceDescription::FilenameList

Constructor & Destructor Documentation

ResourceDescription::ResourceDescription ( std::string  default_ns) [inline]

Input parameter is the default namespace Member objects initialize themselves automatically.

ResourceDescription::ResourceDescription ( TiXmlElement *  descrip,
std::string  default_ns 
) [inline]
ResourceDescription::~ResourceDescription ( ) [inline]

Destructor clears all member objects.


Member Function Documentation

void ResourceDescription::AddAlgorithm ( std::string  key,
const std::string &  algorithmID 
) [inline]
void ResourceDescription::AddAttribute ( std::string  key,
const std::string &  value 
) [inline]
void ResourceDescription::AddCS ( std::string  key,
CoordinateSystem  cs 
) [inline]
void ResourceDescription::AddFilename ( const std::string &  index,
const std::string &  filename 
) [inline]
void ResourceDescription::Clear ( void  )

Removes all characters from strings and all elements from maps.

void ResourceDescription::ClearAlgorithms ( ) [inline]
void ResourceDescription::ClearAttributes ( ) [inline]
void ResourceDescription::ClearCSList ( ) [inline]
void ResourceDescription::ClearFilenames ( ) [inline]
const std::string ResourceDescription::CreateCSnsid ( const std::string &  index) [inline]

Return id of the last/reference coordinate system or NULL on error Returns a string and not an alias to a string

TiXmlElement * ResourceDescription::CreateDOM ( const std::string &  tag)

Constructs a DOM (Document Object Model) from the member variables input DOM (Document Object Model)

Notes
attributes list user specific non-required information
std::string ResourceDescription::CreateLabelDMID ( ) [inline]

Return a constructed dmid if label is present or empty string.

const std::string ResourceDescription::CreateReferenceCSnsid ( ) [inline]

Return namespace & id of the last/reference coordinate system or empty string on error Returns a string and not an alias to a string.

std::string ResourceDescription::CreateTransformDMID ( ) [inline]

Return a constructed dmid if label is present or empty string.

bool ResourceDescription::FillUsingDom ( TiXmlElement *  descrip)

Sets the member variables of class to values given by the input DOM.

Notes
attributes is used for listing user specific non-required information Errors in XML will result in a return value of false. In future, need to do a better job of reporting the errors returned by Tiny XML.
Notes
Required XML tags: resource and spatialdata resource must have an id attribute Optional XML tags: data_attributes resource_attributes is used for listing user specific non-required information resource_attributes can be missing from XML and if present does not need any elements. There is no error checking in tiny XML so any error in XML will result in a silent exit from routine.
std::string ResourceDescription::GetAlgorithm ( std::string  key) [inline]

Accessor function for algorithm descriptions.

Parameters:
[in]key= algorithm id
Returns:
algorithm specified by index or empty string
std::string ResourceDescription::GetAttribute ( std::string  key) [inline]

Accessor functions for non-required resource attributes.

const CSList* ResourceDescription::GetCS ( ) [inline]

Accessor functions for Coordinate System.

const CoordinateSystem* ResourceDescription::GetCS ( std::string &  index) [inline]

Accessor functions for Coordinate System.

std::string& ResourceDescription::GetDataType ( ) [inline]

Accessor functions for data types. Data types correspond to IMAGE, OBJMAP, CONTOUR, etc.

std::string& ResourceDescription::GetDefaultNS ( ) [inline]

Accessor functions for default namespace.

std::string& ResourceDescription::GetDirectory ( ) [inline]

Accessor functions for directory. Directory is appended to relative filenames.

Leave case of directory alone, i.e., do not convert to lower case

std::string& ResourceDescription::GetDMID ( ) [inline]

Accessor functions for dmid.

std::string ResourceDescription::GetFilename ( const std::string &  index,
bool  normalize = true 
) [inline]

Accessor functions for filename list.

Parameters:
indexcorresponds to the filename map index. If only one filename, then index is "0". If there are 3 filenames, then valid index values are "0", "1", and "2" corresponding to the first, second and third filenames.
std::string& ResourceDescription::GetFormat ( ) [inline]

Accessor functions for transform format. Transform format correspond to DISPLACEMENT, DISPLACEMENT3, 3D_SICLE_COEFF, WARP_COEFF, etc.

std::string& ResourceDescription::GetLabel ( ) [inline]

Accessor functions for label.

const size_t ResourceDescription::GetNumAlg ( ) [inline]

Return number of algorithms.

const size_t ResourceDescription::GetNumCS ( ) [inline]

Return number of coordinate systems.

std::string& ResourceDescription::GetTransformUnits ( ) [inline]

Accessor functions for transform units. Transform units correspond to physical space, image space, or unit cube space.

void ResourceDescription::SetDataType ( const std::string &  datatype) [inline]
void ResourceDescription::SetDefaultNS ( std::string  default_ns) [inline]
void ResourceDescription::SetDirectory ( const std::string &  directory) [inline]
void ResourceDescription::SetDMID ( std::string  dmid) [inline]
void ResourceDescription::SetFormat ( const std::string &  format) [inline]
void ResourceDescription::SetLabel ( std::string  label) [inline]
void ResourceDescription::SetTransformUnits ( const std::string &  transform_units) [inline]
 All Classes Functions Variables Typedefs Enumerations Enumerator