ICU 50.1.2  50.1.2
tmutamt.h
Go to the documentation of this file.
1 /*
2  *******************************************************************************
3  * Copyright (C) 2009-2010, Google, International Business Machines Corporation and *
4  * others. All Rights Reserved. *
5  *******************************************************************************
6  */
7 
8 #ifndef __TMUTAMT_H__
9 #define __TMUTAMT_H__
10 
11 
17 #include "unicode/measure.h"
18 #include "unicode/tmunit.h"
19 
20 #if !UCONFIG_NO_FORMATTING
21 
23 
24 
32 public:
45  TimeUnitAmount(const Formattable& number,
46  TimeUnit::UTimeUnitFields timeUnitField,
47  UErrorCode& status);
48 
61  TimeUnitAmount(double amount, TimeUnit::UTimeUnitFields timeUnitField,
62  UErrorCode& status);
63 
64 
69  TimeUnitAmount(const TimeUnitAmount& other);
70 
71 
77 
78 
84  virtual UObject* clone() const;
85 
86 
91  virtual ~TimeUnitAmount();
92 
93 
100  virtual UBool operator==(const UObject& other) const;
101 
102 
109  UBool operator!=(const UObject& other) const;
110 
111 
123  static UClassID U_EXPORT2 getStaticClassID(void);
124 
125 
137  virtual UClassID getDynamicClassID(void) const;
138 
139 
145  const TimeUnit& getTimeUnit() const;
146 
152  TimeUnit::UTimeUnitFields getTimeUnitField() const;
153 };
154 
155 
156 
157 inline UBool
158 TimeUnitAmount::operator!=(const UObject& other) const {
159  return !operator==(other);
160 }
161 
163 
164 #endif /* #if !UCONFIG_NO_FORMATTING */
165 
166 #endif // __TMUTAMT_H__
167 //eof
168 //
UTimeUnitFields
Constants for all the time units we supported.
Definition: tmunit.h:36
An amount of a specified unit, consisting of a number and a Unit.
Definition: measure.h:45
virtual UClassID getDynamicClassID() const =0
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition: uobject.h:96
C++ API: time unit object.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
Definition: utypes.h:358
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:129
Measurement unit for time units.
Definition: tmunit.h:30
virtual UObject * clone() const =0
Return a polymorphic clone of this object.
UBool operator==(const UObject &other) const
Equality operator.
UBool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
Definition: stringpiece.h:218
C++ API: MeasureUnit object.
Express a duration as a time unit and number.
Definition: tmutamt.h:31
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:130
Measure & operator=(const Measure &other)
Assignment operator.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
Formattable objects can be passed to the Format class or its subclasses for formatting.
Definition: fmtable.h:62
UObject is the common ICU "boilerplate" class.
Definition: uobject.h:229
int8_t UBool
The ICU boolean type.
Definition: umachine.h:200