24 |
|
|
25 |
#include <string> |
#include <string> |
26 |
|
|
27 |
#include "GEDCOMParser/Address.hh" |
#include "GEDCOMParser/AddressManager.hh" |
28 |
#include "GEDCOMParser/Place.hh" |
#include "GEDCOMParser/Place.hh" |
29 |
#include "GEDCOMParser/MultimediaLink.hh" |
#include "GEDCOMParser/AttachmentManager.hh" |
|
#include "GEDCOMParser/NoteStructure.hh" |
|
|
#include "GEDCOMParser/SourceCitation.hh" |
|
30 |
#include "GEDCOMParser/DateManagement/DateValue.hh" |
#include "GEDCOMParser/DateManagement/DateValue.hh" |
31 |
#include "GEDCOMParser/Visitor/GEDCOMElement.hh" |
#include "GEDCOMParser/Visitor/GEDCOMElement.hh" |
32 |
|
|
35 |
{ |
{ |
36 |
class GEDCOMVisitor; |
class GEDCOMVisitor; |
37 |
/// @memo Implements the GEDCOM 5.5 EVENT_DETAIL structure |
/// @memo Implements the GEDCOM 5.5 EVENT_DETAIL structure |
38 |
class Event : public GEDCOMElement |
class Event : public GEDCOMElement, |
39 |
|
public AttachmentManager, |
40 |
|
public AddressManager |
41 |
{ |
{ |
42 |
public: |
public: |
43 |
typedef enum |
typedef enum |
50 |
e_Age, |
e_Age, |
51 |
e_Agnc, |
e_Agnc, |
52 |
e_Caus, |
e_Caus, |
53 |
e_Citations, |
e_Attachment |
|
e_MultimediaLinks, |
|
|
e_NoteStructure |
|
54 |
} |
} |
55 |
enumAttributes; |
enumAttributes; |
56 |
Event (void): |
Event (void): |
57 |
_type (""), |
_type (""), |
58 |
_date (0), |
_date (0), |
59 |
_place (), |
_place (), |
|
_address (), |
|
60 |
_age (""), |
_age (""), |
61 |
_agnc (""), |
_agnc (""), |
62 |
_caus (""), |
_caus (""), |
|
_citations (), |
|
|
_mm_links (), |
|
|
_notes (), |
|
63 |
_updated_attr (e_None) |
_updated_attr (e_None) |
64 |
{ |
{ |
65 |
}; |
}; |
67 |
_type (e._type), |
_type (e._type), |
68 |
_date (0), |
_date (0), |
69 |
_place (e._place), |
_place (e._place), |
|
_address (e._address), |
|
70 |
_age (e._age), |
_age (e._age), |
71 |
_agnc (e._agnc), |
_agnc (e._agnc), |
72 |
_caus (e._caus), |
_caus (e._caus), |
|
_citations (e._citations), |
|
|
_mm_links (e._mm_links), |
|
|
_notes (e._notes), |
|
73 |
_updated_attr (e._updated_attr) |
_updated_attr (e._updated_attr) |
74 |
{ |
{ |
75 |
if (e._date != 0) |
if (e._date != 0) |
94 |
/// |
/// |
95 |
GEDCOMParser::Place * setPlace (Place * const data = 0); |
GEDCOMParser::Place * setPlace (Place * const data = 0); |
96 |
/// |
/// |
97 |
GEDCOMParser::Address * setAddress (Address * const data = 0); |
void setAddress (Address * const data = 0); |
98 |
/// |
/// |
99 |
void setAge (std::string const &); |
void setAge (std::string const &); |
100 |
/// |
/// |
102 |
/// |
/// |
103 |
void setCaus (std::string const &); |
void setCaus (std::string const &); |
104 |
/// |
/// |
105 |
GEDCOMParser::NoteStructure * addNoteStructure (NoteStructure * const data = 0); |
void addAttachment (GEDCOMParser::Attachment * const data); |
106 |
/// |
/// |
107 |
GEDCOMParser::SourceCitation * addSourceCitation (SourceCitation * const data = 0); |
void addMultimediaLink (GEDCOMParser::Attachment * const data); |
108 |
/// |
/// |
109 |
GEDCOMParser::MultimediaLink * addMultimediaLink (MultimediaLink * const data = 0); |
void addNoteStructure (GEDCOMParser::Attachment * const data); |
110 |
|
/// |
111 |
|
void addSourceCitation (GEDCOMParser::Attachment * const data); |
112 |
/// |
/// |
113 |
//@} |
//@} |
114 |
|
|
122 |
/// |
/// |
123 |
SmartPtr<Place> const &getPlace(void) const; |
SmartPtr<Place> const &getPlace(void) const; |
124 |
/// |
/// |
|
SmartPtr<Address> const &getAddress(void) const; |
|
|
/// |
|
125 |
virtual std::string const &getAge(void) const; |
virtual std::string const &getAge(void) const; |
126 |
/// |
/// |
127 |
virtual std::string const &getAgnc(void) const; |
virtual std::string const &getAgnc(void) const; |
128 |
/// |
/// |
129 |
virtual std::string const &getCaus(void) const; |
virtual std::string const &getCaus(void) const; |
|
/// |
|
|
NoteStructures_t const &getNoteStructures(void) const; |
|
|
/// |
|
|
SourceCitations_t const &getSourceCitations(void) const; |
|
|
/// |
|
|
MultimediaLinks_t const &getMultimediaLinks(void) const; |
|
|
/// |
|
130 |
//@} |
//@} |
131 |
virtual void Accept(GEDCOMParser::GEDCOMVisitor *); |
virtual void Accept(GEDCOMParser::GEDCOMVisitor *); |
132 |
protected: |
protected: |
133 |
std::string _type; |
std::string _type; |
134 |
GEDCOMParser::DateManagement::DateValue * _date; |
GEDCOMParser::DateManagement::DateValue * _date; |
135 |
SmartPtr<Place> _place; |
SmartPtr<Place> _place; |
|
SmartPtr<Address> _address; |
|
136 |
std::string _age; |
std::string _age; |
137 |
std::string _agnc; |
std::string _agnc; |
138 |
std::string _caus; |
std::string _caus; |
|
SourceCitations_t _citations; |
|
|
MultimediaLinks_t _mm_links; |
|
|
NoteStructures_t _notes; |
|
139 |
enumAttributes _updated_attr; |
enumAttributes _updated_attr; |
140 |
void _setType (std::string const &); |
void _setType (std::string const &); |
141 |
void _setDate (GEDCOMParser::DateManagement::DateValue const &); |
void _setDate (GEDCOMParser::DateManagement::DateValue const &); |
142 |
void _setPlace (SmartPtr<Place> const &); |
void _setPlace (SmartPtr<Place> const &); |
143 |
void _setAddress (SmartPtr<Address> const &); |
void _setAddress (Address * const data = 0); |
144 |
void _setAge (std::string const &); |
void _setAge (std::string const &); |
145 |
void _setAgnc (std::string const &); |
void _setAgnc (std::string const &); |
146 |
void _setCaus (std::string const &); |
void _setCaus (std::string const &); |
147 |
void _addNoteStructure (SmartPtr<NoteStructure> const &); |
void _addAttachment (SmartPtr < GEDCOMParser::Attachment > const& data); |
|
void _addSourceCitation (SmartPtr<SourceCitation> const &); |
|
|
void _addMultimediaLink (SmartPtr<MultimediaLink> const &); |
|
148 |
}; |
}; |
149 |
}; |
}; |
150 |
#endif |
#endif |