CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

FWItemSingleAccessor Class Reference

#include <Fireworks/Core/interface/FWItemSingleAccessor.h>

Inheritance diagram for FWItemSingleAccessor:
FWItemAccessorBase BeamSpotSingleAccessor

List of all members.

Public Member Functions

const void * data () const
 FWItemSingleAccessor (const TClass *)
bool isCollection () const
const void * modelData (int iIndex) const
const TClass * modelType () const
virtual void reset ()
void setData (const ROOT::Reflex::Object &)
unsigned int size () const
const TClass * type () const
virtual ~FWItemSingleAccessor ()

Private Member Functions

 FWItemSingleAccessor (const FWItemSingleAccessor &)
const FWItemSingleAccessoroperator= (const FWItemSingleAccessor &)

Private Attributes

const void * m_data
const TClass * m_type

Detailed Description

Description: <one line="" class="" summary>="">

Usage: <usage>

Definition at line 29 of file FWItemSingleAccessor.h.


Constructor & Destructor Documentation

FWItemSingleAccessor::FWItemSingleAccessor ( const TClass *  iClass)

Definition at line 33 of file FWItemSingleAccessor.cc.

                                                               :
   m_type(iClass), m_data(0)
{
}
FWItemSingleAccessor::~FWItemSingleAccessor ( ) [virtual]

Definition at line 43 of file FWItemSingleAccessor.cc.

{
}
FWItemSingleAccessor::FWItemSingleAccessor ( const FWItemSingleAccessor ) [private]

Member Function Documentation

const void * FWItemSingleAccessor::data ( ) const [virtual]

Implements FWItemAccessorBase.

Definition at line 99 of file FWItemSingleAccessor.cc.

References m_data.

{
   return m_data;
}
bool FWItemSingleAccessor::isCollection ( ) const [virtual]

Implements FWItemAccessorBase.

Definition at line 123 of file FWItemSingleAccessor.cc.

{
   return false;
}
const void * FWItemSingleAccessor::modelData ( int  iIndex) const [virtual]

Implements FWItemAccessorBase.

Definition at line 90 of file FWItemSingleAccessor.cc.

References m_data.

{
   if(0==iIndex) {
      return m_data;
   }
   return 0;
}
const TClass * FWItemSingleAccessor::modelType ( ) const [virtual]

Implements FWItemAccessorBase.

Definition at line 111 of file FWItemSingleAccessor.cc.

References m_type.

{
   return m_type;
}
const FWItemSingleAccessor& FWItemSingleAccessor::operator= ( const FWItemSingleAccessor ) [private]
void FWItemSingleAccessor::reset ( void  ) [virtual]

Implements FWItemAccessorBase.

Definition at line 81 of file FWItemSingleAccessor.cc.

References m_data.

Referenced by setData().

{
   m_data = 0;
}
void FWItemSingleAccessor::setData ( const ROOT::Reflex::Object &  product)

Definition at line 63 of file FWItemSingleAccessor.cc.

References m_data, and reset().

{
   if (product.Address() == 0)
   {
      reset();
      return;
   }
   
   using ROOT::Reflex::Object;
   
   if(product.TypeOf().IsTypedef())
      m_data = Object(product.TypeOf().ToType(), product.Address()).Address();
   else
      m_data = product.Address();
   assert(0!=m_data);
}
unsigned int FWItemSingleAccessor::size ( void  ) const [virtual]

Implements FWItemAccessorBase.

Definition at line 105 of file FWItemSingleAccessor.cc.

References m_data.

{
   return 0 == m_data ? 0 : 1;
}
const TClass * FWItemSingleAccessor::type ( ) const [virtual]

Implements FWItemAccessorBase.

Definition at line 117 of file FWItemSingleAccessor.cc.

References m_type.

{
   return m_type;
}

Member Data Documentation

const void* FWItemSingleAccessor::m_data [private]

Definition at line 55 of file FWItemSingleAccessor.h.

Referenced by data(), modelData(), reset(), setData(), and size().

const TClass* FWItemSingleAccessor::m_type [private]

Definition at line 54 of file FWItemSingleAccessor.h.

Referenced by modelType(), and type().