1 2 #ifndef dispnode_h 3 #define dispnode_h 4 5 /* 6 * NIST STEP Editor Class Library 7 * cleditor/dispnode.h 8 * April 1997 9 * David Sauder 10 * K. C. Morris 11 12 * Development of this software was funded by the United States Government, 13 * and is not subject to copyright. 14 */ 15 16 /* $Id: dispnode.h,v 3.0.1.2 1997/11/05 22:11:39 sauderd DP3.1 $ */ 17 18 #include <sc_export.h> 19 20 /*#include <STEPattribute.h>*/ 21 /*#include <STEPentity.h>*/ 22 #include <sdai.h> 23 24 #include <gennode.h> 25 #include <gennodelist.h> 26 //#include <gennode.inline.h> 27 #include <editordefines.h> 28 //#include <mgrnode.h> 29 class MgrNode; 30 31 ////////////////////////////////////////////////////////////////////////////// 32 // class DisplayNode 33 ////////////////////////////////////////////////////////////////////////////// 34 35 class SC_CORE_EXPORT DisplayNode : public GenericNode { 36 protected: 37 friend class GenNodeList; 38 friend class DisplayNodeList; 39 40 MgrNode * mn; 41 void * see; 42 displayStateEnum displayState; // = { mappedWrite, mappedView, notMapped } 43 44 public: 45 // this should probably only be used to create head nodes for dispnodelists DisplayNode()46 DisplayNode() { 47 displayState = noMapState; 48 } DisplayNode(MgrNode * node)49 DisplayNode( MgrNode * node ) { 50 mn = node; 51 displayState = noMapState; 52 } 53 ~DisplayNode(); 54 SEE(void * s)55 void SEE( void * s ) { 56 see = s; 57 } SEE()58 virtual void * SEE() { 59 return see; 60 } 61 mgrNode(MgrNode * node)62 void mgrNode( MgrNode * node ) { 63 mn = node; 64 } mgrNode()65 class MgrNode * mgrNode() { 66 return mn; 67 } 68 DisplayState()69 displayStateEnum DisplayState() { 70 return displayState; 71 } DisplayListMember(displayStateEnum ds)72 int DisplayListMember( displayStateEnum ds ) { 73 return ( displayState == ds ); 74 } 75 76 int ChangeState( displayStateEnum s ); 77 int ChangeList( DisplayNodeList * cmdList ); 78 79 void Remove(); 80 81 protected: 82 }; 83 84 ////////////////////////////////////////////////////////////////////////////// 85 // class DisplayNode inline functions 86 // these functions don't rely on any inline functions (its own or 87 // other classes) that aren't in this file except for Generic functions 88 ////////////////////////////////////////////////////////////////////////////// 89 90 #endif 91