home *** CD-ROM | disk | FTP | other *** search
/ ftptest.leeds.ac.uk / 2015.02.ftptest.leeds.ac.uk.tar / ftptest.leeds.ac.uk / bionet / CAE-GROUP / SCL-WIN3x / SCLTEST.EXE / SCL2HTML / MYREGIST.H < prev    next >
C/C++ Source or Header  |  1994-12-13  |  997b  |  36 lines

  1. /*
  2.  * MyRegistry.h
  3.  *
  4.  * Ian Soboroff, NIST
  5.  * July 1994
  6.  *
  7.  * The registry class, as defined in src/clstepcore/Registry.*, does not
  8.  * provide a facility for browsing the hashtable of types, as it does for
  9.  * schemas and entities.  Just an oversight, I'm sure.  ;-)
  10.  *
  11.  * class MyRegistry is derived from class Registry, and just adds functions
  12.  * ResetTypes() and NextType() to parallel ResetEntities(), etc, and
  13.  * NextEntity(), etc.
  14.  */
  15.  
  16. #include <Registry.h>
  17.  
  18. //typedef void (* CF_init) (Registry &);  // pointer to creation init.
  19.  
  20. class MyRegistry : public Registry
  21. {
  22.   protected:
  23.     HashEntry cur_type;
  24.  
  25.   public:
  26.     MyRegistry(CF_init initFunct) : Registry(initFunct)
  27.     { HASHlistinit (active_types, &cur_type); }
  28.     ~MyRegistry() {}
  29.     
  30.     void ResetTypes()  { HASHlistinit(active_types, &cur_type); }
  31.     const TypeDescriptor* NextType()
  32.     { if (0 == HASHlist(&cur_type)) return 0;
  33.       return (const TypeDescriptor*) cur_type.e->data; }
  34. };
  35.  
  36.