Transformer SDK For C  8.0.2.290852-a608fcd3
Publishing Data

Macros

#define CMD_SYMBOL_PUBLISH
 Republish a symbol to any interested peers. More...
 
#define PACKET_FREE
 After processing, the ds_data_t should be freed. More...
 
#define PACKET_NOFEEDTIME
 Do not update the last-update-time for this symbol. More...
 
#define PACKET_NOLISTEN
 Indicate that this update should not be passed to modules. More...
 
#define PACKET_OWRITE
 This update should be treated as an image. More...
 
#define PACKET_PUBLISH
 This update should be (potentially) sent to interested peers. More...
 
#define PACKET_STORE
 This update should be saved within the in-memory databse. More...
 
#define PACKET_UPDATE
 An alias for PACKET_STORE. More...
 

Functions

void packet_contrib (ds_data_t *pkt, void *data, int storeflags)
 Contribute an update to the memory core/DataSource. More...
 

Detailed Description

Macro Definition Documentation

#define CMD_SYMBOL_PUBLISH

Republish a symbol to any interested peers.

This message will republish an object to all peers that have subscribed to the object.

#define PACKET_FREE

After processing, the ds_data_t should be freed.

After a ds_data_t is no longer required then it should be deallocated to prevent memory leaks.

This flag implies PACKET_STORE.

Note
This should not be applied to the ds_data_t that is received into the module's update_cb function.
See also
ds_free_data()
Examples:
demo-calcvalue.c, demo-delete.c, and demo-spread.c.
#define PACKET_NOFEEDTIME

Do not update the last-update-time for this symbol.

This flag prevents the last-update-time being altered.

See also
symbol_last_updatetime()
#define PACKET_NOLISTEN

Indicate that this update should not be passed to modules.

This flag will prevent this update being passed to any modules that may have registered any kind of interest in this symbol.

See also
SYMBOL_NOLISTEN
Examples:
demo-calcvalue.c, demo-delete.c, demo-spread.c, demo-userdata.c, and demo-userdata2.c.
#define PACKET_OWRITE

This update should be treated as an image.

This flag behaves in an identical way to F_IMAGE i.e. any previously cached values will be removed and replaced with the values contained within this update.

If PACKET_PUBLISH is also defined then peers will receive an update with the flag F_IMAGE set

#define PACKET_PUBLISH

This update should be (potentially) sent to interested peers.

An update will be sent if one the following conditions are met:

  • An active peer has requested the symbol
Examples:
demo-delete.c, demo-spread.c, demo-userdata.c, and demo-userdata2.c.
#define PACKET_STORE

This update should be saved within the in-memory databse.

If an update is passed to packet_contrib() with this flag then the update will be added to the database.

Examples:
demo-calcvalue.c, demo-delete.c, demo-spread.c, demo-userdata.c, and demo-userdata2.c.
#define PACKET_UPDATE

An alias for PACKET_STORE.

Function Documentation

void packet_contrib ( ds_data_t pkt,
void *  data,
int  storeflags 
)

Contribute an update to the memory core/DataSource.

Parameters
pkt- Update packet to contrib
data- Parameter to ensure that module does not receive the update that it just published
storeflags- Flags to determine how the contribution is handled

If data parameter matches a tf_handle_t that has been returned by the system, then the update will not be delivered to the update function associated with the handle. This can be used to prevent recursive calls.


Generated on Wed Jul 31 2024 18:00:14 for Transformer SDK For C