/******************************************************************************/ template ObjPtrs::~ObjPtrs() {deleted=true; Delete(objs);} template int ObjPtrs::ComparePtr(TYPE*C &a, TYPE*C &b) {return Compare(a, b);} template void ObjPtrs::include(TYPE &obj) {if(!deleted){if(!objs)New(objs); objs->binaryInclude(&obj, ComparePtr);}} template void ObjPtrs::exclude(TYPE &obj) { if( objs) objs->binaryExclude(&obj, ComparePtr); } template TYPE& ObjPtrs::operator[](int i) {return *((*objs)[i]);} template int Elms(C ObjPtrs &obj_ptrs) {return obj_ptrs.objs ? obj_ptrs.objs->elms() : 0;} T1(TYPE) PropEx& PropEx::create(C Str &name, TYPE &member ) {::EE::Property::create(name, member); return T;} template ObjPtrs::ObjPtrs() : deleted(false) {} /******************************************************************************/