DH_SetReceiveFormat

DH_SetReceiveFormat — sets DataHub-to-client transmissions to binary or ASCII.

Syntax

#include <cogent.h>
ST_STATUS DH_SetReceiveFormat(IP_Task*  myself,
 IP_Msg*  hmsg,
 char*  domain,
 int  flag,
 ER_hLIST  elist);

Arguments

myself

The task handle associated with this task. This should always be the return value from IP_NserveInit.

hmsg

A handle to a previously allocated message structure (using IP_MsgCreate) providing enough buffer space to handle the inter-process communication associated with the DataHub transaction.

domain

The name of the Cascade DataHub domain.

flag

One of these:

PT_FMT_ASCIIConstructs a humanly readable ASCII string (the default).
PT_FMT_BINARYEncodes data as a raw binary representation, efficient for parsing.
PT_FMT_HEXEncodes data as ASCII encoded hex. This is not a valuable format since it is more difficult to parse and less space efficient than binary, and it is more difficult for humans to read than regular ASCII.
elist

A return value containing error information. This is unimplemented in this version, and should be NULL.

Returns

ST_OK on success, ST_ERROR on failure, or some other value of ST_STATUS.

Description

This function sets a global variable that determines whether transmissions from the Cascade DataHub to a client will be in binary or ASCII format. It instructs the DataHub to transmit all messages to the custom client using the specified format. This call will fail with ST_NO_TASK if the custom client has never successfully called one of DH_RegisterPoint, DH_RegisterExistingPoint or DH_RegisterAllPoints. This is because the Cascade DataHub does not maintain internal state information for clients that are not registered to receive point exceptions.

See Also

DH_SetTransmitFormat