BiblioteQ

biblioteq_marc.h
1 #ifndef _BIBLIOTEQ_MARC_H_
2 #define _BIBLIOTEQ_MARC_H_
3
4 #include <QDate>
5
6 class biblioteq_marc
7 {
8 public:
9 enum ITEM_TYPE
10 {
11 BOOK = 0,
12 MAGAZINE
13 };
14
15 enum PROTOCOL
16 {
17 SRU = 0,
18 Z3950
19 };
20
21 enum RECORD_SYNTAX
22 {
23 MARC21 = 0,
24 UNIMARC
25 };
26
27 biblioteq_marc(const ITEM_TYPE itemType,
28 const PROTOCOL protocol,
29 const RECORD_SYNTAX recordSyntax);
30 biblioteq_marc(void);
31 ~biblioteq_marc();
32
33 QDate publicationDate(void) const
34 {
35 return m_publicationDate;
36 }
37
38 QString author(void) const
39 {
40 return m_author.trimmed();
41 }
42
43 QString binding(void) const
44 {
45 return m_binding.trimmed();
46 }
47
48 QString callnum(void) const
49 {
50 return m_callnum.trimmed();
51 }
52
53 QString category(void) const
54 {
55 return m_category.trimmed();
56 }
57
58 QString description(void) const
59 {
60 return m_description.trimmed();
61 }
62
63 QString deweynum(void) const
64 {
65 return m_deweynum.trimmed();
66 }
67
68 QString edition(void) const
69 {
70 return m_edition.trimmed();
71 }
72
73 QString isbn10(void) const
74 {
75 return m_isbn10.trimmed();
76 }
77
78 QString isbn13(void) const
79 {
80 return m_isbn13.trimmed();
81 }
82
83 QString lcnum(void) const
84 {
85 return m_lcnum.trimmed();
86 }
87
88 QString place(void) const
89 {
90 return m_place.trimmed();
91 }
92
93 QString publisher(void) const
94 {
95 return m_publisher.trimmed();
96 }
97
98 QString title(void) const
99 {
100 return m_title.trimmed();
101 }
102
103 void initialize(const ITEM_TYPE itemType,
104 const PROTOCOL protocol,
105 const RECORD_SYNTAX recordSyntax);
106 void parse(const QString &data);
107
108 private:
109 ITEM_TYPE m_itemType;
110 PROTOCOL m_protocol;
111 QDate m_publicationDate;
112 QString m_author;
113 QString m_binding;
114 QString m_callnum;
115 QString m_category;
116 QString m_data;
117 QString m_description;
118 QString m_deweynum;
119 QString m_edition;
120 QString m_isbn10;
121 QString m_isbn13;
122 QString m_lcnum;
123 QString m_place;
124 QString m_publisher;
125 QString m_title;
126 RECORD_SYNTAX m_recordSyntax;
127 void clear(void);
128 void parseBookSRUMarc21(void);
129 void parseBookSRUUnimarc(void);
130 void parseBookZ3950Marc21(void);
131 void parseBookZ3950Unimarc(void);
132 void parseMagazineZ3950Marc21(void);
133 void parseMagazineZ3950Unimarc(void);
134 void parseSRU(void);
135 void parseZ3950(void);
136 };
137
138 #endif
biblioteq_marc
Definition: biblioteq_marc.h:6