#include <stdio.h>#include "host.h"#include "serialis.h"#include "lsterr.h"Go to the source code of this file.
Classes | |
| class | CLIST_LINK |
| class | CLIST |
| class | CLIST_ITERATOR |
Defines | |
| #define | QUOTE_IT(parm) #parm |
| #define | CLISTIZEH_A(CLASSNAME) |
| #define | CLISTIZEH_B(CLASSNAME) |
| #define | CLISTIZEH_C(CLASSNAME) |
| #define | CLISTIZEH(CLASSNAME) |
| #define | CLISTIZEH_S(CLASSNAME) |
| #define | CLISTIZE(CLASSNAME) |
| #define | CLISTIZE_S(CLASSNAME) |
| #define CLISTIZE | ( | CLASSNAME | ) |
\
\
\
DLLSYM void CLASSNAME##_c1_zapper( /*delete a link*/ \
void* link) /*link to delete*/ \
{ \
delete (CLASSNAME *) link; \
} \
\
\
\
\
\
DLLSYM void* CLASSNAME##_c1_copier( /*deep copy a link*/ \
void* old_element) /*source link*/ \
{ \
CLASSNAME* new_element; \
\
new_element = new CLASSNAME; \
*new_element = *((CLASSNAME*) old_element); \
return (void*) new_element; \
}
| #define CLISTIZE_S | ( | CLASSNAME | ) |
| #define CLISTIZEH | ( | CLASSNAME | ) |
\ CLISTIZEH_A( CLASSNAME ) \ \ CLISTIZEH_B( CLASSNAME ) \ \ CLISTIZEH_C( CLASSNAME )
| #define CLISTIZEH_A | ( | CLASSNAME | ) |
| #define CLISTIZEH_B | ( | CLASSNAME | ) |
\
\
\
class DLLSYM CLASSNAME##_CLIST : public CLIST \
{ \
public: \
CLASSNAME##_CLIST():CLIST() {} \
/* constructor */ \
\
CLASSNAME##_CLIST( /* dont construct */ \
const CLASSNAME##_CLIST&) /*by initial assign*/ \
{ DONT_CONSTRUCT_LIST_BY_COPY.error( QUOTE_IT( CLASSNAME##_CLIST ), \
ABORT, NULL ); } \
\
void deep_clear() /* delete elements */ \
{ CLIST::internal_deep_clear( &CLASSNAME##_c1_zapper ); } \
\
void deep_copy( /* become a deep */ \
const CLASSNAME##_CLIST*list) /* copy of src list*/ \
{ CLIST::internal_deep_copy( &CLASSNAME##_c1_copier, list ); } \
\
void operator=( /* prevent assign */ \
const CLASSNAME##_CLIST&) \
{ DONT_ASSIGN_LISTS.error( QUOTE_IT( CLASSNAME##_CLIST ), \
ABORT, NULL ); }
| #define CLISTIZEH_C | ( | CLASSNAME | ) |
| #define CLISTIZEH_S | ( | CLASSNAME | ) |
\ CLISTIZEH_A( CLASSNAME ) \ \ extern DLLSYM void CLASSNAME##_c1_serialiser( \ FILE* f, \ void* element); \ \ extern DLLSYM void* CLASSNAME##_c1_de_serialiser( \ FILE* f); \ \ CLISTIZEH_B( CLASSNAME ) \ \ void dump( /* dump to file */ \ FILE* f) \ { CLIST::internal_dump( f, &CLASSNAME##_c1_serialiser );} \ \ void de_dump( /* get from file */ \ FILE* f) \ { CLIST::internal_de_dump( f, &CLASSNAME##_c1_de_serialiser );} \ \ make_serialise( CLASSNAME##_CLIST ) \ \ CLISTIZEH_C( CLASSNAME )
| #define QUOTE_IT | ( | parm | ) | #parm |
1.6.3