xc
Public Member Functions | List of all members
XC::BerkeleyDbDatastore Class Reference
Inheritance diagram for XC::BerkeleyDbDatastore:
XC::DBDatastore XC::FE_Datastore XC::Channel

Public Member Functions

 BerkeleyDbDatastore (const std::string &projectName, Preprocessor &preprocessor, FEM_ObjectBroker &theBroker, const std::string &type="")
 Constructor.
 
int getDbTag (void) const
 Return next available database tag. More...
 
int sendMsg (int dbTag, int commitTag, const Message &, ChannelAddress *theAddress=nullptr)
 A method invoked to send the data in the Message object theMsg to another Channel object. More...
 
int recvMsg (int dbTag, int commitTag, Message &, ChannelAddress *theAddress=nullptr)
 Invoked to send the data in the Message object theMsg to another Channel object. More...
 
int sendMatrix (int dbTag, int commitTag, const Matrix &theMatrix, ChannelAddress *theAddress=nullptr)
 Invoked to receive the data in the Matrix object theMatrix to another Channel object. More...
 
int recvMatrix (int dbTag, int commitTag, Matrix &theMatrix, ChannelAddress *theAddress=nullptr)
 Invoked to receive the data in the Matrix object theMatrix to another Channel object. More...
 
int sendVector (int dbTag, int commitTag, const Vector &, ChannelAddress *theAddress=nullptr)
 Invoked to receive the data in the Vector object theVector to another Channel object. More...
 
int recvVector (int dbTag, int commitTag, Vector &, ChannelAddress *theAddress=nullptr)
 Invoked to receive the data in the Vector object theVector to another Channel object. More...
 
int sendID (int dbTag, int commitTag, const ID &, ChannelAddress *theAddress=nullptr)
 Invoked to receive the data in the ID object theID to another Channel object. More...
 
int recvID (int dbTag, int commitTag, ID &theID, ChannelAddress *theAddress=nullptr)
 Invoked to receive the data in the ID object theID to another Channel object. More...
 
- Public Member Functions inherited from XC::DBDatastore
 DBDatastore (Preprocessor &, FEM_ObjectBroker &theBroker)
 
- Public Member Functions inherited from XC::FE_Datastore
 FE_Datastore (Preprocessor &, FEM_ObjectBroker &theBroker)
 Constructor. More...
 
char * addToProgram (void)
 Return \(nullptr\).
 
int setUpConnection (void)
 
int setNextAddress (const ChannelAddress &otherChannelAddress)
 Return \(0\).
 
ChannelAddressgetLastSendersAddress (void)
 Return \(nullptr\).
 
int sendObj (int commitTag, MovableObject &theObject, ChannelAddress *theAddress=0)
 Call {sendSelf(commitTag, *this, theBroker)} on theObject and return the result. More...
 
int recvObj (int commitTag, MovableObject &theObject, FEM_ObjectBroker &theBroker, ChannelAddress *theAddress=0)
 Call {recvSelf(commitTag, *this, theBroker)} on theObject and return the result. More...
 
int getDbTag (void) const
 To return a unique integer identifier at each call. More...
 
virtual bool isDatastore (void) const
 Return true (this channel type IS a Datastore).
 
virtual int commitState (int commitTag)
 Stores the current state on the database. More...
 
virtual int restoreState (int commitTag)
 Invoked to restore the state of the domain from a database. More...
 
bool isSaved (int commitTag) const
 Returns true if the state identified by commitTag was previously saved on the database. More...
 
virtual int createTable (const std::string &tableName, const std::vector< std::string > &)
 
virtual int insertData (const std::string &tableName, const std::vector< std::string > &, int commitTag, const Vector &data)
 
virtual int getData (const std::string &tableName, const std::vector< std::string > &, int commitTag, Vector &data)
 
int save (const int &commitTag)
 
int restore (const int &commitTag)
 
- Public Member Functions inherited from XC::Channel
 Channel (CommandEntity *owr=nullptr)
 Constructor.
 
bool checkDbTag (const int &dbTag)
 Check if a dbTag is already used.
 
const IDgetUsedTags (void) const
 Return the list of dbTags already used.
 
void clearDbTags (void)
 Reset used database tags set.
 
int getTag (void) const
 Return the object tag.
 
template<class inputIterator >
int sendObjs (int commitTag, const inputIterator &first, const inputIterator &last, ChannelAddress *theAddress=nullptr)
 Send the objects on interval [first,last).
 
template<class inputIterator >
int recvObjs (int commitTag, const inputIterator &first, const inputIterator &last, FEM_ObjectBroker &, ChannelAddress *theAddress=nullptr)
 Receive an object sequence.
 

Additional Inherited Members

- Protected Member Functions inherited from XC::FE_Datastore
FEM_ObjectBrokergetObjectBroker (void)
 Returns a pointer to theBroker object passed in the constructor.
 
const PreprocessorgetPreprocessor (void) const
 Returns a pointer to the object preprocessor.
 
PreprocessorgetPreprocessor (void)
 Returns a pointer to the object preprocessor.
 
- Protected Member Functions inherited from XC::Channel
int sendMovable (int commitTag, MovableObject &)
 Send theObject.
 
int receiveMovable (int commitTag, MovableObject &, FEM_ObjectBroker &)
 Receive theObject.
 
- Protected Attributes inherited from XC::DBDatastore
int dbTAG
 

Member Function Documentation

§ getDbTag()

int XC::BerkeleyDbDatastore::getDbTag ( void  ) const
virtual

Return next available database tag.

Return the next available database tag, must be an integer value greater than 0, 0 is used by the objects to check if they have yet been assigned a database tag. The method defined for the Channel base class always returns 0, only database channel objects need worry about assigning unique integer values.

Reimplemented from XC::Channel.

§ recvID()

int XC::BerkeleyDbDatastore::recvID ( int  dbTag,
int  commitTag,
ID theID,
ChannelAddress theAddress = nullptr 
)
virtual

Invoked to receive the data in the ID object theID to another Channel object.

The object will obtain the data and size of the data to be sent by invoking getData() and getSize() on theID. The channel object is then responsible for sending that data to the remote channel address given by theAddress. If theAddress is 0, the Channel sends to the Channel with the address last set in a send..()}, recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.

§ recvMatrix()

int XC::BerkeleyDbDatastore::recvMatrix ( int  dbTag,
int  commitTag,
Matrix theMatrix,
ChannelAddress theAddress = nullptr 
)
virtual

Invoked to receive the data in the Matrix object theMatrix to another Channel object.

The object will obtain the data and size of the data to be sent by invoking getData() and getSize() on theMatrix. The channel object is then responsible for sending that data to the remote channel address given by theAddress. If theAddress is 0, the Channel sends to the Channel with the address last set in a send..()}, recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.

§ recvMsg()

int XC::BerkeleyDbDatastore::recvMsg ( int  dbTag,
int  commitTag,
Message theMsg,
ChannelAddress theAddress = nullptr 
)
virtual

Invoked to send the data in the Message object theMsg to another Channel object.

The object will obtain the the size of the data that is being received by invoking getSize() on theMsg. The channel object is then responsible for receiving that amount of data from the channel whose address is given by theAddress. If theAddress is 0, the Channel receives from the Channel with the address last set in a send..(), recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.

§ recvVector()

int XC::BerkeleyDbDatastore::recvVector ( int  dbTag,
int  commitTag,
Vector theVector,
ChannelAddress theAddress = nullptr 
)
virtual

Invoked to receive the data in the Vector object theVector to another Channel object.

The object will obtain the data and size of the data to be sent by invoking getData() and getSize() on theVector. The channel object is then responsible for sending that data to the remote channel address given by theAddress. If theAddress is 0, the Channel sends to the Channel with the address last set in a send..()}, recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.

§ sendID()

int XC::BerkeleyDbDatastore::sendID ( int  dbTag,
int  commitTag,
const ID theID,
ChannelAddress theAddress = nullptr 
)
virtual

Invoked to receive the data in the ID object theID to another Channel object.

The object will obtain the data and size of the data to be sent by invoking getData() and getSize() on theID. The channel object is then responsible for sending that data to the remote channel address given by theAddress. If theAddress is 0, the Channel sends to the Channel with the address last set in a send..()}, recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.

§ sendMatrix()

int XC::BerkeleyDbDatastore::sendMatrix ( int  dbTag,
int  commitTag,
const Matrix theMatrix,
ChannelAddress theAddress = nullptr 
)
virtual

Invoked to receive the data in the Matrix object theMatrix to another Channel object.

The object will obtain the data and size of the data to be sent by invoking getData() and getSize() on theMatrix. The channel object is then responsible for sending that data to the remote channel address given by theAddress. If theAddress is 0, the Channel sends to the Channel with the address last set in a send..()}, recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.

§ sendMsg()

int XC::BerkeleyDbDatastore::sendMsg ( int  dbTag,
int  commitTag,
const Message theMsg,
ChannelAddress theAddress = nullptr 
)
virtual

A method invoked to send the data in the Message object theMsg to another Channel object.

The object will obtain the data and size of the data to be sent by invoking getData() and getSize() on theMsg. The channel object is then responsible for sending that data to the remote channel address given by theAddress. If theAddress is 0, the Channel sends to the Channel with the address last set in a send..()}, recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.

§ sendVector()

int XC::BerkeleyDbDatastore::sendVector ( int  dbTag,
int  commitTag,
const Vector theVector,
ChannelAddress theAddress = nullptr 
)
virtual

Invoked to receive the data in the Vector object theVector to another Channel object.

The object will obtain the data and size of the data to be sent by invoking getData() and getSize() on theVector. The channel object is then responsible for sending that data to the remote channel address given by theAddress. If theAddress is 0, the Channel sends to the Channel with the address last set in a send..()}, recv..(), or setNextAddress() operation. To return 0 if successful, a negative number if not.

Implements XC::Channel.


The documentation for this class was generated from the following files: