Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  
igtl_bind.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: The OpenIGTLink Library
4  Language: C
5  Web page: http://openigtlink.org/
6 
7  Copyright (c) Insight Software Consortium. All rights reserved.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 =========================================================================*/
14 
15 #ifndef __IGTL_BIND_H
16 #define __IGTL_BIND_H
17 
18 #include "igtl_win32header.h"
19 #include "igtl_header.h"
20 #include "igtl_util.h"
21 #include "igtl_types.h"
22 #include "igtl_win32header.h"
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 
31 typedef struct {
32  char type[IGTL_HEADER_TYPE_SIZE+1]; /* Data type (OpenIGTLink Device Type string) */
33  char name[IGTL_HEADER_NAME_SIZE+1]; /* Device name */
34  igtl_uint64 size; /* Data size */
35  void* ptr; /* Pointer to the child message */
37 
38 typedef struct {
39  igtl_uint16 ncmessages; /* Number of child message */
40  igtl_bind_child_info * child_info_array; /* Array of igtl_bind_child_info */
41  igtl_uint64 resol; /* Time resolution (used for STT_BIND) */
42  igtl_uint8 request_all; /* Flag to request all available data
43  (used for GET_BIND and STT_BIND) */
44  igtl_uint8 status; /* Status for RTS message */
46 
47 
50 
53 int igtl_export igtl_bind_alloc_info(igtl_bind_info * bind_info, igtl_uint16 ncmessages);
54 
58 
64 int igtl_export igtl_bind_unpack(int type, void * byte_array, igtl_bind_info * info, igtl_uint64 size);
65 
71 int igtl_export igtl_bind_pack(igtl_bind_info * info, void * byte_array, int type);
72 
79 igtl_uint64 igtl_export igtl_bind_get_size(igtl_bind_info * info, int type);
80 
83 igtl_uint64 igtl_export igtl_bind_get_crc(igtl_bind_info * info, int type, void* bind_message);
84 
85 #ifdef __cplusplus
86 }
87 #endif
88 
89 #endif /* __IGTL_BIND_H */
90 
91 
igtl_uint64 resol
Definition: igtl_bind.h:41
igtl_uint8 status
Definition: igtl_bind.h:44
igtl_uint8 request_all
Definition: igtl_bind.h:42
int igtl_export igtl_bind_pack(igtl_bind_info *info, void *byte_array, int type)
igtl_bind_child_info * child_info_array
Definition: igtl_bind.h:40
igtl_uint64 igtl_export igtl_bind_get_size(igtl_bind_info *info, int type)
#define igtl_export
int igtl_export igtl_bind_alloc_info(igtl_bind_info *bind_info, igtl_uint16 ncmessages)
#define IGTL_HEADER_NAME_SIZE
Definition: igtl_header.h:22
igtl_uint16 ncmessages
Definition: igtl_bind.h:39
igtl_uint64 size
Definition: igtl_bind.h:34
#define IGTL_HEADER_TYPE_SIZE
Definition: igtl_header.h:21
int igtl_export igtl_bind_free_info(igtl_bind_info *bind_info)
void igtl_export igtl_bind_init_info(igtl_bind_info *bind_info)
int igtl_export igtl_bind_unpack(int type, void *byte_array, igtl_bind_info *info, igtl_uint64 size)
igtl_uint64 igtl_export igtl_bind_get_crc(igtl_bind_info *info, int type, void *bind_message)

Generated at Tue Nov 3 2015 19:17:46 for OpenIGTLink by doxygen 1.8.9.1 written by Dimitri van Heesch, © 1997-2012