9 #ifndef __DIADES__AUTOMATA__EXPERIMENTAL__TSFILE__HH__ 10 #define __DIADES__AUTOMATA__EXPERIMENTAL__TSFILE__HH__ 18 namespace Experimental
108 std::unordered_map<std::string,std::string> & events,
109 std::string & fullEventLabel,
125 std::string & targetState,
126 std::string::size_type & semiColonIndex);
139 std::istream &
tsFileHeader(std::istream& stream, std::string & tsName,
bool & ok);
std::istream & tsFileTransitions(std::istream &stream, ManagedTsFsms &fsms, bool &ok, TsConversionMode mode)
Read the transitions of a Ts-format stream.
StatePropertyManager< DdAutStateLabel, DdAutStateId > DdAutStateManager
std::istream & tsFileTransitionLabel(std::istream &stream, std::unordered_map< std::string, std::string > &events, std::string &fullEventLabel, bool &ok)
Read the transition label in a ts-format file.
std::tuple< TsFsmPtr, TsStMgrPtr, TsEvtMgrPtr > ManagedTsFsm
bool checkSystemIdentifier(std::string &tsName, std::string::size_type &semiColonIndex)
check that tsName is the name of a transition_system
void tsExtractTargetState(const std::string &rawTargetState, std::string &targetState, std::string::size_type &semiColonIndex)
extract the target state for the raw target state
std::istream & tsFileStates(std::istream &stream, ManagedTsFsms &fsms, bool &ok)
bool fromTsFile(std::istream &stream, ManagedTsFsms &fsms, TsConversionMode mode)
Load a Ts file as a DdAutFsm.
Namespace of the Diades project.
bool pruneComments(std::istream &stream, bool &ok)
read the stream and ignore the next c-style/cpp style comments
std::shared_ptr< TsStMgr > TsStMgrPtr
EventManager< DdAutEventLabel, DdAutEventId > DdAutEventManager
std::vector< ManagedTsFsm > ManagedTsFsms
std::shared_ptr< TsEvtMgr > TsEvtMgrPtr
StateMachine< DdAutStateId, DdAutEventId > DdAutFsm
bool pruneCommentsBlock(std::istream &stream, bool &ok)
analyze the stream and look for the end of a comment block
std::shared_ptr< TsFsm > TsFsmPtr
std::istream & tsFileHeader(std::istream &stream, std::string &tsName, bool &ok)
parse the Ts-format file header
std::string tsPrettyEvent(const std::string &tsEvent)
std::streampos nextNoWhiteSpaceCharacter(std::istream &stream, bool &ok)
return the stream position just before the first character that is a white space (not such that std::...