home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / dho.zip / DHO / SRC / SOURCE.ZIP / multnode.h < prev    next >
C/C++ Source or Header  |  1995-08-27  |  2KB  |  81 lines

  1. /****************************************/
  2. /*    Developer Helper Object Set       */
  3. /*  (C) 1994-95 Thomas E. Bednarz, Jr.  */
  4. /*     All rights reserved              */
  5. /***************************************/
  6.  
  7. /* $Id: multnode.h 1.2 1995/08/13 03:21:12 teb Exp $ */
  8.  
  9.  
  10. #ifndef __MULTNODE_H__
  11. #define __MULTNODE_H__
  12.  
  13.  
  14. #include"object.h"
  15. #include<stdlib.h>
  16.  
  17.  
  18. class TxNode : public TObject
  19. {
  20.    protected:
  21.       TxNode *lessThan;
  22.       TxNode *greaterThan;
  23.       TObject *lowObj;
  24.       TObject *highObj;
  25.    public:      
  26.       TxNode(TxNode *lt=NULL, TxNode *gt=NULL,
  27.           TObject *lo=NULL, TObject *ho=NULL);
  28.       virtual ~TxNode();
  29.       TObject *getHighObject();
  30.       TObject *getLowObject();
  31.       void setHighObject(TObject *obj);
  32.       void setLowObject(TObject *obj);
  33.  
  34.       TxNode *getLowNode();
  35.       TxNode *getHighNode();
  36.       void setHighNode(TxNode *nde);
  37.       void setLowNode(TxNode *nde);
  38.       virtual const char *getClassName();
  39. };
  40.  
  41.  
  42. class T3Node : public TxNode
  43. {
  44.    private:
  45.  
  46.       TxNode *middle;
  47.  
  48.    public:
  49.       T3Node(TxNode *lt=NULL, TxNode *mid=NULL, TxNode *gt=NULL,
  50.           TObject *lo=NULL, TObject *ho=NULL);
  51.       virtual ~T3Node();
  52.       TxNode *getMiddleNode();
  53.       void setMiddleNode(TxNode *nde);
  54.       virtual const char *getClassName();
  55. };
  56.  
  57. class T4Node : public TxNode
  58. {
  59.    private:
  60.       TxNode *between1;
  61.       TxNode *between2;
  62.       TObject *midObj;
  63.    public:
  64.       T4Node(TxNode *lt=NULL, TxNode *mn1=NULL, TxNode *mn2=NULL,TxNode *gt=NULL,
  65.           TObject *lo=NULL, TObject *mo=NULL, TObject *ho=NULL);
  66.       ~T4Node();
  67.  
  68.       TxNode *getLoBetweenNode();
  69.       TxNode *getHiBetweenNode();
  70.       void setLoBetweenNode(TxNode *nde);
  71.       void setHiBetweenNode(TxNode *nde);
  72.  
  73.       TObject *getMiddleObj();
  74.       void setMiddleObj(TObject *obj);
  75.       
  76.       virtual const char *getClassName();
  77. };
  78.  
  79. #endif  //multnode.h
  80.  
  81.