Predicates.cpp File Reference
#include "Predicates.h"
#include "uscxml/util/String.h"
Include dependency graph for Predicates.cpp:

Macros

#define VERBOSE_FIND_LCCA   0
 See: http://www.w3.org/TR/scxml/#LCCA The Least Common Compound Ancestor is the <state> or <scxml> element s such that s is a proper ancestor of all states on stateList and no descendant of s has this property. More...
 

Functions

bool uscxml::areFromSameMachine (const DOMNode *n1, const DOMNode *n2)
 
bool uscxml::conflicts (const DOMElement *t1, const DOMElement *t2, const DOMElement *root)
 
DOMElement * uscxml::findLCCA (const std::list< DOMElement * > &states)
 
std::list< DOMElement * > uscxml::getChildStates (const DOMElement *state, bool properOnly)
 
std::list< XERCESC_NS::DOMElement * > uscxml::getChildStates (const std::list< XERCESC_NS::DOMElement * > &states, bool properOnly)
 
std::list< DOMElement * > uscxml::getExitSet (const DOMElement *transition, const DOMElement *root)
 
std::list< DOMElement * > uscxml::getInitialStates (const DOMElement *state, const DOMElement *root)
 In a conformant SCXML document, a compound state may specify either an "initial" attribute or an <initial> element, but not both. More...
 
DOMElement * uscxml::getParentState (const DOMElement *element)
 
std::list< DOMElement * > uscxml::getProperAncestors (const DOMElement *s1, const DOMElement *s2)
 
std::list< DOMElement * > uscxml::getReachableStates (const DOMElement *root)
 
DOMElement * uscxml::getSourceState (const DOMElement *transition)
 
DOMElement * uscxml::getState (const std::string &stateId, const DOMElement *root)
 
std::list< DOMElement * > uscxml::getStates (const std::list< std::string > &stateIds, const DOMElement *root)
 
std::list< DOMElement * > uscxml::getTargetStates (const DOMElement *transition, const DOMElement *root)
 
DOMElement * uscxml::getTransitionDomain (const DOMElement *transition, const DOMElement *root)
 
bool uscxml::isAtomic (const DOMElement *state)
 
bool uscxml::isCompound (const DOMElement *state)
 
bool uscxml::isFinal (const DOMElement *state)
 
bool uscxml::isHistory (const DOMElement *state)
 
bool uscxml::isParallel (const DOMElement *state)
 
bool uscxml::isState (const DOMElement *state, bool properOnly)
 

Detailed Description

Macro Definition Documentation

#define VERBOSE_FIND_LCCA   0

Note that there is guaranteed to be such an element since the <scxml> wrapper element is a common ancestor of all states. Note also that since we are speaking of proper ancestor (parent or parent of a parent, etc.) the LCCA is never a member of stateList.