#ifndef __mSIFSOLID_H__ #define __mSIFSOLID_H__ #include "genlib.h" #include "datalib.h" #include "sifshellset.h" class CSIFSolidGeomIter; ////////////////////////////////////////////////////////////////////////////// // CSIFSolid Class // class CSIFSolid { friend class CSIFSolidGeomIter; ////////////////////////////////////////////////// // Initialization // public: CSIFSolid(); ~CSIFSolid(); VOID Init(); VOID AddShellSet(CSIFShellSet *); ////////////////////////////////////////////////// // Accessor Functions // protected: inline CList *GetListShellSets() {return &m_CListShellSets;}; ////////////////////////////////////////////////// // Output Functions // public: VOID OutputLayer(FLOAT, INT_32 iPrecisionExp); ////////////////////////////////////////////////// // Member Variables // CList m_CListShellSets; VOID *m_pCListVolumeProps; }; class CSIFSolidGeomIter { public: inline CSIFSolidGeomIter() {}; inline ~CSIFSolidGeomIter() {}; VOID Init(CSIFSolid *); protected: BOOL Valid(); public: // Iteration Functions CLEDSGeometry *PeekNext(); protected: CSIFSolid *m_pCSIFSolid; CSIFShellSet *m_pCurShellSet; CListIter m_ShellSetListIter; CSIFShellSetGeomIter *m_pShellSetGeomIter; }; #endif // __mSIFSOLID_H__