Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

osg::FieldDataTraits< std::string > Struct Template Reference
[Field Data Traits]

#include <OSGBaseFieldDataType.h>

Inheritance diagram for osg::FieldDataTraits< std::string >:

osg::FieldTraitsRecurseBase< std::string > osg::FieldTraits List of all members.

Public Types

enum  { StringConvertable }
typedef osgIF< uiTest==1,
const std::string, const
std::string & >::_IRet 
ArgumentType
enum  { ToStringConvertable = 0x01, FromStringConvertable = 0x02 }

Static Public Member Functions

static DataTypegetType (void)
static const Char8getSName (void)
static const Char8getMName (void)
static std::string getDefault (void)
static bool getFromString (std::string &target, const Char8 *&source)
static void putToString (const std::string &inVal, std::string &outStr)
static UInt32 getBinSize (const std::string &oObject)
static UInt32 getBinSize (const std::string *pObjectStore, UInt32 uiNumObjects)
static void copyToBin (BinaryDataHandler &pMem, const std::string &oObject)
static void copyToBin (BinaryDataHandler &pMem, const std::string *pObjectStore, UInt32 uiNumObjects)
static void copyFromBin (BinaryDataHandler &pMem, std::string &oObject)
static void copyFromBin (BinaryDataHandler &pMem, std::string *pObjectStore, UInt32 uiNumObjects)
static bool getFromString (std::string &outVal, const Char8 *inVal)
static const Char8getPName (void)

Static Public Attributes

static DataType _type
static const UInt32 uiTest

Detailed Description

template<>
struct osg::FieldDataTraits< std::string >

Definition at line 433 of file OSGBaseFieldDataType.h.


Member Typedef Documentation

typedef osgIF<uiTest == 1, const std::string , const std::string & >::_IRet osg::FieldTraitsRecurseBase< std::string >::ArgumentType [inherited]
 

Definition at line 122 of file OSGFieldDataType.h.


Member Enumeration Documentation

anonymous enum
 

Enumerator:
StringConvertable 

Definition at line 438 of file OSGBaseFieldDataType.h.

anonymous enum [inherited]
 

Enumerator:
ToStringConvertable 
FromStringConvertable 

Definition at line 69 of file OSGFieldDataType.h.

00070     {
00071         ToStringConvertable   = 0x01,
00072         FromStringConvertable = 0x02
00073     };


Member Function Documentation

static DataType& osg::FieldDataTraits< std::string >::getType void   )  [inline, static]
 

Definition at line 441 of file OSGBaseFieldDataType.h.

00441 { return _type;         }

static const Char8* osg::FieldDataTraits< std::string >::getSName void   )  [inline, static]
 

Definition at line 443 of file OSGBaseFieldDataType.h.

00443 { return "SFString";    }

static const Char8* osg::FieldDataTraits< std::string >::getMName void   )  [inline, static]
 

Definition at line 445 of file OSGBaseFieldDataType.h.

00445 { return "MFString";    }

static std::string osg::FieldDataTraits< std::string >::getDefault void   )  [inline, static]
 

Definition at line 447 of file OSGBaseFieldDataType.h.

00447 { return std::string(); }

static bool osg::FieldDataTraits< std::string >::getFromString std::string &  target,
const Char8 *&  source
[inline, static]
 

Definition at line 449 of file OSGBaseFieldDataType.h.

00451     {
00452         target.assign(source);
00453 
00454         if(source != NULL)
00455         {
00456             source += strlen(source);
00457         }
00458 
00459         return true;
00460     }

static void osg::FieldDataTraits< std::string >::putToString const std::string &  inVal,
std::string &  outStr
[inline, static]
 

Reimplemented from osg::FieldTraitsRecurseBase< std::string >.

Definition at line 462 of file OSGBaseFieldDataType.h.

00464     { 
00465         outStr.assign("\"");
00466         outStr.append(inVal);
00467         outStr.append("\"");
00468     }

static UInt32 osg::FieldDataTraits< std::string >::getBinSize const std::string &  oObject  )  [inline, static]
 

Reimplemented from osg::FieldTraitsRecurseBase< std::string >.

Definition at line 471 of file OSGBaseFieldDataType.h.

00472     {
00473         return oObject.length() + 1 + sizeof(UInt32);
00474     }

static UInt32 osg::FieldDataTraits< std::string >::getBinSize const std::string *  pObjectStore,
UInt32  uiNumObjects
[inline, static]
 

Reimplemented from osg::FieldTraitsRecurseBase< std::string >.

Definition at line 476 of file OSGBaseFieldDataType.h.

References osg::FieldTraitsRecurseBase< FieldTypeT >::getBinSize().

00478     {
00479         UInt32 size=0;
00480 
00481         for(UInt32 i = 0; i < uiNumObjects; ++i)
00482         {
00483             size += getBinSize(pObjectStore[i]);
00484         }
00485 
00486         return size;
00487     }

static void osg::FieldDataTraits< std::string >::copyToBin BinaryDataHandler pMem,
const std::string &  oObject
[inline, static]
 

Reimplemented from osg::FieldTraitsRecurseBase< std::string >.

Definition at line 490 of file OSGBaseFieldDataType.h.

References osg::BinaryDataHandler::putValue().

00492     {
00493         pMem.putValue(oObject);
00494     }

static void osg::FieldDataTraits< std::string >::copyToBin BinaryDataHandler pMem,
const std::string *  pObjectStore,
UInt32  uiNumObjects
[inline, static]
 

Reimplemented from osg::FieldTraitsRecurseBase< std::string >.

Definition at line 496 of file OSGBaseFieldDataType.h.

References osg::FieldTraitsRecurseBase< FieldTypeT >::copyToBin().

00499     {
00500         for(UInt32 i=0; i < uiNumObjects; ++i)
00501         {
00502             copyToBin(pMem, pObjectStore[i]);
00503         }
00504     }

static void osg::FieldDataTraits< std::string >::copyFromBin BinaryDataHandler pMem,
std::string &  oObject
[inline, static]
 

Reimplemented from osg::FieldTraitsRecurseBase< std::string >.

Definition at line 506 of file OSGBaseFieldDataType.h.

References osg::BinaryDataHandler::getValue().

00508     {
00509         pMem.getValue(oObject);
00510     }

static void osg::FieldDataTraits< std::string >::copyFromBin BinaryDataHandler pMem,
std::string *  pObjectStore,
UInt32  uiNumObjects
[inline, static]
 

Reimplemented from osg::FieldTraitsRecurseBase< std::string >.

Definition at line 512 of file OSGBaseFieldDataType.h.

References osg::FieldTraitsRecurseBase< FieldTypeT >::copyFromBin().

00515     {
00516         for(UInt32 i = 0; i < uiNumObjects; ++i)
00517         {
00518             copyFromBin(pMem, pObjectStore[i]);
00519         }
00520     }

static bool osg::FieldTraitsRecurseBase< std::string >::getFromString std::string &  outVal,
const Char8 inVal
[inline, static, inherited]
 

Definition at line 209 of file OSGFieldDataType.h.

00211     {
00212         typedef FieldDataTraits<FieldTypeT> MappedTrait;
00213 
00214         return MappedTrait::getFromString(outVal, inVal);
00215     }

static const Char8* osg::FieldTraits::getPName void   )  [inline, static, inherited]
 

Definition at line 75 of file OSGFieldDataType.h.

00075 { return "Field"; }


Member Data Documentation

DataType osg::FieldDataTraits< std::string >::_type [static]
 

const UInt32 osg::FieldTraitsRecurseBase< std::string >::uiTest [static, inherited]
 

Definition at line 117 of file OSGFieldDataType.h.


The documentation for this struct was generated from the following files:
Generated on Thu Aug 25 04:55:11 2005 for OpenSG by  doxygen 1.4.3