Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

IDEA::XercesModelLoader Class Reference

XIDDLModelLoader implementation using Xerces-C++ parser. More...

#include <XercesModelLoader.hh>

Inheritance diagram for IDEA::XercesModelLoader:

IDEA::XIDDLModelLoader List of all members.

Public Methods

 XercesModelLoader ()
 Constructor.

 ~XercesModelLoader ()
 Destructor.

bool loadModel (const PslDatabase *database, const AgentRelay *agentRelay, const std::string &model)
 Loads a XIDDL model.

bool getAgentName (const std::string &model, std::string &name)
bool getTimeUnit (const std::string &agentName, const std::string &model, Granularity &granulity)
bool getLatency (const std::string &agentName, const std::string &model, Time &latency)

Private Methods

bool parseModel (const std::string &model)
bool initializeParser ()
void parseAgent (DOMElement *node)
bool parseAgent (DOMDocument *document)
int parseCallArguments (DOMElement *node, int index, const PslPredicate *predicate)
 Returns the number of call-arguments parsed.

void parseObjects (DOMDocument *document)
void parseChildByTag (DOMElement *node, const std::string &tag, int index, std::string &value)
void parseDefineProcedure (DOMElement *node)
void parseDefineMemberValues (DOMElement *node)
void parseDurationConstant (DOMElement *node)
void parseInitialCommunicationChannels (DOMElement *node)
void parseInitialSubSystems (DOMElement *node)
int parseInternalModes (DOMElement *node, int index, const PslPredicate *predicate)
 Returns the number of modes parsed.

void parseInternalProcess (DOMElement *node)
void parseLabelSet (DOMElement *node)
void parseNameChild (DOMElement *node, std::string &name)
void parseNumericConstant (DOMElement *node)
void parseObjectClass (DOMElement *node)
void parseProcedures (DOMDocument *document)
int parseReturnArguments (DOMElement *node, int index, const PslPredicate *predicate)
 Returns the number of return-arguments parsed.

int parseReturnStatus (DOMElement *node, int index, const PslPredicate *predicate)
 Returns the number of return-status parsed.

void parseSubSystem (DOMElement *node)
void parseTypeRangeNameArgument (DOMElement *elementNode, const PslPredicate *predicate, int index, const PslArgumentType &argType, const PslSelectorType &modeType)
void parseTypeRangeNameFlagArgument (DOMElement *node, const PslPredicate *predicate, int index, const PslArgumentType &type, const PslArgumentType &flagType)
 Parses a type-range-name-and-flag element and creates two PslArgument at position index of PslArgumentType type and at index + 1 of PslArgumentType flagType and datatype boolean for predicate.

void parseValueChild (DOMElement *node, double &value)
bool getTextValue (DOMNode *node, std::string &value) const
bool getRealValue (DOMNode *node, double &value) const

Private Attributes

XercesDOMParser * m_Parser
const PslDatabasem_Database
const AgentRelaym_AgentRelay

Detailed Description

XIDDLModelLoader implementation using Xerces-C++ parser.

class XercesModelLoader


Constructor & Destructor Documentation

IDEA::XercesModelLoader::XercesModelLoader  
 

Constructor.

IDEA::XercesModelLoader::~XercesModelLoader  
 

Destructor.


Member Function Documentation

bool IDEA::XercesModelLoader::getAgentName const std::string &    model,
std::string &    name
[virtual]
 

Implements IDEA::XIDDLModelLoader.

bool IDEA::XercesModelLoader::getLatency const std::string &    agentName,
const std::string &    model,
Time   latency
[virtual]
 

Implements IDEA::XIDDLModelLoader.

bool IDEA::XercesModelLoader::getRealValue DOMNode *    node,
double &    value
const [private]
 

bool IDEA::XercesModelLoader::getTextValue DOMNode *    node,
std::string &    value
const [private]
 

bool IDEA::XercesModelLoader::getTimeUnit const std::string &    agentName,
const std::string &    model,
Granularity   granulity
[virtual]
 

Implements IDEA::XIDDLModelLoader.

bool IDEA::XercesModelLoader::initializeParser   [private]
 

bool IDEA::XercesModelLoader::loadModel const PslDatabase   database,
const AgentRelay   agentRelay,
const std::string &    model
[virtual]
 

Loads a XIDDL model.

Implements IDEA::XIDDLModelLoader.

bool IDEA::XercesModelLoader::parseAgent DOMDocument *    document [private]
 

void IDEA::XercesModelLoader::parseAgent DOMElement *    node [private]
 

int IDEA::XercesModelLoader::parseCallArguments DOMElement *    node,
int    index,
const PslPredicate   predicate
[private]
 

Returns the number of call-arguments parsed.

void IDEA::XercesModelLoader::parseChildByTag DOMElement *    node,
const std::string &    tag,
int    index,
std::string &    value
[private]
 

void IDEA::XercesModelLoader::parseDefineMemberValues DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseDefineProcedure DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseDurationConstant DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseInitialCommunicationChannels DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseInitialSubSystems DOMElement *    node [private]
 

int IDEA::XercesModelLoader::parseInternalModes DOMElement *    node,
int    index,
const PslPredicate   predicate
[private]
 

Returns the number of modes parsed.

void IDEA::XercesModelLoader::parseInternalProcess DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseLabelSet DOMElement *    node [private]
 

bool IDEA::XercesModelLoader::parseModel const std::string &    model [private]
 

void IDEA::XercesModelLoader::parseNameChild DOMElement *    node,
std::string &    name
[private]
 

void IDEA::XercesModelLoader::parseNumericConstant DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseObjectClass DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseObjects DOMDocument *    document [private]
 

void IDEA::XercesModelLoader::parseProcedures DOMDocument *    document [private]
 

int IDEA::XercesModelLoader::parseReturnArguments DOMElement *    node,
int    index,
const PslPredicate   predicate
[private]
 

Returns the number of return-arguments parsed.

int IDEA::XercesModelLoader::parseReturnStatus DOMElement *    node,
int    index,
const PslPredicate   predicate
[private]
 

Returns the number of return-status parsed.

void IDEA::XercesModelLoader::parseSubSystem DOMElement *    node [private]
 

void IDEA::XercesModelLoader::parseTypeRangeNameArgument DOMElement *    elementNode,
const PslPredicate   predicate,
int    index,
const PslArgumentType   argType,
const PslSelectorType   modeType
[private]
 

void IDEA::XercesModelLoader::parseTypeRangeNameFlagArgument DOMElement *    node,
const PslPredicate   predicate,
int    index,
const PslArgumentType   type,
const PslArgumentType   flagType
[private]
 

Parses a type-range-name-and-flag element and creates two PslArgument at position index of PslArgumentType type and at index + 1 of PslArgumentType flagType and datatype boolean for predicate.

void IDEA::XercesModelLoader::parseValueChild DOMElement *    node,
double &    value
[private]
 


Member Data Documentation

const AgentRelay* IDEA::XercesModelLoader::m_AgentRelay [private]
 

const PslDatabase* IDEA::XercesModelLoader::m_Database [private]
 

XercesDOMParser* IDEA::XercesModelLoader::m_Parser [private]
 


Contact information
© IDEA
Generated on Fri Feb 3 17:09:49 2006 for IDEA.