CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
FWItemSingleAccessor Class Reference

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

Inheritance diagram for FWItemSingleAccessor:
FWItemAccessorBase BeamSpotSingleAccessor

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 Reflex::Object &)
 override if id of an object should be different than the index More...
 
unsigned int size () const
 
const TClass * type () const
 
virtual ~FWItemSingleAccessor ()
 
- Public Member Functions inherited from FWItemAccessorBase
 FWItemAccessorBase ()
 
virtual ~FWItemAccessorBase ()
 

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.

33  :
34  m_type(iClass), m_data(0)
35 {
36 }
FWItemSingleAccessor::~FWItemSingleAccessor ( )
virtual

Definition at line 43 of file FWItemSingleAccessor.cc.

44 {
45 }
FWItemSingleAccessor::FWItemSingleAccessor ( const FWItemSingleAccessor )
private

Member Function Documentation

const void * FWItemSingleAccessor::data ( ) const
virtual

Implements FWItemAccessorBase.

Definition at line 97 of file FWItemSingleAccessor.cc.

References m_data.

98 {
99  return m_data;
100 }
bool FWItemSingleAccessor::isCollection ( ) const
virtual

Implements FWItemAccessorBase.

Definition at line 121 of file FWItemSingleAccessor.cc.

122 {
123  return false;
124 }
const void * FWItemSingleAccessor::modelData ( int  iIndex) const
virtual

Implements FWItemAccessorBase.

Definition at line 88 of file FWItemSingleAccessor.cc.

References m_data.

89 {
90  if(0==iIndex) {
91  return m_data;
92  }
93  return 0;
94 }
const TClass * FWItemSingleAccessor::modelType ( ) const
virtual

Implements FWItemAccessorBase.

Definition at line 109 of file FWItemSingleAccessor.cc.

References m_type.

110 {
111  return m_type;
112 }
const FWItemSingleAccessor& FWItemSingleAccessor::operator= ( const FWItemSingleAccessor )
private
void FWItemSingleAccessor::reset ( void  )
virtual

Implements FWItemAccessorBase.

Definition at line 79 of file FWItemSingleAccessor.cc.

References m_data.

Referenced by setData().

80 {
81  m_data = 0;
82 }
void FWItemSingleAccessor::setData ( const Reflex::Object &  )
virtual

override if id of an object should be different than the index

Implements FWItemAccessorBase.

Definition at line 63 of file FWItemSingleAccessor.cc.

References m_data, and reset().

64 {
65  if (product.Address() == 0)
66  {
67  reset();
68  return;
69  }
70 
71  if(product.TypeOf().IsTypedef())
72  m_data = Reflex::Object(product.TypeOf().ToType(), product.Address()).Address();
73  else
74  m_data = product.Address();
75  assert(0!=m_data);
76 }
unsigned int FWItemSingleAccessor::size ( void  ) const
virtual

Implements FWItemAccessorBase.

Definition at line 103 of file FWItemSingleAccessor.cc.

References m_data.

104 {
105  return 0 == m_data ? 0 : 1;
106 }
const TClass * FWItemSingleAccessor::type ( ) const
virtual

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().