class AddToStoreOperation : public nn::nex::DOOperation
This DOOperation
method executes when a duplicated object has been discovered or published.
Each station has a region called the Duplicated Object store that stores a list of the local active duplication masters (that have been locally published) and duplicas (that have been locally discovered). Duplicated objects are added to and removed from this Duplicated Object store as they are created and deleted during application runtime. Only those objects in the Duplicated Object store are considered to be active objects and updated on the local station.
If a duplication master exists on the local station it is considered to be active. In short, after a duplicated object is created, it is active from the time it is published by the call to DuplicatedObject::Publish
until the time its main reference is deleted by the call to DuplicatedObject::DeleteMainRef
. For a duplication master, events are generated in the sequence described below up to the point when the duplication master is stored in the Duplicated Object store.
・The application calls DuplicatedObject::Create
.
・SafetyExecutive
is called to inquire whether it is all right to create the object.
If there is a problem, execution aborts. If there is no problem, the process continues.
・The object constructor is called.
・A DOHandle
and a master ID are assigned to the duplicated object.
The master ID is the duplicated object ID (DOID
) of the Station
that holds the duplication master. From this point, DuplicatedObject::IsADuplica
, DuplicatedObject::IsADuplicationMaster
, and DuplicatedObject::GetMasterID
functions return the correct values.
・The application calls the DuplicatedObject::Publish
function.
・The system calls DataSet::OperationBegin
on all datasets.
・The system calls DuplicatedObject::OperationBegin
.
・The system calls DuplicatedObject::InitDO
.
・This duplicated object is added to the duplication master store (the region of the Duplicated Object store where the duplication masters are stored).
・The system calls DataSet::OperationEnd
.
・The system calls DuplicatedObject::OperationEnd
.
The duplication master is active as long as it exists in the system. For a duplica, events are generated in the sequence described below up to the point when the duplica is stored in the Duplicated Object store.
・The system calls the duplicated object constructor.
・A DOHandle
and a master ID (described above) are assigned to the duplicated object.
From this point on the DuplicatedObject::IsADuplica
and DuplicatedObject::IsADuplicationMaster
functions can be used.
・The system calls the DataSet::OperationBegin
function.
・The system calls the DuplicatedObject::OperationBegin
function.
・The datasets of this duplicated object are initialized.
・The system calls DuplicatedObject::InitDO
.
・This duplicated object is added to the duplica store (the region of the Duplicated Object store where duplicas are stored).
・The system calls the DuplicatedObject::OperationEnd
function.
This AddToStoreOperation
class ends prematurely if it is executed while the station is leaving the session (while the state of Station::GetState
is either Leaving
or LeavingOnFault
).
Type
|
Enumerated type representing the types of operations called by the system. (Inherits Operation .) |
---|
AddToDuplicationMasterSelection
|
Returns whether this operation will result in an addition to the duplication master store. | |
---|---|---|
AddToDuplicaSelection
|
Returns a value indicating whether this operation results in an addition to the duplica store. | |
GetAssociatedDOHandle
|
Gets the duplicated object handle associated with this operation. (Inherits DOOperation .) |
|
GetOrigin
|
Gets a duplicated object handle to a station that has called a function that generates an operation object as a result of the call. (Inherits DOOperation .) |
|
GetAssociatedDO
|
Gets a pointer to the duplicated object associated with an operation. (Inherits DOOperation .) |
|
PV |
GetType
|
Returns the type of this operation object. |
GetUserData
|
Gets user-defined values. (Inherits Operation .) |
|
SetUserData
|
Sets user-defined values. (Inherits Operation .) |
|
PV |
GetClassNameString
|
Gets the class name of this operation object. |
S |
DynamicCast
|
Uses runtime information for dynamic casting. (Inherits Operation .) |
S |
SetTraceFilter
|
Sets the callback function that specifies when to run traces on operation objects. (Inherits Operation .) |
nn::nex::RootObject
nn::nex::Operation
nn::nex::DOOperation
nn::nex::AddToStoreOperation
CONFIDENTIAL