ULAPI  8.0
ulperson.h
1 
10 #ifndef ULPERSON_H
11 #define ULPERSON_H
12 
13 #include "ulenum.h"
14 #include "ulnumber.h"
15 #include "ulformality.h"
16 
24 class ULPerson : public ULEnum
25 {
26 public:
27  static const ULPerson& None;
28  static const ULPerson& Any;
29  static const ULPerson& First;
30  static const ULPerson& Second;
31  static const ULPerson& Third;
32  static const ULPerson& FirstSingular;
33  static const ULPerson& SecondSingular;
35  static const ULPerson& ThirdSingular;
36  static const ULPerson& FirstPlural;
37  static const ULPerson& SecondPlural;
39  static const ULPerson& ThirdPlural;
40 
41 
42  ULPerson();
43  ULPerson(const ULPerson& other);
44  ULPerson(int id);
45  ULPerson(const char *otherStringID);
46  virtual ~ULPerson();
47 
48  virtual void clear();
49  ULPerson& operator=(const ULPerson& other);
50  ULPerson& operator=(int otherID);
51  ULPerson& operator=(const char *otherStringID);
52 
53  bool operator==(const ULPerson& other) const;
54  bool operator==(const char *otherStringID) const;
55  bool operator!=(const ULPerson& other) const;
56  bool operator!=(const char *otherStringID) const;
57  bool operator<(const ULPerson& other) const;
58  bool operator<(const char *otherStringID) const;
59 
60  static int getEnumeratedValueCount();
61  static const ULPerson& getInstance(int id);
62  void expandPerson(ULPerson& person, ULNumber& number, ULFormality& formality) const;
63  static void getAllPersons(ULList<ULPerson>& persons);
64 
65 
66 
67 private:
68  static int nEnumeratedValues;
69  static ULVector<const ULPerson *> enumeratedValueVector;
70  ULPerson(const char *stringID, const char *displayString);
71  const char *languageISOCode;
72  ULPerson(const char *stringID, const char *languageISOCode, const char *displayString);
73 };
74 
75 
76 #endif
77