SysLink API Reference  2.21.03.11
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SharedRegion.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2012, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  * */
101 #ifndef ti_ipc_SharedRegion__include
102 #define ti_ipc_SharedRegion__include
103 
104 
105 #if defined (__cplusplus)
106 extern "C" {
107 #endif
108 
109 /* ============================================================================
110  * All success and failure codes for the module
111  * =============================================================================
112  */
113 
118 #define SharedRegion_S_BUSY 2
119 
124 #define SharedRegion_S_ALREADYSETUP 1
125 
130 #define SharedRegion_S_SUCCESS 0
131 
136 #define SharedRegion_E_FAIL -1
137 
142 #define SharedRegion_E_INVALIDARG -2
143 
148 #define SharedRegion_E_MEMORY -3
149 
154 #define SharedRegion_E_ALREADYEXISTS -4
155 
160 #define SharedRegion_E_NOTFOUND -5
161 
166 #define SharedRegion_E_TIMEOUT -6
167 
172 #define SharedRegion_E_INVALIDSTATE -7
173 
178 #define SharedRegion_E_OSFAILURE -8
179 
184 #define SharedRegion_E_RESOURCE -9
185 
190 #define SharedRegion_E_RESTART -10
191 
192 /* =============================================================================
193  * Macros
194  * =============================================================================
195  */
196 
201 #define SharedRegion_INVALIDREGIONID (0xFFFF)
202 
203 /* =============================================================================
204  * Structures & Enums
205  * =============================================================================
206  */
207 
212 
216 typedef struct SharedRegion_Entry {
217  Ptr base;
220  SizeT len;
234  Bool isValid;
263  String name;
270 
271 
272 /* =============================================================================
273  * SharedRegion Module-wide Functions
274  * =============================================================================
275  */
276 
299 
308 
319 
333 
371 
380 
389 
396 
406 Ptr SharedRegion_getPtr(SharedRegion_SRPtr srptr);
407 
418 SharedRegion_SRPtr SharedRegion_getSRPtr(Ptr addr, UInt16 regionId);
419 
428 
458 
465 
471 SharedRegion_SRPtr SharedRegion_invalidSRPtr(Void);
472 
473 #if defined (__cplusplus)
474 }
475 #endif /* defined (__cplusplus) */
476 
477 #endif /* ti_ipc_SharedRegion__include */
478 
479 /*
480  * @(#) ti.ipc; 1, 0, 0, 0,; 11-7-2012 13:07:52; /db/vtree/library/trees/ipc/ipc-i09/src/ xlibrary
481 
482  */
483 
Copyright 2014, Texas Instruments Incorporated