CLAM::Polymorphic< FactoryType > Class Template Reference

This class is an utility class to hold polymorphic pointers as attributes on DynamicTypes and simplify the problem of the XML Loading of abstract XML Schema types. More...

#include <Polymorphic.hxx>

List of all members.

Public Types

typedef FactoryType Factory
typedef Factory::AbstractProduct Abstract

Public Member Functions

 Polymorphic ()
 Polymorphic (const std::string &concreteClassName)
 Polymorphic (Abstract &toCopy)
 ~Polymorphic ()
Polymorphicoperator= (Abstract &toCopy)
AbstractGet ()
const AbstractGet () const
void Set (Abstract *pointee)
const char * GetClassName () const
 Return the class name.
 operator Abstract & ()
 operator Abstract * ()
 operator const Abstract & () const
void StoreOn (Storage &storage) const
 Stores component's subitems on the given Storage.
void LoadFrom (Storage &storage)
 Loads component's subitems from the given Storage.

Detailed Description

template<typename FactoryType>
class CLAM::Polymorphic< FactoryType >

This class is an utility class to hold polymorphic pointers as attributes on DynamicTypes and simplify the problem of the XML Loading of abstract XML Schema types.

Definition at line 50 of file Polymorphic.hxx.


Member Typedef Documentation

template<typename FactoryType >
typedef Factory::AbstractProduct CLAM::Polymorphic< FactoryType >::Abstract

Definition at line 54 of file Polymorphic.hxx.

template<typename FactoryType >
typedef FactoryType CLAM::Polymorphic< FactoryType >::Factory

Definition at line 53 of file Polymorphic.hxx.


Constructor & Destructor Documentation

template<typename FactoryType >
CLAM::Polymorphic< FactoryType >::Polymorphic (  )  [inline]

Definition at line 59 of file Polymorphic.hxx.

template<typename FactoryType >
CLAM::Polymorphic< FactoryType >::Polymorphic ( const std::string &  concreteClassName  )  [inline]

Definition at line 64 of file Polymorphic.hxx.

template<typename FactoryType >
CLAM::Polymorphic< FactoryType >::Polymorphic ( Abstract toCopy  )  [inline]

Definition at line 69 of file Polymorphic.hxx.

template<typename FactoryType >
CLAM::Polymorphic< FactoryType >::~Polymorphic (  )  [inline]

Definition at line 74 of file Polymorphic.hxx.


Member Function Documentation

template<typename FactoryType >
const Abstract& CLAM::Polymorphic< FactoryType >::Get (  )  const [inline]

Definition at line 90 of file Polymorphic.hxx.

References CLAM_ASSERT.

template<typename FactoryType >
Abstract& CLAM::Polymorphic< FactoryType >::Get (  )  [inline]

Definition at line 84 of file Polymorphic.hxx.

References CLAM_ASSERT.

template<typename FactoryType >
const char* CLAM::Polymorphic< FactoryType >::GetClassName (  )  const [inline, virtual]

Return the class name.

Implements CLAM::Component.

Definition at line 101 of file Polymorphic.hxx.

template<typename FactoryType >
void CLAM::Polymorphic< FactoryType >::LoadFrom ( Storage storage  )  [inline, virtual]

Loads component's subitems from the given Storage.

Parameters:
storage The given storage where the subitem will be loaded from
See also:
Storage

Implements CLAM::Component.

Definition at line 131 of file Polymorphic.hxx.

References CLAM::Storage::Load().

template<typename FactoryType >
CLAM::Polymorphic< FactoryType >::operator Abstract & (  )  [inline]

Definition at line 106 of file Polymorphic.hxx.

template<typename FactoryType >
CLAM::Polymorphic< FactoryType >::operator Abstract * (  )  [inline]

Definition at line 111 of file Polymorphic.hxx.

template<typename FactoryType >
CLAM::Polymorphic< FactoryType >::operator const Abstract & (  )  const [inline]

Definition at line 116 of file Polymorphic.hxx.

template<typename FactoryType >
Polymorphic& CLAM::Polymorphic< FactoryType >::operator= ( Abstract toCopy  )  [inline]

Definition at line 79 of file Polymorphic.hxx.

template<typename FactoryType >
void CLAM::Polymorphic< FactoryType >::Set ( Abstract pointee  )  [inline]

Definition at line 96 of file Polymorphic.hxx.

template<typename FactoryType >
void CLAM::Polymorphic< FactoryType >::StoreOn ( Storage storage  )  const [inline, virtual]

Stores component's subitems on the given Storage.

Parameters:
storage The given storage where the subitem will be stored
See also:
Storage

Implements CLAM::Component.

Definition at line 122 of file Polymorphic.hxx.

References CLAM::Storage::Store().


The documentation for this class was generated from the following file:
Generated by  doxygen 1.6.3