ITK Function Reference

(V10000.1.0.60_20160308.00)
ict_userservice.h
Go to the documentation of this file.
1 /*==============================================================================
2  Copyright (c) 2003-2005 UGS Corporation
3  Unpublished - All Rights Reserved
4  ==============================================================================*/
5 
12 /* */
13 
14 #ifndef ICT_USERSERVICE_H
15 #define ICT_USERSERVICE_H
16 
17 #include <unidefs.h>
18 
19 #include <ict/libict_exports.h>
20 
25 #ifdef WNT
26  #ifdef USER_EXIT_IMPORT
27  #define DLLAPI __declspec(dllimport)
28  #else
29  #define DLLAPI __declspec(dllexport)
30  #endif
31 #else
32  #define DLLAPI
33 #endif
34 
44 #define USERARG_ARRAY_TYPE 100
45 #define USERARG_VOID_TYPE 0
46 #define USERARG_CHAR_TYPE 1
47 #define USERARG_DATE_TYPE 2
48 #define USERARG_DOUBLE_TYPE 3
49 #define USERARG_FLOAT_TYPE 4
50 #define USERARG_INT_TYPE 5
51 #define USERARG_LOGICAL_TYPE 6
52 #define USERARG_SHORT_TYPE 7
53 #define USERARG_STRING_TYPE 8
54 #define USERARG_TAG_TYPE 9
55 
56 typedef int (*USER_function_t)(void*);
57 
58 typedef struct USERSERVICE_array_s {
59  int length;
60  void* array;
62 
63 #ifdef __cplusplus
64 extern "C" {
65 #endif
66 
71  char* functionName,
72  USER_function_t functionPtr,
73  int numberOfArguments,
74  int* argumentList,
75  int returnValueType
76  );
77 
82  const int* array,
83  int arrayLength,
84  USERSERVICE_array_t* arrayStruct
85  );
86 
91  const short* array,
92  int arrayLength,
93  USERSERVICE_array_t* arrayStruct
94  );
95 
100  const double* array,
101  int arrayLength,
102  USERSERVICE_array_t* arrayStruct
103  );
104 
109  const float* array,
110  int arrayLength,
111  USERSERVICE_array_t* arrayStruct
112  );
113 
118  const logical* array,
119  int arrayLength,
120  USERSERVICE_array_t* arrayStruct
121  );
122 
127  const char** array,
128  int arrayLength,
129  USERSERVICE_array_t* arrayStruct
130  );
131 
136  const tag_t* array,
137  int arrayLength,
138  USERSERVICE_array_t* arrayStruct
139  );
140 
145  const char* array,
146  int arrayLength,
147  USERSERVICE_array_t* arrayStruct
148  );
149 
154  const date_t* array,
155  int arrayLength,
156  USERSERVICE_array_t* arrayStruct
157  );
158 
163  int* arg
164  );
165 
170  int* length,
171  int** args
172  );
173 
175  double* arg
176  );
177 
179  int* length,
180  double** args
181  );
182 
187  char** arg
188  );
189 
194  int* length,
195  char*** args
196  );
197 
202  tag_t* arg
203  );
204 
209  int* length,
210  tag_t** args
211  );
212 
217  logical* arg
218  );
219 
224  int* length,
225  logical** args
226  );
227 
232  float* arg
233  );
234 
239  int* length,
240  float** arg
241  );
242 
247  short* arg
248  );
249 
254  int* length,
255  short** arg
256  );
257 
262  char* arg
263  );
264 
269  int* length,
270  char** arg
271  );
272 
277  date_t* arg
278  );
279 
284  int* length,
285  date_t** arg
286  );
287 
288 extern DLLAPI void USERARG_reset_arguments();
289 
290 #ifdef __cplusplus
291 }
292 #endif
293 
296 #include <ict/libict_undef.h>
297 #endif