pvAccessCPP  7.1.7-dev
pvaConstants.h
1 /**
2  * Copyright - See the COPYRIGHT that is included with this distribution.
3  * pvAccessCPP is distributed subject to a Software License Agreement found
4  * in file LICENSE that is included with this distribution.
5  */
6 
7 #ifndef PVACONSTANTS_H_
8 #define PVACONSTANTS_H_
9 
10 #include <compilerDependencies.h>
11 
12 #ifdef epicsExportSharedSymbols
13 # define pvaConstantsepicsExportSharedSymbols
14 # undef epicsExportSharedSymbols
15 #endif
16 
17 #include <pv/pvType.h>
18 
19 #ifdef pvaConstantsepicsExportSharedSymbols
20 # define epicsExportSharedSymbols
21 # undef pvaConstantsepicsExportSharedSymbols
22 #endif
23 #include <shareLib.h>
24 
25 namespace epics {
26 namespace pvAccess {
27 
28 /** PVA protocol magic number */
29 const epics::pvData::int8 PVA_MAGIC = static_cast<epics::pvData::int8>(0xCA);
30 
31 const epics::pvData::int8 PVA_SERVER_PROTOCOL_REVISION = 2;
32 const epics::pvData::int8 PVA_CLIENT_PROTOCOL_REVISION = 2;
33 
34 /** PVA protocol revision (implemented by this library). */
35 const epics::pvData::int8 PVA_PROTOCOL_REVISION EPICS_DEPRECATED = 1;
36 
37 /** PVA version signature used to report this implementation version in header. */
38 const epics::pvData::int8 PVA_VERSION EPICS_DEPRECATED = 1;
39 
40 /** Default PVA server port. */
42 
43 /** Default PVA beacon port. */
45 
46 /** PVA protocol message header size. */
48 
49 /**
50  * UDP maximum send message size.
51  * MAX_UDP: 1500 (max of ethernet and 802.{2,3} MTU) - 20/40(IPv4/IPv6)
52  * - 8(UDP) - some reserve (the MTU of Ethernet is currently independent
53  * of its speed variant)
54  */
56 
57 /**
58  * UDP maximum receive message size.
59  * MAX_UDP: 65535 (max UDP packet size) - 20/40(IPv4/IPv6) - 8(UDP)
60  */
61 const epics::pvData::int32 MAX_UDP_RECV = 65487;
62 
63 /** TCP maximum receive message size. */
64 const epics::pvData::int32 MAX_TCP_RECV = 1024*16;
65 
66 /** Maximum number of search requests in one search message. */
67 const epics::pvData::int32 MAX_SEARCH_BATCH_COUNT = 0x7FFF; // 32767
68 
69 /** Default priority (corresponds to POSIX SCHED_OTHER) */
71 
72 /** Unreasonable channel name length. */
74 
75 /** Invalid data type. */
77 
78 /** Invalid IOID. */
80 
81 /** Default PVA provider name. */
82 epicsShareExtern const std::string PVACCESS_DEFAULT_PROVIDER;
83 
84 /** "All-providers registered" PVA provider name. */
85 epicsShareExtern const std::string PVACCESS_ALL_PROVIDERS;
86 
87 /** Name of the system env. variable to turn on debugging. */
88 epicsShareExtern const std::string PVACCESS_DEBUG;
89 }
90 }
91 
92 #endif /* PVACONSTANTS_H_ */
const epics::pvData::int16 PVA_MESSAGE_HEADER_SIZE
PVA protocol message header size.
Definition: pvaConstants.h:47
const epics::pvData::int32 MAX_UDP_RECV
UDP maximum receive message size.
Definition: pvaConstants.h:61
const epics::pvData::int16 PVA_DEFAULT_PRIORITY
Default priority (corresponds to POSIX SCHED_OTHER)
Definition: pvaConstants.h:70
const epics::pvData::int32 MAX_UDP_UNFRAGMENTED_SEND
UDP maximum send message size.
Definition: pvaConstants.h:55
const epics::pvData::uint32 MAX_CHANNEL_NAME_LENGTH
Unreasonable channel name length.
Definition: pvaConstants.h:73
const epics::pvData::int16 INVALID_DATA_TYPE
Invalid data type.
Definition: pvaConstants.h:76
const epics::pvData::int32 PVA_SERVER_PORT
Default PVA server port.
Definition: pvaConstants.h:41
const epics::pvData::int32 INVALID_IOID
Invalid IOID.
Definition: pvaConstants.h:79
const epics::pvData::int32 MAX_TCP_RECV
TCP maximum receive message size.
Definition: pvaConstants.h:64
const epics::pvData::int8 PVA_MAGIC
PVA protocol magic number.
Definition: pvaConstants.h:29
const epics::pvData::int32 PVA_BROADCAST_PORT
Default PVA beacon port.
Definition: pvaConstants.h:44
const epics::pvData::int32 MAX_SEARCH_BATCH_COUNT
Maximum number of search requests in one search message.
Definition: pvaConstants.h:67