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

#include <ossimStringProperty.h>

Inheritance diagram for ossimStringProperty:
ossimProperty ossimObject ossimReferenced

Public Member Functions

 ossimStringProperty (const ossimString &name=ossimString(""), const ossimString &value=ossimString(""), bool editableFlag=true, const std::vector< ossimString > &constraintList=std::vector< ossimString >())
 
 ossimStringProperty (const ossimStringProperty &rhs)
 
virtual ossimObjectdup () const
 
virtual const ossimPropertyassign (const ossimProperty &rhs)
 
void setEditableFlag (bool flag)
 
bool getEditableFlag () const
 
bool isEditable () const
 
void clearConstraints ()
 
void setConstraints (const std::vector< ossimString > &constraintList)
 
void addConstraint (const ossimString &value)
 
const std::vector< ossimString > & getConstraints () const
 
bool hasConstraints () const
 
virtual bool setValue (const ossimString &value)
 
virtual void valueToString (ossimString &valueResult) const
 
- 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

ossimString theValue
 
bool theEditableFlag
 
std::vector< ossimStringtheConstraints
 
- 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 15 of file ossimStringProperty.h.

Constructor & Destructor Documentation

◆ ossimStringProperty() [1/2]

ossimStringProperty::ossimStringProperty ( const ossimString name = ossimString(""),
const ossimString value = ossimString(""),
bool  editableFlag = true,
const std::vector< ossimString > &  constraintList = std::vector<ossimString>() 
)

Definition at line 14 of file ossimStringProperty.cpp.

Referenced by dup().

18  :ossimProperty(name),
19  theValue(value),
20  theEditableFlag(editableFlag),
21  theConstraints(constraintList)
22 {
23 }
ossimProperty(const ossimString &name=ossimString(""))
std::vector< ossimString > theConstraints

◆ ossimStringProperty() [2/2]

ossimStringProperty::ossimStringProperty ( const ossimStringProperty rhs)

Definition at line 25 of file ossimStringProperty.cpp.

26  :ossimProperty(rhs),
27  theValue(rhs.theValue),
30 {
31 }
ossimProperty(const ossimString &name=ossimString(""))
std::vector< ossimString > theConstraints

Member Function Documentation

◆ addConstraint()

void ossimStringProperty::addConstraint ( const ossimString value)

◆ assign()

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

Reimplemented from ossimProperty.

Definition at line 38 of file ossimStringProperty.cpp.

References ossimProperty::assign(), theConstraints, theEditableFlag, theValue, and ossimProperty::valueToString().

39 {
41 
42  const ossimStringProperty* rhsPtr = dynamic_cast<const ossimStringProperty*>(&rhs);
43 
44  theValue = rhs.valueToString();
45 
46  if(rhsPtr)
47  {
50  }
51 
52  return *this;
53 }
virtual void valueToString(ossimString &valueResult) const =0
virtual const ossimProperty & assign(const ossimProperty &rhs)
std::vector< ossimString > theConstraints

◆ clearConstraints()

void ossimStringProperty::clearConstraints ( )

Clears the constraints for this string. You can constrain it to a string list by calling setConstraints.

Definition at line 72 of file ossimStringProperty.cpp.

References theConstraints.

73 {
74  theConstraints.clear();
75 }
std::vector< ossimString > theConstraints

◆ dup()

ossimObject * ossimStringProperty::dup ( ) const
virtual

Duplicates the object and returns a new one

Reimplemented from ossimObject.

Definition at line 33 of file ossimStringProperty.cpp.

References ossimStringProperty().

34 {
35  return new ossimStringProperty(*this);
36 }
ossimStringProperty(const ossimString &name=ossimString(""), const ossimString &value=ossimString(""), bool editableFlag=true, const std::vector< ossimString > &constraintList=std::vector< ossimString >())

◆ getConstraints()

const std::vector< ossimString > & ossimStringProperty::getConstraints ( ) const

Definition at line 87 of file ossimStringProperty.cpp.

References theConstraints.

Referenced by ossimImageHandlerRegistry::printReaderProps(), and ossimImageWriterFactoryRegistry::printWriterProps().

88 {
89  return theConstraints;
90 }
std::vector< ossimString > theConstraints

◆ getEditableFlag()

bool ossimStringProperty::getEditableFlag ( ) const

Definition at line 61 of file ossimStringProperty.cpp.

References theEditableFlag.

Referenced by isEditable().

62 {
63  return theEditableFlag;
64 }

◆ hasConstraints()

bool ossimStringProperty::hasConstraints ( ) const

Definition at line 92 of file ossimStringProperty.cpp.

References theConstraints.

93 {
94  return (theConstraints.size() > 0);
95 }
std::vector< ossimString > theConstraints

◆ isEditable()

bool ossimStringProperty::isEditable ( ) const

Definition at line 66 of file ossimStringProperty.cpp.

References getEditableFlag().

67 {
68  return (getEditableFlag() == true);
69 }

◆ setConstraints()

void ossimStringProperty::setConstraints ( const std::vector< ossimString > &  constraintList)

Sets the constraints for this property. If the editable flag is present then this says the editing is not readonly and one can hand type the value in without only selecting from a choice list.

Definition at line 77 of file ossimStringProperty.cpp.

References theConstraints.

Referenced by ossimImageFileWriter::getProperty().

78 {
79  theConstraints = constraintList;
80 }
std::vector< ossimString > theConstraints

◆ setEditableFlag()

void ossimStringProperty::setEditableFlag ( bool  flag)

Definition at line 56 of file ossimStringProperty.cpp.

References theEditableFlag.

Referenced by ossimImageHandler::getProperty().

57 {
58  theEditableFlag = flag;
59 }

◆ setValue()

bool ossimStringProperty::setValue ( const ossimString value)
virtual

will try to set the value. If the constraints are set it will make sure that the value is in the list and if its not then it will return false

Implements ossimProperty.

Definition at line 97 of file ossimStringProperty.cpp.

References theConstraints, and theValue.

98 {
99  bool result = true;
100 
101  if(theConstraints.size() > 0)
102  {
103  if(std::find(theConstraints.begin(),
104  theConstraints.end(),
105  value)
106  != theConstraints.end())
107  {
108  theValue = value;
109  }
110  else
111  {
112  result = false;
113  }
114  }
115  else
116  {
117  theValue = value;
118  }
119 
120  return result;
121 }
std::vector< ossimString > theConstraints

◆ valueToString()

void ossimStringProperty::valueToString ( ossimString valueResult) const
virtual

Implements ossimProperty.

Definition at line 123 of file ossimStringProperty.cpp.

References theValue.

Referenced by ossimTiffWriter::setProperty().

124 {
125  valueResult = theValue;
126 }

Member Data Documentation

◆ theConstraints

std::vector<ossimString> ossimStringProperty::theConstraints
protected

◆ theEditableFlag

bool ossimStringProperty::theEditableFlag
protected

Definition at line 67 of file ossimStringProperty.h.

Referenced by assign(), getEditableFlag(), and setEditableFlag().

◆ theValue

ossimString ossimStringProperty::theValue
protected

Definition at line 66 of file ossimStringProperty.h.

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


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