24 #ifndef GOOSE_PUBLISHER_H_
25 #define GOOSE_PUBLISHER_H_
40 #ifndef GOOSE_SV_COMM_PARAMETERS
41 #define GOOSE_SV_COMM_PARAMETERS
43 typedef struct sCommParameters {
47 uint8_t dstAddress[6];
201 LIB61850_API uint64_t
LIB61850_API GoosePublisher GoosePublisher_create(CommParameters *parameters, const char *interfaceID)
Create a new GoosePublisher instance.
LIB61850_API void GoosePublisher_setStNum(GoosePublisher self, uint32_t stNum)
Manually sets the state number (stNum) of the GoosePublisher instance.
LIB61850_API void GoosePublisher_setConfRev(GoosePublisher self, uint32_t confRev)
Sets the configuration revision used by the GoosePublisher instance.
LIB61850_API int GoosePublisher_publishAndDump(GoosePublisher self, LinkedList dataSet, char *msgBuf, int32_t *msgLen, int32_t bufSize)
Publish a GOOSE message and store the sent message in the provided buffer.
LIB61850_API void GoosePublisher_reset(GoosePublisher self)
Reset state and sequence number of the GoosePublisher instance.
LIB61850_API GoosePublisher GoosePublisher_createEx(CommParameters *parameters, const char *interfaceID, bool useVlanTag)
Create a new GoosePublisher instance.
LIB61850_API uint64_t GoosePublisher_increaseStNum(GoosePublisher self)
Increase the state number (stNum) of the GoosePublisher instance.
LIB61850_API void GoosePublisher_setNeedsCommission(GoosePublisher self, bool ndsCom)
Sets the needs commission flag in sent GOOSE messages.
LIB61850_API void GoosePublisher_setSimulation(GoosePublisher self, bool simulation)
Sets simulation flag in sent GOOSE messages.
LIB61850_API void GoosePublisher_destroy(GoosePublisher self)
Release all resources of the GoosePublisher instance.
LIB61850_API void GoosePublisher_setGoCbRef(GoosePublisher self, char *goCbRef)
Sets the GoCB reference used by the GoosePublisher instance.
LIB61850_API void GoosePublisher_setTimeAllowedToLive(GoosePublisher self, uint32_t timeAllowedToLive)
Sets the time allowed to live value of the GOOSE messages.
LIB61850_API void GoosePublisher_setSqNum(GoosePublisher self, uint32_t sqNum)
Manually sets the sequence number (sqNum) of the GoosePublisher instance.
struct sGoosePublisher * GoosePublisher
Definition: goose_publisher.h:52
LIB61850_API void GoosePublisher_setGoID(GoosePublisher self, char *goID)
Sets the GoID used by the GoosePublisher instance.
LIB61850_API int GoosePublisher_publish(GoosePublisher self, LinkedList dataSet)
Publish a GOOSE message.
LIB61850_API void GoosePublisher_setDataSetRef(GoosePublisher self, char *dataSetRef)
Sets the data set reference used by the GoosePublisher instance.
uint16_t vlanId
Definition: goose_publisher.h:45
uint8_t vlanPriority
Definition: goose_publisher.h:44
uint16_t appId
Definition: goose_publisher.h:46
Definition: goose_publisher.h:43