summaryrefslogtreecommitdiff
path: root/lib/comm.h
blob: c1543e5d628facc1ceeb5086610d47f95227e4ff (plain)
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
#ifndef DAPI_COMM_H
#define DAPI_COMM_H

#ifdef __cplusplus
extern "C" {
#endif

typedef struct DapiConnection DapiConnection;

DapiConnection* dapi_connect( void );
void dapi_close( DapiConnection* conn );
int dapi_socket( DapiConnection* conn );

DapiConnection* dapi_connectAndInit( void );

int dapi_bindSocket( void );
DapiConnection* dapi_acceptSocket( int sock );

typedef struct DapiWindowInfo
    {
    int flags;
    long window;
    } DapiWindowInfo;

/* TODO generovat? */
typedef struct
    {
    int count;
    int* data;
    } intarr;
    
typedef struct
    {
    int count;
    char** data;
    } stringarr;

void dapi_windowInfoInitWindow( DapiWindowInfo* winfo, long window );

void dapi_freeWindowInfo( DapiWindowInfo winfo );
void dapi_freestringarr( stringarr arr );
void dapi_freeintarr( intarr arr );

#include <dapi/comm_generated.h>

#ifdef __cplusplus
}
#endif

#endif