OpenDOF Project
Typedefs | Functions
DOFObject
Distributed Object Framework (DOF)

The primary "class" for creating and interacting with local and remote DOF Objects. More...

Typedefs

typedef struct DOFObject_t * DOFObject
 DOF Object representation, used for both locally defined and remote objects.
 

Functions

void DOFObject_Destroy (DOFObject object)
 Destroy the given DOFObject.
 
DOFObjectID DOFObject_GetObjectID (const DOFObject object)
 Return the Object ID associated with the given Object.
 
DOFSystem DOFObject_GetSystem (const DOFObject obj)
 Return the associated System for a given Object.
 
DOFObject DOFObject_Copy (DOFObject self)
 Create a new copy of an existing DOFObject.
 

DOF Object Provider

void DOFObject_Advertise (const DOFObject self, DOFInterfaceID interfaceID, DOFOperationControl config)
 Send an Advertisement for an Object and Interface ID.
 
boolean DOFObject_Signal (DOFObject obj, const DOFInterfaceEvent evt, uint16 parameterCount, const DOFValue parameters[])
 Signal that an Event occurred.
 
boolean DOFObject_IsSignalRequired (const DOFObject obj, const DOFInterfaceEvent evt)
 Ask whether any Requestors have registered an Event handler for the given object of this provider.
 
boolean DOFObject_Changed (DOFObject obj, const DOFInterfaceProperty property)
 Report that a Property value changed.
 
DOFOperation DOFObject_BeginProvide (DOFObject obj, DOFInterface iface, uint32 timeout, const DOFObjectProvider callback, void *context)
 Register a set of callbacks for Providing (or implementing) an Interface on an Object.
 

DOF Object Requestor

DOFInterface DOFObject_Define (const DOFObject self, const DOFInterfaceID interfaceID, DOFOperationControl config, uint32 timeout, DOFException *pException)
 Request that an Interface definition be located in the network and retrieved.
 
DOFOperation DOFObject_BeginDefine (const DOFObject self, const DOFInterfaceID interfaceID, DOFOperationControl config, uint32 timeout, const DOFObjectDefineCallback callback, void *context)
 Request that an Interface definition be located in the network and retrieved.
 
DOFResult DOFObject_Get (DOFObject obj, const DOFInterfaceProperty property, DOFOperationControl config, uint32 timeout, DOFException *pException)
 Get a Property's value.
 
DOFResult DOFObject_Set (DOFObject obj, const DOFInterfaceProperty property, DOFValue value, DOFOperationControl config, uint32 timeout, DOFException *pException)
 Set a Property's value.
 
DOFResult DOFObject_Invoke (DOFObject obj, const DOFInterfaceMethod method, uint16 parameterCount, const DOFValue parameters[], DOFOperationControl config, uint32 timeout, DOFException *pException)
 Invoke a Method.
 
DOFOperation DOFObject_BeginGet (DOFObject obj, const DOFInterfaceProperty property, DOFOperationControl config, uint32 timeout, const DOFObjectGetCallback callback, void *context)
 Start an asynchronous get of a Property's value.
 
DOFOperation DOFObject_BeginSet (DOFObject obj, const DOFInterfaceProperty property, DOFValue value, DOFOperationControl config, uint32 timeout, const DOFObjectSetCallback callback, void *context)
 Start an asynchronous set of a Property's value.
 
DOFOperation DOFObject_BeginInvoke (DOFObject obj, const DOFInterfaceMethod method, uint16 parameterCount, const DOFValue parameters[], DOFOperationControl config, uint32 timeout, const DOFObjectInvokeCallback callback, void *context)
 Start an asynchronous Method invocation.
 
DOFInterfaceIDList DOFObject_CreateInterfaceList (const DOFObject object)
 Create a list of Interfaces currently being provided on the Object.
 
DOFOperation DOFObject_BeginSubscribe (DOFObject obj, const DOFInterfaceProperty property, uint32 minPeriod, DOFOperationControl config, uint32 timeout, const DOFObjectSubscribeCallback callback, void *context)
 Register a requestor callback for watching the value of a property over time, and ask the provider of the submitted DOFObject and submitted DOFInterfaceProperty to notify us of such Property value changes.
 
DOFOperation DOFObject_BeginRegister (DOFObject obj, const DOFInterfaceEvent evt, DOFOperationControl config, uint32 timeout, const DOFObjectEventCallback callback, void *context)
 Register a requestor callback for notifying us when the submitted provider event is signaled, and ask the provider of that event and the submitted DOFObject to signal the event.
 
DOFOperation DOFObject_BeginSession (DOFObject obj, const DOFInterface interface, const DOFInterfaceID sessionType, DOFOperationControl config, uint32 timeout, const DOFObjectSessionCallback callback, void *context)
 Start an asynchronous request to open a Session on an object.
 
boolean DOFObject_IsInterestRequested (const DOFObject self, const DOFInterfaceID interfaceID, DOFInterestLevel level)
 Determine if there is the specified level of interest currently expressed for a given Interface on the Object.
 

Detailed Description

The primary "class" for creating and interacting with local and remote DOF Objects.

DOFObject implements two main interfaces:

  1. DOFProvider - used for providing information to other nodes in the network.
  2. DOFRequestor - used for requesting information from other nodes in the network. For each instance of DOFObject acting in its provider role, the C OAL maintains an internal list of active event registrations and property subscriptions.
core-c-dof-oal Version 8.0.1 Build 0
2018-01-22