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 Attributes
ora::ObjectUpdater Class Reference

#include <ObjectStreamer.h>

Inheritance diagram for ora::ObjectUpdater:
ora::ObjectStreamerBase ora::IRelationalUpdater

Public Member Functions

bool build (DataElement &dataElement, IRelationalData &relationalData, RelationalBuffer &operationBuffer)
 
 ObjectUpdater (const Reflex::Type &objectType, MappingElement &mapping, ContainerSchema &contSchema)
 
void processDataMember (DataElement &dataElement, IRelationalData &relationalData, Reflex::Type &dataMemberType, MappingElement &dataMemberMapping, RelationalBuffer *operationBuffer)
 
void setRecordId (const std::vector< int > &identity)
 
void update (int oid, const void *data)
 Updates a data element. More...
 
virtual ~ObjectUpdater ()
 
- Public Member Functions inherited from ora::ObjectStreamerBase
void buildBaseDataMembers (DataElement &dataElement, IRelationalData &relationalData, const Reflex::Type &objType, RelationalBuffer *operationBuffer)
 
bool buildDataMembers (DataElement &dataElement, IRelationalData &relationalData, RelationalBuffer *operationBuffer)
 
 ObjectStreamerBase (const Reflex::Type &objectType, MappingElement &mapping, ContainerSchema &contSchema)
 
virtual ~ObjectStreamerBase ()
 
- Public Member Functions inherited from ora::IRelationalUpdater
virtual ~IRelationalUpdater ()
 

Private Attributes

std::vector< IRelationalUpdater * > m_updaters
 

Additional Inherited Members

- Protected Attributes inherited from ora::ObjectStreamerBase
RelationalStreamerFactory m_streamerFactory
 

Detailed Description

Definition at line 53 of file ObjectStreamer.h.

Constructor & Destructor Documentation

ora::ObjectUpdater::ObjectUpdater ( const Reflex::Type &  objectType,
MappingElement mapping,
ContainerSchema contSchema 
)

Definition at line 186 of file ObjectStreamer.cc.

188  :
189  ObjectStreamerBase( objectType, mapping, contSchema ),
190  m_updaters(){
191 }
std::vector< IRelationalUpdater * > m_updaters
ObjectStreamerBase(const Reflex::Type &objectType, MappingElement &mapping, ContainerSchema &contSchema)
ora::ObjectUpdater::~ObjectUpdater ( )
virtual

Definition at line 193 of file ObjectStreamer.cc.

193  {
194  for( std::vector< IRelationalUpdater* >::iterator iU = m_updaters.begin();
195  iU != m_updaters.end(); ++iU ){
196  delete *iU;
197  }
198  m_updaters.clear();
199 }
std::vector< IRelationalUpdater * > m_updaters

Member Function Documentation

bool ora::ObjectUpdater::build ( DataElement dataElement,
IRelationalData relationalData,
RelationalBuffer operationBuffer 
)
virtual

Implements ora::IRelationalUpdater.

Definition at line 201 of file ObjectStreamer.cc.

Referenced by psClasses.BuildThread::run().

203  {
204  return buildDataMembers( dataElement, relationalData, &operationBuffer );
205 }
bool buildDataMembers(DataElement &dataElement, IRelationalData &relationalData, RelationalBuffer *operationBuffer)
void ora::ObjectUpdater::processDataMember ( DataElement dataElement,
IRelationalData relationalData,
Reflex::Type &  dataMemberType,
MappingElement dataMemberMapping,
RelationalBuffer operationBuffer 
)
virtual

Implements ora::ObjectStreamerBase.

Definition at line 223 of file ObjectStreamer.cc.

References ora::IRelationalUpdater::build().

227  {
228  IRelationalUpdater* dataMemberUpdater = m_streamerFactory.newUpdater( dataMemberType, dataMemberMapping );
229  m_updaters.push_back( dataMemberUpdater );
230  dataMemberUpdater->build( dataMemberElement, relationalData, *operationBuffer );
231 }
std::vector< IRelationalUpdater * > m_updaters
IRelationalUpdater * newUpdater(const Reflex::Type &dataType, MappingElement &dataMapping)
RelationalStreamerFactory m_streamerFactory
void ora::ObjectUpdater::setRecordId ( const std::vector< int > &  identity)
virtual

Implements ora::IRelationalUpdater.

Definition at line 207 of file ObjectStreamer.cc.

207  {
208  for( std::vector< IRelationalUpdater* >::iterator iU = m_updaters.begin();
209  iU != m_updaters.end(); ++iU){
210  (*iU)->setRecordId( identity );
211  }
212 }
std::vector< IRelationalUpdater * > m_updaters
void ora::ObjectUpdater::update ( int  oid,
const void *  data 
)
virtual

Updates a data element.

Writes a data element.

Implements ora::IRelationalUpdater.

Definition at line 215 of file ObjectStreamer.cc.

Referenced by progressbar.ProgressBar::__next__(), relval_steps.Matrix::__setitem__(), relval_steps.Steps::__setitem__(), python.seqvaluedict.seqdict::__setslice__(), Vispa.Gui.VispaWidget.VispaWidget::autosize(), Vispa.Views.LineDecayView.LineDecayContainer::createObject(), Vispa.Views.LineDecayView.LineDecayContainer::deselectAllObjects(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::deselectAllWidgets(), Vispa.Gui.VispaWidget.VispaWidget::enableAutosizing(), python.seqvaluedict.seqdict::extend(), progressbar.ProgressBar::finish(), Vispa.Gui.MenuWidget.MenuWidget::leaveEvent(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseMoveEvent(), Vispa.Gui.MenuWidget.MenuWidget::mouseMoveEvent(), Vispa.Views.LineDecayView.LineDecayContainer::mouseMoveEvent(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseReleaseEvent(), Vispa.Views.LineDecayView.LineDecayContainer::objectMoved(), relval_steps.Steps::overwrite(), Vispa.Views.LineDecayView.LineDecayContainer::removeObject(), Vispa.Gui.ConnectableWidget.ConnectableWidget::removePorts(), Vispa.Gui.FindDialog.FindDialog::reset(), Vispa.Gui.PortConnection.PointToPointConnection::select(), Vispa.Gui.VispaWidget.VispaWidget::select(), Vispa.Views.LineDecayView.LineDecayContainer::select(), Vispa.Gui.VispaWidget.VispaWidget::setText(), Vispa.Gui.VispaWidget.VispaWidget::setTitle(), Vispa.Gui.ZoomableWidget.ZoomableWidget::setZoom(), Vispa.Views.LineDecayView.LineDecayContainer::setZoom(), and Vispa.Gui.PortConnection.PointToPointConnection::updateConnection().

216  {
217  for( std::vector< IRelationalUpdater* >::iterator iU = m_updaters.begin();
218  iU != m_updaters.end(); ++iU ){
219  (*iU)->update( oid, data );
220  }
221 }
std::vector< IRelationalUpdater * > m_updaters
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82

Member Data Documentation

std::vector< IRelationalUpdater* > ora::ObjectUpdater::m_updaters
private

Definition at line 75 of file ObjectStreamer.h.