Faspstream Manager C/C++ API  3.6.1
A C and C++ language interface to basic streaming over the fasp protocol
fasp_stream_channel.h
Go to the documentation of this file.
1 /*
2  * Aspera, Inc.
3  *
4  * C version of FaspConnectionChannel interface.
5  *
6  * We do this for portability - the wrapper abstracts the socket used
7  * to construct the channel. See below.
8  */
9 
10 #ifndef ASPERA_FASP_STREAM_CHANNEL_H
11 #define ASPERA_FASP_STREAM_CHANNEL_H
12 
13 #include <stdlib.h>
14 
15 #ifdef WIN32
16 
17 #ifdef FASPSTREAM_CPP_EXPORTS
18 #define FASPSTREAM_C_API __declspec(dllexport)
19 #else
20 #define FASPSTREAM_C_API __declspec(dllimport)
21 #endif
22 
23 #else /* NOT WIN32 */
24 #define FASPSTREAM_C_API
25 #endif
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
45  void *priv;
55  int (*read)(struct fasp_stream_socket_wrapper *w, char *buff, int len,
56  int *timedout);
62  int (*write)(struct fasp_stream_socket_wrapper *w, const char *buff,
63  int len);
68  void (*close)(struct fasp_stream_socket_wrapper *w);
69 };
71 
72 #ifdef __cplusplus
73 }
74 #endif
75 
76 #endif
int(* write)(struct fasp_stream_socket_wrapper *w, const char *buff, int len)
Definition: fasp_stream_channel.h:62
Definition: fasp_stream_channel.h:39
void(* close)(struct fasp_stream_socket_wrapper *w)
Definition: fasp_stream_channel.h:68
void * priv
Definition: fasp_stream_channel.h:45
int(* read)(struct fasp_stream_socket_wrapper *w, char *buff, int len, int *timedout)
Definition: fasp_stream_channel.h:55