eq::net::Barrier Class Reference

#include <barrier.h>

Inheritance diagram for eq::net::Barrier:

Inheritance graph
[legend]
Collaboration diagram for eq::net::Barrier:

Collaboration graph
[legend]

List of all members.


Detailed Description

A networked, versioned barrier.

Definition at line 23 of file net/barrier.h.


Operations

void enter ()
 Enters the barrier and blocks until the barrier has been reached.
virtual void attachToSession (const uint32_t id, const uint32_t instanceID, Session *session)
virtual ChangeType getChangeType () const
virtual void getInstanceData (DataOStream &os)
 Serialize the instance information about this managed object.
virtual void applyInstanceData (DataIStream &is)
 Deserialize the instance data.
virtual void pack (DataOStream &os)
 Serialize the modifications since the last call to commit().
virtual void unpack (DataIStream &is)
 Deserialize a change.

Public Member Functions

 Barrier (NodePtr master, const uint32_t height=0)
 Constructs a new barrier.
 Barrier ()
 Constructs a new barrier.
virtual ~Barrier ()
 Destructs the barrier.
Data Access
After a change, the barrier should be committed and synced to the same version on all nodes entering the barrier.

void setHeight (const uint32_t height)
void increase ()
uint32_t getHeight () const

Member Function Documentation

void eq::net::Barrier::enter (  ) 

Enters the barrier and blocks until the barrier has been reached.

The implementation assumes that the master node instance also enters the barrier.

Definition at line 79 of file net/barrier.cpp.

References eq::net::Session::getLocalNode(), and eq::net::Session::getServer().

Here is the call graph for this function:

virtual ChangeType eq::net::Barrier::getChangeType (  )  const [inline, protected, virtual]

Returns:
how the changes are to be handled.

Reimplemented from eq::net::Object.

Definition at line 69 of file net/barrier.h.

void eq::net::Barrier::getInstanceData ( DataOStream os  )  [protected, virtual]

Serialize the instance information about this managed object.

The default implementation uses the data provided by setInstanceData.

Parameters:
os The output stream.

Implements eq::net::Object.

Definition at line 43 of file net/barrier.cpp.

void eq::net::Barrier::applyInstanceData ( DataIStream is  )  [protected, virtual]

Deserialize the instance data.

This method is called during object mapping to populate slave instances with the master object's data. The default implementation writes the data into the memory declared by setInstanceData.

Parameters:
is the input stream.

Implements eq::net::Object.

Definition at line 48 of file net/barrier.cpp.

void eq::net::Barrier::pack ( DataOStream os  )  [protected, virtual]

Serialize the modifications since the last call to commit().

No new version will be created if no data is written to the ostream. The default implementation uses the data provided by setDeltaData or setInstanceData.

Parameters:
os the output stream.

Reimplemented from eq::net::Object.

Definition at line 53 of file net/barrier.cpp.

void eq::net::Barrier::unpack ( DataIStream is  )  [protected, virtual]

Deserialize a change.

The default implementation writes the data into the memory declared by setDeltaData or setInstanceData.

Parameters:
is the input data stream.

Reimplemented from eq::net::Object.

Definition at line 58 of file net/barrier.cpp.


The documentation for this class was generated from the following files:
Generated on Sat Dec 6 12:01:50 2008 for Equalizer 0.6 by  doxygen 1.5.5