2 typedef long long int64;
3 typedef unsigned long long uint64;
7 #elif defined(__TINYC__)
9 #define __builtin_va_list va_list
10 #define __builtin_va_start va_start
11 #define __builtin_va_end va_end
13 #define strcasecmp stricmp
14 #define strncasecmp strnicmp
15 #define __declspec(x) __attribute__((x))
19 typedef long long int64;
20 typedef unsigned long long uint64;
22 typedef __int64 int64;
23 typedef unsigned __int64 uint64;
26 #define __ENDIAN_PAD(x) (8 - (x))
28 #define __ENDIAN_PAD(x) 0
31 #include <sys/types.h>
33 #if defined(_W64) || (defined(__WORDSIZE) && __WORDSIZE == 8) || defined(__x86_64__)
39 #define arch_PointerSize sizeof(void *)
40 #define structSize_Instance (_64BIT ? 24 : 12)
42 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
44 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
46 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
48 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
50 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
52 struct __ecereNameSpace__ecere__sys__BTNode;
54 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
56 struct __ecereNameSpace__ecere__sys__BinaryTree
58 struct __ecereNameSpace__ecere__sys__BTNode * root;
60 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
61 void (* FreeKey)(void * key);
62 } __attribute__ ((gcc_struct));
64 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
66 struct __ecereNameSpace__ecere__sys__OldList
73 } __attribute__ ((gcc_struct));
75 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
77 struct __ecereNameSpace__ecere__com__Class
79 struct __ecereNameSpace__ecere__com__Class * prev;
80 struct __ecereNameSpace__ecere__com__Class * next;
86 int (* Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
87 void (* Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
90 struct __ecereNameSpace__ecere__com__Class * base;
91 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
92 struct __ecereNameSpace__ecere__sys__BinaryTree members;
93 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
94 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
95 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
96 struct __ecereNameSpace__ecere__sys__OldList derivatives;
100 struct __ecereNameSpace__ecere__com__Instance * module;
101 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
102 char * dataTypeString;
103 struct __ecereNameSpace__ecere__com__Instance * dataType;
105 int defaultAlignment;
106 void (* Initialize)();
108 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
109 char * designerClass;
110 unsigned int noExpansion;
111 char * defaultProperty;
112 unsigned int comRedefinition;
114 unsigned int isRemote;
115 unsigned int internalDecl;
117 unsigned int computeSize;
119 int destructionWatchOffset;
121 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
122 int inheritanceAccess;
125 struct __ecereNameSpace__ecere__sys__OldList conversions;
126 struct __ecereNameSpace__ecere__sys__OldList templateParams;
127 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
128 struct __ecereNameSpace__ecere__com__Class * templateClass;
129 struct __ecereNameSpace__ecere__sys__OldList templatized;
131 } __attribute__ ((gcc_struct));
133 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, char * name);
135 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
137 struct __ecereNameSpace__ecere__com__Instance
140 struct __ecereNameSpace__ecere__com__Class * _class;
142 } __attribute__ ((gcc_struct));
144 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
146 struct __ecereNameSpace__ecere__com__Property
148 struct __ecereNameSpace__ecere__com__Property * prev;
149 struct __ecereNameSpace__ecere__com__Property * next;
151 unsigned int isProperty;
154 struct __ecereNameSpace__ecere__com__Class * _class;
155 char * dataTypeString;
156 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
157 struct __ecereNameSpace__ecere__com__Instance * dataType;
158 void (* Set)(void * , int);
159 int (* Get)(void * );
160 unsigned int (* IsSet)(void * );
164 unsigned int conversion;
165 unsigned int watcherOffset;
167 unsigned int compiled;
168 unsigned int selfWatchable;
169 unsigned int isWatchable;
170 } __attribute__ ((gcc_struct));
172 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
174 struct __ecereNameSpace__ecere__com__DataMember
176 struct __ecereNameSpace__ecere__com__DataMember * prev;
177 struct __ecereNameSpace__ecere__com__DataMember * next;
179 unsigned int isProperty;
182 struct __ecereNameSpace__ecere__com__Class * _class;
183 char * dataTypeString;
184 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
185 struct __ecereNameSpace__ecere__com__Instance * dataType;
189 struct __ecereNameSpace__ecere__sys__OldList members;
190 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
193 } __attribute__ ((gcc_struct));
195 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
197 struct __ecereNameSpace__ecere__com__Method
200 struct __ecereNameSpace__ecere__com__Method * parent;
201 struct __ecereNameSpace__ecere__com__Method * left;
202 struct __ecereNameSpace__ecere__com__Method * right;
207 struct __ecereNameSpace__ecere__com__Class * _class;
209 char * dataTypeString;
210 struct __ecereNameSpace__ecere__com__Instance * dataType;
212 } __attribute__ ((gcc_struct));
214 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
216 struct __ecereNameSpace__ecere__com__DataValue
231 } __attribute__ ((gcc_struct));
232 } __attribute__ ((gcc_struct));
234 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
236 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
242 char * dataTypeString;
243 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
244 } __attribute__ ((gcc_struct));
245 struct __ecereNameSpace__ecere__com__DataValue expression;
251 struct __ecereNameSpace__ecere__com__DataMember * member;
252 struct __ecereNameSpace__ecere__com__Property * prop;
253 struct __ecereNameSpace__ecere__com__Method * method;
254 } __attribute__ ((gcc_struct));
255 } __attribute__ ((gcc_struct));
256 } __attribute__ ((gcc_struct));
257 } __attribute__ ((gcc_struct));
259 extern int runtimePlatform;
278 int __ecereVMethodID_class_OnGetString;
280 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_int;
282 int __ecereVMethodID_class_OnFree;
284 int __ecereVMethodID_class_OnCopy;
286 int __ecereVMethodID_class_OnCompare;
288 int __ecereVMethodID_class_OnSaveEdit;
290 int __ecereVMethodID_class_OnEdit;
292 int __ecereVMethodID_class_OnGetDataFromString;
294 static void __ecereNameSpace__ecere__com__UnusedFunction()
298 ((char * (*)(struct __ecereNameSpace__ecere__com__Class *, void *, char * tempString, void * fieldData, unsigned int * needClass))__ecereClass_int->_vTbl[__ecereVMethodID_class_OnGetString])(__ecereClass_int, &a, 0, 0, 0);
299 ((void (*)(struct __ecereNameSpace__ecere__com__Class *, void *))__ecereClass_int->_vTbl[__ecereVMethodID_class_OnFree])(__ecereClass_int, &a);
300 ((void (*)(struct __ecereNameSpace__ecere__com__Class *, void *, void * newData))__ecereClass_int->_vTbl[__ecereVMethodID_class_OnCopy])(__ecereClass_int, &a, (((void *)0)));
301 ((int (*)(struct __ecereNameSpace__ecere__com__Class *, void *, void * object))__ecereClass_int->_vTbl[__ecereVMethodID_class_OnCompare])(__ecereClass_int, &a, (((void *)0)));
302 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Class *, void *, struct __ecereNameSpace__ecere__com__Instance * window, void * object))__ecereClass_int->_vTbl[__ecereVMethodID_class_OnSaveEdit])(__ecereClass_int, &a, (((void *)0)), 0);
303 ((struct __ecereNameSpace__ecere__com__Instance * (*)(struct __ecereNameSpace__ecere__com__Class *, void *, struct __ecereNameSpace__ecere__com__Instance * dataBox, struct __ecereNameSpace__ecere__com__Instance * obsolete, int x, int y, int w, int h, void * userData))__ecereClass_int->_vTbl[__ecereVMethodID_class_OnEdit])(__ecereClass_int, &a, (((void *)0)), (((void *)0)), 0, 0, 0, 20, 0);
304 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Class *, void *, char * string))__ecereClass_int->_vTbl[__ecereVMethodID_class_OnGetDataFromString])(__ecereClass_int, &a, (((void *)0)));
307 typedef __builtin_va_list va_list;
309 void exit(int status);
311 void * calloc(size_t nmemb, size_t size);
313 void free(void * ptr);
315 void * malloc(size_t size);
317 void * realloc(void * ptr, size_t size);
319 long int strtol(const char * nptr, char ** endptr, int base);
321 long long int strtoll(const char * nptr, char ** endptr, int base);
323 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
327 FILE * bsl_stdin(void);
329 FILE * bsl_stdout(void);
331 FILE * bsl_stderr(void);
333 char * fgets(char * s, int size, FILE * stream);
335 FILE * fopen(const char * path, const char * mode);
337 int fclose(FILE * fp);
339 int fflush(FILE * stream);
341 int fgetc(FILE * stream);
343 int fprintf(FILE * stream, const char * format, ...);
345 int fputc(int c, FILE * stream);
347 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
349 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
351 int vsnprintf(char *, size_t, const char *, ...);
353 int snprintf(char * str, size_t, const char * format, ...);
355 int fseek(FILE * stream, long offset, int whence);
357 long ftell(FILE * stream);
359 int feof(FILE * stream);
361 int ferror(FILE * stream);
363 int fileno(FILE * stream);
365 FILE * eC_stdout(void);
367 FILE * eC_stderr(void);
369 extern int __ecereVMethodID_class_OnGetString;
371 extern int __ecereVMethodID_class_OnGetDataFromString;
373 extern int __ecereVMethodID_class_OnCompare;
375 extern int __ecereVMethodID_class_OnSerialize;
377 extern int __ecereVMethodID_class_OnUnserialize;
379 extern int __ecereVMethodID_class_OnCopy;
381 void __ecereNameSpace__ecere__com__eSystem_Delete(void * memory);
383 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__IOChannel;
385 int __ecereVMethodID_class_OnSerialize;
387 void __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Serialize(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__Class * class, void * data)
389 ((void (*)(struct __ecereNameSpace__ecere__com__Class *, void *, struct __ecereNameSpace__ecere__com__Instance * channel))class->_vTbl[__ecereVMethodID_class_OnSerialize])(class, data, this);
392 int __ecereVMethodID_class_OnUnserialize;
394 void __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Unserialize(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__Class * class, void * * data)
396 ((void (*)(struct __ecereNameSpace__ecere__com__Class *, void *, struct __ecereNameSpace__ecere__com__Instance * channel))class->_vTbl[__ecereVMethodID_class_OnUnserialize])(class, data, this);
399 void __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Put(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__Class * class, void * data)
401 ((void (*)(struct __ecereNameSpace__ecere__com__Class *, void *, struct __ecereNameSpace__ecere__com__Instance * channel))class->_vTbl[__ecereVMethodID_class_OnSerialize])(class, data, this);
404 void __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Get(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__Class * class, void * * data)
406 ((void (*)(struct __ecereNameSpace__ecere__com__Class *, void *, struct __ecereNameSpace__ecere__com__Instance * channel))class->_vTbl[__ecereVMethodID_class_OnUnserialize])(class, data, this);
409 static struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_buffer, * __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_buffer;
411 static struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_size, * __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_size;
413 struct __ecereNameSpace__ecere__com__SerialBuffer
415 unsigned char * _buffer;
419 } __attribute__ ((gcc_struct));
421 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
423 void __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_Free();
425 void __ecereDestructor___ecereNameSpace__ecere__com__SerialBuffer(struct __ecereNameSpace__ecere__com__Instance * this)
427 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
430 __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_Free(this);
434 extern void * memcpy(void * , const void * , size_t size);
436 unsigned int __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_WriteData(struct __ecereNameSpace__ecere__com__Instance * this, unsigned char * bytes, unsigned int numBytes)
438 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
440 if(this != (((void *)0)))
442 if(__ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count + numBytes > __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_size)
444 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_size = __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count + numBytes;
445 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_size += __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_size / 2;
446 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer = __ecereNameSpace__ecere__com__eSystem_Renew(__ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer, sizeof(unsigned char) * (__ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_size));
448 memcpy(__ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer + __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count, bytes, numBytes);
449 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count += numBytes;
455 unsigned int __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_ReadData(struct __ecereNameSpace__ecere__com__Instance * this, unsigned char * bytes, unsigned int numBytes)
457 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
459 if(this != (((void *)0)))
461 unsigned int __simpleStruct0;
462 int read = (__simpleStruct0 = __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count - __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->pos, (numBytes < __simpleStruct0) ? numBytes : __simpleStruct0);
464 memcpy(bytes, __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer + __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->pos, read);
465 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->pos += read;
471 void __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_Free(struct __ecereNameSpace__ecere__com__Instance * this)
473 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
477 (__ecereNameSpace__ecere__com__eSystem_Delete(__ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer), __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer = 0);
478 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count = 0;
479 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_size = 0;
480 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->pos = 0;
484 unsigned char * __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Get_buffer(struct __ecereNameSpace__ecere__com__Instance * this)
486 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
488 return __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer + __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->pos;
491 void __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Set_buffer(struct __ecereNameSpace__ecere__com__Instance * this, unsigned char * value)
493 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
495 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->_buffer = value;
496 __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_buffer), __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_buffer);
499 unsigned int __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Get_size(struct __ecereNameSpace__ecere__com__Instance * this)
501 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
503 return __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count - __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->pos;
506 void __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Set_size(struct __ecereNameSpace__ecere__com__Instance * this, unsigned int value)
508 struct __ecereNameSpace__ecere__com__SerialBuffer * __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer = (struct __ecereNameSpace__ecere__com__SerialBuffer *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__com__SerialBuffer->offset) : 0);
510 __ecerePointer___ecereNameSpace__ecere__com__SerialBuffer->count = value;
511 __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_size), __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_size);
514 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__EnumClassData;
516 struct __ecereNameSpace__ecere__com__EnumClassData
518 struct __ecereNameSpace__ecere__sys__OldList values;
520 } __attribute__ ((gcc_struct));
522 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__NamedLink;
524 struct __ecereNameSpace__ecere__sys__NamedLink
526 struct __ecereNameSpace__ecere__sys__NamedLink * prev;
527 struct __ecereNameSpace__ecere__sys__NamedLink * next;
530 } __attribute__ ((gcc_struct));
532 extern char * strcpy(char * , const char * );
534 extern int toupper(int);
536 char * __ecereNameSpace__ecere__com__Enum_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, int * data, char * tempString, void * fieldData, unsigned int * needClass)
538 struct __ecereNameSpace__ecere__com__EnumClassData * enumeration = (struct __ecereNameSpace__ecere__com__EnumClassData *)_class->data;
539 struct __ecereNameSpace__ecere__sys__NamedLink * item;
541 for(item = enumeration->values.first; item; item = item->next)
542 if((int)item->data == *data)
546 strcpy(tempString, item->name);
547 if(!needClass || !*needClass)
548 tempString[0] = (char)toupper(tempString[0]);
552 return (((void *)0));
555 extern int strcasecmp(const char * , const char * );
557 static unsigned int __ecereNameSpace__ecere__com__Integer_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, int * data, char * string);
559 static unsigned int __ecereNameSpace__ecere__com__Enum_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, int * data, char * string)
561 struct __ecereNameSpace__ecere__com__EnumClassData * enumeration = (struct __ecereNameSpace__ecere__com__EnumClassData *)_class->data;
562 struct __ecereNameSpace__ecere__sys__NamedLink * item;
564 for(item = enumeration->values.first; item; item = item->next)
566 if(item->name && !(strcasecmp)(item->name, string))
571 *data = (int)item->data;
575 return __ecereNameSpace__ecere__com__Integer_OnGetDataFromString(_class, data, string);
579 extern void __ecereNameSpace__ecere__com__eInstance_DecRef(struct __ecereNameSpace__ecere__com__Instance * instance);
581 static void __ecereNameSpace__ecere__com__OnFree(struct __ecereNameSpace__ecere__com__Class * _class, void * data)
583 if(_class->templateClass)
584 _class = _class->templateClass;
585 if(_class->type == 0)
587 __ecereNameSpace__ecere__com__eInstance_DecRef(data);
589 else if(_class->type == 5 && data)
591 while(_class && _class->type == 5)
593 if(_class->Destructor)
594 _class->Destructor(data);
595 _class = _class->base;
597 (__ecereNameSpace__ecere__com__eSystem_Delete(data), data = 0);
601 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_FindClass(struct __ecereNameSpace__ecere__com__Instance * module, char * name);
603 static int __ecereNameSpace__ecere__com__DataMember_OnCompare(struct __ecereNameSpace__ecere__com__DataMember * parentMember, void * data1, void * data2)
605 struct __ecereNameSpace__ecere__com__DataMember * member;
606 struct __ecereNameSpace__ecere__com__Instance * module = parentMember->_class->module;
608 for(member = parentMember->members.first; member; member = member->next)
610 int memberResult = 0;
612 if(member->type == 0)
614 struct __ecereNameSpace__ecere__com__Class * memberType = member->dataTypeClass;
617 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, member->dataTypeString);
619 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "int");
620 if(memberType->type == 1 || memberType->type == 0 || memberType->type == 5)
622 memberResult = ((int (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnCompare])(memberType, (unsigned char *)data1 + member->offset, (unsigned char *)data2 + member->offset);
628 struct __ecereNameSpace__ecere__com__DataValue value1, value2;
630 value1.i = *(int *)((unsigned char *)data1 + member->offset);
631 value2.i = *(int *)((unsigned char *)data2 + member->offset);
632 memberResult = ((int (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnCompare])(memberType, &value1, &value2);
639 memberResult = __ecereNameSpace__ecere__com__DataMember_OnCompare(member, (unsigned char *)data1 + member->offset, (unsigned char *)data2 + member->offset);
647 extern int strcmp(const char * , const char * );
649 static int __ecereNameSpace__ecere__com__OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, void * data1, void * data2)
651 struct __ecereNameSpace__ecere__com__Instance * module = _class->module;
653 if(_class->type == 0 || _class->type == 5 || _class->type == 1)
657 for(; _class && _class->type != 1000; _class = _class->base)
659 struct __ecereNameSpace__ecere__com__DataMember * member;
661 if(_class->noExpansion)
665 else if(data1 < data2)
670 for(member = _class->membersAndProperties.first; member; member = member->next)
672 int memberResult = 0;
674 if(member->isProperty || member->type == 0)
676 struct __ecereNameSpace__ecere__com__Class * memberType = member->dataTypeClass;
679 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, member->dataTypeString);
682 if(member->isProperty)
684 struct __ecereNameSpace__ecere__com__Property * prop = (struct __ecereNameSpace__ecere__com__Property *)member;
686 if(!prop->conversion && prop->Get && prop->Set)
688 if(memberType->type == 1 || memberType->type == 0 || memberType->type == 5)
690 if(!strcmp(memberType->dataTypeString, "char *"))
692 char * a = ((char * (*)(void *))(void *)prop->Get)(data1);
693 char * b = ((char * (*)(void *))(void *)prop->Get)(data2);
695 memberResult = ((int (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnCompare])(memberType, a, b);
700 struct __ecereNameSpace__ecere__com__DataValue value1, value2;
702 if(!strcmp(memberType->dataTypeString, "float"))
704 value1.f = ((float (*)(void *))(void *)prop->Get)(data1);
705 value2.f = ((float (*)(void *))(void *)prop->Get)(data2);
709 value1.i = ((int (*)(void *))(void *)prop->Get)(data1);
710 value2.i = ((int (*)(void *))(void *)prop->Get)(data2);
712 memberResult = ((int (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnCompare])(memberType, &value1, &value2);
718 if(memberType->type == 1 || memberType->type == 0 || memberType->type == 5)
720 if(memberType->type == 0 || memberType->type == 5)
722 memberResult = ((int (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnCompare])(memberType, *(void **)((unsigned char *)data1 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset)), *(void **)((unsigned char *)data2 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset)));
726 memberResult = ((int (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnCompare])(memberType, (unsigned char *)data1 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset), (unsigned char *)data2 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
731 struct __ecereNameSpace__ecere__com__DataValue value1, value2;
733 if(memberType->typeSize == 8)
735 value1.ui64 = *(uint64 *)((unsigned char *)data1 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
736 value2.ui64 = *(uint64 *)((unsigned char *)data2 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
740 value1.i = *(int *)((unsigned char *)data1 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
741 value2.i = *(int *)((unsigned char *)data2 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
743 memberResult = ((int (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnCompare])(memberType, &value1, &value2);
753 memberResult = __ecereNameSpace__ecere__com__DataMember_OnCompare(member, (unsigned char *)data1 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset), (unsigned char *)data2 + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
760 else if(!data1 && data2)
762 else if(data1 && !data2)
765 else if(_class->type == 3)
767 struct __ecereNameSpace__ecere__com__Class * dataType = __ecereNameSpace__ecere__com__eSystem_FindClass(module, _class->dataTypeString);
769 return ((int (*)(void *, void *, void *))(void *)dataType->_vTbl[__ecereVMethodID_class_OnCompare])(dataType, data1, data2);
777 if(_class->typeSize == 8)
779 if(*(uint64 *)data1 > *(uint64 *)data2)
781 else if(*(uint64 *)data1 < *(uint64 *)data2)
786 if(*(unsigned int *)data1 > *(unsigned int *)data2)
788 else if(*(unsigned int *)data1 < *(unsigned int *)data2)
792 else if(!data1 && data2)
794 else if(data1 && !data2)
801 extern char * strchr(const char * , int);
803 extern char * strcat(char * , const char * );
805 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__BitMember;
807 struct __ecereNameSpace__ecere__com__BitMember
809 struct __ecereNameSpace__ecere__com__BitMember * prev;
810 struct __ecereNameSpace__ecere__com__BitMember * next;
812 unsigned int isProperty;
815 struct __ecereNameSpace__ecere__com__Class * _class;
816 char * dataTypeString;
817 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
818 struct __ecereNameSpace__ecere__com__Instance * dataType;
823 } __attribute__ ((gcc_struct));
825 extern size_t strlen(const char * );
827 static char * __ecereNameSpace__ecere__com__OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, void * data, char * tempString, void * fieldData, unsigned int * needClass)
829 struct __ecereNameSpace__ecere__com__Instance * module = _class->templateClass ? _class->templateClass->module : _class->module;
831 if(_class->type == 4)
833 return __ecereNameSpace__ecere__com__Enum_OnGetString(_class, data, tempString, fieldData, needClass);
835 else if(_class->type == 3)
837 struct __ecereNameSpace__ecere__com__Class * dataType = __ecereNameSpace__ecere__com__eSystem_FindClass(module, _class->dataTypeString);
839 return ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)dataType->_vTbl[__ecereVMethodID_class_OnGetString])(dataType, data, tempString, fieldData, needClass);
843 unsigned int atMember = 0x1;
844 unsigned int prev = 0x0;
845 struct __ecereNameSpace__ecere__com__Class * mainClass = _class;
847 _class = (((void *)0));
848 tempString[0] = '\0';
849 if(!data && (mainClass->type == 0 || mainClass->type == 5))
851 while(_class != mainClass)
853 struct __ecereNameSpace__ecere__com__DataMember * member;
854 struct __ecereNameSpace__ecere__com__Class * lastClass = _class;
856 for(_class = mainClass; _class->base != lastClass && _class->base->type != 1000; _class = _class->base)
858 for(member = _class->membersAndProperties.first; member; member = member->next)
860 char memberString[1024];
861 struct __ecereNameSpace__ecere__com__Class * memberType = member->dataTypeClass;
862 char * name = member->name;
864 memberString[0] = (char)0;
866 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, member->dataTypeString);
868 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "int");
869 if(member->isProperty)
871 struct __ecereNameSpace__ecere__com__Property * prop = (struct __ecereNameSpace__ecere__com__Property *)member;
873 if(!prop->conversion && prop->Get && prop->Set && (!prop->IsSet || prop->IsSet(data)))
875 if(memberType->type != 1 && (memberType->type != 0 || !strcmp(memberType->dataTypeString, "char *")) && memberType->type != 2 && data)
877 struct __ecereNameSpace__ecere__com__DataValue value =
882 if(!strcmp(prop->dataTypeString, "float"))
884 value.f = ((float (*)(void *))(void *)prop->Get)(data);
887 unsigned int needClass = 0x1;
888 char * result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, &value, memberString, (((void *)0)), &needClass);
890 if(result && result != memberString)
891 strcpy(memberString, result);
892 if(strchr(memberString, '.'))
893 strcat(memberString, "f");
896 else if(memberType->type == 0 || memberType->type == 5)
898 value.p = ((void * (*)(void *))(void *)prop->Get)(data);
899 if(value.p || prop->IsSet)
901 unsigned int needClass = 0x1;
902 char * result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, (memberType->type == 0) ? value.p : &value, memberString, (((void *)0)), &needClass);
904 if(result && result != memberString)
905 strcpy(memberString, result);
910 value.i = ((int (*)(void *))(void *)prop->Get)(data);
911 if(value.i || prop->IsSet)
913 unsigned int needClass = 0x1;
914 char * result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, &value, memberString, (((void *)0)), &needClass);
916 if(result && result != memberString)
917 strcpy(memberString, result);
925 if(member->type == 0)
927 if(memberType->type == 1 || memberType->type == 0)
929 char internalMemberString[1024];
930 unsigned char * memberData = ((unsigned char *)data + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
933 for(c = 0; c < memberType->structSize; c++)
936 if(c < memberType->structSize)
938 unsigned int needClass = 0x1;
941 if(memberType->type == 0)
942 result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, *(struct __ecereNameSpace__ecere__com__Instance **)memberData, internalMemberString, (((void *)0)), &needClass);
944 result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, memberData, internalMemberString, (((void *)0)), &needClass);
947 strcat(memberString, "{ ");
949 strcat(memberString, result);
950 strcat(memberString, " }");
953 strcpy(memberString, result);
958 struct __ecereNameSpace__ecere__com__DataValue value =
963 if(_class->type == 2)
965 struct __ecereNameSpace__ecere__com__BitMember * bitMember = (struct __ecereNameSpace__ecere__com__BitMember *)member;
967 value.ui64 = ((*(unsigned int *)data & bitMember->mask) >> bitMember->pos);
970 unsigned int needClass = 0x1;
971 char internalMemberString[1024];
972 char * result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, &value, internalMemberString, (((void *)0)), &needClass);
974 if(needClass && memberType->type != 1000 && memberType->type != 4 && memberType->type != 3)
976 strcat(memberString, " { ");
978 strcat(memberString, result);
979 strcat(memberString, " }");
982 strcpy(memberString, result);
985 else if(!memberType->noExpansion)
987 if(memberType->typeSize <= 4)
989 value.i = *(int *)((unsigned char *)data + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset));
992 unsigned int needClass = 0x1;
993 char * result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, &value, memberString, (((void *)0)), &needClass);
995 if(result && memberString != result)
996 strcpy(memberString, result);
1001 unsigned int needClass = 0x1;
1002 char * result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetString])(memberType, ((unsigned char *)data + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset)), memberString, (((void *)0)), &needClass);
1004 if(result && memberString != result)
1005 strcpy(memberString, result);
1014 strcat(tempString, ", ");
1015 if(!atMember || !strcmp(memberType->name, "bool"))
1017 strcat(tempString, name);
1018 strcat(tempString, " = ");
1020 if(!strcmp(memberType->name, "char *"))
1022 int len = strlen(tempString);
1025 strcat(tempString, "\"");
1027 for(c = 0; memberString[c]; c++)
1029 if(memberString[c] == '\"')
1031 strcat(tempString, "\\\"");
1034 else if(memberString[c] == '\\')
1036 strcat(tempString, "\\\\");
1041 tempString[len++] = memberString[c];
1042 tempString[len] = (char)0;
1045 strcat(tempString, "\"");
1048 strcat(tempString, memberString);
1052 else if(member && (!member->isProperty || !((struct __ecereNameSpace__ecere__com__Property *)member)->conversion))
1060 extern void * __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
1062 extern void * memset(void * area, int value, size_t count);
1064 extern char * __ecereNameSpace__ecere__sys__TrimRSpaces(char * string, char * output);
1066 extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_FindDataMemberAndOffset(struct __ecereNameSpace__ecere__com__Class * _class, char * name, unsigned int * offset, struct __ecereNameSpace__ecere__com__Instance * module, struct __ecereNameSpace__ecere__com__DataMember ** subMemberStack, int * subMemberStackPos);
1068 extern struct __ecereNameSpace__ecere__com__Property * __ecereNameSpace__ecere__com__eClass_FindProperty(struct __ecereNameSpace__ecere__com__Class * _class, char * name, struct __ecereNameSpace__ecere__com__Instance * module);
1070 extern void __ecereNameSpace__ecere__com__eClass_FindNextMember(struct __ecereNameSpace__ecere__com__Class * _class, struct __ecereNameSpace__ecere__com__Class ** curClass, struct __ecereNameSpace__ecere__com__DataMember ** curMember, struct __ecereNameSpace__ecere__com__DataMember ** subMemberStack, int * subMemberStackPos);
1072 static unsigned int __ecereNameSpace__ecere__com__OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, void ** data, char * string)
1074 unsigned int result;
1075 struct __ecereNameSpace__ecere__com__Instance * module = _class->module;
1077 if(_class->type == 4)
1078 result = __ecereNameSpace__ecere__com__Enum_OnGetDataFromString(_class, (int *)data, string);
1079 else if(_class->type == 3)
1081 struct __ecereNameSpace__ecere__com__Class * dataType = __ecereNameSpace__ecere__com__eSystem_FindClass(module, _class->dataTypeString);
1083 return ((unsigned int (*)(void *, void *, const char *))(void *)dataType->_vTbl[__ecereVMethodID_class_OnGetDataFromString])(dataType, data, string);
1085 else if(!string[0] && _class->type == 0)
1087 *data = (((void *)0));
1093 char memberName[1024];
1094 char memberString[10240];
1096 unsigned int quoted = 0x0;
1099 unsigned int escape = 0x0;
1100 unsigned int gotChar;
1101 unsigned int memberOffset;
1102 struct __ecereNameSpace__ecere__com__Class * curClass = (((void *)0));
1103 struct __ecereNameSpace__ecere__com__DataMember * curMember = (((void *)0));
1104 struct __ecereNameSpace__ecere__com__DataMember * subMemberStack[256];
1105 int subMemberStackPos = 0;
1108 if(_class->type == 5 || _class->type == 0)
1110 data = *data = __ecereNameSpace__ecere__com__eInstance_New(_class);
1111 if(_class->type == 0)
1112 ((struct __ecereNameSpace__ecere__com__Instance *)(char *)((struct __ecereNameSpace__ecere__com__Instance *)data))->_refCount++;
1114 else if(_class->type == 1)
1115 memset(data, 0, _class->structSize);
1116 memberName[0] = '\0';
1117 for(c = 0; string[c] && count < sizeof memberString; )
1119 unsigned int found = 0x0;
1120 struct __ecereNameSpace__ecere__com__DataMember * thisMember = (((void *)0));
1124 for(; (ch = string[c]) && count < sizeof memberString; c++)
1126 if(ch == '\"' && !escape)
1132 if(!escape && ch == '\\')
1138 memberString[count++] = ch;
1145 memberString[count++] = ch;
1151 memberString[count++] = ch;
1161 if(gotChar && !brackets)
1168 memberString[count++] = ch;
1179 memberString[count++] = ch;
1186 memberString[count++] = ch;
1190 memberString[count] = '\0';
1191 __ecereNameSpace__ecere__sys__TrimRSpaces(memberString, memberName);
1198 memberString[count++] = ch;
1202 memberString[count] = '\0';
1203 __ecereNameSpace__ecere__sys__TrimRSpaces(memberString, memberString);
1206 struct __ecereNameSpace__ecere__com__DataMember * _subMemberStack[256];
1207 int _subMemberStackPos = 0;
1209 thisMember = __ecereNameSpace__ecere__com__eClass_FindDataMemberAndOffset(_class, memberName, &memberOffset, _class->module, _subMemberStack, &_subMemberStackPos);
1211 thisMember = (struct __ecereNameSpace__ecere__com__DataMember *)__ecereNameSpace__ecere__com__eClass_FindProperty(_class, memberName, _class->module);
1214 if(thisMember->memberAccess == 1)
1216 curMember = thisMember;
1217 curClass = thisMember->_class;
1218 memcpy(subMemberStack, _subMemberStack, sizeof(int) * _subMemberStackPos);
1219 subMemberStackPos = _subMemberStackPos;
1226 __ecereNameSpace__ecere__com__eClass_FindNextMember(_class, &curClass, &curMember, subMemberStack, &subMemberStackPos);
1227 thisMember = curMember;
1231 __ecereNameSpace__ecere__com__eClass_FindDataMemberAndOffset(_class, thisMember->name, &memberOffset, _class->module, (((void *)0)), (((void *)0)));
1236 struct __ecereNameSpace__ecere__com__Class * memberType = thisMember->dataTypeClass;
1239 memberType = thisMember->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, thisMember->dataTypeString);
1241 memberType = thisMember->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "int");
1242 if(memberType->type == 1)
1246 if(!((unsigned int (*)(void *, void *, const char *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetDataFromString])(memberType, (unsigned char *)data + (((thisMember->_class->type == 0) ? thisMember->_class->offset : 0) + memberOffset), memberString))
1252 struct __ecereNameSpace__ecere__com__DataValue value =
1257 if(memberType->_vTbl[__ecereVMethodID_class_OnGetDataFromString] == _class->_vTbl[__ecereVMethodID_class_OnGetDataFromString])
1259 if(!__ecereNameSpace__ecere__com__OnGetDataFromString(memberType, &value, memberString))
1262 else if(!((unsigned int (*)(void *, void *, const char *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnGetDataFromString])(memberType, &value, memberString))
1264 if(thisMember && !thisMember->isProperty)
1266 if(_class->type == 2)
1268 struct __ecereNameSpace__ecere__com__BitMember * bitMember = (struct __ecereNameSpace__ecere__com__BitMember *)thisMember;
1270 *(unsigned int *)data = (unsigned int)(((*(unsigned int *)data & ~bitMember->mask)) | ((value.ui64 << bitMember->pos) & bitMember->mask));
1273 *(int *)((unsigned char *)data + (((thisMember->_class->type == 0) ? thisMember->_class->offset : 0) + thisMember->offset)) = value.i;
1275 else if(thisMember->isProperty && ((struct __ecereNameSpace__ecere__com__Property *)thisMember)->Set)
1277 if(memberType->type == 5 || memberType->type == 0 || memberType->type == 1)
1278 ((void (*)(void *, void *))(void *)((struct __ecereNameSpace__ecere__com__Property *)thisMember)->Set)(data, value.p);
1280 ((void (*)(void *, int))(void *)((struct __ecereNameSpace__ecere__com__Property *)thisMember)->Set)(data, value.i);
1287 memberName[0] = '\0';
1293 static void __ecereNameSpace__ecere__com__OnCopy(struct __ecereNameSpace__ecere__com__Class * _class, void ** data, void * newData)
1295 if(_class->type == 3 || _class->type == 2 || _class->type == 4)
1297 struct __ecereNameSpace__ecere__com__Class * dataType = __ecereNameSpace__ecere__com__eSystem_FindClass(_class->module, _class->dataTypeString);
1300 ((void (*)(void *, void *, void *))(void *)dataType->_vTbl[__ecereVMethodID_class_OnCopy])(dataType, data, newData);
1302 else if(_class->type != 1 && _class->type != 1000)
1307 memcpy(data, newData, _class->typeSize);
1309 memset(data, 0, _class->typeSize);
1312 static int __ecereNameSpace__ecere__com__DataMember_OnSerialize(struct __ecereNameSpace__ecere__com__DataMember * parentMember, void * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1314 struct __ecereNameSpace__ecere__com__DataMember * member;
1315 struct __ecereNameSpace__ecere__com__Instance * module = parentMember->_class->module;
1317 for(member = parentMember->members.first; member; member = member->next)
1319 if(member->type == 0)
1321 struct __ecereNameSpace__ecere__com__Class * memberType = member->dataTypeClass;
1324 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, member->dataTypeString);
1326 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "int");
1327 if(memberType->type == 1 || memberType->type == 0 || memberType->type == 5)
1329 ((void (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnSerialize])(memberType, (unsigned char *)data + member->offset, channel);
1333 struct __ecereNameSpace__ecere__com__DataValue value;
1335 value.i = *(int *)((unsigned char *)data + member->offset);
1336 ((void (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnSerialize])(memberType, &value, channel);
1341 __ecereNameSpace__ecere__com__DataMember_OnSerialize(member, (unsigned char *)data + member->offset, channel);
1347 static void __ecereNameSpace__ecere__com__OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, void * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1349 struct __ecereNameSpace__ecere__com__Instance * module = _class->module;
1351 if(_class->type == 3 || _class->type == 2 || _class->type == 4)
1353 struct __ecereNameSpace__ecere__com__Class * dataType = __ecereNameSpace__ecere__com__eSystem_FindClass(module, _class->dataTypeString);
1356 ((void (*)(void *, void *, void *))(void *)dataType->_vTbl[__ecereVMethodID_class_OnSerialize])(dataType, data, channel);
1358 else if(_class->type == 0 || _class->type == 5 || _class->type == 1)
1361 struct __ecereNameSpace__ecere__com__Class * lastClass = (((void *)0));
1363 while(lastClass != _class)
1365 struct __ecereNameSpace__ecere__com__DataMember * member;
1367 for(; _class && (!_class->base || _class->base->type != 1000) && _class != lastClass; _class = _class->base)
1370 for(member = _class->membersAndProperties.first; member; member = member->next)
1372 if(member->isProperty || member->type == 0)
1374 struct __ecereNameSpace__ecere__com__Class * memberType = member->dataTypeClass;
1377 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, member->dataTypeString);
1380 if(member->isProperty)
1385 if(!strcmp(memberType->name, "String") || memberType->type == 0 || memberType->type == 5)
1387 ((void (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnSerialize])(memberType, data ? (*(void **)((unsigned char *)data + member->_class->offset + member->offset)) : (((void *)0)), channel);
1390 ((void (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnSerialize])(memberType, data ? (((unsigned char *)data + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset))) : (((void *)0)), channel);
1399 __ecereNameSpace__ecere__com__DataMember_OnSerialize(member, data ? ((unsigned char *)data + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset)) : (((void *)0)), channel);
1407 static int __ecereNameSpace__ecere__com__DataMember_OnUnserialize(struct __ecereNameSpace__ecere__com__DataMember * parentMember, void * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1409 struct __ecereNameSpace__ecere__com__DataMember * member;
1410 struct __ecereNameSpace__ecere__com__Instance * module = parentMember->_class->module;
1412 for(member = parentMember->members.first; member; member = member->next)
1414 if(member->type == 0)
1416 struct __ecereNameSpace__ecere__com__Class * memberType = member->dataTypeClass;
1419 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, member->dataTypeString);
1421 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "int");
1422 if(memberType->type == 1 || memberType->type == 0 || memberType->type == 5)
1424 ((void (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnUnserialize])(memberType, (unsigned char *)data + member->offset, channel);
1428 struct __ecereNameSpace__ecere__com__DataValue value;
1430 ((void (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnUnserialize])(memberType, &value, channel);
1431 *(int *)((unsigned char *)data + member->offset) = value.i;
1436 __ecereNameSpace__ecere__com__DataMember_OnUnserialize(member, (unsigned char *)data + member->offset, channel);
1442 static void __ecereNameSpace__ecere__com__OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, void ** data, struct __ecereNameSpace__ecere__com__Instance * channel)
1444 struct __ecereNameSpace__ecere__com__Instance * module = _class->module;
1446 if(_class->type == 3 || _class->type == 2 || _class->type == 4)
1448 struct __ecereNameSpace__ecere__com__Class * dataType = __ecereNameSpace__ecere__com__eSystem_FindClass(module, _class->dataTypeString);
1451 ((void (*)(void *, void *, void *))(void *)dataType->_vTbl[__ecereVMethodID_class_OnUnserialize])(dataType, data, channel);
1453 else if(_class->type == 0 || _class->type == 5 || _class->type == 1)
1457 struct __ecereNameSpace__ecere__com__Class * lastClass = (((void *)0));
1459 if(_class->type == 0 || _class->type == 5)
1461 data = *data = __ecereNameSpace__ecere__com__eInstance_New(_class);
1462 if(_class->type == 0)
1463 ((struct __ecereNameSpace__ecere__com__Instance *)(char *)((struct __ecereNameSpace__ecere__com__Instance *)data))->_refCount++;
1465 else if(_class->type == 1)
1466 memset(data, 0, _class->structSize);
1467 while(lastClass != _class)
1469 struct __ecereNameSpace__ecere__com__DataMember * member;
1471 for(; _class && (!_class->base || _class->base->type != 1000) && _class != lastClass; _class = _class->base)
1474 for(member = _class->membersAndProperties.first; member; member = member->next)
1476 if(member->isProperty || member->type == 0)
1478 struct __ecereNameSpace__ecere__com__Class * memberType = member->dataTypeClass;
1481 memberType = member->dataTypeClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, member->dataTypeString);
1484 if(member->isProperty)
1488 ((void (*)(void *, void *, void *))(void *)memberType->_vTbl[__ecereVMethodID_class_OnUnserialize])(memberType, (unsigned char *)data + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset), channel);
1496 __ecereNameSpace__ecere__com__DataMember_OnUnserialize(member, (unsigned char *)data + (((member->_class->type == 0) ? member->_class->offset : 0) + member->offset), channel);
1504 static int __ecereNameSpace__ecere__com__Integer_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, int * data1, int * data2)
1508 if(!data1 && !data2)
1510 else if(data1 && !data2)
1512 else if(!data1 && data2)
1514 else if(*data1 > *data2)
1516 else if(*data1 < *data2)
1521 extern int sprintf(char * , char * , ...);
1523 char * __ecereNameSpace__ecere__com__Integer_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, int * data, char * string, void * fieldData, unsigned int * needClass)
1525 sprintf(string, "%d", *data);
1529 static unsigned int __ecereNameSpace__ecere__com__Integer_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, int * data, char * string)
1532 int result = strtol(string, &end, 0);
1542 static int __ecereNameSpace__ecere__com__UInteger_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, unsigned int * data1, unsigned int * data2)
1546 if(!data1 && !data2)
1548 else if(data1 && !data2)
1550 else if(!data1 && data2)
1552 else if(*data1 > *data2)
1554 else if(*data1 < *data2)
1559 static char * __ecereNameSpace__ecere__com__UInteger_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, unsigned int * data, char * string, void * fieldData, unsigned int * needClass)
1561 sprintf(string, "%u", *data);
1565 extern unsigned long strtoul(const char * nptr, char * * endptr, int base);
1567 static unsigned int __ecereNameSpace__ecere__com__UInteger_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, unsigned int * data, char * string)
1570 unsigned int result = strtoul(string, &end, 0);
1580 static int __ecereNameSpace__ecere__com__Byte_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, unsigned char * data1, unsigned char * data2)
1584 if(!data1 && !data2)
1586 else if(data1 && !data2)
1588 else if(!data1 && data2)
1590 else if(*data1 > *data2)
1592 else if(*data1 < *data2)
1597 static char * __ecereNameSpace__ecere__com__Byte_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, unsigned char * data, char * string, void * fieldData, unsigned int * needClass)
1599 sprintf(string, "%u", (int)*data);
1603 static char * __ecereNameSpace__ecere__com__Char_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, char * data, char * string, void * fieldData, unsigned int * needClass)
1605 if(needClass && *needClass)
1610 strcpy(string, "'\t'");
1612 strcpy(string, "'\n'");
1614 strcpy(string, "'\r'");
1616 strcpy(string, "'\a'");
1618 strcpy(string, "'\\'");
1619 else if(ch < (char)32 || ch >= (char)127)
1620 sprintf(string, "'\o'", ch);
1622 sprintf(string, "'%c'", ch);
1625 sprintf(string, "%c", *data);
1629 static unsigned int __ecereNameSpace__ecere__com__Byte_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, unsigned char * data, char * string)
1632 unsigned char result = (unsigned char)strtoul(string, &end, 0);
1642 static int __ecereNameSpace__ecere__com__Int64_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, long long * data1, long long * data2)
1646 if(!data1 && !data2)
1648 else if(data1 && !data2)
1650 else if(!data1 && data2)
1652 else if(*data1 > *data2)
1654 else if(*data1 < *data2)
1659 static int __ecereNameSpace__ecere__com__UInt64_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, uint64 * data1, uint64 * data2)
1663 if(!data1 && !data2)
1665 else if(data1 && !data2)
1667 else if(!data1 && data2)
1669 else if(*data1 > *data2)
1671 else if(*data1 < *data2)
1676 extern int __ecereNameSpace__ecere__com__GetRuntimePlatform(void);
1678 static char * __ecereNameSpace__ecere__com__Int64_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, long long * data, char * string, void * fieldData, unsigned int * needClass)
1680 sprintf(string, ((__ecereNameSpace__ecere__com__GetRuntimePlatform() == 1) ? "%I64d" : "%lld"), *data);
1684 static char * __ecereNameSpace__ecere__com__UInt64_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, uint64 * data, char * string, void * fieldData, unsigned int * needClass)
1686 sprintf(string, ((__ecereNameSpace__ecere__com__GetRuntimePlatform() == 1) ? "%I64u" : "%llu"), *data);
1690 extern long long __ecereNameSpace__ecere__com___strtoi64(char * string, char * * endString, int base);
1692 static unsigned int __ecereNameSpace__ecere__com__Int64_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, uint64 * data, char * string)
1695 uint64 result = __ecereNameSpace__ecere__com___strtoi64(string, &end, 0);
1705 extern uint64 __ecereNameSpace__ecere__com___strtoui64(char * string, char * * endString, int base);
1707 static unsigned int __ecereNameSpace__ecere__com__UInt64_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, uint64 * data, char * string)
1710 uint64 result = __ecereNameSpace__ecere__com___strtoui64(string, &end, 0);
1720 int __ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData;
1722 void __ecereNameSpace__ecere__com__Byte_OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, unsigned char * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1724 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, data, 1);
1727 int __ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData;
1729 void __ecereNameSpace__ecere__com__Byte_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, unsigned char * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1731 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, data, 1) != 1)
1732 *data = (unsigned char)0;
1735 void __ecereNameSpace__ecere__com__Int_OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, int * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1737 unsigned char bytes[4];
1739 (bytes)[0] = (unsigned char)(((*data) >> 24) & 0xFF);
1740 (bytes)[1] = (unsigned char)(((*data) >> 16) & 0xFF);
1741 (bytes)[2] = (unsigned char)(((*data) >> 8) & 0xFF);
1742 (bytes)[3] = (unsigned char)((*data) & 0xFF);
1744 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, bytes, 4);
1747 void __ecereNameSpace__ecere__com__Int_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, int * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1749 unsigned char bytes[4];
1751 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, bytes, 4) == 4)
1752 *data = (unsigned int)(((bytes)[0] << (unsigned char)24) | ((bytes)[1] << (unsigned char)16) | ((bytes)[2] << (unsigned char)8) | (bytes)[3]);
1757 void __ecereNameSpace__ecere__com__Int64_OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, long long * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1759 unsigned char bytes[8];
1761 (bytes)[0] = (unsigned char)(((*data) >> 56) & 0xFF);
1762 (bytes)[1] = (unsigned char)(((*data) >> 48) & 0xFF);
1763 (bytes)[2] = (unsigned char)(((*data) >> 40) & 0xFF);
1764 (bytes)[3] = (unsigned char)(((*data) >> 32) & 0xFF);
1765 (bytes)[4] = (unsigned char)(((*data) >> 24) & 0xFF);
1766 (bytes)[5] = (unsigned char)(((*data) >> 16) & 0xFF);
1767 (bytes)[6] = (unsigned char)(((*data) >> 8) & 0xFF);
1768 (bytes)[7] = (unsigned char)((*data) & 0xFF);
1770 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, bytes, 8);
1773 void __ecereNameSpace__ecere__com__Int64_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, long long * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1775 unsigned char bytes[8];
1777 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, bytes, 8) == 8)
1778 *data = (((uint64)(bytes)[0] << 56) | ((uint64)(bytes)[1] << 48) | ((uint64)(bytes)[2] << 40) | ((uint64)(bytes)[3] << 32) | ((uint64)(bytes)[4] << 24) | ((bytes)[5] << (unsigned char)16) | ((bytes)[6] << (unsigned char)8) | (bytes)[7]);
1783 void __ecereNameSpace__ecere__com__Word_OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, unsigned short * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1785 unsigned char bytes[2];
1787 (bytes)[0] = (unsigned char)(((*data) >> (unsigned short)8) & (unsigned short)0xFF);
1788 (bytes)[1] = (unsigned char)(((*data)) & (unsigned short)0xFF);
1790 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, bytes, 2);
1793 void __ecereNameSpace__ecere__com__Word_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, unsigned short * data, struct __ecereNameSpace__ecere__com__Instance * channel)
1795 unsigned char bytes[2];
1797 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, bytes, 2) == 2)
1798 *data = (unsigned short)(((bytes)[0] << (unsigned char)8) | (bytes)[1]);
1800 *data = (unsigned short)0;
1803 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, char * name, char * baseName, int size, int sizeClass, unsigned int (* )(void * ), void (* )(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess);
1805 extern char * __ecereNameSpace__ecere__sys__CopyString(char * string);
1807 extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, void * function, int declMode);
1809 static void __ecereNameSpace__ecere__com__RegisterClass_Integer(struct __ecereNameSpace__ecere__com__Instance * module)
1811 struct __ecereNameSpace__ecere__com__Class * integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "int", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1813 integerClass->type = 1000;
1814 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1815 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("int");
1816 integerClass->structSize = 0;
1817 integerClass->typeSize = sizeof(int);
1818 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnCompare, 1);
1819 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnGetString, 1);
1820 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnGetDataFromString, 1);
1821 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
1822 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
1823 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "int64", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1824 integerClass->type = 1000;
1825 integerClass->structSize = 0;
1826 integerClass->typeSize = sizeof(long long);
1827 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1828 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("int64");
1829 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnGetString, 1);
1830 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnCompare, 1);
1831 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnGetDataFromString, 1);
1832 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnSerialize, 1);
1833 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnUnserialize, 1);
1834 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "uint", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1835 integerClass->type = 1000;
1836 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1837 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("unsigned int");
1838 integerClass->structSize = 0;
1839 integerClass->typeSize = sizeof(unsigned int);
1840 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnCompare, 1);
1841 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetString, 1);
1842 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetDataFromString, 1);
1843 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
1844 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
1845 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "unsigned int", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1846 integerClass->type = 1000;
1847 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1848 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("unsigned int");
1849 integerClass->structSize = 0;
1850 integerClass->typeSize = sizeof(unsigned int);
1851 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnCompare, 1);
1852 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetString, 1);
1853 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetDataFromString, 1);
1854 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
1855 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
1856 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "uint16", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1857 integerClass->type = 1000;
1858 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1859 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("unsigned short");
1860 integerClass->structSize = 0;
1861 integerClass->typeSize = sizeof(unsigned short);
1862 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Word_OnSerialize, 1);
1863 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Word_OnUnserialize, 1);
1864 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "short", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1865 integerClass->type = 1000;
1866 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1867 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("short");
1868 integerClass->structSize = 0;
1869 integerClass->typeSize = sizeof(short);
1870 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Word_OnSerialize, 1);
1871 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Word_OnUnserialize, 1);
1872 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "uint32", "uint", 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1873 integerClass->type = 1000;
1874 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1875 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("unsigned int");
1876 integerClass->structSize = 0;
1877 integerClass->typeSize = sizeof(unsigned int);
1878 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "uint64", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1879 integerClass->type = 1000;
1880 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1881 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("uint64");
1882 integerClass->structSize = 0;
1883 integerClass->typeSize = sizeof(uint64);
1884 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnGetString, 1);
1885 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnGetDataFromString, 1);
1886 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnSerialize, 1);
1887 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnUnserialize, 1);
1888 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnCompare, 1);
1889 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "byte", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1890 integerClass->type = 1000;
1891 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1892 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("unsigned char");
1893 integerClass->structSize = 0;
1894 integerClass->typeSize = sizeof(unsigned char);
1895 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnCompare, 1);
1896 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnGetString, 1);
1897 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnGetDataFromString, 1);
1898 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnSerialize, 1);
1899 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnUnserialize, 1);
1900 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "char", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1901 integerClass->type = 1000;
1902 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1903 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("char");
1904 integerClass->structSize = 0;
1905 integerClass->typeSize = sizeof(char);
1906 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnCompare, 1);
1907 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Char_OnGetString, 1);
1908 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnGetDataFromString, 1);
1909 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnSerialize, 1);
1910 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Byte_OnUnserialize, 1);
1911 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "intsize", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1912 integerClass->type = 1000;
1913 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1914 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("ssize_t");
1915 integerClass->structSize = 0;
1916 integerClass->typeSize = sizeof(ssize_t);
1917 if(sizeof(size_t) == 8)
1919 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnGetString, 1);
1920 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnGetDataFromString, 1);
1921 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnSerialize, 1);
1922 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnUnserialize, 1);
1923 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnCompare, 1);
1927 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnCompare, 1);
1928 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnGetString, 1);
1929 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnGetDataFromString, 1);
1930 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
1931 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
1933 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "uintsize", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1934 integerClass->type = 1000;
1935 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1936 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("size_t");
1937 integerClass->structSize = 0;
1938 integerClass->typeSize = sizeof(size_t);
1939 if(sizeof(size_t) == 8)
1941 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnGetString, 1);
1942 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnGetDataFromString, 1);
1943 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnSerialize, 1);
1944 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnUnserialize, 1);
1945 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnCompare, 1);
1949 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnCompare, 1);
1950 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetString, 1);
1951 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetDataFromString, 1);
1952 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
1953 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
1955 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "uintptr", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1956 integerClass->type = 1000;
1957 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1958 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("uintptr_t");
1959 integerClass->structSize = 0;
1960 integerClass->typeSize = sizeof(uintptr_t);
1961 if(sizeof(uintptr_t) == 8)
1963 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnGetString, 1);
1964 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnGetDataFromString, 1);
1965 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnSerialize, 1);
1966 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnUnserialize, 1);
1967 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__UInt64_OnCompare, 1);
1971 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnCompare, 1);
1972 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetString, 1);
1973 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__UInteger_OnGetDataFromString, 1);
1974 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
1975 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
1977 integerClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "intptr", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
1978 integerClass->type = 1000;
1979 (__ecereNameSpace__ecere__com__eSystem_Delete(integerClass->dataTypeString), integerClass->dataTypeString = 0);
1980 integerClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("intptr_t");
1981 integerClass->structSize = 0;
1982 integerClass->typeSize = sizeof(intptr_t);
1983 if(sizeof(intptr_t) == 8)
1985 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnGetString, 1);
1986 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnGetDataFromString, 1);
1987 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnSerialize, 1);
1988 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnUnserialize, 1);
1989 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Int64_OnCompare, 1);
1993 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnCompare, 1);
1994 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnGetString, 1);
1995 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Integer_OnGetDataFromString, 1);
1996 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
1997 __ecereNameSpace__ecere__com__eClass_AddMethod(integerClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
2001 static int __ecereNameSpace__ecere__com__Float_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, float * data1, float * data2)
2005 if(!data1 && !data2)
2007 else if(data1 && !data2)
2009 else if(!data1 && data2)
2011 else if(*data1 > *data2)
2013 else if(*data1 < *data2)
2018 static char * __ecereNameSpace__ecere__com__Float_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, float * data, char * string, void * fieldData, unsigned int * needClass)
2022 int numDigits = 7, num = 1;
2025 while(numDigits && (float)num < *data)
2026 numDigits--, num *= 10;
2027 sprintf(format, "%%.%df", numDigits);
2028 sprintf(string, format, *data);
2029 c = strlen(string) - 1;
2032 if(string[c] != '0')
2033 last = ((last > c) ? last : c);
2034 if(string[c] == '.')
2037 string[c] = (char)0;
2039 string[last + 1] = (char)0;
2046 extern double strtod(char * , char * * );
2048 static unsigned int __ecereNameSpace__ecere__com__Float_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, float * data, char * string)
2051 float result = (float)strtod(string, &end);
2061 static void __ecereNameSpace__ecere__com__Float_OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, float * data, struct __ecereNameSpace__ecere__com__Instance * channel)
2063 unsigned char bytes[4];
2065 (bytes)[0] = (unsigned char)(((*(unsigned int *)data) >> 24) & 0xFF);
2066 (bytes)[1] = (unsigned char)(((*(unsigned int *)data) >> 16) & 0xFF);
2067 (bytes)[2] = (unsigned char)(((*(unsigned int *)data) >> 8) & 0xFF);
2068 (bytes)[3] = (unsigned char)((*(unsigned int *)data) & 0xFF);
2070 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, bytes, 4);
2073 static void __ecereNameSpace__ecere__com__Float_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, float * data, struct __ecereNameSpace__ecere__com__Instance * channel)
2075 unsigned char bytes[4];
2077 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, bytes, 4) == 4)
2078 *(unsigned int *)data = (unsigned int)(((bytes)[0] << (unsigned char)24) | ((bytes)[1] << (unsigned char)16) | ((bytes)[2] << (unsigned char)8) | (bytes)[3]);
2083 static void __ecereNameSpace__ecere__com__RegisterClass_Float(struct __ecereNameSpace__ecere__com__Instance * module)
2085 struct __ecereNameSpace__ecere__com__Class * floatClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "float", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
2087 floatClass->type = 1000;
2088 (__ecereNameSpace__ecere__com__eSystem_Delete(floatClass->dataTypeString), floatClass->dataTypeString = 0);
2089 floatClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("float");
2090 floatClass->structSize = 0;
2091 floatClass->typeSize = sizeof(float);
2092 __ecereNameSpace__ecere__com__eClass_AddMethod(floatClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Float_OnCompare, 1);
2093 __ecereNameSpace__ecere__com__eClass_AddMethod(floatClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Float_OnGetString, 1);
2094 __ecereNameSpace__ecere__com__eClass_AddMethod(floatClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Float_OnGetDataFromString, 1);
2095 __ecereNameSpace__ecere__com__eClass_AddMethod(floatClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Float_OnSerialize, 1);
2096 __ecereNameSpace__ecere__com__eClass_AddMethod(floatClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Float_OnUnserialize, 1);
2099 static int __ecereNameSpace__ecere__com__Double_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, double * data1, double * data2)
2103 if(!data1 && !data2)
2105 else if(data1 && !data2)
2107 else if(!data1 && data2)
2109 else if(*data1 > *data2)
2111 else if(*data1 < *data2)
2116 static char * __ecereNameSpace__ecere__com__Double_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, double * data, char * string, void * fieldData, unsigned int * needClass)
2121 if(runtimePlatform == 1)
2122 sprintf(string, "%.15g", *data);
2124 sprintf(string, "%.13lf", *data);
2125 c = strlen(string) - 1;
2128 if(string[c] != '0')
2129 last = ((last > c) ? last : c);
2130 if(string[c] == '.')
2133 string[c] = (char)0;
2135 string[last + 1] = (char)0;
2142 static unsigned int __ecereNameSpace__ecere__com__Double_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, double * data, char * string)
2147 result = strtod(string, &end);
2156 static void __ecereNameSpace__ecere__com__Double_OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, double * data, struct __ecereNameSpace__ecere__com__Instance * channel)
2158 unsigned char bytes[8];
2160 (bytes)[0] = (unsigned char)(((*(uint64 *)data) >> 56) & 0xFF);
2161 (bytes)[1] = (unsigned char)(((*(uint64 *)data) >> 48) & 0xFF);
2162 (bytes)[2] = (unsigned char)(((*(uint64 *)data) >> 40) & 0xFF);
2163 (bytes)[3] = (unsigned char)(((*(uint64 *)data) >> 32) & 0xFF);
2164 (bytes)[4] = (unsigned char)(((*(uint64 *)data) >> 24) & 0xFF);
2165 (bytes)[5] = (unsigned char)(((*(uint64 *)data) >> 16) & 0xFF);
2166 (bytes)[6] = (unsigned char)(((*(uint64 *)data) >> 8) & 0xFF);
2167 (bytes)[7] = (unsigned char)((*(uint64 *)data) & 0xFF);
2169 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, bytes, 8);
2172 static void __ecereNameSpace__ecere__com__Double_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, double * data, struct __ecereNameSpace__ecere__com__Instance * channel)
2174 unsigned char bytes[8];
2176 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, bytes, 8) == 8)
2177 *(uint64 *)data = (((uint64)(bytes)[0] << 56) | ((uint64)(bytes)[1] << 48) | ((uint64)(bytes)[2] << 40) | ((uint64)(bytes)[3] << 32) | ((uint64)(bytes)[4] << 24) | ((bytes)[5] << (unsigned char)16) | ((bytes)[6] << (unsigned char)8) | (bytes)[7]);
2182 static void __ecereNameSpace__ecere__com__RegisterClass_Double(struct __ecereNameSpace__ecere__com__Instance * module)
2184 struct __ecereNameSpace__ecere__com__Class * doubleClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "double", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
2186 doubleClass->type = 1000;
2187 (__ecereNameSpace__ecere__com__eSystem_Delete(doubleClass->dataTypeString), doubleClass->dataTypeString = 0);
2188 doubleClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("double");
2189 doubleClass->structSize = 0;
2190 doubleClass->typeSize = sizeof(double);
2191 __ecereNameSpace__ecere__com__eClass_AddMethod(doubleClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__Double_OnCompare, 1);
2192 __ecereNameSpace__ecere__com__eClass_AddMethod(doubleClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__Double_OnGetString, 1);
2193 __ecereNameSpace__ecere__com__eClass_AddMethod(doubleClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__Double_OnGetDataFromString, 1);
2194 __ecereNameSpace__ecere__com__eClass_AddMethod(doubleClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Double_OnSerialize, 1);
2195 __ecereNameSpace__ecere__com__eClass_AddMethod(doubleClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Double_OnUnserialize, 1);
2198 struct __ecereNameSpace__ecere__com__StaticString
2201 } __attribute__ ((gcc_struct));
2203 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__StaticString;
2205 void __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnSerialize(struct __ecereNameSpace__ecere__com__Class * class, struct __ecereNameSpace__ecere__com__StaticString * this, struct __ecereNameSpace__ecere__com__Instance * channel)
2207 int len = this ? strlen(this->string) : 0;
2209 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, this ? this->string : "", len + 1);
2212 void __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * class, struct __ecereNameSpace__ecere__com__StaticString * this, struct __ecereNameSpace__ecere__com__Instance * channel)
2219 for(c = 0; ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, &(*(this)).string[c], 1) && (*(this)).string[c]; c++)
2221 (*(this)).string[c++] = '\0';
2225 int __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnCompare(struct __ecereNameSpace__ecere__com__Class * class, struct __ecereNameSpace__ecere__com__StaticString * this, struct __ecereNameSpace__ecere__com__StaticString * string2)
2230 result = (strcasecmp)(this->string, string2->string);
2231 else if(!this && string2)
2233 else if(this && !string2)
2238 char * __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnGetString(struct __ecereNameSpace__ecere__com__Class * class, struct __ecereNameSpace__ecere__com__StaticString * this, char * tempString, void * fieldData, unsigned int * needClass)
2240 return (char *)(this ? this->string : (((void *)0)));
2243 void __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnFree(struct __ecereNameSpace__ecere__com__Class * class, struct __ecereNameSpace__ecere__com__StaticString * this)
2247 static void __ecereNameSpace__ecere__com__String_OnCopy(struct __ecereNameSpace__ecere__com__Class * _class, char ** data, char * newData)
2251 int len = strlen(newData);
2255 *data = __ecereNameSpace__ecere__com__eSystem_New(len + 1);
2256 memcpy(*data, newData, len + 1);
2259 *data = (((void *)0));
2262 *data = (((void *)0));
2265 static unsigned int __ecereNameSpace__ecere__com__String_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * _class, char ** data, char * newData)
2269 int len = strlen(newData);
2273 *data = __ecereNameSpace__ecere__com__eSystem_New(len + 1);
2274 memcpy(*data, newData, len + 1);
2277 *data = (((void *)0));
2282 int __ecereNameSpace__ecere__com__String_OnCompare(struct __ecereNameSpace__ecere__com__Class * _class, char * string1, char * string2)
2286 if(string1 && string2)
2287 result = (strcasecmp)(string1, string2);
2288 else if(!string1 && string2)
2290 else if(string1 && !string2)
2295 static char * __ecereNameSpace__ecere__com__String_OnGetString(struct __ecereNameSpace__ecere__com__Class * _class, char * string, char * tempString, void * fieldData, unsigned int * needClass)
2300 static void __ecereNameSpace__ecere__com__String_OnFree(struct __ecereNameSpace__ecere__com__Class * _class, char * string)
2304 __ecereNameSpace__ecere__com__eSystem_Delete(string);
2308 static void __ecereNameSpace__ecere__com__String_OnSerialize(struct __ecereNameSpace__ecere__com__Class * _class, char * string, struct __ecereNameSpace__ecere__com__Instance * channel)
2310 int len = string ? strlen(string) : 0;
2312 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_WriteData])(channel, string ? string : "", len + 1);
2315 extern unsigned int __ecereNameSpace__ecere__sys__UTF8Validate(char * source);
2317 extern int __ecereNameSpace__ecere__sys__ISO8859_1toUTF8(char * source, char * dest, int max);
2319 static void __ecereNameSpace__ecere__com__String_OnUnserialize(struct __ecereNameSpace__ecere__com__Class * _class, char ** string, struct __ecereNameSpace__ecere__com__Instance * channel)
2324 unsigned int size = 64;
2326 *string = __ecereNameSpace__ecere__com__eSystem_New(sizeof(char) * (size));
2327 for(c = 0; ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, unsigned char * data, unsigned int numBytes))channel->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__IOChannel_ReadData])(channel, &(*string)[c], 1) && (*string)[c]; c++)
2332 *string = __ecereNameSpace__ecere__com__eSystem_Renew(*string, sizeof(char) * (size));
2335 (*string)[c++] = '\0';
2336 if(!__ecereNameSpace__ecere__sys__UTF8Validate(*string))
2338 char * newString = __ecereNameSpace__ecere__com__eSystem_New(sizeof(char) * (c * 2));
2340 __ecereNameSpace__ecere__sys__ISO8859_1toUTF8(*string, newString, c * 2);
2341 (__ecereNameSpace__ecere__com__eSystem_Delete(*string), *string = 0);
2342 *string = __ecereNameSpace__ecere__com__eSystem_Renew(newString, sizeof(char) * (strlen(newString) + 1));
2345 *string = __ecereNameSpace__ecere__com__eSystem_Renew(*string, sizeof(char) * (c));
2349 extern struct __ecereNameSpace__ecere__com__Property * __ecereNameSpace__ecere__com__eClass_AddProperty(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * dataType, void * setStmt, void * getStmt, int declMode);
2351 static void __ecereNameSpace__ecere__com__RegisterClass_String(struct __ecereNameSpace__ecere__com__Instance * module)
2353 struct __ecereNameSpace__ecere__com__Class * stringClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "char *", (((void *)0)), 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
2355 (__ecereNameSpace__ecere__com__eSystem_Delete(stringClass->dataTypeString), stringClass->dataTypeString = 0);
2356 stringClass->dataTypeString = __ecereNameSpace__ecere__sys__CopyString("char *");
2357 stringClass->structSize = 0;
2358 __ecereNameSpace__ecere__com__eClass_AddMethod(stringClass, "OnCompare", (((void *)0)), __ecereNameSpace__ecere__com__String_OnCompare, 1);
2359 __ecereNameSpace__ecere__com__eClass_AddMethod(stringClass, "OnCopy", (((void *)0)), __ecereNameSpace__ecere__com__String_OnCopy, 1);
2360 __ecereNameSpace__ecere__com__eClass_AddMethod(stringClass, "OnFree", (((void *)0)), __ecereNameSpace__ecere__com__String_OnFree, 1);
2361 __ecereNameSpace__ecere__com__eClass_AddMethod(stringClass, "OnGetString", (((void *)0)), __ecereNameSpace__ecere__com__String_OnGetString, 1);
2362 __ecereNameSpace__ecere__com__eClass_AddMethod(stringClass, "OnGetDataFromString", (((void *)0)), __ecereNameSpace__ecere__com__String_OnGetDataFromString, 1);
2363 __ecereNameSpace__ecere__com__eClass_AddMethod(stringClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__String_OnSerialize, 1);
2364 __ecereNameSpace__ecere__com__eClass_AddMethod(stringClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__String_OnUnserialize, 1);
2365 stringClass = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "String", "char *", 0, 0, (((void *)0)), (((void *)0)), module, 4, 1);
2366 stringClass->structSize = 0;
2367 __ecereNameSpace__ecere__com__eClass_AddProperty(stringClass, (((void *)0)), "char *", (((void *)0)), (((void *)0)), 1);
2370 extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, void * function, int declMode);
2372 void __ecereNameSpace__ecere__com__InitializeDataTypes1(struct __ecereNameSpace__ecere__com__Instance * module)
2374 struct __ecereNameSpace__ecere__com__Class * baseClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "class");
2376 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnDisplay", "void typed_object::OnDisplay(Surface surface, int x, int y, int width, void * fieldData, Alignment alignment, DataDisplayFlags displayFlags)", (((void *)0)), 1);
2377 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnCompare", "int typed_object::OnCompare(any_object object)", __ecereNameSpace__ecere__com__OnCompare, 1);
2378 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnCopy", "void typed_object&::OnCopy(any_object newData)", __ecereNameSpace__ecere__com__OnCopy, 1);
2379 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnFree", "void typed_object::OnFree(void)", __ecereNameSpace__ecere__com__OnFree, 1);
2380 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnGetString", "char * typed_object::OnGetString(char * tempString, void * fieldData, bool * needClass)", __ecereNameSpace__ecere__com__OnGetString, 1);
2381 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnGetDataFromString", "bool typed_object&::OnGetDataFromString(char * string)", __ecereNameSpace__ecere__com__OnGetDataFromString, 1);
2382 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnEdit", "Window typed_object::OnEdit(DataBox dataBox, DataBox obsolete, int x, int y, int w, int h, void * userData)", (((void *)0)), 1);
2383 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnSerialize", "void typed_object::OnSerialize(IOChannel channel)", __ecereNameSpace__ecere__com__OnSerialize, 1);
2384 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnUnserialize", "void typed_object&::OnUnserialize(IOChannel channel)", __ecereNameSpace__ecere__com__OnUnserialize, 1);
2385 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(baseClass, "OnSaveEdit", "bool typed_object&::OnSaveEdit(Window window, void * object)", (((void *)0)), 1);
2388 void __ecereNameSpace__ecere__com__InitializeDataTypes(struct __ecereNameSpace__ecere__com__Instance * module)
2390 struct __ecereNameSpace__ecere__com__Class * enumClass = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "enum");
2392 __ecereNameSpace__ecere__com__eClass_AddMethod(enumClass, "OnSerialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnSerialize, 1);
2393 __ecereNameSpace__ecere__com__eClass_AddMethod(enumClass, "OnUnserialize", (((void *)0)), __ecereNameSpace__ecere__com__Int_OnUnserialize, 1);
2394 __ecereNameSpace__ecere__com__RegisterClass_Integer(module);
2395 __ecereNameSpace__ecere__com__RegisterClass_Float(module);
2396 __ecereNameSpace__ecere__com__RegisterClass_Double(module);
2397 __ecereNameSpace__ecere__com__RegisterClass_String(module);
2400 int __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(char * buffer, int maxLen, struct __ecereNameSpace__ecere__com__Class * class, void * object, va_list args)
2403 char * result = ((char * (*)(struct __ecereNameSpace__ecere__com__Class *, void *, char * tempString, void * fieldData, unsigned int * needClass))class->_vTbl[__ecereVMethodID_class_OnGetString])(class, object, buffer, (((void *)0)), (((void *)0)));
2407 len = strlen(result);
2410 if(result != buffer)
2411 memcpy(buffer, result, len);
2415 struct __ecereNameSpace__ecere__com__Class * _class = (((void *)0));
2416 void * data = (((void *)0));
2418 _class = __builtin_va_arg(args, void *);
2421 data = __builtin_va_arg(args, void *);
2424 result = ((char * (*)(void *, void *, char *, void *, unsigned int *))(void *)_class->_vTbl[__ecereVMethodID_class_OnGetString])(_class, data, buffer + len, (((void *)0)), (((void *)0)));
2427 int newLen = strlen(result);
2429 if(len + newLen >= maxLen)
2430 newLen = maxLen - 1 - len;
2431 if(result != buffer + len)
2432 memcpy(buffer + len, result, newLen);
2437 buffer[len] = (char)0;
2441 int __ecereNameSpace__ecere__com__PrintBuf(char * buffer, int maxLen, struct __ecereNameSpace__ecere__com__Class * class, void * object, ...)
2446 __builtin_va_start(args, object);
2447 len = __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, maxLen, class, object, args);
2448 __builtin_va_end(args);
2452 int __ecereNameSpace__ecere__com__PrintLnBuf(char * buffer, int maxLen, struct __ecereNameSpace__ecere__com__Class * class, void * object, ...)
2457 __builtin_va_start(args, object);
2458 len = __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, maxLen - 1, class, object, args);
2459 buffer[len++] = '\n';
2461 __builtin_va_end(args);
2465 char * __ecereNameSpace__ecere__com__PrintString(struct __ecereNameSpace__ecere__com__Class * class, void * object, ...)
2472 __builtin_va_start(args, object);
2473 len = __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, sizeof buffer, class, object, args);
2474 string = __ecereNameSpace__ecere__com__eSystem_New(sizeof(char) * (len + 1));
2475 memcpy(string, buffer, len + 1);
2476 __builtin_va_end(args);
2480 char * __ecereNameSpace__ecere__com__PrintLnString(struct __ecereNameSpace__ecere__com__Class * class, void * object, ...)
2487 __builtin_va_start(args, object);
2488 len = __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, sizeof buffer, class, object, args);
2489 string = __ecereNameSpace__ecere__com__eSystem_New(sizeof(char) * (len + 2));
2490 memcpy(string, buffer, len);
2491 string[len++] = '\n';
2493 __builtin_va_end(args);
2497 extern int puts(char * );
2499 void __ecereNameSpace__ecere__com__PrintLn(struct __ecereNameSpace__ecere__com__Class * class, void * object, ...)
2504 __builtin_va_start(args, object);
2505 __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, sizeof buffer, class, object, args);
2506 __builtin_va_end(args);
2510 extern int fputs(char * , void * stream);
2512 void __ecereNameSpace__ecere__com__Print(struct __ecereNameSpace__ecere__com__Class * class, void * object, ...)
2517 __builtin_va_start(args, object);
2518 __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, sizeof buffer, class, object, args);
2519 __builtin_va_end(args);
2520 fputs(buffer, eC_stdout());
2523 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DefinedExpression;
2525 struct __ecereNameSpace__ecere__com__DefinedExpression;
2527 extern struct __ecereNameSpace__ecere__com__DefinedExpression * __ecereNameSpace__ecere__com__eSystem_RegisterDefine(char * name, char * value, struct __ecereNameSpace__ecere__com__Instance * module, int declMode);
2529 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
2531 struct __ecereNameSpace__ecere__com__NameSpace
2534 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
2535 struct __ecereNameSpace__ecere__com__NameSpace * left;
2536 struct __ecereNameSpace__ecere__com__NameSpace * right;
2538 struct __ecereNameSpace__ecere__com__NameSpace * parent;
2539 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
2540 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
2541 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
2542 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
2543 } __attribute__ ((gcc_struct));
2545 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
2547 struct __ecereNameSpace__ecere__com__Module
2549 struct __ecereNameSpace__ecere__com__Instance * application;
2550 struct __ecereNameSpace__ecere__sys__OldList classes;
2551 struct __ecereNameSpace__ecere__sys__OldList defines;
2552 struct __ecereNameSpace__ecere__sys__OldList functions;
2553 struct __ecereNameSpace__ecere__sys__OldList modules;
2554 struct __ecereNameSpace__ecere__com__Instance * prev;
2555 struct __ecereNameSpace__ecere__com__Instance * next;
2561 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
2562 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
2563 } __attribute__ ((gcc_struct));
2565 extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
2567 extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, unsigned int size, unsigned int alignment, int declMode);
2569 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__GlobalFunction;
2571 struct __ecereNameSpace__ecere__com__GlobalFunction;
2573 extern struct __ecereNameSpace__ecere__com__GlobalFunction * __ecereNameSpace__ecere__com__eSystem_RegisterFunction(char * name, char * type, void * func, struct __ecereNameSpace__ecere__com__Instance * module, int declMode);
2575 void __ecereRegisterModule_dataTypes(struct __ecereNameSpace__ecere__com__Instance * module)
2577 struct __ecereNameSpace__ecere__com__Class * class;
2579 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXBYTE", "0xff", module, 4);
2580 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXWORD", "0xffff", module, 4);
2581 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MININT", "((int)0x80000000)", module, 4);
2582 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXINT", "((int)0x7fffffff)", module, 4);
2583 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MININT64", "((long long)0x8000000000000000LL)", module, 4);
2584 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXINT64", "((long long)0x7fffffffffffffffLL)", module, 4);
2585 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXDWORD", "0xffffffff", module, 4);
2586 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXQWORD", "0xffffffffffffffffLL", module, 4);
2587 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MINFLOAT", "((float)1.17549435082228750e-38)", module, 4);
2588 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXFLOAT", "((float)3.40282346638528860e+38)", module, 4);
2589 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MINDOUBLE", "((double)2.2250738585072014e-308)", module, 4);
2590 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::MAXDOUBLE", "((double)1.7976931348623158e+308)", module, 4);
2591 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::FORMAT64HEXLL", "(GetRuntimePlatform() == win32) ? \"0x%I64XLL\" : \"0x%llXLL\"", module, 4);
2592 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::FORMAT64HEX", "(GetRuntimePlatform() == win32) ? \"0x%I64X\" : \"0x%llX\"", module, 4);
2593 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::FORMAT64DLL", "(GetRuntimePlatform() == win32) ? \"%I64dLL\" : \"%lldLL\"", module, 4);
2594 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::FORMAT64D", "(GetRuntimePlatform() == win32) ? \"%I64d\" : \"%lld\"", module, 4);
2595 __ecereNameSpace__ecere__com__eSystem_RegisterDefine("ecere::com::FORMAT64U", "(GetRuntimePlatform() == win32) ? \"%I64u\" : \"%llu\"", module, 4);
2596 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "ecere::com::IOChannel", 0, 0, 0, 0, 0, module, 4, 1);
2597 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
2598 __ecereClass___ecereNameSpace__ecere__com__IOChannel = class;
2599 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "WriteData", "unsigned int WriteData(byte * data, unsigned int numBytes)", 0, 1);
2600 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "ReadData", "unsigned int ReadData(byte * data, unsigned int numBytes)", 0, 1);
2601 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Get", "void Get(typed_object * data)", __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Get, 1);
2602 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Put", "void Put(typed_object data)", __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Put, 1);
2603 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Serialize", "void Serialize(typed_object data)", __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Serialize, 1);
2604 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Unserialize", "void Unserialize(typed_object * data)", __ecereMethod___ecereNameSpace__ecere__com__IOChannel_Unserialize, 1);
2605 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "ecere::com::SerialBuffer", "ecere::com::IOChannel", sizeof(struct __ecereNameSpace__ecere__com__SerialBuffer), 0, 0, __ecereDestructor___ecereNameSpace__ecere__com__SerialBuffer, module, 4, 1);
2606 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
2607 __ecereClass___ecereNameSpace__ecere__com__SerialBuffer = class;
2608 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "WriteData", 0, __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_WriteData, 1);
2609 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "ReadData", 0, __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_ReadData, 1);
2610 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Free", "void Free()", __ecereMethod___ecereNameSpace__ecere__com__SerialBuffer_Free, 1);
2611 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "_buffer", "byte *", arch_PointerSize, arch_PointerSize, 1);
2612 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "count", "uint", 4, 4, 1);
2613 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "_size", "uint", 4, 4, 1);
2614 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "pos", "uint", 4, 4, 1);
2615 __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_buffer = __ecereNameSpace__ecere__com__eClass_AddProperty(class, "buffer", "byte *", __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Set_buffer, __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Get_buffer, 1);
2616 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application)
2617 __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_buffer = __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_buffer, __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_buffer = (void *)0;
2618 __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_size = __ecereNameSpace__ecere__com__eClass_AddProperty(class, "size", "unsigned int", __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Set_size, __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_Get_size, 1);
2619 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application)
2620 __ecereProp___ecereNameSpace__ecere__com__SerialBuffer_size = __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_size, __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_size = (void *)0;
2621 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Enum_OnGetString", "char * ecere::com::Enum_OnGetString(ecere::com::Class _class, int * data, char * tempString, void * fieldData, bool * needClass)", __ecereNameSpace__ecere__com__Enum_OnGetString, module, 4);
2622 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Integer_OnGetString", "char * ecere::com::Integer_OnGetString(ecere::com::Class _class, int * data, char * string, void * fieldData, bool * needClass)", __ecereNameSpace__ecere__com__Integer_OnGetString, module, 4);
2623 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Byte_OnSerialize", "void ecere::com::Byte_OnSerialize(ecere::com::Class _class, byte * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Byte_OnSerialize, module, 4);
2624 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Byte_OnUnserialize", "void ecere::com::Byte_OnUnserialize(ecere::com::Class _class, byte * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Byte_OnUnserialize, module, 4);
2625 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Int_OnSerialize", "void ecere::com::Int_OnSerialize(ecere::com::Class _class, int * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Int_OnSerialize, module, 4);
2626 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Int_OnUnserialize", "void ecere::com::Int_OnUnserialize(ecere::com::Class _class, int * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Int_OnUnserialize, module, 4);
2627 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Int64_OnSerialize", "void ecere::com::Int64_OnSerialize(ecere::com::Class _class, int64 * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Int64_OnSerialize, module, 4);
2628 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Int64_OnUnserialize", "void ecere::com::Int64_OnUnserialize(ecere::com::Class _class, int64 * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Int64_OnUnserialize, module, 4);
2629 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Word_OnSerialize", "void ecere::com::Word_OnSerialize(ecere::com::Class _class, uint16 * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Word_OnSerialize, module, 4);
2630 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Word_OnUnserialize", "void ecere::com::Word_OnUnserialize(ecere::com::Class _class, uint16 * data, ecere::com::IOChannel channel)", __ecereNameSpace__ecere__com__Word_OnUnserialize, module, 4);
2631 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(1, "ecere::com::StaticString", 0, sizeof(struct __ecereNameSpace__ecere__com__StaticString), 0, 0, 0, module, 4, 1);
2632 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
2633 __ecereClass___ecereNameSpace__ecere__com__StaticString = class;
2634 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnCompare", 0, __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnCompare, 1);
2635 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnFree", 0, __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnFree, 1);
2636 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnGetString", 0, __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnGetString, 1);
2637 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnSerialize", 0, __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnSerialize, 1);
2638 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnUnserialize", 0, __ecereMethod___ecereNameSpace__ecere__com__StaticString_OnUnserialize, 1);
2639 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "string", "char[1]", 1, 1, 1);
2640 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::String_OnCompare", "int ecere::com::String_OnCompare(ecere::com::Class _class, char * string1, char * string2)", __ecereNameSpace__ecere__com__String_OnCompare, module, 4);
2641 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::InitializeDataTypes1", "void ecere::com::InitializeDataTypes1(ecere::com::Module module)", __ecereNameSpace__ecere__com__InitializeDataTypes1, module, 4);
2642 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::InitializeDataTypes", "void ecere::com::InitializeDataTypes(ecere::com::Module module)", __ecereNameSpace__ecere__com__InitializeDataTypes, module, 4);
2643 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::PrintStdArgsToBuffer", "int ecere::com::PrintStdArgsToBuffer(char * buffer, int maxLen, typed_object object, __builtin_va_list args)", __ecereNameSpace__ecere__com__PrintStdArgsToBuffer, module, 4);
2644 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::PrintBuf", "int ecere::com::PrintBuf(char * buffer, int maxLen, typed_object object, ...)", __ecereNameSpace__ecere__com__PrintBuf, module, 4);
2645 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::PrintLnBuf", "int ecere::com::PrintLnBuf(char * buffer, int maxLen, typed_object object, ...)", __ecereNameSpace__ecere__com__PrintLnBuf, module, 4);
2646 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::PrintString", "char * ecere::com::PrintString(typed_object object, ...)", __ecereNameSpace__ecere__com__PrintString, module, 4);
2647 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::PrintLnString", "char * ecere::com::PrintLnString(typed_object object, ...)", __ecereNameSpace__ecere__com__PrintLnString, module, 4);
2648 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::PrintLn", "void ecere::com::PrintLn(typed_object object, ...)", __ecereNameSpace__ecere__com__PrintLn, module, 4);
2649 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::Print", "void ecere::com::Print(typed_object object, ...)", __ecereNameSpace__ecere__com__Print, module, 4);
2652 void __ecereUnregisterModule_dataTypes(struct __ecereNameSpace__ecere__com__Instance * module)
2655 __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_buffer = (void *)0;
2656 __ecerePropM___ecereNameSpace__ecere__com__SerialBuffer_size = (void *)0;