home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / komix / DATA.Z / WmtRWTOPtrSet.hxx < prev    next >
Text File  |  1996-05-31  |  2KB  |  52 lines

  1. /*---------------------------------------------------------------------------
  2.  *
  3.  *      (c)     Westmount Technology    1994
  4.  *
  5.  *      File:        @(#)WmtRWTOPtrSet.hxx    1.1
  6.  *      Author:        wmt
  7.  *      Description:    ordered pointer set based on RogueWave library
  8.  *---------------------------------------------------------------------------
  9.  SccsId = @(#)WmtRWTPtrSet.hxx    1.2   6/3/94 Copyright 1994 Westmount Technology */
  10.  
  11. #ifndef WMTRWTOPTRSET_HXX
  12. #define WMTRWTOPTRSET_HXX
  13.  
  14. #ifndef __RWTVSLIST_H__
  15. #include "rw/tvslist.h"
  16. #endif
  17.  
  18. typedef void* voidPtr;
  19.  
  20. template<class T>
  21. #ifdef __GNUG__
  22. class WmtRWTOPtrSet : public RWTValSlist<voidPtr> {
  23. #else
  24. class WmtRWTOPtrSet : private RWTValSlist<voidPtr> {
  25. #endif
  26. public:
  27.     WmtRWTOPtrSet() : RWTValSlist<voidPtr>() {}
  28.     WmtRWTOPtrSet(const WmtRWTOPtrSet<T> &set) :
  29.         RWTValSlist<voidPtr>(set) {}
  30.  
  31.     T *operator[](size_t i) const
  32.         { return (T *)RWTValSlist<voidPtr>::operator[](i); }
  33.     void append(T *ptr)
  34.         { RWTValSlist<voidPtr>::append(ptr); }
  35.     T *at(size_t i) const
  36.         { return (T *)RWTValSlist<voidPtr>::at(i); }
  37.     void clear()
  38.         { RWTValSlist<voidPtr>::clear(); }
  39.     size_t entries() const
  40.         { return RWTValSlist<voidPtr>::entries(); }
  41.     void insertAt(size_t i, T *ptr)
  42.         { RWTValSlist<voidPtr>::insertAt(i, ptr); }
  43.     RWBoolean isEmpty() const
  44.         { return RWTValSlist<voidPtr>::isEmpty(); }
  45.     RWBoolean remove(T *ptr)
  46.         { return RWTValSlist<voidPtr>::remove(ptr); }
  47.     T *removeAt(size_t i)
  48.         { return (T *)RWTValSlist<voidPtr>::removeAt(i); }
  49. };
  50.  
  51. #endif /* WMTRWTOPTRSET_HXX */
  52.