]> git.lyx.org Git - lyx.git/blob - src/Biblio_typedefs.h
Streamlining CollapseStatus stuff
[lyx.git] / src / Biblio_typedefs.h
1 // -*- C++ -*-
2 /**
3  * \file Biblio_typedef.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Richard Heck
8  *
9  * Full author contact details are available in file CREDITS.
10  */
11
12 #ifndef BIBLIO_TYPEDEFS_H
13 #define BIBLIO_TYPEDEFS_H
14
15 #include "support/docstring.h"
16 #include <map>
17
18 namespace lyx {
19 namespace biblio {
20
21 /// Class to represent information about a BibTeX or
22 /// bibliography entry.
23 /// The keys are BibTeX fields, and the values are the
24 /// associated field values.
25 /// \param isBibTex false if this is from an InsetBibitem
26 /// \param allData the entire BibTeX entry, more or less
27 /// \param entryType the BibTeX entry type
28 class BibTeXInfo : public std::map<docstring, docstring> {
29         public:
30                 BibTeXInfo();
31                 BibTeXInfo(bool isBibTeX);
32                 bool hasKey(docstring const & key);
33                 bool isBibTeX;
34                 docstring allData;
35                 docstring entryType;
36 };
37
38 /*
39 class BibKeyList : public std::set<std::string, BibTeXInfo> {
40  public:
41         std::set<string> keys;
42 }
43
44 */
45
46 /// First entry is the bibliography key, second the data
47 typedef std::map<std::string, BibTeXInfo> BibKeyList;
48         
49 }
50 }
51 #endif