OpenClovis Logo

clXdrApi.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2002-2012 OpenClovis Solutions Inc. All Rights Reserved.
3  *
4  * This file is available under a commercial license from the
5  * copyright holder or the GNU General Public License Version 2.0.
6  *
7  * The source code for this program is not published or otherwise
8  * divested of its trade secrets, irrespective of what has been
9  * deposited with the U.S. Copyright office.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * General Public License for more details.
15  *
16  * For more information, see the file COPYING provided with this
17  * material.
18  */
19 /*********************************************************************
20  * ModuleName : utils
21  * File : clXdrApi.h
22  ********************************************************************/
23 
24 /*********************************************************************
25  * Description :
26  * This file contains IDL APIs declarations.
27  ********************************************************************/
28 
29 /******************************************************************************
30  * Description :
31  *
32  * OpenClovis XDR Library API file.
33  *
34  ****************************************************************************/
35 
49 #ifndef _CL_XDR_API_H_
50 #define _CL_XDR_API_H_
51 
52 #ifdef __cplusplus
53 extern "C" {
54 #endif
55 
56 #include <stdio.h>
57 #include <clCommon.h>
58 #include <clBufferApi.h>
59 #include <clHandleApi.h>
60 #include <clXdrErrors.h>
61 #include <clIocApi.h>
62 #include <clEoApi.h>
63 #include <clMD5Api.h>
64 #include <clDifferenceVector.h>
65 
66 #define CL_XDR_ENTER(x)
67 #define CL_XDR_EXIT(x)
68 #define CL_XDR_PRINT(x)
69 
70 typedef ClRcT (*ClXdrMarshallFuncT) (void* pPyld,
71  ClBufferHandleT msg,
72  ClUint32T isDelete);
73 
74 typedef ClRcT (*ClXdrUnmarshallFuncT) (ClBufferHandleT msg,
75  void* pPyld);
76 
77 
78 /********************************************************************/
79 typedef struct ClIdlContextInfo
80 {
81  ClBufferHandleT idlDeferMsg;
82  ClBoolT inProgress;
83 }ClIdlContextInfoT;
84 
85 typedef struct ClIdlSyncInfo
86 {
87  ClBufferHandleT idlRmdDeferMsg;
88  ClHandleT idlRmdDeferHdl;
89 }ClIdlSyncInfoT;
90 
91 typedef ClHandleT ClIdlHandleT;
92 
93 ClRcT clIdlSyncPrivateInfoSet(ClUint32T idlSyncKey, void * pIdlCtxInfo);
94 
95 ClRcT clIdlSyncPrivateInfoGet(ClUint32T idlSyncKey, void ** data);
96 
97 ClRcT clIdlSyncResponseSend(ClIdlHandleT idlRmdHdl,ClBufferHandleT rmdMsgHdl,ClRcT retCode);
98 
99 ClRcT clIdlSyncDefer(ClHandleDatabaseHandleT idlDbHdl, ClUint32T idlSyncKey, ClIdlHandleT *pIdlHdl);
100 
101 ClRcT clXdrMarshallArray(void* array,
102  ClUint32T typeSize,
103  ClUint32T multiplicity,
104  ClXdrMarshallFuncT func,
105  ClBufferHandleT msg,
106  ClUint32T isDelete);
107 
108 ClRcT clXdrUnmarshallArray(ClBufferHandleT msg,
109  void* array,
110  ClUint32T typeSize,
111  ClUint32T multiplicity,
112  ClXdrUnmarshallFuncT func);
113 
114 ClRcT clXdrMarshallPtr(void* pointer,
115  ClUint32T typeSize,
116  ClUint32T multiplicity,
117  ClXdrMarshallFuncT func,
118  ClBufferHandleT msg,
119  ClUint32T isDelete);
120 
121 ClRcT clXdrUnmarshallPtr(ClBufferHandleT msg,
122  void** pointer,
123  ClUint32T typeSize,
124  ClUint32T multiplicity,
125  ClXdrUnmarshallFuncT func);
126 
127 /********************************************************************/
128 
163 ClRcT clXdrMarshallClUint8T(CL_IN void* pPyld,
165  CL_IN ClUint32T isDelete);
166 
200  void* pPyld );
201 
240  ClUint32T count,
241  ClBufferHandleT msg,
242  ClUint32T isDelete);
280  void* pPyld,
281  ClUint32T count);
282 
321 ClRcT clXdrMarshallPtrClUint8T(void* pPyld,
322  ClUint32T count,
323  ClBufferHandleT msg,
324  ClUint32T isDelete);
362  void** pPyld,
363  ClUint32T multiplicity);
398 ClRcT clXdrMarshallClCharT(void* pPyld,
399  ClBufferHandleT msg,
400  ClUint32T isDelete);
435  void* pPyld );
473 ClRcT clXdrMarshallArrayClCharT(void* pPyld,
474  ClUint32T count,
475  ClBufferHandleT msg,
476  ClUint32T isDelete);
514  void* pPyld,
515  ClUint32T count);
553 ClRcT clXdrMarshallPtrClCharT(void* pPyld,
554  ClUint32T count,
555  ClBufferHandleT msg,
556  ClUint32T isDelete);
593  void** pPyld,
594  ClUint32T multiplicity);
595 
630 ClRcT clXdrMarshallClUint16T(void* pPyld,
631  ClBufferHandleT msg,
632  ClUint32T isDelete);
667  void* pPyld);
706  ClUint32T count,
707  ClBufferHandleT msg,
708  ClUint32T isDelete);
746  void* pPyld,
747  ClUint32T count);
748 
786 ClRcT clXdrMarshallPtrClUint16T(void* pPyld,
787  ClUint32T count,
788  ClBufferHandleT msg,
789  ClUint32T isDelete);
826  void** pPyld,
827  ClUint32T multiplicity);
828 
863 ClRcT clXdrMarshallClInt8T(void* pPyld,
864  ClBufferHandleT msg,
865  ClUint32T isDelete);
900  void* pPyld );
938 ClRcT clXdrMarshallArrayClInt8T(void* pPyld,
939  ClUint32T count,
940  ClBufferHandleT msg,
941  ClUint32T isDelete);
979  void* pPyld,
980  ClUint32T count);
1018 ClRcT clXdrMarshallPtrClInt8T(void* pPyld,
1019  ClUint32T count,
1020  ClBufferHandleT msg,
1021  ClUint32T isDelete);
1058  void** pPyld,
1059  ClUint32T multiplicity);
1060 
1095 ClRcT clXdrMarshallClInt16T(void* pPyld,
1096  ClBufferHandleT msg,
1097  ClUint32T isDelete);
1098 
1132  void* pPyld );
1170 ClRcT clXdrMarshallArrayClInt16T(void* pPyld,
1171  ClUint32T count,
1172  ClBufferHandleT msg,
1173  ClUint32T isDelete);
1211  void* pPyld,
1212  ClUint32T count);
1213 
1251 ClRcT clXdrMarshallPtrClInt16T(void* pPyld,
1252  ClUint32T count,
1253  ClBufferHandleT msg,
1254  ClUint32T isDelete);
1291  void** pPyld,
1292  ClUint32T multiplicity);
1293 
1328 ClRcT clXdrMarshallClUint32T(void* pPyld,
1329  ClBufferHandleT msg,
1330  ClUint32T isDelete);
1331 
1365  void* pPyld);
1366 
1403 #define clXdrMarshallArrayClUint32T(pPyld, count, msg, isDelete) \
1404 clXdrMarshallArray((pPyld), sizeof(ClUint32T), \
1405  (count), clXdrMarshallClUint32T, \
1406  (msg), (isDelete))
1407 
1443 #define clXdrUnmarshallArrayClUint32T(msg,pPyld, count) \
1444 clXdrUnmarshallArray((msg), \
1445  (pPyld), sizeof(ClUint32T), \
1446  (count), clXdrUnmarshallClUint32T)
1447 
1485 #define clXdrMarshallPtrClUint32T(pPyld, count, msg, isDelete) \
1486 clXdrMarshallPtr((pPyld), sizeof(ClUint32T), \
1487  (count), clXdrMarshallClUint32T, \
1488  (msg), (isDelete))
1489 
1524 #define clXdrUnmarshallPtrClUint32T(msg, pPyld, multiplicity) \
1525 clXdrUnmarshallPtr((msg), \
1526  (pPyld), sizeof(ClUint32T), \
1527  multiplicity, clXdrUnmarshallClUint32T)
1528 
1563 ClRcT clXdrMarshallClInt32T(void* pPyld,
1564  ClBufferHandleT msg,
1565  ClUint32T isDelete);
1566 
1600  void* pPyld);
1601 
1638 #define clXdrMarshallArrayClInt32T(pPyld, count, msg, isDelete) \
1639 clXdrMarshallArray((pPyld), sizeof(ClInt32T), \
1640  (count), clXdrMarshallClInt32T, \
1641  (msg),(isDelete))
1642 
1678 #define clXdrUnmarshallArrayClInt32T(msg, pPyld, count) \
1679 clXdrUnmarshallArray((msg), \
1680  (pPyld), sizeof(ClInt32T), \
1681  (count), clXdrUnmarshallClInt32T)
1682 
1719 #define clXdrMarshallPtrClInt32T(pPyld, count, msg, isDelete) \
1720 clXdrMarshallPtr((pPyld), sizeof(ClInt32T), \
1721  (count), clXdrMarshallClInt32T, \
1722  (msg), (isDelete))
1723 
1758 #define clXdrUnmarshallPtrClInt32T(msg, pPyld, multiplicity) \
1759 clXdrUnmarshallPtr((msg), \
1760  (pPyld), sizeof(ClInt32T), \
1761  multiplicity, clXdrUnmarshallClInt32T)
1762 
1797 ClRcT clXdrMarshallClUint64T(void* pPyld,
1798  ClBufferHandleT msg,
1799  ClUint32T isDelete);
1800 
1834  void* pPyld);
1835 
1872 #define clXdrMarshallArrayClUint64T(pPyld, count, msg, isDelete) \
1873 clXdrMarshallArray((pPyld), sizeof(ClUint64T), \
1874  (count), clXdrMarshallClUint64T, \
1875  (msg), (isDelete))
1876 
1912 #define clXdrUnmarshallArrayClUint64T(msg,pPyld, count) \
1913 clXdrUnmarshallArray((msg), \
1914  (pPyld), sizeof(ClUint64T), \
1915  (count), clXdrUnmarshallClUint64T)
1916 
1954 #define clXdrMarshallPtrClUint64T(pPyld, count, msg, isDelete) \
1955 clXdrMarshallPtr((pPyld), sizeof(ClUint64T), \
1956  (count), clXdrMarshallClUint64T, \
1957  (msg), (isDelete))
1958 
1993 #define clXdrUnmarshallPtrClUint64T(msg, pPyld, multiplicity) \
1994 clXdrUnmarshallPtr((msg), \
1995  (pPyld), sizeof(ClUint64T), \
1996  multiplicity,clXdrUnmarshallClUint64T)
1997 
2032 ClRcT clXdrMarshallClInt64T(void* pPyld,
2033  ClBufferHandleT msg,
2034  ClUint32T isDelete);
2035 
2069  void* pPyld);
2106 #define clXdrMarshallArrayClInt64T(pPyld, count, msg, isDelete) \
2107 clXdrMarshallArray((pPyld), sizeof(ClInt64T), \
2108  (count), clXdrMarshallClInt64T, \
2109  (msg), (isDelete))
2110 
2146 #define clXdrUnmarshallArrayClInt64T(msg, pPyld, count) \
2147 clXdrUnmarshallArray((msg), \
2148  (pPyld), sizeof(ClInt64T), \
2149  (count), clXdrUnmarshallClInt64T)
2150 
2188 #define clXdrMarshallPtrClInt64T(pPyld, count, msg, isDelete) \
2189 clXdrMarshallPtr((pPyld), sizeof(ClInt64T), \
2190  (count), clXdrMarshallClInt64T, \
2191  (msg), (isDelete))
2192 
2227 #define clXdrUnmarshallPtrClInt64T(msg, pPyld, multiplicity) \
2228 clXdrUnmarshallPtr((msg), \
2229  (pPyld), sizeof(ClInt64T), \
2230  multiplicity, clXdrUnmarshallClInt64T)
2231 
2232 ClRcT clXdrMarshallClStringT(void* pPyld, ClBufferHandleT msg, ClUint32T isDelete);
2233 
2234 ClRcT clXdrUnmarshallClStringT( ClBufferHandleT msg, void* pPyld);
2235 
2236 #define clXdrMarshallArrayClStringT(pointer, multiplicity, msg, isDelete) \
2237 clXdrMarshallArray((pointer), sizeof(ClStringT), (multiplicity), clXdrMarshallClStringT, (msg), (isDelete))
2238 
2239 #define clXdrUnmarshallArrayClStringT(msg,pointer, multiplicity) \
2240 clXdrUnmarshallArray((msg),(pointer), sizeof(ClStringT), (multiplicity), clXdrUnmarshallClStringT)
2241 
2242 #define clXdrMarshallPointerClStringT(pointer, multiplicity, msg, isDelete) \
2243 clXdrMarshallPointer((pointer), sizeof(ClStringT), (multiplicity), clXdrMarshallClStringT, (msg), (isDelete))
2244 
2245 #define clXdrUnmarshallPointerClStringT(msg,pointer) \
2246 clXdrUnmarshallPointer((msg),(pointer), sizeof(ClStringT), clXdrUnmarshallClStringT)
2247 
2248 #define clXdrMarshallPtrClStringT(pointer, multiplicity, msg, isDelete) \
2249 clXdrMarshallPtr((pointer), sizeof(ClStringT), (multiplicity), clXdrMarshallClStringT, (msg), (isDelete))
2250 
2251 #define clXdrUnmarshallPtrClStringT(msg,pointer,multiplicity) \
2252 clXdrUnmarshallPtr((msg),(pointer), sizeof(ClStringT),multiplicity, clXdrUnmarshallClStringT)
2253 
2288 ClRcT clXdrMarshallClNameT(void *pPyld, ClBufferHandleT msg, ClUint32T isDelete);
2289 
2322 ClRcT clXdrUnmarshallClNameT(ClBufferHandleT msg, void *pPyld);
2323 
2360 #define clXdrMarshallArrayClNameT(pointer, multiplicity, msg, isDelete) \
2361 clXdrMarshallArray((pointer), sizeof(ClNameT), \
2362  (multiplicity), clXdrMarshallClNameT, \
2363  (msg), (isDelete))
2364 
2399 #define clXdrUnmarshallArrayClNameT(msg, pointer, multiplicity) \
2400 clXdrUnmarshallArray((msg), \
2401  (pointer), sizeof(ClNameT), \
2402  (multiplicity), clXdrUnmarshallClNameT)
2403 
2441 #define clXdrMarshallPtrClNameT(pointer, multiplicity, msg, isDelete) \
2442 clXdrMarshallPtr((pointer), sizeof(ClNameT), \
2443  (multiplicity), clXdrMarshallClNameT, \
2444  (msg), (isDelete))
2445 
2480 #define clXdrUnmarshallPtrClNameT(msg, pointer, multiplicity) \
2481 clXdrUnmarshallPtr((msg), \
2482  (pointer), sizeof(ClNameT), \
2483  multiplicity, clXdrUnmarshallClNameT)
2484 
2518 ClRcT clXdrMarshallClVersionT(void* pGenVar, ClBufferHandleT msg, ClUint32T isDelete);
2557 #define clXdrMarshallPtrClVersionT(pointer, multiplicity, msg, isDelete) \
2558 clXdrMarshallPtr((pointer), sizeof(ClVersionT), \
2559  (multiplicity), clXdrMarshallClVersionT, \
2560  (msg), (isDelete))
2561 
2594 ClRcT clXdrUnmarshallClVersionT(ClBufferHandleT msg , void* pGenVar);
2595 
2631 #define clXdrUnmarshallPtrClVersionT(msg, pointer, multiplicity) \
2632 clXdrUnmarshallPtr((msg), \
2633  (pointer), sizeof(ClVersionT), \
2634  multiplicity, clXdrUnmarshallClVersionT)
2635 
2670 ClRcT clXdrMarshallClHandleT(void *pPyld, ClBufferHandleT msg, ClUint32T isDelete);
2671 
2705 
2743 #define clXdrMarshallPtrClHandleT(pointer, multiplicity, msg, isDelete) \
2744 clXdrMarshallPtr((pointer), sizeof(ClHandleT), \
2745  (multiplicity), clXdrMarshallClHandleT, \
2746  (msg), (isDelete))
2747 
2782 #define clXdrUnmarshallPtrClHandleT(msg, pointer, multiplicity) \
2783 clXdrUnmarshallPtr((msg), \
2784  (pointer), sizeof(ClHandleT), \
2785  multiplicity, clXdrUnmarshallClHandleT)
2786 
2787 
2822 ClRcT clXdrMarshallClWordT(void *pPyld, ClBufferHandleT msg, ClUint32T isDelete);
2823 
2857 
2858 
2896 #define clXdrMarshallPtrClWordT(pointer, multiplicity, msg, isDelete) \
2897 clXdrMarshallPtr((pointer), sizeof(ClWordT), \
2898  (multiplicity), clXdrMarshallClWordT, \
2899  (msg), (isDelete))
2900 
2935 #define clXdrUnmarshallPtrClWordT(msg, pointer, multiplicity) \
2936 clXdrUnmarshallPtr((msg), \
2937  (pointer), sizeof(ClWordT), \
2938  multiplicity, clXdrUnmarshallClWordT)
2939 
2940 ClRcT clXdrMarshallClMD5T(void* pGenVar, ClBufferHandleT msg, ClUint32T isDelete);
2941 
2942 ClRcT clXdrUnmarshallClMD5T(ClBufferHandleT msg , void* pGenVar);
2943 
2944 #define clXdrMarshallPtrClMD5T(pointer, multiplicity, msg, isDelete) \
2945 clXdrMarshallPtr((pointer), sizeof(ClMD5T), \
2946  (multiplicity), clXdrMarshallClMD5T, \
2947  (msg), (isDelete))
2948 
2949 #define clXdrUnmarshallPtrClMD5T(msg, pointer, multiplicity) \
2950 clXdrUnmarshallPtr((msg), \
2951  (pointer), sizeof(ClMD5T), \
2952  multiplicity, clXdrUnmarshallClMD5T)
2953 
2954 #define clXdrMarshallArrayClMD5T(pointer, multiplicity, msg, isDelete) \
2955 clXdrMarshallArray((pointer), sizeof(ClMD5T), (multiplicity), clXdrMarshallClMD5T, (msg), (isDelete))
2956 
2957 #define clXdrUnmarshallArrayClMD5T(msg,pointer, multiplicity) \
2958 clXdrUnmarshallArray((msg),(pointer), sizeof(ClMD5T), (multiplicity), clXdrUnmarshallClMD5T)
2959 
2960 ClRcT clXdrMarshallClDifferenceVectorT(void *,ClBufferHandleT , ClUint32T);
2961 
2962 ClRcT clXdrUnmarshallClDifferenceVectorT(ClBufferHandleT, void *);
2963 
2964 #define clXdrMarshallArrayClDifferenceVectorT(pointer, multiplicity, msg, isDelete) \
2965 clXdrMarshallArray((pointer), sizeof(ClDifferenceVectorT), (multiplicity), clXdrMarshallClDifferenceVectorT, (msg), (isDelete))
2966 
2967 #define clXdrUnmarshallArrayClDifferenceVectorT(msg,pointer, multiplicity) \
2968 clXdrUnmarshallArray((msg),(pointer), sizeof(ClDifferenceVectorT), (multiplicity), clXdrUnmarshallClDifferenceVectorT)
2969 
2970 #define clXdrMarshallPointerClDifferenceVectorT(pointer, multiplicity, msg, isDelete) \
2971 clXdrMarshallPointer((pointer), sizeof(ClDifferenceVectorT), (multiplicity), clXdrMarshallClDifferenceVectorT, (msg), (isDelete))
2972 
2973 #define clXdrUnmarshallPointerClDifferenceVectorT(msg,pointer) \
2974 clXdrUnmarshallPointer((msg),(pointer), sizeof(ClDifferenceVectorT), clXdrUnmarshallClDifferenceVectorT)
2975 
2976 #define clXdrMarshallPtrClDifferenceVectorT(pointer, multiplicity, msg, isDelete) \
2977 clXdrMarshallPtr((pointer), sizeof(ClDifferenceVectorT), (multiplicity), clXdrMarshallClDifferenceVectorT, (msg), (isDelete))
2978 
2979 #define clXdrUnmarshallPtrClDifferenceVectorT(msg,pointer,multiplicity) \
2980 clXdrUnmarshallPtr((msg),(pointer), sizeof(ClDifferenceVectorT),multiplicity, clXdrUnmarshallClDifferenceVectorT)
2981 
2982 ClRcT clXdrMarshallClDataVectorT(void *,ClBufferHandleT , ClUint32T);
2983 
2984 ClRcT clXdrUnmarshallClDataVectorT(ClBufferHandleT, void *);
2985 
2986 #define clXdrMarshallArrayClDataVectorT(pointer, multiplicity, msg, isDelete) \
2987 clXdrMarshallArray((pointer), sizeof(ClDataVectorT), (multiplicity), clXdrMarshallClDataVectorT, (msg), (isDelete))
2988 
2989 #define clXdrUnmarshallArrayClDataVectorT(msg,pointer, multiplicity) \
2990 clXdrUnmarshallArray((msg),(pointer), sizeof(ClDataVectorT), (multiplicity), clXdrUnmarshallClDataVectorT)
2991 
2992 #define clXdrMarshallPointerClDataVectorT(pointer, multiplicity, msg, isDelete) \
2993 clXdrMarshallPointer((pointer), sizeof(ClDataVectorT), (multiplicity), clXdrMarshallClDataVectorT, (msg), (isDelete))
2994 
2995 #define clXdrUnmarshallPointerClDataVectorT(msg,pointer) \
2996 clXdrUnmarshallPointer((msg),(pointer), sizeof(ClDataVectorT), clXdrUnmarshallClDataVectorT)
2997 
2998 #define clXdrMarshallPtrClDataVectorT(pointer, multiplicity, msg, isDelete) \
2999 clXdrMarshallPtr((pointer), sizeof(ClDataVectorT), (multiplicity), clXdrMarshallClDataVectorT, (msg), (isDelete))
3000 
3001 #define clXdrUnmarshallPtrClDataVectorT(msg,pointer,multiplicity) \
3002 clXdrUnmarshallPtr((msg),(pointer), sizeof(ClDataVectorT),multiplicity, clXdrUnmarshallClDataVectorT)
3003 
3004 ClRcT clXdrError(void* pPyld, ...);
3005 
3006 ClRcT clIdlFree( void *pData);
3007 
3008 #ifdef __cplusplus
3009 }
3010 #endif
3011 
3012 #endif /*_CL_XDR_API_H_*/
3013 

Generated on Tue Jan 10 10:29:15 PST 2012 for OpenClovis SDK using Doxygen