Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

MovableObject Class Reference

#include <MovableObject.h>

Inheritance diagram for MovableObject::

AnalysisModel ConstraintHandler ConvergenceTest CrdTransf DOF_Numberer DomainComponent DomainDecompositionAnalysis GraphNumberer Integrator Material SolutionAlgorithm SystemOfEqn TimeSeries TimeSeriesIntegrator List of all members.

Public Methods

 MovableObject (int classTag, int dbTag)
 MovableObject (int classTag)
virtual ~MovableObject ()
int getClassTag (void) const
int getDbTag (void) const
void setDbTag (int dbTag)
virtual int sendSelf (int commitTag, Channel &theChannel)=0
virtual int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)=0

Detailed Description

MovableObject is an abstract class, i.e. no instances of MovableObject should exist. MovableObjects are objects which are able to send/receive themselves to/from Channel objects. With each movable object is associated a unique class identifier, it is this id which will allow object brokers in remote processes to create an object of the correct type. In addition when databases are being used, each MovableObject will have a unique database tag, it is this integer which will allow the objects to retrieve their own data from the database. \

}

Definition at line 61 of file MovableObject.h.


Constructor & Destructor Documentation

MovableObject::MovableObject ( int classTag,
int dbTag )
 

The constructor sets the objects class identifier to {classTag}: this is a unique id for each class of instantiable movable objects. The identifier will allow an object broker to recognize the object type to be instantiated. Sets the objects database tag to {dbTag}: this is a unique id for identifying the object in a database.

Definition at line 38 of file MovableObject.cpp.

MovableObject::MovableObject ( int classTag )
 

The constructor sets the objects class identifier to {classTag} and sets the objects database tag to {0}.

Definition at line 45 of file MovableObject.cpp.

MovableObject::~MovableObject ( ) [virtual]
 

{\bf Public Methods }

Definition at line 51 of file MovableObject.cpp.


Member Function Documentation

int MovableObject::getClassTag ( void ) const
 

A method which returns the class id, {classTag}, provided in the constructor.

Definition at line 60 of file MovableObject.cpp.

Referenced by ZeroLengthSection::recvSelf(), ZeroLengthND::recvSelf(), ZeroLength::recvSelf(), TrussSection::recvSelf(), Truss::recvSelf(), SectionAggregator::recvSelf(), NLBeamColumn3d::recvSelf(), NLBeamColumn2d::recvSelf(), LoadPattern::recvSelf(), GenericSectionNd::recvSelf(), GenericSection1d::recvSelf(), FourNodeQuad::recvSelf(), FiberSection3d::recvSelf(), FiberSection2d::recvSelf(), ElasticBeam3d::recvSelf(), ElasticBeam2d::recvSelf(), BeamWithHinges3d::recvSelf(), BeamWithHinges2d::recvSelf(), ZeroLengthSection::sendSelf(), ZeroLengthND::sendSelf(), ZeroLength::sendSelf(), TrussSection::sendSelf(), Truss::sendSelf(), SectionAggregator::sendSelf(), ParallelMaterial::sendSelf(), NLBeamColumn3d::sendSelf(), NLBeamColumn2d::sendSelf(), NewtonRaphson::sendSelf(), NewtonLineSearch::sendSelf(), ModifiedNewton::sendSelf(), LoadPattern::sendSelf(), GenericSectionNd::sendSelf(), GenericSection1d::sendSelf(), FourNodeQuad::sendSelf(), FiberSection3d::sendSelf(), FiberSection2d::sendSelf(), ElasticBeam3d::sendSelf(), ElasticBeam2d::sendSelf(), DomainDecompositionAnalysis::sendSelf(), Domain::sendSelf(), DOF_Numberer::sendSelf(), BeamWithHinges3d::sendSelf(), and BeamWithHinges2d::sendSelf().

int MovableObject::getDbTag ( void ) const
 

A method which returns the database tag, {dbTag}, provided in the constructor or last set in {setDbTag()}.

Definition at line 66 of file MovableObject.cpp.

Referenced by ZeroLengthSection::recvSelf(), ZeroLengthND::recvSelf(), ZeroLength::recvSelf(), TrussSection::recvSelf(), Truss::recvSelf(), TrigSeries::recvSelf(), RectangularSeries::recvSelf(), PathTimeSeries::recvSelf(), PathSeries::recvSelf(), Node::recvSelf(), NodalLoad::recvSelf(), NLBeamColumn3d::recvSelf(), NLBeamColumn2d::recvSelf(), NewtonRaphson::recvSelf(), NewtonLineSearch::recvSelf(), MP_Constraint::recvSelf(), ModifiedNewton::recvSelf(), LoadPattern::recvSelf(), LinearSeries::recvSelf(), FourNodeQuad::recvSelf(), FiberSection3d::recvSelf(), FiberSection2d::recvSelf(), ElasticSection3d::recvSelf(), ElasticSection2d::recvSelf(), DomainDecompositionAnalysis::recvSelf(), DOF_Numberer::recvSelf(), ConstantSeries::recvSelf(), BeamWithHinges3d::recvSelf(), BeamWithHinges2d::recvSelf(), ZeroLengthSection::sendSelf(), ZeroLengthND::sendSelf(), ZeroLength::sendSelf(), TrussSection::sendSelf(), Truss::sendSelf(), TrigSeries::sendSelf(), SectionAggregator::sendSelf(), RectangularSeries::sendSelf(), PathTimeSeries::sendSelf(), PathSeries::sendSelf(), ParallelMaterial::sendSelf(), Node::sendSelf(), NodalLoad::sendSelf(), NLBeamColumn3d::sendSelf(), NLBeamColumn2d::sendSelf(), NewtonRaphson::sendSelf(), NewtonLineSearch::sendSelf(), MP_Constraint::sendSelf(), ModifiedNewton::sendSelf(), LoadPattern::sendSelf(), LinearSeries::sendSelf(), GenericSectionNd::sendSelf(), GenericSection1d::sendSelf(), FourNodeQuad::sendSelf(), FiberSection3d::sendSelf(), FiberSection2d::sendSelf(), ElasticSection3d::sendSelf(), ElasticSection2d::sendSelf(), ElasticBeam3d::sendSelf(), ElasticBeam2d::sendSelf(), DomainDecompositionAnalysis::sendSelf(), Domain::sendSelf(), DOF_Numberer::sendSelf(), ConstantSeries::sendSelf(), BeamWithHinges3d::sendSelf(), and BeamWithHinges2d::sendSelf().

int MovableObject::recvSelf ( int commitTag,
Channel & theChannel,
FEM_ObjectBroker & theBroker ) [pure virtual]
 

This is a pure virtual method, one must be written for each instantiable subclass of MovableObject. Each object has to receive the data needed to be able to recreate itself in the new process after it has been sent through {theChannel}. If the object is an aggregation containing other objects, new objects of the correct type can be constructed using {theBroker}. To return if successful or a if not.

Reimplemented in AnalysisModel, ArcLength, BandArpackSOE, BandGenLinSOE, BandSPDLinSOE, BbarBrick, BeamWithHinges2d, BeamWithHinges3d, BFGS, Brick, Broyden, Concrete01, ConstantPressureVolumeQuad, ConstantSeries, CorotTruss, CTestEnergyIncr, CTestNormDispIncr, CTestNormUnbalance, DispBeamColumn2d, DispBeamColumn3d, DisplacementControl, DOF_Numberer, DomainDecompAlgo, DomainDecompositionAnalysis, EarthquakePattern, EigenIntegrator, EightNodeBrick, ElasticBeam2d, ElasticBeam3d, ElasticIsotropic3D, ElasticIsotropicMaterial, ElasticMaterial, ElasticPPMaterial, ElasticSection2d, ElasticSection3d, EnhancedQuad, FiberSection2d, FiberSection3d, FourNodeQuad, FrequencyAlgo, FullGenLinSOE, GenericSection1d, GenericSectionNd, HardeningMaterial, HHT, HystereticMaterial, ImposedMotionSP, ImposedMotionSP1, J2AxiSymm, J2PlaneStrain, J2PlaneStress, J2Plasticity, J2ThreeDimensional, KrylovNewton, LagrangeConstraintHandler, Linear, LinearCrdTransf2d, LinearCrdTransf3d, LinearSeries, LoadControl, LoadPattern, Metis, MinUnbalDispNorm, ModifiedNewton, MP_Constraint, MultiSupportPattern, Newmark, NewtonLineSearch, NewtonRaphson, NLBeamColumn2d, NLBeamColumn3d, NodalLoad, Node, ParallelMaterial, PathSeries, PathTimeSeries, PDeltaCrdTransf2d, PDeltaCrdTransf3d, PenaltyConstraintHandler, PlainHandler, PlainNumberer, ProfileSPDLinSOE, RCM, RectangularSeries, SectionAggregator, SP_Constraint, SparseGenColLinSOE, Steel01, SymArpackSOE, TransformationConstraintHandler, TrapezoidalTimeSeriesIntegrator, TrigSeries, Truss, TrussSection, UniformExcitation, ViscousMaterial, ZeroLength, ZeroLengthND, and ZeroLengthSection.

Referenced by UDP_Socket::recvObj(), TCP_Socket::recvObj(), MPI_Channel::recvObj(), FileDatastore::recvObj(), ZeroLengthSection::recvSelf(), ZeroLengthND::recvSelf(), ZeroLength::recvSelf(), TrussSection::recvSelf(), Truss::recvSelf(), SectionAggregator::recvSelf(), ParallelMaterial::recvSelf(), NLBeamColumn3d::recvSelf(), NLBeamColumn2d::recvSelf(), NewtonRaphson::recvSelf(), NewtonLineSearch::recvSelf(), ModifiedNewton::recvSelf(), LoadPattern::recvSelf(), FourNodeQuad::recvSelf(), FiberSection3d::recvSelf(), FiberSection2d::recvSelf(), ElasticBeam3d::recvSelf(), ElasticBeam2d::recvSelf(), DomainDecompositionAnalysis::recvSelf(), Domain::recvSelf(), DOF_Numberer::recvSelf(), BeamWithHinges3d::recvSelf(), and BeamWithHinges2d::recvSelf().

int MovableObject::sendSelf ( int commitTag,
Channel & theChannel ) [pure virtual]
 

This is a pure virtual method, one must be written for each instantiable subclass of MovableObject. Each object has to send the data needed to be able to reproduce that object in a remote process. The object uses the methods provided by {theChannel} object to send the data to another channel at the remote actor, the address of the channel is set before this method is called. An object of similar type at the remote actor is invoked with a {receiveSelf()} to receive the data. Returns if successful (successful in that the data got to the channel), or a if no data was sent.

Reimplemented in AnalysisModel, ArcLength, BandArpackSOE, BandGenLinSOE, BandSPDLinSOE, BbarBrick, BeamWithHinges2d, BeamWithHinges3d, BFGS, Brick, Broyden, Concrete01, ConstantPressureVolumeQuad, ConstantSeries, CorotTruss, CTestEnergyIncr, CTestNormDispIncr, CTestNormUnbalance, DispBeamColumn2d, DispBeamColumn3d, DisplacementControl, DOF_Numberer, DomainDecompAlgo, DomainDecompositionAnalysis, EarthquakePattern, EigenIntegrator, EightNodeBrick, ElasticBeam2d, ElasticBeam3d, ElasticIsotropic3D, ElasticIsotropicMaterial, ElasticMaterial, ElasticPPMaterial, ElasticSection2d, ElasticSection3d, EnhancedQuad, FiberSection2d, FiberSection3d, FourNodeQuad, FrequencyAlgo, FullGenLinSOE, GenericSection1d, GenericSectionNd, HardeningMaterial, HHT, HystereticMaterial, ImposedMotionSP, ImposedMotionSP1, J2AxiSymm, J2PlaneStrain, J2PlaneStress, J2Plasticity, J2ThreeDimensional, KrylovNewton, LagrangeConstraintHandler, Linear, LinearCrdTransf2d, LinearCrdTransf3d, LinearSeries, LoadControl, LoadPattern, Metis, MinUnbalDispNorm, ModifiedNewton, MP_Constraint, MultiSupportPattern, Newmark, NewtonLineSearch, NewtonRaphson, NLBeamColumn2d, NLBeamColumn3d, NodalLoad, Node, ParallelMaterial, PathSeries, PathTimeSeries, PDeltaCrdTransf2d, PDeltaCrdTransf3d, PenaltyConstraintHandler, PlainHandler, PlainNumberer, ProfileSPDLinSOE, RCM, RectangularSeries, SectionAggregator, SP_Constraint, SparseGenColLinSOE, Steel01, SymArpackSOE, TransformationConstraintHandler, TrapezoidalTimeSeriesIntegrator, TrigSeries, Truss, TrussSection, UniformExcitation, ViscousMaterial, ZeroLength, ZeroLengthND, and ZeroLengthSection.

Referenced by UDP_Socket::sendObj(), TCP_Socket::sendObj(), MPI_Channel::sendObj(), FileDatastore::sendObj(), ZeroLengthSection::sendSelf(), ZeroLengthND::sendSelf(), ZeroLength::sendSelf(), TrussSection::sendSelf(), Truss::sendSelf(), SectionAggregator::sendSelf(), NLBeamColumn3d::sendSelf(), NLBeamColumn2d::sendSelf(), NewtonRaphson::sendSelf(), NewtonLineSearch::sendSelf(), ModifiedNewton::sendSelf(), LoadPattern::sendSelf(), FourNodeQuad::sendSelf(), FiberSection3d::sendSelf(), FiberSection2d::sendSelf(), ElasticBeam3d::sendSelf(), ElasticBeam2d::sendSelf(), DomainDecompositionAnalysis::sendSelf(), Domain::sendSelf(), DOF_Numberer::sendSelf(), BeamWithHinges3d::sendSelf(), and BeamWithHinges2d::sendSelf().

void MovableObject::setDbTag ( int dbTag )
 

A method to set the database tag to be equal to {dbTag}.

Definition at line 72 of file MovableObject.cpp.

Referenced by ZeroLengthSection::recvSelf(), ZeroLengthND::recvSelf(), ZeroLength::recvSelf(), TrussSection::recvSelf(), Truss::recvSelf(), SectionAggregator::recvSelf(), ParallelMaterial::recvSelf(), NLBeamColumn3d::recvSelf(), NLBeamColumn2d::recvSelf(), NewtonRaphson::recvSelf(), NewtonLineSearch::recvSelf(), ModifiedNewton::recvSelf(), LoadPattern::recvSelf(), GenericSectionNd::recvSelf(), GenericSection1d::recvSelf(), FourNodeQuad::recvSelf(), FiberSection3d::recvSelf(), FiberSection2d::recvSelf(), ElasticBeam3d::recvSelf(), ElasticBeam2d::recvSelf(), DomainDecompositionAnalysis::recvSelf(), Domain::recvSelf(), DOF_Numberer::recvSelf(), BeamWithHinges3d::recvSelf(), BeamWithHinges2d::recvSelf(), ZeroLengthSection::sendSelf(), ZeroLengthND::sendSelf(), ZeroLength::sendSelf(), TrussSection::sendSelf(), Truss::sendSelf(), SectionAggregator::sendSelf(), ParallelMaterial::sendSelf(), NLBeamColumn3d::sendSelf(), NLBeamColumn2d::sendSelf(), LoadPattern::sendSelf(), GenericSectionNd::sendSelf(), GenericSection1d::sendSelf(), FourNodeQuad::sendSelf(), FiberSection3d::sendSelf(), FiberSection2d::sendSelf(), ElasticBeam3d::sendSelf(), ElasticBeam2d::sendSelf(), Domain::sendSelf(), BeamWithHinges3d::sendSelf(), and BeamWithHinges2d::sendSelf().


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