25 #ifndef __DSM_GOPPRRTRANSFORMER_H__
26 #define __DSM_GOPPRRTRANSFORMER_H__
33 #include "../GOPPRR/Graph.h"
34 #include "Error/ExceptionTypes.h"
36 #include <libxml++/nodes/element.h>
39 #include <libxml++/nodes/textnode.h>
40 #include "../GOPPRR/Project.h"
41 #include "../GOPPRR/Object.h"
42 #include "../GOPPRR/Port.h"
43 #include "../GOPPRR/Property.h"
44 #include "../GOPPRR/Role.h"
45 #include "../GOPPRR/Relationship.h"
46 #include "../GOPPRR/Connection.h"
47 #include "../GOPPRR/Binding.h"
48 #include "../GOPPRR/GraphicalContainer.h"
164 static void CreatePropertyIterative(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
179 static void CreateObjectIterative(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
198 static void CreateExplosionIterative(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph > & Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty > & Properties, std::map< ::std::string, ::GOPPRR::CPort > & Ports, std::map< ::std::string, ::GOPPRR::CRole > & Roles, std::map< ::std::string, ::GOPPRR::CRelationship > & Relationships, std::map< ::std::string, ::GOPPRR::CGraph* >& Explosions)
throw(
DSM::Error::CException);
216 static void CreatePortIterative(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
234 static void CreateRoleIterative(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
252 static void CreateRelationshipIterative(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
271 static void CreateGraphIterative(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph > & Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort > & Ports, std::map< ::std::string, ::GOPPRR::CRole > & Roles, std::map< ::std::string, ::GOPPRR::CRelationship > & Relationships,
bool& bRoot)
throw(
DSM::Error::CException);
290 static void CreateGraph(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph > & Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort > & Ports, std::map< ::std::string, ::GOPPRR::CRole > & Roles, std::map< ::std::string, ::GOPPRR::CRelationship > & Relationships,
bool& bRoot)
throw(
DSM::Error::CException);
311 static void CreateGraph(const ::std::string& OID, ::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships,
bool& bRoot)
throw(
DSM::Error::CException);
326 static void CreateObject(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
346 static void CreateObject(const ::std::string& OID, ::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
364 static void CreatePort(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
384 static void CreatePort(const ::std::string& OID, ::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
402 static void CreateProperty(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
422 static void CreateProperty(const ::std::string& OID, ::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
440 static void CreateRole(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
460 static void CreateRole(const ::std::string& OID, ::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
478 static void CreateRelationship(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
498 static void CreateRelationship(const ::std::string& OID, ::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph >& Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty >& Properties, std::map< ::std::string, ::GOPPRR::CPort >& Ports, std::map< ::std::string, ::GOPPRR::CRole >& Roles, std::map< ::std::string, ::GOPPRR::CRelationship >& Relationships)
throw(
DSM::Error::CException);
517 static void CreateExplosion(::xmlpp::Element * pXMLElement, std::map< ::std::string, ::GOPPRR::CGraph > & Graphs, std::map< ::std::string, ::GOPPRR::CObject > & Objects, std::map< ::std::string, ::GOPPRR::CProperty > & Properties, std::map< ::std::string, ::GOPPRR::CPort > & Ports, std::map< ::std::string, ::GOPPRR::CRole > & Roles, std::map< ::std::string, ::GOPPRR::CRelationship > & Relationships, std::map< ::std::string, ::GOPPRR::CGraph* >& Explosions)
throw(
DSM::Error::CException);
531 static ::xmlpp::Element*
FindElementByXPath(const ::xmlpp::Element * pXMLElement, const ::std::string & XPath, const ::std::string & OID)
throw();
546 #ifdef __HAS_UNIT_TEST__
550 #endif // #ifdef __HAS_UNIT_TEST__
560 #endif // __ DSM_GOPPRRTRANSFORMER_H__