All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
elst2.h File Reference
#include <stdio.h>
#include "host.h"
#include "serialis.h"
#include "lsterr.h"

Go to the source code of this file.

Classes

class  ELIST2_LINK
 
class  ELIST2
 
class  ELIST2_ITERATOR
 

Macros

#define QUOTE_IT(parm)   #parm
 
#define ELIST2IZEH_A(CLASSNAME)
 
#define ELIST2IZEH_B(CLASSNAME)
 
#define ELIST2IZEH_C(CLASSNAME)
 
#define ELIST2IZEH(CLASSNAME)
 
#define ELIST2IZE(CLASSNAME)
 

Macro Definition Documentation

#define ELIST2IZE (   CLASSNAME)
Value:
\
/*********************************************************************** \
* CLASSNAME##_zapper \
* \
* A function which can delete a CLASSNAME element. This is passed to the \
* generic clear list member function so that when a list is cleared the \
* elements on the list are properly destroyed from the base class, even \
* though we dont use a virtual destructor function. \
**********************************************************************/ \
\
DLLSYM void CLASSNAME##_zapper( /*delete a link*/ \
ELIST2_LINK* link) /*link to delete*/ \
{ \
delete (CLASSNAME *) link; \
} \
\
/* Become a deep copy of src_list*/ \
void CLASSNAME##_LIST::deep_copy(const CLASSNAME##_LIST* src_list, \
CLASSNAME* (*copier)(const CLASSNAME*)) { \
\
CLASSNAME##_IT from_it(const_cast<CLASSNAME##_LIST*>(src_list)); \
CLASSNAME##_IT to_it(this); \
\
for (from_it.mark_cycle_pt(); !from_it.cycled_list(); from_it.forward()) \
to_it.add_after_then_move((*copier)(from_it.data())); \
}
#define DLLSYM
Definition: platform.h:25

Definition at line 1010 of file elst2.h.

#define ELIST2IZEH (   CLASSNAME)
Value:
ELIST2IZEH_A( CLASSNAME ) \
ELIST2IZEH_B( CLASSNAME ) \
ELIST2IZEH_C( CLASSNAME )
#define ELIST2IZEH_A(CLASSNAME)
Definition: elst2.h:910
#define ELIST2IZEH_C(CLASSNAME)
Definition: elst2.h:950
#define ELIST2IZEH_B(CLASSNAME)
Definition: elst2.h:915

Definition at line 997 of file elst2.h.

#define ELIST2IZEH_A (   CLASSNAME)
Value:
\
extern DLLSYM void CLASSNAME##_zapper( /*delete a link*/ \
ELIST2_LINK* link); /*link to delete*/
#define DLLSYM
Definition: platform.h:25

Definition at line 910 of file elst2.h.

#define ELIST2IZEH_B (   CLASSNAME)

Definition at line 915 of file elst2.h.

#define ELIST2IZEH_C (   CLASSNAME)

Definition at line 950 of file elst2.h.

#define QUOTE_IT (   parm)    #parm

Definition at line 877 of file elst2.h.