# xxxRemoveRTC

Invoked by the dispatcher into a provider service when an RTC condition and action involving events from the service is removed from the RTC database.

#### Prototype

DWORD xxxRemoveRTC (CTAHD ctahd, void *mgrcontext, RTC_CONDITION
*pcondition, RTC_ACTION *paction )

Argument | Description
ctahd | Handle to a Natural Access context.
mgrcontext | Context pointer allocated when the service manager opened.
pcondition | Pointer to an RTC_CONDITION structure describing the RTC condition being removed from the database: typedef struct _RTC_CONDITION { RTC_ATTRIBUTES Attribute; /* Characteristics of RTC condition */ DWORD EventID; /* Service's event ID for condition */ DWORD EventValue; /* Specific value sent with the event.*/ /* Used with Attribute RTC_WITH_VALUE */ char Alias[ RTC_NAME_LEN ]; /* ASCII name of RTC condition */ } RTC_CONDITION;
paction | Pointer to an RTC_ACTION structure describing the RTC action being removed from the database: typedef struct _RTC_ACTION { DWORD Consumer; /* Service ID of RTC consumer */ DWORD ActionCmd; /* Special command sent to service on */ /* recognition of condition */ } RTC_ACTION;

#### Return values

SUCCESS

#### Details

The dispatcher invokes xxxRemoveRTC into a provider service when an RTC condition and action involving events from the service is removed from the RTC database. This function is invoked in the following cases:

- A consumer service successfully removed a condition and action pair using dispRemoveRTC, where the condition involves one of the provider service's events.

- The provider service added an alias for one or more of its events to the database using dispRegisterRTCAlias, and a consumer service successfully removed a condition and action pair using dispRemoveRTC, where the condition involves the alias.

xxxRemoveRTC is an optional binding function. The service writer defines the actions taken by the service when this function is called.

#### See also

dispAddRTC, xxxAddRTC