Changeset 94
- Timestamp:
- 06/04/10 10:17:44 (14 years ago)
- Location:
- XMLIO_V2/dev/dev_rv
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
XMLIO_V2/dev/dev_rv/attribut.hpp
r88 r94 42 42 43 43 Attribut(void) : hasValue(false) {} ; 44 Attribut(const Ctype& value_) : value(value_), hasValue(true) {} ;44 Attribut(const Ctype& value_) : hasValue(true), value(value_) {} ; 45 45 46 46 Attribut(const Attribut& attr) : hasValue(attr.hasValue) -
XMLIO_V2/dev/dev_rv/context.hpp
r91 r94 30 30 31 31 if (!(_node.goToChildElement())) 32 WARNING("Le context sne contient pas d'enfant !");32 WARNING("Le context ne contient pas d'enfant !"); 33 33 else 34 34 { … … 41 41 42 42 if (attributes.end() != attributes.find("id")) 43 { WARNING("Le noeud de définition possÚde un identifiant, ilne sera pas pris en compte lors du traitement !"); }43 { WARNING("Le noeud de définition possÚde un identifiant, ce dernier ne sera pas pris en compte lors du traitement !"); } 44 44 45 45 if (name.compare("field_definition") == 0) … … 49 49 WARNING("Le context possÚde déjà un noeud de définition de champs, le dernier défini complétera le premier !"); 50 50 51 fieldDef = (FieldDefinition*)&FieldDefinition::CreateObject("field_definition"); 52 fieldDef->parse(_node, true); 51 fieldDef = (FieldDefinition*)&FieldDefinition::CreateObject("field_definition"); // << Conversion possible car la classe Field n'a pas de propriétés. 52 fieldDef->parse(_node); 53 53 54 continue; 54 } 55 } 56 else if (name.compare("file_definition") == 0) 57 { // Parsing pour la définition des fichiers. 58 } 59 else if (name.compare("axis_definition") == 0) 60 { // Parsing pour la définition des axes. 61 } 62 else if (name.compare("grid_definition") == 0) 63 { // Parsing pour la définition des grilles. 64 } 65 else 66 WARNING("La définition est invalide, seules les champs, grilles, axes et fichiers peuvent être définis !"); 67 68 55 69 // Traitement file, grid et axis à compléter. 56 70 } while (_node.goToNextElement()); -
XMLIO_V2/dev/dev_rv/field_group.hpp
r91 r94 27 27 virtual const char* getName(void) const {return ("FieldGroup"); } 28 28 29 void parse (XMLNode& _node , bool isFieldDef = false)29 void parse (XMLNode& _node) 30 30 { 31 31 string name = _node.getElementName(); … … 39 39 40 40 /// PARSING POUR GESION DES ENFANTS 41 // A compléter. 42 41 if (!(_node.goToChildElement())) 42 WARNING("Le groupe de champ ne contient pas d'enfant !"); 43 else 44 { 45 ////////////////////////////////////// 46 do { // Parcours des contexts pour traitement. 47 48 string name = _node.getElementName(); 49 attributes.clear(); 50 _node.getAttributes(attributes); 51 52 if (name.compare("field_group") == 0) 53 { // Parsing pour les groupes de champs 54 55 if (attributes.end() != attributes.find("id")) 56 {// Si l'identifiant est défini. 57 if (FieldGroup::HasObject(attributes["id"])) 58 WARNING("Dans le context actuel, un groupe de champ du même nom existe déjà , le second fera référence au premier par défaut !"); // TODO TODO 59 FieldGroup* fgroup =(FieldGroup*)&createGroup(attributes["id"]); 60 fgroup->parse(_node); 61 } 62 /*else 63 this->createGroup();*/ 64 65 66 continue; 67 68 } 69 else if (name.compare("field") == 0) 70 { // Parsing pour les champs 71 72 if (attributes.end() != attributes.find("id")) 73 if (Field::HasObject(attributes["id"])) 74 WARNING("Dans le context actuel, un champ du même nom existe déjà , le second fera référence au premier par défaut !"); // TODO TODO 75 } 76 else 77 WARNING("Un groupe de champs ne peut contenir qu'un champ ou un autre groupe de champs !"); 78 79 } while (_node.goToNextElement()); 80 ////////////////////////////////////// 81 _node.goToParentElement(); // Retour au parent 82 } 83 43 84 return; 44 85 } -
XMLIO_V2/dev/dev_rv/xmlio.hpp
r91 r94 26 26 27 27 // Concernant les attributs ... 28 #include "field_attribut.hpp" 28 29 29 #include "xmlio_object.hpp" 30 30 #include "xmlio_xml_node.hpp" 31 31 #include "xmlio_object_template.hpp" 32 #include "field_attribut.hpp" 32 33 #include "field.hpp" 33 34 #include "xmlio_group_template.hpp" … … 37 38 38 39 39 40 41 42 40 #endif // __XMLIO__ -
XMLIO_V2/dev/dev_rv/xmlio_group_template.hpp
r91 r94 9 9 public: 10 10 11 GroupTemplate(void) : ObjectTemplate<GroupTemplate<T, U> >(), childList(), groupList(), U()11 GroupTemplate(void) : ObjectTemplate<GroupTemplate<T, U> >(), U(), childList(), groupList() 12 12 {/* Ne rien faire de plus */} 13 GroupTemplate(const string& _id) : ObjectTemplate<GroupTemplate<T, U> >(_id), childList(), groupList(), U()13 GroupTemplate(const string& _id) : ObjectTemplate<GroupTemplate<T, U> >(_id), U(), childList(), groupList() 14 14 {/* Ne rien faire de plus */} 15 15 16 16 virtual const char* getName(void) const {return ("GroupTemplate"); } 17 17 18 18 /// Pour les groupes d'objets enfants /// 19 19 20 20 GroupTemplate<T, U>& createGroup(const string _id) throw (XMLIOUndefinedValueException) 21 21 { 22 GroupTemplate<T, U>& obj = GroupTemplate<T, U>::CreateObject(_id); 23 groupList.addPtrObject(&obj); 24 return (obj); 22 GroupTemplate<T, U>::CreateObject(_id); 23 // groupList.addPtrObject(&obj);// Foireux 24 25 return (GroupTemplate<T, U>::GetObject(_id)); 25 26 } 26 27 … … 28 29 { 29 30 GroupTemplate<T, U>& obj = GroupTemplate<T, U>::CreateObject(); 30 groupList.addPtrObject(&obj); 31 //groupList.addPtrObject(&obj); // Foireux 32 31 33 return (obj); 32 34 } -
XMLIO_V2/dev/dev_rv/xmlio_logger.hpp
r88 r94 39 39 static Logger & GetConsoleLogger(void) {return (Logger::get("ConsoleLogger"));} 40 40 41 ~ILogger(void) { delete pf , pFCConsole;}41 ~ILogger(void) { delete pf;} 42 42 43 43 private : -
XMLIO_V2/dev/dev_rv/xmlio_object_template.hpp
r91 r94 24 24 // Ajout d'un nouvel objet si l'identifiant n'est pas répertorié. 25 25 T identified_object(_id); 26 26 27 ObjectTemplate<T>::AllListObj[CurrContext].addObject(identified_object); 27 28 ObjectTemplate<T>::GetObject(_id).registerAllAttributes(); 29 28 30 return (ObjectTemplate<T>::GetObject(_id)); 29 31 } … … 31 33 static T& CreateObject(void) 32 34 { 33 ObjectTemplate<T>:: CurrListObj.addObject(*(new T)); //<< Perte mémoire ici34 return (*(ObjectTemplate<T>:: CurrListObj.getVector()[ObjectTemplate<T>::CurrListObj.getVectorSize()-1]));35 ObjectTemplate<T>::AllListObj[CurrContext].addObject(*(new T)); //<< Perte mémoire ici 36 return (*(ObjectTemplate<T>::AllListObj[CurrContext].getVector()[ObjectTemplate<T>::AllListObj[CurrContext].getVectorSize()-1])); 35 37 } 36 38 -
XMLIO_V2/dev/dev_rv/xmlio_xml_parser.hpp
r91 r94 19 19 THashAttributes attributes; 20 20 21 do {21 do { 22 22 // Traitement de l'identifiant 23 23 _node.getAttributes(attributes); … … 27 27 28 28 if( Context::HasObject(attributes["id"])) 29 { WARNING("Le context ne sera pas traité car il existe déjà !"); continue; }29 { WARNING("Le context ne sera pas traité car il existe déjà un autre context possédant le même nom !"); continue; } 30 30 31 31 Context::SetCurrentContext(attributes["id"]); … … 44 44 XMLParser::Parse(node); 45 45 log << "Nombre de contexts listés : " << Context::GetCurrentListObject().getSize() << " contre 2 attendus."<< std::endl; 46 log << "Nombre de contexts listés : " << FieldGroup::GetCurrentListObject().getSize() << " contre 1 attendus."<< std::endl; 46 47 log << "Test XMLParser ... ok !" << std::endl; 47 48 return (true);
Note: See TracChangeset
for help on using the changeset viewer.