OSG  3.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | Protected Attributes | List of all members
osgDB::EnumSerializer< C, P, B > Class Template Reference

#include <Serializer.h>

Inheritance diagram for osgDB::EnumSerializer< C, P, B >:
Inheritance graph
[legend]
Collaboration diagram for osgDB::EnumSerializer< C, P, B >:
Collaboration graph
[legend]

Public Types

typedef TemplateSerializer< P > ParentType
 
typedef P(C::* Getter )() const
 
typedef B(C::* Setter )(P)
 
- Public Types inherited from osgDB::BaseSerializer
enum  Type {
  RW_UNDEFINED = 0, RW_USER, RW_OBJECT, RW_IMAGE,
  RW_LIST, RW_BOOL, RW_CHAR, RW_UCHAR,
  RW_SHORT, RW_USHORT, RW_INT, RW_UINT,
  RW_FLOAT, RW_DOUBLE, RW_VEC2F, RW_VEC2D,
  RW_VEC3F, RW_VEC3D, RW_VEC4F, RW_VEC4D,
  RW_QUAT, RW_PLANE, RW_MATRIXF, RW_MATRIXD,
  RW_MATRIX, RW_GLENUM, RW_STRING, RW_ENUM,
  RW_VEC2B, RW_VEC2UB, RW_VEC2S, RW_VEC2US,
  RW_VEC2I, RW_VEC2UI, RW_VEC3B, RW_VEC3UB,
  RW_VEC3S, RW_VEC3US, RW_VEC3I, RW_VEC3UI,
  RW_VEC4B, RW_VEC4UB, RW_VEC4S, RW_VEC4US,
  RW_VEC4I, RW_VEC4UI, RW_BOUNDINGBOXF, RW_BOUNDINGBOXD,
  RW_BOUNDINGSPHEREF, RW_BOUNDINGSPHERED, RW_VECTOR, RW_MAP
}
 
enum  Usage { READ_WRITE_PROPERTY = 1, GET_PROPERTY = 2, SET_PROPERTY = 4, GET_SET_PROPERTY = GET_PROPERTY | SET_PROPERTY }
 

Public Member Functions

 EnumSerializer (const char *name, P def, Getter gf, Setter sf)
 
virtual IntLookupgetIntLookup ()
 
void add (const char *str, P value)
 
getValue (const char *str)
 
const std::string & getString (P value)
 
virtual bool read (InputStream &is, osg::Object &obj)
 
virtual bool write (osgDB::OutputStream &os, const osg::Object &obj)
 
- Public Member Functions inherited from osgDB::TemplateSerializer< P >
 TemplateSerializer (const char *name, P def)
 
virtual const std::string & getName () const
 
- Public Member Functions inherited from osgDB::BaseSerializer
 BaseSerializer (int usage)
 
virtual bool set (osg::Object &, void *)
 
virtual bool get (const osg::Object &, void *)
 
void setUsage (int usage)
 
int getUsage () const
 
void setUsage (bool hasGetter, bool hasSetter)
 
bool supportsReadWrite () const
 
bool supportsGetSet () const
 
bool supportsGet () const
 
bool supportsSet () const
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
virtual void setThreadSafeRefUnref (bool threadSafe)
 
bool getThreadSafeRefUnref () const
 
OpenThreads::MutexgetRefMutex () const
 
int ref () const
 
int unref () const
 
int unref_nodelete () const
 
int referenceCount () const
 
ObserverSetgetObserverSet () const
 
ObserverSetgetOrCreateObserverSet () const
 
void addObserver (Observer *observer) const
 
void removeObserver (Observer *observer) const
 

Public Attributes

Getter _getter
 
Setter _setter
 

Protected Attributes

IntLookup _lookup
 
- Protected Attributes inherited from osgDB::TemplateSerializer< P >
std::string _name
 
_defaultValue
 
- Protected Attributes inherited from osgDB::BaseSerializer
int _firstVersion
 
int _lastVersion
 
int _usage
 
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
 
OpenThreads::Atomic _refCount
 

Additional Inherited Members

- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
 
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
 
static bool getThreadSafeReferenceCounting ()
 
static void setDeleteHandler (DeleteHandler *handler)
 
static DeleteHandlergetDeleteHandler ()
 
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
 
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
 
void deleteUsingDeleteHandler () const
 

Detailed Description

template<typename C, typename P, typename B>
class osgDB::EnumSerializer< C, P, B >

Definition at line 690 of file Serializer.h.

Member Typedef Documentation

template<typename C , typename P , typename B >
typedef P(C::* osgDB::EnumSerializer< C, P, B >::Getter)() const

Definition at line 694 of file Serializer.h.

template<typename C , typename P , typename B >
typedef TemplateSerializer<P> osgDB::EnumSerializer< C, P, B >::ParentType

Definition at line 693 of file Serializer.h.

template<typename C , typename P , typename B >
typedef B(C::* osgDB::EnumSerializer< C, P, B >::Setter)(P)

Definition at line 695 of file Serializer.h.

Constructor & Destructor Documentation

template<typename C , typename P , typename B >
osgDB::EnumSerializer< C, P, B >::EnumSerializer ( const char *  name,
def,
Getter  gf,
Setter  sf 
)
inline

Definition at line 697 of file Serializer.h.

Here is the call graph for this function:

Member Function Documentation

template<typename C , typename P , typename B >
void osgDB::EnumSerializer< C, P, B >::add ( const char *  str,
value 
)
inline

Definition at line 704 of file Serializer.h.

Here is the call graph for this function:

template<typename C , typename P , typename B >
virtual IntLookup* osgDB::EnumSerializer< C, P, B >::getIntLookup ( )
inlinevirtual

Reimplemented from osgDB::BaseSerializer.

Definition at line 702 of file Serializer.h.

template<typename C , typename P , typename B >
const std::string& osgDB::EnumSerializer< C, P, B >::getString ( value)
inline

Definition at line 710 of file Serializer.h.

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename C , typename P , typename B >
P osgDB::EnumSerializer< C, P, B >::getValue ( const char *  str)
inline

Definition at line 707 of file Serializer.h.

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename C , typename P , typename B >
virtual bool osgDB::EnumSerializer< C, P, B >::read ( InputStream is,
osg::Object obj 
)
inlinevirtual

Implements osgDB::TemplateSerializer< P >.

Definition at line 713 of file Serializer.h.

Here is the call graph for this function:

template<typename C , typename P , typename B >
virtual bool osgDB::EnumSerializer< C, P, B >::write ( osgDB::OutputStream os,
const osg::Object obj 
)
inlinevirtual

Implements osgDB::TemplateSerializer< P >.

Definition at line 730 of file Serializer.h.

Here is the call graph for this function:

Member Data Documentation

template<typename C , typename P , typename B >
Getter osgDB::EnumSerializer< C, P, B >::_getter

Definition at line 746 of file Serializer.h.

template<typename C , typename P , typename B >
IntLookup osgDB::EnumSerializer< C, P, B >::_lookup
protected

Definition at line 750 of file Serializer.h.

template<typename C , typename P , typename B >
Setter osgDB::EnumSerializer< C, P, B >::_setter

Definition at line 747 of file Serializer.h.


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