ires_common.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00039 #ifndef IRES_COMMON_
00040 #define IRES_COMMON_
00041
00044
00045
00046 #ifdef __cplusplus
00047 extern "C" {
00048 #endif
00049
00050 #include "ialg.h"
00051
00052
00057 typedef enum IRES_Status {
00058 IRES_OK = 0,
00059 IRES_EALG = 1,
00060 IRES_EEXISTS = 2,
00061 IRES_EFAIL = 3,
00062 IRES_EINIT = 4,
00063 IRES_ENOINIT = 5,
00064 IRES_ENOMEM = 6,
00065 IRES_ENORESOURCE = 7,
00066 IRES_ENOTFOUND = 8
00067 } IRES_Status;
00068
00073 typedef struct IRES_ProtocolRevision {
00074 unsigned int Major;
00075 unsigned int Source;
00076 unsigned int Radius;
00077
00078
00079 } IRES_ProtocolRevision;
00080
00081
00085 typedef enum IRES_RequestMode {
00086 IRES_SCRATCH,
00090 IRES_PERSISTENT,
00094 IRES_LATEACQUIRE
00101 } IRES_RequestMode;
00102
00103
00110 typedef struct IRES_ProtocolArgs {
00111
00112 Int32 size;
00113 IRES_RequestMode mode;
00117 } IRES_ProtocolArgs;
00118
00122 typedef struct IRES_ResourceDescriptor {
00123
00127 String resourceName;
00128
00135 struct IRES_ProtocolArgs *protocolArgs;
00136
00141 IRES_ProtocolRevision *revision;
00142
00149 struct IRES_Obj * handle;
00150
00151 } IRES_ResourceDescriptor;
00152
00162 typedef struct IRES_Properties {
00163 Int32 size;
00164 } IRES_Properties;
00165
00170 typedef struct IRES_Obj {
00171
00175 Int32 persistent;
00176
00182 Void (*getStaticProperties) (struct IRES_Obj * resourceHandle,
00183 IRES_Properties * resourceProperties);
00184
00185 } IRES_Obj;
00186
00190 typedef struct IRES_Obj *IRES_Handle;
00191
00192
00193
00194 #ifdef __cplusplus
00195 }
00196 #endif
00197
00200 #endif
00201
00202
00203
00204