9 #include "opener_user_conf.h" 
   33   struct sockaddr *originator_address,
 
   34   const int encapsulation_session) {
 
   37                             message_router_response, originator_address,
 
   38                             encapsulation_session);
 
   45   struct sockaddr *originator_address,
 
   46   const int encapsulation_session) {
 
   57   if( NULL != attribute &&
 
   58       ( set_bit_mask & ( 1 << ( (attribute_number) % 8 ) ) ) ) {
 
   60       &(message_router_request->
data) );
 
   62     if( !( (attribute_value_recieved <= 0) ||
 
   63            (attribute_value_recieved >= 63) ) ) {
 
   66       if(NULL != attribute->
data) {
 
   68         *(data) = attribute_value_recieved;
 
   86                                             | message_router_request->
service);
 
  111   return priority_value;
 
  130                                    "Quality of Service",
 
  158                 "GetAttributeSingleQoS");
 
  160                 "SetAttributeSingleQoS");
 
void InsertAttribute(CipInstance *const instance, const EipUint16 attribute_number, const EipUint8 cip_type, void *const data, const EipByte cip_flags)
Insert an attribute in an instance of a CIP class. 
Tracing infrastructure for OpENer. 
CIP Message Router Request. 
Class is a subclass of Instance. 
EipUint32 GetDintFromMessage(const EipUint8 **const buffer)
Reads EIP_UINT32 from *buffer and converts little endian to host. 
Responsible for Endianess conversion. 
size_t CalculateIndex(EipUint16 attribute_number)
Calculates Byte-Index of Attribute. 
Public interface of the QoS Object. 
CipClass * CreateCipClass(const EipUint32 class_id, const int number_of_class_attributes, const EipUint32 highest_class_attribute_number, const int number_of_class_services, const int number_of_instance_attributes, const EipUint32 highest_instance_attribute_number, const int number_of_instance_services, const int number_of_instances, char *name, const EipUint16 revision, void(*InitializeCipClass)(CipClass *))
EipStatus
EIP stack status enum. 
void InsertService(const CipClass *const class, const EipUint8 service_number, const CipServiceFunction service_function, char *const service_name)
Insert a service in an instance of a CIP object. 
CipInstance class_instance
#define OPENER_TRACE_INFO(...)
EipStatus GetAttributeSingle(CipInstance *RESTRICT const instance, CipMessageRouterRequest *const message_router_request, CipMessageRouterResponse *const message_router_response, struct sockaddr *originator_address, const int encapsulation_session)
Generic implementation of the GetAttributeSingle CIP service. 
CipInstance * GetCipInstance(const CipClass *RESTRICT const cip_class, EipUint32 instance_number)
Get a pointer to an instance. 
CipUsint GetPriorityForSocket(ConnectionObjectPriority priority)
Initializing the data structures of the TCP/IP interface object. 
CipAttributeStruct * GetCipAttribute(const CipInstance *const instance, const EipUint16 attribute_number)
Get a pointer to an instance's attribute. 
EipUint16 attribute_number
CIP Message Router Response. 
struct cip_class * cip_class
EipStatus GetAttributeSingleQoS(CipInstance *const RESTRICT instance, CipMessageRouterRequest *RESTRICT const message_router_request, CipMessageRouterResponse *RESTRICT const message_router_response, struct sockaddr *originator_address, const int encapsulation_session)
void InitializeCipQos(CipClass *class)
CipUsint size_of_additional_status
EipStatus SetAttributeSingleQoS(CipInstance *instance, CipMessageRouterRequest *message_router_request, CipMessageRouterResponse *message_router_response, struct sockaddr *originator_address, const int encapsulation_session)