list d'objet dans une classe
alors c'est assez dur à expliquer comme ça, donc je vais utiliser directement le cas sur lequel je suis !
je recois un message XML dans un string qui a cette tête :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
<Alien-RFID-Reader-Auto-Notification>
<ReaderName>xxxr</ReaderName>
<ReaderType>xxxx</ReaderType>
<IPAddress>xxx.yyy.zzz.www</IPAddress>
<CommandPort>ab</CommandPort>
<MACAddress>xx:xx:xx:xx:xx:xx</MACAddress>
<Time>...</Time>
<Reason>...</Reason>
<StartTriggerLines>..</StartTriggerLines>
<StopTriggerLines>..</StopTriggerLines>
<Alien-RFID-Tag-List>
<Alien-RFID-Tag>
<TagID>...........</TagID>
<DiscoveryTime>......</DiscoveryTime>
<LastSeenTime>.....</LastSeenTime>
<Antenna>...</Antenna>
<ReadCount>..</ReadCount>
<Protocol>...</Protocol>
</Alien-RFID-Tag>
<Alien-RFID-Tag>
...
</Alien-RFID-Tag>
...
<Alien-RFID-Tag>
...
</Alien-RFID-Tag>
</Alien-RFID-Tag-List>
</Alien-RFID-Reader-Auto-Notification> |
comme vous le constater, j'ai un gros ensemble (notification), qui un contient un autre (taglist) qui peut en contenir plusieurs (Tag).
Le truc c'est que je cherche à parser ce xml (on m'a conseillé TinyXML pour ça) mais je voudrais récupérer les information dans un objet.
la situation est maintenant posée. Passons au problème maintenant :
Je cherche donc à créer une classe que le parseur me remplira.
j'ai donc fait quelque chose de ce style :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| class Notify
{
private:
std::string readername;
std::string readertype;
std::string ipaddress;
int commandport;
std::string macaddress;
std::string time;
std::string reason;
std::string starttriggerlines;
std::string stopttriggerlines;
};
class Tag
{
private:
std::string tagid;
std::string discoverytime;
std::string lastseentime;
int antenna;
int readcount;
int protocol;
}; |
la classe Notify me sert pour l'ensemble du message, la classe tag pour chaque tag que je peux avoir dedans.
mais le problème, comment lier les deux ? Comment dire à la classe Notify quelle peut avoir un ou plusieurs objets de type Tag, mais que c'est le parseur qui décidera combien ?
en résumer, ça donne comment parser correctement ce message de m**** ? :D
merci d'avoir lu jusqu'ici et d'essayer de m'aider.