annotate src/gpf/inc/ipcapi.h @ 112:fdecfb3bd860

.../drv_app/r2d/r2d_*.c: LCD include case fixes from Magnetite R2D is not used in Selenite, but we strive to keep the two source trees in sync as much as possible to reduce the diffs.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 13 Oct 2018 16:56:22 +0000
parents 1ea54a97e831
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 +-----------------------------------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 | Project : PCO
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 | Modul : inc\ipcapi.h
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 +-----------------------------------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 | Copyright 2002 Texas Instruments Berlin, AG
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 | All rights reserved.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 |
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 | This file is confidential and a trade secret of Texas
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 | Instruments Berlin, AG
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 | The receipt of or possession of this file does not convey
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 | any rights to reproduce or disclose its contents or to
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 | manufacture, use, or sell anything it may describe, in
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 | whole, or in part, without the specific written consent of
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 | Texas Instruments Berlin, AG.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 +-----------------------------------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 | Purpose : API definition for IPC
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 +-----------------------------------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 #ifndef IPCAPI_H
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 #define IPCAPI_H
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 #include "cms.h"
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 #undef EXPORT
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 #include <typedefs.h>
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 /* define extra function codes for driver ipc */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 #define IPC_SELF 10
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 #define IPC_INITCH 11
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 #define IPC_EXITCH 12
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 #define IPC_OPENCH 13
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 #define IPC_CLOSECH 14
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 #define IPC_READCH 15
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 #define IPC_WRITECH 16
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 #define IPC_CREATEMSG 17
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 #define IPC_PARSEMSG 18
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 #define IPC_ISMYADDR 19
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 #define IPC_GETHANDLE 20
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 #define IPC_SETTIME 21
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 /**********************************************************************
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 * macros
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 *********************************************************************/
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 #define MSG_ID( Group, Code ) (((Group) << 8) + ((Code) & 0xFF))
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 /**********************************************************************
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 * defines
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 *********************************************************************/
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 /* return codes */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 #define IPC_OK CMS_OK
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 #define IPC_ERROR CMS_ERROR
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 #define IPC_EXIST CMS_EXIST
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 #define IPC_FULL CMS_FULL
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 #define IPC_BADHANDLE CMS_BADHANDLE
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 #define IPC_EMPTY CMS_EMPTY
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 #define IPC_SIZE CMS_SIZE
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 #define IPC_TIMEOUT CMS_TIMEOUT
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 #define IPC_NOMEM CMS_NOMEM
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 #define IPC_INVALID (-20)
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 #define IPC_MISALIGNED (-21)
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 #define IPC_MAX_PATH_SIZE 120
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 /* msg IDs: */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 #define IPC_GENERATED MSG_ID(IPC,1)
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 #define ALIGNMENT 1
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 #define MSG_MAX_SIZE 512
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 /**********************************************************************
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 * types
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 *********************************************************************/
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 typedef int IPC_HANDLE;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 typedef struct
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 {
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 char *pcSender;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 char *pcReceiver;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 void *pvBuffer;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 U32 ulTime;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 U16 uwTenthOfMS;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 U16 uwSize;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 U16 uwID;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 } MSG_HEADER;
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 #if ALIGNMENT == 1
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 typedef U8 MSG_BUFFER [MSG_MAX_SIZE];
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 #elif ALIGNMENT == 2
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 typedef U16 MSG_BUFFER [(MSG_MAX_SIZE + 1) / 2];
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 #elif ALIGNMENT == 4
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 typedef U32 MSG_BUFFER [(MSG_MAX_SIZE + 3) / 4];
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 #else
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 #error "invalid alignment"
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 #endif
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 /* standard funtions: */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 /*********************************************************************/
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 U16 ipc_createMsg ( /* @func Create a message. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 void *pvBuffer,/* @parm Buffer for the message to store. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 U16 uwSize, /* @parm Size of the buffer. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115 MSG_HEADER Msg /* @parm Settings for the message to create. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 ); /* @returnvalue One of the values below. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 /*---------------------------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 * @description The function creates a message out of the settings
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119 * that are stored in the structure. The resulting
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 * message will be written to the buffer.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 *
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122 * Attention: The address of the buffer MUST be
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 * aligned (multiple of ALIGNMENT)
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 *
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125 * Sender and Receiver will be inserted in normalized
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 * form (= absolute address) !
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 *
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 * @tablex Return values: |
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 * Value Description
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 * --------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131 * > 0 Size of the message.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 * = 0 Buffer too small, invalid settings.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 *
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 * @tablex Content of pHdr: |
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135 * Setting Description
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 * -------------- -----------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 * pcSender NULL means that the calling process
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 * is the sender. Otherwise the string
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139 * will be inserted into the message.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 * pcReceiver Name of the receiver (string)
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 * or IPC_HANDLE of the receiver.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 * pvBuffer Pointer to the data to append to
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143 * the message.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 * uwSize Size of the data to append to the
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 * message.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 * uwID Message group and code. Use the
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 * macro MSG_ID(Group,Code) to set the
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 * value.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149 * ulTime Automatically set.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 * uwTenthOfMS Automatically set.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151 *********************************************************************/
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 /*********************************************************************/
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 S16 ipc_parseMsg ( /* @func Parse a message. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 MSG_HEADER *pMsg, /* @parm Structure to store the settings. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157 void *pvBuffer,/* @parm Buffer containing the message. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 U16 uwSize /* @parm Size of pvBuffer. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159 ); /* @returnvalue One of the values below. */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 /*---------------------------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 * @description The function parses a buffer that contains a
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162 * a message and writes all settings to the
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 * structure.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164 *
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165 * Attention: The address of the buffer MUST be
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 * aligned (multiple of ALIGNMENT)
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167 *
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168 * @tablex Return values: |
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 * Value Description
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170 * --------------------------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171 * IPC_INVALID Invalid arguments or message.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 * IPC_OK Success.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 *
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174 * @tablex Content of pHdr: |
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175 * Setting Description
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 * -------------- -----------------------------------
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177 * pcSender Address of the sender.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 * pcReceiver Address of the receiver (normally
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 * the process receiving the message).
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180 * pvBuffer Pointer to the data of the message.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181 * uwSize Size of the data.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 * uwID Message group and code. Use the
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 * macro MSG_ID(Group,Code) to compare
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184 * the value with other IDs.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 * ulTime Time [ms from 01.01.1970 GMT] of
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 * message's creation.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 * uwTenthOfMS The tenth of [ms] of the message's
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
188 * creation.
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
189 *********************************************************************/
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
190
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
191 #endif /* IPCAPI_H */
1ea54a97e831 src/gpf: import of Magnetite src/gpf3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
192