24 #ifndef GOOSE_SUBSCRIBER_H_ 25 #define GOOSE_SUBSCRIBER_H_ 27 #include "libiec61850_common_api.h" 48 typedef void (*
GooseListener)(GooseSubscriber subscriber,
void* parameter);
void GooseSubscriber_setAppId(GooseSubscriber self, uint16_t appId)
set the APPID used by the subscriber to filter relevant messages.
void(* GooseListener)(GooseSubscriber subscriber, void *parameter)
user provided callback function that will be invoked when a GOOSE message is received.
Definition: goose_subscriber.h:48
struct sGooseSubscriber * GooseSubscriber
Definition: goose_subscriber.h:40
void GooseSubscriber_destroy(GooseSubscriber self)
uint32_t GooseSubscriber_getStNum(GooseSubscriber self)
return the state number (stNum) of the last received GOOSE message.
uint32_t GooseSubscriber_getConfRev(GooseSubscriber self)
returns the confRev value of the last received GOOSE message
uint32_t GooseSubscriber_getTimeAllowedToLive(GooseSubscriber self)
Get the TimeAllowedToLive value of the last received message.
uint32_t GooseSubscriber_getSqNum(GooseSubscriber self)
return the sequence number (sqNum) of the last received GOOSE message.
bool GooseSubscriber_needsCommission(GooseSubscriber self)
returns the value of the ndsCom (needs commission) flag of the last received GOOSE message...
bool GooseSubscriber_isTest(GooseSubscriber self)
returns the test flag of the last received GOOSE message
GooseSubscriber GooseSubscriber_create(char *goCbRef, MmsValue *dataSetValues)
create a new GOOSE subscriber instance.
void GooseSubscriber_setListener(GooseSubscriber self, GooseListener listener, void *parameter)
set a callback function that will be invoked when a GOOSE message has been received.
uint64_t GooseSubscriber_getTimestamp(GooseSubscriber self)
Get the timestamp of the last received message.
bool GooseSubscriber_isValid(GooseSubscriber self)
Check if subscriber state is valid.
MmsValue * GooseSubscriber_getDataSetValues(GooseSubscriber self)
get the data set values received with the last report
struct sMmsValue MmsValue
Definition: mms_value.h:68