OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Public Member Functions | Protected Attributes | List of all members
ossimDateProperty Class Reference

#include <ossimDateProperty.h>

Inheritance diagram for ossimDateProperty:
ossimProperty ossimObject ossimReferenced

Public Member Functions

 ossimDateProperty ()
 
 ossimDateProperty (const ossimString &name, const ossimString &value)
 
 ossimDateProperty (const ossimString &name, const ossimLocalTm &value)
 
 ossimDateProperty (const ossimDateProperty &src)
 
virtual ossimObjectdup () const
 
void setDate (const ossimLocalTm &localTm)
 
const ossimLocalTmgetDate () const
 
virtual bool setValue (const ossimString &value)
 
virtual void valueToString (ossimString &valueResult) const
 
virtual const ossimPropertyassign (const ossimProperty &rhs)
 
- Public Member Functions inherited from ossimProperty
 ossimProperty (const ossimString &name=ossimString(""))
 
 ossimProperty (const ossimProperty &rhs)
 
const ossimPropertyoperator= (const ossimProperty &rhs)
 
const ossimStringgetName () const
 
void setName (const ossimString &name)
 
virtual ossimString valueToString () const
 
virtual const ossimContainerPropertyasContainer () const
 
virtual ossimContainerPropertyasContainer ()
 
bool isChangeTypeSet (int type) const
 
void clearChangeType ()
 
void setChangeType (int type, bool on=true)
 
void setFullRefreshBit ()
 
void setCacheRefreshBit ()
 
ossimPropertyChangeType getChangeType () const
 
bool isFullRefresh () const
 
bool isCacheRefresh () const
 
bool isChangeTypeSpecified () const
 
bool affectsOthers () const
 
virtual void setReadOnlyFlag (bool flag)
 
bool getReadOnlyFlag () const
 
bool isReadOnly () const
 
void setModifiedFlag (bool flag)
 
bool getModifiedFlag () const
 
bool isModified () const
 
void clearModifiedFlag ()
 
void setDescription (const ossimString &description)
 
virtual ossimString getDescription () const
 
virtual ossimRefPtr< ossimXmlNodetoXml () const
 
virtual void saveState (ossimKeywordlist &kwl, const ossimString &prefix="") const
 
virtual void accept (ossimVisitor &visitor)
 
- Public Member Functions inherited from ossimObject
 ossimObject ()
 
virtual ~ossimObject ()
 
virtual ossimString getShortName () const
 
virtual ossimString getLongName () const
 
virtual ossimString getClassName () const
 
virtual RTTItypeid getType () const
 
virtual bool canCastTo (ossimObject *obj) const
 
virtual bool canCastTo (const RTTItypeid &id) const
 
virtual bool canCastTo (const ossimString &parentClassName) const
 
virtual bool saveState (ossimKeywordlist &kwl, const char *prefix=0) const
 
virtual bool loadState (const ossimKeywordlist &kwl, const char *prefix=0)
 
virtual std::ostream & print (std::ostream &out) const
 Generic print method. More...
 
virtual bool isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const
 
- Public Member Functions inherited from ossimReferenced
 ossimReferenced ()
 
 ossimReferenced (const ossimReferenced &)
 
ossimReferencedoperator= (const ossimReferenced &)
 
void ref () const
 increment the reference count by one, indicating that this object has another pointer which is referencing it. More...
 
void unref () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
void unref_nodelete () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
int referenceCount () const
 

Protected Attributes

ossimLocalTm theValue
 
- Protected Attributes inherited from ossimProperty
ossimString theName
 
ossimString theDescription
 
bool theReadOnlyFlag
 
ossimPropertyChangeType theChangeType
 
bool theModifiedFlag
 

Additional Inherited Members

- Public Types inherited from ossimProperty
enum  ossimPropertyChangeType {
  ossimPropertyChangeType_NOTSPECIFIED = 0, ossimPropertyChangeType_CACHE_REFRESH = 1, ossimPropertyChangeType_FULL_REFRESH = 2, ossimPropertyChangeType_AFFECTS_OTHERS = 4,
  ossimPropertyChangeType_ALL = (ossimPropertyChangeType_CACHE_REFRESH|ossimPropertyChangeType_FULL_REFRESH|ossimPropertyChangeType_AFFECTS_OTHERS)
}
 
- Protected Member Functions inherited from ossimProperty
virtual ~ossimProperty ()
 
- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 

Detailed Description

Definition at line 14 of file ossimDateProperty.h.

Constructor & Destructor Documentation

◆ ossimDateProperty() [1/4]

ossimDateProperty::ossimDateProperty ( )

Definition at line 20 of file ossimDateProperty.cpp.

References setDate().

Referenced by dup().

21  :ossimProperty("")
22 {
23  setDate(ossimDate());
24 }
ossimProperty(const ossimString &name=ossimString(""))
void setDate(const ossimLocalTm &localTm)

◆ ossimDateProperty() [2/4]

ossimDateProperty::ossimDateProperty ( const ossimString name,
const ossimString value 
)

Definition at line 26 of file ossimDateProperty.cpp.

References setValue().

28  :ossimProperty(name)
29 {
30  setValue(value);
31 }
ossimProperty(const ossimString &name=ossimString(""))
virtual bool setValue(const ossimString &value)

◆ ossimDateProperty() [3/4]

ossimDateProperty::ossimDateProperty ( const ossimString name,
const ossimLocalTm value 
)

Definition at line 33 of file ossimDateProperty.cpp.

35  :ossimProperty(name),
36  theValue(value)
37 {
38 }
ossimProperty(const ossimString &name=ossimString(""))
ossimLocalTm theValue

◆ ossimDateProperty() [4/4]

ossimDateProperty::ossimDateProperty ( const ossimDateProperty src)

Definition at line 40 of file ossimDateProperty.cpp.

41  :ossimProperty(src),
42  theValue(src.theValue)
43 {
44 }
ossimProperty(const ossimString &name=ossimString(""))
ossimLocalTm theValue

Member Function Documentation

◆ assign()

const ossimProperty & ossimDateProperty::assign ( const ossimProperty rhs)
virtual

Reimplemented from ossimProperty.

Definition at line 130 of file ossimDateProperty.cpp.

References ossimProperty::assign(), setValue(), theValue, and ossimProperty::valueToString().

131 {
133 
134  const ossimDateProperty* rhsPtr = dynamic_cast<const ossimDateProperty*>(&rhs);
135  if(rhsPtr)
136  {
137  theValue = rhsPtr->theValue;
138  }
139  else
140  {
141  setValue(rhs.valueToString());
142  }
143 
144  return *this;
145 }
virtual void valueToString(ossimString &valueResult) const =0
ossimLocalTm theValue
virtual const ossimProperty & assign(const ossimProperty &rhs)
virtual bool setValue(const ossimString &value)

◆ dup()

ossimObject * ossimDateProperty::dup ( ) const
virtual

Reimplemented from ossimObject.

Definition at line 46 of file ossimDateProperty.cpp.

References ossimDateProperty().

47 {
48  return new ossimDateProperty(*this);
49 }

◆ getDate()

const ossimLocalTm & ossimDateProperty::getDate ( ) const

Definition at line 56 of file ossimDateProperty.cpp.

References theValue.

57 {
58  return theValue;
59 }
ossimLocalTm theValue

◆ setDate()

void ossimDateProperty::setDate ( const ossimLocalTm localTm)

Definition at line 51 of file ossimDateProperty.cpp.

References theValue.

Referenced by ossimDateProperty().

52 {
53  theValue = localTm;
54 }
ossimLocalTm theValue

◆ setValue()

bool ossimDateProperty::setValue ( const ossimString value)
virtual

Implements ossimProperty.

Definition at line 61 of file ossimDateProperty.cpp.

References ossimString::begin(), min, ossimLocalTm::setDay(), ossimLocalTm::setHour(), ossimLocalTm::setMin(), ossimLocalTm::setMonth(), ossimLocalTm::setSec(), ossimLocalTm::setYear(), ossimString::size(), theValue, ossimString::toUInt32(), and ossimString::trim().

Referenced by assign(), and ossimDateProperty().

62 {
63  if(value.trim() == "")
64  {
65  theValue = ossimDate();
66  return true;
67  }
68  bool result = value.size() == 14;
69 
70  ossimString year;
71  ossimString month;
72  ossimString day;
73  ossimString hour;
75  ossimString sec;
76 
77  if(value.size() == 14)
78  {
79  year = ossimString(value.begin(),
80  value.begin()+4);
81  month = ossimString(value.begin()+4,
82  value.begin()+6);
83  day = ossimString(value.begin()+6,
84  value.begin()+8);
85  hour = ossimString(value.begin()+8,
86  value.begin()+10);
87  min = ossimString(value.begin()+10,
88  value.begin()+12);
89  sec = ossimString(value.begin()+12,
90  value.begin()+14);
91 
92  theValue.setYear(year.toUInt32());
93  theValue.setMonth(month.toUInt32());
94  theValue.setDay(day.toUInt32());
95  theValue.setHour(hour.toUInt32());
96  theValue.setMin(min.toUInt32());
97  theValue.setSec(sec.toUInt32());
98  }
99 
100  return result;
101 }
ossimLocalTm & setDay(int day)
Definition: ossimDate.cpp:476
ossimLocalTm theValue
ossim_uint32 toUInt32() const
std::string::size_type size() const
Definition: ossimString.h:405
std::string::iterator begin()
Definition: ossimString.h:420
ossimLocalTm & setMonth(int month)
Definition: ossimDate.cpp:483
ossimString trim(const ossimString &valueToTrim=ossimString(" \\)) const
this will strip lead and trailing character passed in.
ossimLocalTm & setYear(int year)
Definition: ossimDate.cpp:490
ossimLocalTm & setHour(int h)
Definition: ossimDate.cpp:590
ossimLocalTm & setSec(int s)
Definition: ossimDate.cpp:604
ossimLocalTm & setMin(int m)
Definition: ossimDate.cpp:597
#define min(a, b)
Definition: auxiliary.h:75

◆ valueToString()

void ossimDateProperty::valueToString ( ossimString valueResult) const
virtual

Implements ossimProperty.

Definition at line 103 of file ossimDateProperty.cpp.

References ossimLocalTm::getDay(), ossimLocalTm::getHour(), ossimLocalTm::getMin(), ossimLocalTm::getMonth(), ossimLocalTm::getSec(), ossimLocalTm::getYear(), and theValue.

104 {
105  std::ostringstream out;
106 
107  out << std::setw(4)
108  << std::setfill('0')
109  << theValue.getYear()
110  << std::setw(2)
111  << std::setfill('0')
112  << theValue.getMonth()
113  << std::setw(2)
114  << std::setfill('0')
115  << theValue.getDay()
116  << std::setw(2)
117  << std::setfill('0')
118  << theValue.getHour()
119  << std::setw(2)
120  << std::setfill('0')
121  << theValue.getMin()
122  << std::setw(2)
123  << std::setfill('0')
124  << theValue.getSec();
125 
126  valueResult = out.str();
127 
128 }
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
Definition: ossimIosFwd.h:35
ossimLocalTm theValue
int getSec() const
Definition: ossimDate.cpp:580
int getYear() const
Definition: ossimDate.cpp:433
int getMin() const
Definition: ossimDate.cpp:575
int getMonth() const
Definition: ossimDate.cpp:448
int getDay() const
Definition: ossimDate.cpp:453
int getHour() const
Definition: ossimDate.cpp:570

Member Data Documentation

◆ theValue

ossimLocalTm ossimDateProperty::theValue
protected

Definition at line 32 of file ossimDateProperty.h.

Referenced by assign(), getDate(), setDate(), setValue(), and valueToString().


The documentation for this class was generated from the following files: