nidas v1.2.3
Public Member Functions | Static Public Member Functions | Protected Attributes | Private Attributes | Static Private Attributes | List of all members
nidas::dynld::raf::Aircraft Class Reference

Aircraft is a sub-class of a measurement Site. More...

#include <Aircraft.h>

Inheritance diagram for nidas::dynld::raf::Aircraft:
Inheritance graph
[legend]

Public Member Functions

 Aircraft ()
 
virtual ~Aircraft ()
 
std::string getTailNumber () const
 Get/Set tail number of this aircraft.
 
void setTailNumber (const std::string &val)
 
void addParameter (Parameter *val)
 Add a parameter to this Site.
 
void setName (const std::string &val)
 Set the name of the Site.
 
const std::string & getName () const
 
void setNumber (int val)
 Identify the Site by number.
 
int getNumber () const
 
bool operator== (const Site &x) const
 Equivalence operator for Site, checks name.
 
bool operator!= (const Site &x) const
 Non-equivalence operator for Site.
 
bool operator< (const Site &x) const
 Less than operator for Site, compares the names.
 
void setSuffix (const std::string &val)
 Set the suffix for the Site.
 
const std::string & getSuffix () const
 
const ProjectgetProject () const
 Provide pointer to Project.
 
ProjectgetProject ()
 
void setProject (Project *val)
 Set the current project for this Site.
 
void addDSMConfig (DSMConfig *dsm)
 A Site contains one or more DSMs.
 
void removeDSMConfig (DSMConfig *dsm)
 
const std::list< const DSMConfig * > & getDSMConfigs () const
 
const std::list< DSMConfig * > & getDSMConfigs ()
 
void addServer (DSMServer *srvr)
 A Site has one or more DSMServers.
 
const std::list< DSMServer * > & getServers () const
 
DSMServerfindServer (const std::string &hostname) const
 Look for a server on this aircraft that either has no name or whose name matches hostname.
 
const DSMConfigfindDSM (unsigned int id) const
 Find a DSM by id.
 
const DSMConfigfindDSM (const std::string &name) const
 Find a DSM by name.
 
DSMSensorfindSensor (unsigned int id) const
 Find a DSMSensor by the full id, both the DSM id and the sensor id.
 
void initSensors ()
 Initialize all sensors for a Site.
 
void initSensors (DSMConfig *dsm)
 Initialize all sensors for a given dsm.
 
virtual const ParametergetParameter (const std::string &name) const
 
virtual const std::list< const Parameter * > & getParameters () const
 
virtual bool getApplyVariableConversions () const
 Do we want DSMSensor::process methods at this site to apply variable conversions? Currently on raf.Aircraft we don't want process methods to apply the conversions.
 
std::string expandString (const std::string &input) const
 Utility function to expand ${TOKEN} or $TOKEN fields in a string.
 
bool getTokenValue (const std::string &token, std::string &value) const
 Implement a lookup for tokens that I know about, like $SITE, and $AIRCRAFT.
 
const DictionarygetDictionary () const
 
DSMServerIterator getDSMServerIterator () const
 
DSMServiceIterator getDSMServiceIterator () const
 
ProcessorIterator getProcessorIterator () const
 
DSMConfigIterator getDSMConfigIterator () const
 
SensorIterator getSensorIterator () const
 
SampleTagIterator getSampleTagIterator () const
 
VariableIterator getVariableIterator () const
 
void validate ()
 
void fromDOMElement (const xercesc::DOMElement *)
 
xercesc::DOMElement * toDOMParent (xercesc::DOMElement *parent, bool complete) const
 
xercesc::DOMElement * toDOMElement (xercesc::DOMElement *node, bool complete) const
 

Static Public Member Functions

static AircraftgetAircraft (Project *project)
 Search the Project for the Aircraft site and return a pointer to it, or return null if there are no Aircraft sites.
 
static const XMLChgetNamespaceURI ()
 

Protected Attributes

bool _applyCals
 Should NIDAS apply calibrations, or defer them to other processing.
 

Private Attributes

Project_project
 Pointer back to my project.
 
std::string _name
 
int _number
 
std::string _suffix
 
nidas::core::Site::MyDictionary _dictionary
 
std::list< const DSMConfig * > _dsms
 
std::list< DSMConfig * > _ncDsms
 
std::list< DSMServer * > _servers
 
std::map< std::string, Parameter * > _parameterMap
 Mapping of Parameters, by name.
 
std::list< const Parameter * > _constParameters
 List of const pointers to Parameters for providing via getParameters().
 

Static Private Attributes

static XMLChnamespaceURI = 0
 

Detailed Description

Aircraft is a sub-class of a measurement Site.

A Site contains a collection of Parameters, so most any Parameter specific to an Aircraft can be supported.

Constructor & Destructor Documentation

◆ Aircraft()

Aircraft::Aircraft ( )

◆ ~Aircraft()

Aircraft::~Aircraft ( )
virtual

Member Function Documentation

◆ addDSMConfig()

void nidas::core::Site::addDSMConfig ( DSMConfig * dsm)
inlineinherited

A Site contains one or more DSMs.

Site will own the pointer and will delete the DSMConfig in its destructor.

References nidas::core::Site::_dsms, and nidas::core::Site::_ncDsms.

Referenced by nidas::core::Site::fromDOMElement().

◆ addParameter()

void Aircraft::addParameter ( Parameter * val)
virtual

Add a parameter to this Site.

Site will then own the pointer and will delete it in its destructor.

Reimplemented from nidas::core::Site.

References nidas::core::Site::addParameter(), and nidas::core::Site::getName().

Referenced by setTailNumber().

◆ addServer()

void nidas::core::Site::addServer ( DSMServer * srvr)
inlineinherited

A Site has one or more DSMServers.

References nidas::core::Site::_servers.

Referenced by nidas::core::Site::fromDOMElement().

◆ expandString()

std::string nidas::core::Site::expandString ( const std::string & input) const
inlineinherited

Utility function to expand ${TOKEN} or $TOKEN fields in a string.

Utility function to expand ${TOKEN} or $TOKEN fields in a string with their value from getTokenValue(). If curly brackets are not used, then the TOKEN should be delimited by a '/', a '.' or the end of string, e.g.: xxx/yyy/$ZZZ.dat

References nidas::core::Site::_dictionary, and nidas::core::Dictionary::expandString().

Referenced by nidas::core::Site::fromDOMElement().

◆ findDSM() [1/2]

const DSMConfig * Site::findDSM ( const std::string & name) const
inherited

◆ findDSM() [2/2]

const DSMConfig * Site::findDSM ( unsigned int id) const
inherited

Find a DSM by id.

References nidas::core::Site::_dsms, nidas::core::getSample(), and VLOG.

Referenced by nidas::core::Site::findDSM().

◆ findSensor()

DSMSensor * Site::findSensor ( unsigned int id) const
inherited

◆ findServer()

DSMServer * Site::findServer ( const std::string & hostname) const
inherited

Look for a server on this aircraft that either has no name or whose name matches hostname.

If none found, remove any domain names and try again.

References nidas::core::Site::_servers, and nidas::core::getSample().

◆ fromDOMElement()

void Site::fromDOMElement ( const xercesc::DOMElement * node)
virtualinherited

◆ getAircraft()

Aircraft * Aircraft::getAircraft ( Project * project)
static

Search the Project for the Aircraft site and return a pointer to it, or return null if there are no Aircraft sites.

References nidas::core::getSample().

Referenced by nidas::dynld::raf::SyncRecordSource::connect().

◆ getApplyVariableConversions()

virtual bool nidas::core::Site::getApplyVariableConversions ( ) const
inlinevirtualinherited

Do we want DSMSensor::process methods at this site to apply variable conversions? Currently on raf.Aircraft we don't want process methods to apply the conversions.

References nidas::core::Site::_applyCals.

◆ getDictionary()

const Dictionary & nidas::core::Site::getDictionary ( ) const
inlineinherited

◆ getDSMConfigIterator()

DSMConfigIterator Site::getDSMConfigIterator ( ) const
inherited

◆ getDSMConfigs() [1/2]

const std::list< DSMConfig * > & nidas::core::Site::getDSMConfigs ( )
inlineinherited

◆ getDSMConfigs() [2/2]

const std::list< const DSMConfig * > & nidas::core::Site::getDSMConfigs ( ) const
inlineinherited

◆ getDSMServerIterator()

DSMServerIterator Site::getDSMServerIterator ( ) const
inherited

◆ getDSMServiceIterator()

DSMServiceIterator Site::getDSMServiceIterator ( ) const
inherited

◆ getName()

const std::string & nidas::core::Site::getName ( ) const
inlineinherited

◆ getNamespaceURI()

static const XMLCh * nidas::core::DOMable::getNamespaceURI ( )
inlinestaticinherited

◆ getNumber()

int nidas::core::Site::getNumber ( ) const
inlineinherited

◆ getParameter()

const Parameter * Site::getParameter ( const std::string & name) const
virtualinherited

◆ getParameters()

const list< const Parameter * > & Site::getParameters ( ) const
virtualinherited

◆ getProcessorIterator()

ProcessorIterator Site::getProcessorIterator ( ) const
inherited

◆ getProject() [1/2]

Project * nidas::core::Site::getProject ( )
inlineinherited

◆ getProject() [2/2]

const Project * nidas::core::Site::getProject ( ) const
inlineinherited

◆ getSampleTagIterator()

SampleTagIterator Site::getSampleTagIterator ( ) const
inherited

◆ getSensorIterator()

SensorIterator Site::getSensorIterator ( ) const
inherited

◆ getServers()

const std::list< DSMServer * > & nidas::core::Site::getServers ( ) const
inlineinherited

◆ getSuffix()

const std::string & nidas::core::Site::getSuffix ( ) const
inlineinherited

◆ getTailNumber()

string Aircraft::getTailNumber ( ) const

Get/Set tail number of this aircraft.

References nidas::core::Site::getParameter().

◆ getTokenValue()

bool nidas::core::Site::getTokenValue ( const std::string & token,
std::string & value ) const
inlineinherited

Implement a lookup for tokens that I know about, like $SITE, and $AIRCRAFT.

For other tokens, call getProject()->getTokenValue(token,value);

References nidas::core::Site::_dictionary, and nidas::core::Site::MyDictionary::getTokenValue().

◆ getVariableIterator()

VariableIterator Site::getVariableIterator ( ) const
inherited

◆ initSensors() [1/2]

void Site::initSensors ( )
inherited

Initialize all sensors for a Site.

Exceptions
nidas::util::IOException

References nidas::core::Site::getDSMConfigs(), and nidas::core::getSample().

◆ initSensors() [2/2]

void Site::initSensors ( DSMConfig * dsm)
inherited

Initialize all sensors for a given dsm.

Exceptions
nidas::util::IOException

References nidas::core::Site::getDSMConfigs(), and nidas::core::getSample().

◆ operator!=()

bool nidas::core::Site::operator!= ( const Site & x) const
inlineinherited

Non-equivalence operator for Site.

References nidas::core::Site::operator==().

◆ operator<()

bool nidas::core::Site::operator< ( const Site & x) const
inlineinherited

Less than operator for Site, compares the names.

References nidas::core::Site::_name.

◆ operator==()

bool nidas::core::Site::operator== ( const Site & x) const
inlineinherited

Equivalence operator for Site, checks name.

References nidas::core::Site::_name, nidas::core::Site::_number, and nidas::core::Site::_suffix.

Referenced by nidas::core::Site::operator!=().

◆ removeDSMConfig()

void nidas::core::Site::removeDSMConfig ( DSMConfig * dsm)
inlineinherited

◆ setName()

void nidas::core::Site::setName ( const std::string & val)
inlineinherited

Set the name of the Site.

References nidas::core::Site::_name, and nidas::core::getSample().

Referenced by nidas::core::Site::fromDOMElement().

◆ setNumber()

void nidas::core::Site::setNumber ( int val)
inlineinherited

Identify the Site by number.

The site number can be used for things like a NetCDF station dimension.

Parameters
Sitenumber, 0 means no number is associated with the site.

References nidas::core::Site::_number, and nidas::core::getSample().

Referenced by nidas::core::Site::fromDOMElement().

◆ setProject()

void nidas::core::Site::setProject ( Project * val)
inlineinherited

Set the current project for this Site.

References nidas::core::Site::_project, and nidas::core::getSample().

◆ setSuffix()

void nidas::core::Site::setSuffix ( const std::string & val)
inlineinherited

Set the suffix for the Site.

All variable names from this site will have the suffix.

References nidas::core::Site::_suffix, and nidas::core::getSample().

Referenced by nidas::core::Site::fromDOMElement().

◆ setTailNumber()

void Aircraft::setTailNumber ( const std::string & val)

References addParameter().

◆ toDOMElement()

xercesc::DOMElement * Site::toDOMElement ( xercesc::DOMElement * node,
bool complete ) const
virtualinherited

◆ toDOMParent()

xercesc::DOMElement * Site::toDOMParent ( xercesc::DOMElement * parent,
bool complete ) const
virtualinherited
Exceptions
xercesc::DOMException

Reimplemented from nidas::core::DOMable.

References nidas::core::DOMable::getNamespaceURI(), and nidas::core::Site::toDOMElement().

Referenced by nidas::core::Project::toDOMElement().

◆ validate()

void Site::validate ( )
inherited

Member Data Documentation

◆ _applyCals

bool nidas::core::Site::_applyCals
protectedinherited

Should NIDAS apply calibrations, or defer them to other processing.

Referenced by nidas::core::Site::fromDOMElement(), and nidas::core::Site::getApplyVariableConversions().

◆ _constParameters

std::list<const Parameter*> nidas::core::Site::_constParameters
privateinherited

List of const pointers to Parameters for providing via getParameters().

Referenced by nidas::core::Site::addParameter(), and nidas::core::Site::getParameters().

◆ _dictionary

nidas::core::Site::MyDictionary nidas::core::Site::_dictionary
privateinherited

◆ _dsms

std::list<const DSMConfig*> nidas::core::Site::_dsms
privateinherited

◆ _name

std::string nidas::core::Site::_name
privateinherited

◆ _ncDsms

std::list<DSMConfig*> nidas::core::Site::_ncDsms
privateinherited

◆ _number

int nidas::core::Site::_number
privateinherited

◆ _parameterMap

std::map<std::string,Parameter*> nidas::core::Site::_parameterMap
privateinherited

◆ _project

Project* nidas::core::Site::_project
privateinherited

◆ _servers

std::list<DSMServer*> nidas::core::Site::_servers
privateinherited

◆ _suffix

std::string nidas::core::Site::_suffix
privateinherited

◆ namespaceURI

XMLCh * DOMable::namespaceURI = 0
staticprivateinherited

The documentation for this class was generated from the following files: