OpENer - Open Source EtherNet/IP(TM) I/O Target Stack  2.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
opener_user_conf.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright (c) 2009, Rockwell Automation, Inc.
3  * All rights reserved.
4  *
5  ******************************************************************************/
6 #ifndef OPENER_USER_CONF_H_
7 #define OPENER_USER_CONF_H_
8 
24 #include <windows.h>
25 typedef unsigned short in_port_t;
26 
28 #include "devicedata.h"
29 
30 #include "typedefs.h"
31 
38 #define OPENER_CIP_NUM_APPLICATION_SPECIFIC_CONNECTABLE_OBJECTS 1
39 
43 #define OPENER_CIP_NUM_EXPLICIT_CONNS 6
44 
50 #define OPENER_CIP_NUM_EXLUSIVE_OWNER_CONNS 1
51 
57 #define OPENER_CIP_NUM_INPUT_ONLY_CONNS 1
58 
61 #define OPENER_CIP_NUM_INPUT_ONLY_CONNS_PER_CON_PATH 3
62 
68 #define OPENER_CIP_NUM_LISTEN_ONLY_CONNS 1
69 
72 #define OPENER_CIP_NUM_LISTEN_ONLY_CONNS_PER_CON_PATH 3
73 
79 #define OPENER_MESSAGE_DATA_REPLY_BUFFER 100
80 
83 #define OPENER_NUMBER_OF_SUPPORTED_SESSIONS 20
84 
87 static const int kOpenerTimerTickInMilliSeconds = 10;
88 
89 #ifdef OPENER_WITH_TRACES
90 /* If we have tracing enabled provide print tracing macro */
91 #include <stdio.h>
92 
93 #define LOG_TRACE(...) fprintf(stderr,__VA_ARGS__)
94 
95 /*#define PRINT_TRACE(args...) fprintf(stderr,args);*/
96 
100 #ifdef IDLING_ASSERT
101 #define OPENER_ASSERT(assertion) \
102  do { \
103  if( !(assertion) ) { \
104  LOG_TRACE("Assertion \"%s\" failed: file \"%s\", line %d\n", \
105  # assertion, \
106  __FILE__, \
107  __LINE__); \
108  while(1) {;} \
109  } \
110  } while(0);
111 #else
112 #define OPENER_ASSERT(assertion) assert(assertion);
113 #endif
114 /* else use standard assert() */
115 //#include <assert.h>
116 //#include <stdio.h>
117 //#define OPENER_ASSERT(assertion) assert(assertion)
118 #else
119 
120 /* for release builds execute the assertion, but don't test it */
121 #define OPENER_ASSERT(assertion) (assertion);
122 
123 /* the above may result in "statement with no effect" warnings.
124  * If you do not use assert()s to run functions, the an empty
125  * macro can be used as below
126  */
127 //#define OPENER_ASSERT(assertion)
128 /* else if you still want assertions to stop execution but without tracing, use the following */
129 //#define OPENER_ASSERT(assertion) do { if(!(assertion)) { while(1){;} } } while (0)
130 /* else use standard assert() */
131 //#include <assert.h>
132 //#include <stdio.h>
133 //#define OPENER_ASSERT(assertion) assert(assertion)
134 
135 #endif
136 
144 #define PC_OPENER_ETHERNET_BUFFER_SIZE 512
145 
146 #endif /*OPENER_USER_CONF_H_*/
unsigned short in_port_t