File: chanpriv.h

package info (click to toggle)
gnat-gdb 5.3.gnat.0.0.20030225-8
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 75,144 kB
  • ctags: 101,348
  • sloc: ansic: 873,511; exp: 46,950; sh: 16,123; makefile: 11,757; yacc: 6,092; asm: 5,027; cpp: 4,044; perl: 2,624; lex: 877; sed: 550; lisp: 394; awk: 170; pascal: 57; java: 7; fortran: 5
file content (57 lines) | stat: -rw-r--r-- 1,664 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/* 
 * Copyright (C) 1995 Advanced RISC Machines Limited. All rights reserved.
 * 
 * This software may be freely used, copied, modified, and distributed
 * provided that the above copyright notice is preserved in all copies of the
 * software.
 */

/* -*-C-*-
 *
 * $Revision: 1.2 $
 *     $Date: 2003/01/16 10:40:13 $
 *
 *
 *   Project: ANGEL
 *
 *     Title: Private header for channels implementations
 */

#ifndef angel_chanpriv_h
#define angel_chanpriv_h

/*
 * This describes the internal structure and flags for a channels packet.
 */

/* byte positions within channel packet */
#define CF_CHANNEL_BYTE_POS  0
#define CF_HOME_SEQ_BYTE_POS 1
#define CF_OPPO_SEQ_BYTE_POS 2
#define CF_FLAGS_BYTE_POS    3
#define CF_DATA_BYTE_POS     4

/* flags for FLAGS field */
#define CF_RELIABLE  (1 << 0)    /* use reliable channels protocol */
#define CF_RESEND    (1 << 1)    /* this is a renegotiation packet */
#define CF_HEARTBEAT (1 << 2)    /* heartbeat packet - prod target into sync */

/* byte positions within buffer */
#define CB_LINK_BYTE_POS        0   /* the link pointer */
#define CB_CHAN_HEADER_BYTE_POS 4   /* the channel frame starts here */

/* macro to get buffer position of packet component */
#define CB_PACKET(x) (CB_CHAN_HEADER_BYTE_POS + (x))

/* byte offset of packet data within buffer */
#define CB_CHAN_DATA_BYTE_POS   (CB_PACKET(CF_DATA_BYTE_POS))

/* access the link in a buffer, where b is byte pointer to buffer */
#define CB_LINK(b) ((p_Buffer)(&(b)[0]))

#define invalidChannelID(chan)  (((int)(chan)) < 0 || \
                                 (chan) >= CI_NUM_CHANNELS)

#endif /* ndef angel_chanpriv_h */

/* EOF chanpriv.h */