11 static const RTTITypeinfo* RTTI_base_null_type[] = { 0 };
19 subtypes.push_back(t);
33 if ( subtypes.size() > 0 )
35 SubtypesConstVector::iterator iter = std::find(subtypes.begin(), subtypes.end(), t);
36 if(iter != subtypes.end())
54 void* (*f1)(
int,
void*),
92 if (p->
same(b[i]) || b[i]->has_base(p))
return 1;
101 if (!strcmp(c,getname()))
102 p = (new_obj)? new_obj() : 0;
104 for(i=0;i<ns && !((p=subtypes[i]->create(
this,c)));i++);
106 if (bt==
this) i = -1;
107 else for(i=0;b[i] && b[i]!=bt;i++);
114 if(strcmp(name, getname())==0)
118 else if(num_baseclasses() == 0)
120 if(strcmp(name, getname()) == 0)
130 while(index < num_baseclasses())
137 if(strcmp(name, typeId.
getname()) == 0)
144 while(index < num_baseclasses())
void * create(const RTTITypeinfo *, const char *) const
int same(const RTTITypeinfo *) const
RTTITypeinfo(const char *name, const RTTITypeinfo *bb[], void *(*)(int, void *), void *(*)())
static const RTTITypeinfo null_type
void del_subtype(const RTTITypeinfo *)
os2<< "> n<< " > nendobj n
static const RTTITypeinfo * a[]
const char * getname() const
void add_subtype(const RTTITypeinfo *)
RTTItypeid find_baseclass(const char *name) const
int has_base(const RTTITypeinfo *) const
static RTTItypeid null_type()
const char * getname() const