ULAPI  8.0
ultense.h
1 
10 #ifndef ULTENSE_H
11 #define ULTENSE_H
12 
13 #include "ulenum.h"
14 
21 class ULTense : public ULEnum
22 {
23 public:
24  static const ULTense& None;
25  static const ULTense& Any;
26  static const ULTense& Infinitive;
27  static const ULTense& PastParticiple;
32  static const ULTense& PresentParticiple;
33  static const ULTense& Gerund;
34  static const ULTense& Present;
35  static const ULTense& PresentProgressive;
36  static const ULTense& Future;
37  static const ULTense& FutureProgressive;
38  static const ULTense& FuturePerfect;
39  static const ULTense& Past;
40  static const ULTense& PresentPerfect;
42  static const ULTense& Imperfect;
43  static const ULTense& Conditional;
44  static const ULTense& PastConditional;
50  static const ULTense& Imperative;
51  static const ULTense& PastSubjunctive;
52  static const ULTense& PastSubjunctive2;
53  static const ULTense& PastAnterior;
54  static const ULTense& PresentSubjunctive;
57  static const ULTense& FutureSubjunctive;
58  static const ULTense& FutureSubjunctive2;
62  static const ULTense& PastPerfect;
64  static const ULTense& PreteritStem;
65  static const ULTense& Subjunctive2Stem;
69  static const ULTense& PerfectParticiple;
71  static const ULTense& PastParticipleStem;
72  static const ULTense& Gerundive;
73  static const ULTense& PresentPassive;
75  static const ULTense& ImperfectPassive;
77  static const ULTense& FuturePassive;
80  static const ULTense& PastPerfectPassive;
83  static const ULTense& Imperative2;
84  static const ULTense& ImperativePassive;
85  static const ULTense& ImperativeFuture;
86  static const ULTense& PresentDeponent;
88  static const ULTense& ImperfectDeponent;
90  static const ULTense& FutureDeponent;
96  static const ULTense& NegativeImperative;
97 
98 
99  ULTense();
100  ULTense(const ULTense& other);
101  ULTense(int id);
102  ULTense(const char *otherStringID);
103  virtual ~ULTense();
104 
105  virtual void clear();
106  ULTense& operator=(const ULTense& other);
107  ULTense& operator=(int otherID);
108  ULTense& operator=(const char *otherStringID);
109 
110  bool operator==(const ULTense& other) const;
111  bool operator==(const char *otherStringID) const;
112  bool operator!=(const ULTense& other) const;
113  bool operator!=(const char *otherStringID) const;
114  bool operator<(const ULTense& other) const;
115  bool operator<(const char *otherStringID) const;
116 
117  static int getEnumeratedValueCount();
118  static const ULTense& getInstance(int id);
119  ULLanguage getLanguage() const;
120  bool isParticiple() const;
121  bool isCompound() const;
122  bool isListed() const;
123  static void getAllTenses(const ULLanguage& language, ULList<ULTense>& tenses);
124  static void getAllTenses(ULList<ULTense>& tenses);
125 
126 
127 
128 private:
129  static int nEnumeratedValues;
130  static ULVector<const ULTense *> enumeratedValueVector;
131  ULTense(const char *stringID, const char *displayString);
132  const char *languageISOCode;
133  bool isAParticiple;
134  bool isACompoundTense;
135  bool isAListedTense;
136 
137  ULTense(const char *stringID,
138  const char *languageISOCode,
139  const char *displayString,
140  bool isParticiple,
141  bool isCompound,
142  bool isListed);
143 };
144 
145 
146 #endif
147