This is Unofficial EPICS BASE Doxygen Site
iocinf.h
Go to the documentation of this file.
1 /*************************************************************************\
2 * Copyright (c) 2002 The University of Chicago, as Operator of Argonne
3 * National Laboratory.
4 * Copyright (c) 2002 The Regents of the University of California, as
5 * Operator of Los Alamos National Laboratory.
6 * EPICS BASE is distributed subject to a Software License Agreement found
7 * in file LICENSE that is included with this distribution.
8 \*************************************************************************/
9 /*
10  *
11  *
12  * L O S A L A M O S
13  * Los Alamos National Laboratory
14  * Los Alamos, New Mexico 87545
15  *
16  * Copyright, 1986, The Regents of the University of California.
17  *
18  *
19  * Author Jeffrey O. Hill
20  * johill@lanl.gov
21  * 505 665 1831
22  */
23 
24 #ifndef INC_iocinf_H
25 #define INC_iocinf_H
26 
27 #ifdef DEBUG
28 # define debugPrintf(argsInParen) ::printf argsInParen
29 #else
30 # define debugPrintf(argsInParen)
31 #endif
32 
33 #if defined ( CLOCKS_PER_SEC )
34 # define CAC_SIGNIFICANT_DELAY ( 1.0 / CLOCKS_PER_SEC )
35 #else
36 # define CAC_SIGNIFICANT_DELAY (1.0 / 1000000u)
37 #endif
38 
39 /*
40  * these two control the period of connection verifies
41  * (echo requests) - CA_CONN_VERIFY_PERIOD - and how
42  * long we will wait for an echo reply before we
43  * give up and flag the connection for disconnect
44  * - CA_ECHO_TIMEOUT.
45  *
46  * CA_CONN_VERIFY_PERIOD is normally obtained from an
47  * EPICS environment variable.
48  */
49 static const double CA_ECHO_TIMEOUT = 5.0; /* (sec) disconn no echo reply tmo */
50 static const double CA_CONN_VERIFY_PERIOD = 30.0; /* (sec) how often to request echo */
51 
52 /*
53  * this determines the number of messages received
54  * without a delay in between before we go into
55  * monitor flow control
56  *
57  * turning this down effects maximum throughput
58  * because we dont get an optimal number of bytes
59  * per network frame
60  */
61 static const unsigned contiguousMsgCountWhichTriggersFlowControl = 10u;
62 
63 /*
64  * CA internal functions
65  */
66 #define genLocalExcep( CBGUARD, GUARD, CAC, STAT, PCTX ) \
67 (CAC).exception ( CBGUARD, GUARD, STAT, PCTX, __FILE__, __LINE__ )
68 
69 #endif // ifdef INC_iocinf_H