| 38 |
//@} |
//@} |
| 39 |
}; |
}; |
| 40 |
|
|
| 41 |
#include "GEDCOMParser/MultimediaLink.hh" |
#include "GEDCOMParser/AttachmentManager.hh" |
|
#include "GEDCOMParser/NoteStructure.hh" |
|
| 42 |
#include "GEDCOMParser/DateManagement/DateValue.hh" |
#include "GEDCOMParser/DateManagement/DateValue.hh" |
| 43 |
|
#include "GEDCOMParser/Attachment.hh" |
| 44 |
|
|
| 45 |
/// |
/// |
| 46 |
namespace GEDCOMParser |
namespace GEDCOMParser |
| 47 |
{ |
{ |
| 48 |
/// @memo Implements the GEDCOM 5.5 SOURCE_CITATION structure |
/// @memo Implements the GEDCOM 5.5 SOURCE_CITATION structure |
| 49 |
class SourceCitation : public GEDCOMElement |
class SourceCitation : public GEDCOMElement, |
| 50 |
|
public Attachment, |
| 51 |
|
public AttachmentManager |
| 52 |
{ |
{ |
| 53 |
protected: |
protected: |
| 54 |
std::string _source_xref; |
std::string _source_xref; |
| 58 |
GEDCOMParser::DateManagement::DateValue * _data_date; |
GEDCOMParser::DateManagement::DateValue * _data_date; |
| 59 |
std::string _data_text; |
std::string _data_text; |
| 60 |
std::string _quay; |
std::string _quay; |
|
MultimediaLinks_t _mm_links; |
|
|
NoteStructures_t _notes; |
|
| 61 |
std::string _description; |
std::string _description; |
| 62 |
std::string _text; |
std::string _text; |
| 63 |
public: |
public: |
| 69 |
_data_date(0), |
_data_date(0), |
| 70 |
_data_text(), |
_data_text(), |
| 71 |
_quay(), |
_quay(), |
|
_mm_links(), |
|
|
_notes(), |
|
| 72 |
_description(), |
_description(), |
| 73 |
_text() |
_text() |
| 74 |
{ |
{ |
| 82 |
_data_date(0), |
_data_date(0), |
| 83 |
_data_text(s._data_text), |
_data_text(s._data_text), |
| 84 |
_quay(s._quay), |
_quay(s._quay), |
|
_mm_links(s._mm_links), |
|
|
_notes(s._notes), |
|
| 85 |
_description(s._description), |
_description(s._description), |
| 86 |
_text(s._text) |
_text(s._text) |
| 87 |
{ |
{ |
| 118 |
/// |
/// |
| 119 |
void setQuay (std::string const &); |
void setQuay (std::string const &); |
| 120 |
/// |
/// |
|
GEDCOMParser::MultimediaLink * addMultimediaLink (MultimediaLink * const data = 0); |
|
|
/// |
|
|
GEDCOMParser::NoteStructure * addNoteStructure (NoteStructure * const data = 0); |
|
|
/// |
|
| 121 |
void concDescription (std::string const &); |
void concDescription (std::string const &); |
| 122 |
/// |
/// |
| 123 |
void contDescription (std::string const &); |
void contDescription (std::string const &); |
| 144 |
/// |
/// |
| 145 |
virtual std::string const &getQuay(void) const; |
virtual std::string const &getQuay(void) const; |
| 146 |
/// |
/// |
|
MultimediaLinks_t const &getMultimediaLinks(void) const; |
|
|
/// |
|
|
NoteStructures_t const &getNoteStructures(void) const; |
|
|
/// |
|
| 147 |
virtual std::string const &getDescription(void) const; |
virtual std::string const &getDescription(void) const; |
| 148 |
/// |
/// |
| 149 |
virtual std::string const &getText(void) const; |
virtual std::string const &getText(void) const; |
| 150 |
//@} |
//@} |
| 151 |
|
///operator == used to find a source citation by its source record xref |
| 152 |
|
friend bool operator==(SourceCitation const &source_citation, std::string const &source_xref) |
| 153 |
|
{ |
| 154 |
|
return (source_citation._source_xref == source_xref); |
| 155 |
|
}; |
| 156 |
|
///operator == used to find a source citation by its source record xref |
| 157 |
|
friend bool operator==(SourceCitation * const source_citation, std::string const &source_xref) |
| 158 |
|
{ |
| 159 |
|
return (source_citation->_source_xref == source_xref); |
| 160 |
|
}; |
| 161 |
|
|
| 162 |
|
/// |
| 163 |
virtual void Accept(GEDCOMParser::GEDCOMVisitor *); |
virtual void Accept(GEDCOMParser::GEDCOMVisitor *); |
| 164 |
}; |
}; |
| 165 |
}; |
}; |