po_hi_transport.h 1.57 KB
Newer Older
1
2
3
4
5
6
7
8
/*
 * This is a part of PolyORB-HI-C distribution, a minimal
 * middleware written for generated code from AADL models.
 * You should use it with the Ocarina toolsuite.
 *
 * For more informations, please visit http://ocarina.enst.fr
 *
 * Copyright (C) 2007-2008, GET-Telecom Paris.
julien.delange's avatar
julien.delange committed
9
 * Copyright (C) 2010, European Space Agency.
10
11
12
13
14
15
16
17
18
 */

#ifndef __PO_HI_TRANSPORT__
#define __PO_HI_TRANSPORT__

#include <po_hi_messages.h>
#include <deployment.h>
#include <request.h>

19
20
#define __PO_HI_BIGENDIAN     0
#define __PO_HI_LITTLEENDIAN  1
21

22
23
#if __PO_HI_NB_PORTS > 0

julien.delange's avatar
julien.delange committed
24
typedef uint8_t __po_hi_queue_id;
25

26
__po_hi_node_t    __po_hi_transport_get_node_from_entity (const __po_hi_entity_t entity);
27
/*
julien.delange's avatar
julien.delange committed
28
 * Returns the node identifier that corresponds to an entity.
29
30
 */

31
32
33
34
35
36
__po_hi_entity_t  __po_hi_get_entity_from_global_port (const __po_hi_port_t port);
/*
 * Return the entity identifier that own the port in parameters.
 */

int               __po_hi_transport_send_default (__po_hi_task_id id, __po_hi_port_t port);
37
/*
julien.delange's avatar
julien.delange committed
38
 * Default transport layer
39
40
 */

41
char* __po_hi_get_port_model_name (const __po_hi_port_t port);
42

43
44
45
char* __po_hi_get_port_name (const __po_hi_port_t port);

__po_hi_local_port_t __po_hi_get_local_port_from_global_port (const __po_hi_port_t global_port);
46

47
__po_hi_uint8_t  __po_hi_get_endianness (const __po_hi_node_t node);
48
49
__po_hi_device_id __po_hi_get_device_from_port (const __po_hi_port_t port);

50
char* __po_hi_get_device_naming (const __po_hi_device_id dev);
51

52
__po_hi_uint32_t* __po_hi_get_device_configuration (const __po_hi_device_id);
53
54

#endif /* __PO_HI_NB_PORTS > 0 */
55

56
#endif /* __PO_HI_TRANSPORT__ */