home *** CD-ROM | disk | FTP | other *** search
- //**********************************************************************
- // DIVE Laboratories, Inc.
- // Copyright(c) 1995
- // All rights reserved.
- // FILE: GEOPRIMSET.HPP
- //
- // DESCRIPTION
- // This file provides the function prototypes for the geoPrimSetClass
- //
- // Author: M. Doucet
- //
- // Modification History:
- // 6/13/95 Created
- //
- //**********************************************************************
- #ifndef _GEOPRIMSET_HPP
- #define _GEOPRIMSET_HPP
-
- //BDG
- class geoPrimSetClass;
-
- #include "slink.hpp"
- #include "vertex.hpp"
- #include "line.hpp"
- #include "triangle.hpp"
- #include "polygon.hpp"
- #include "point.hpp"
-
- typedef enum {_VERTSET, _POINTSET, _LINESET,
- _TRISET, _QUADSET, _POLYSET} geoPrimSetType;
-
- class geoPrimSetClass {
-
- private:
-
- geoPrimSetType geoPrimType;
- int nPrims;
-
- public:
-
- sLinkClass pList;
-
- // Adding primitives
- //
- int addPrimitive(polygonClass *p);
- int addPrimitive(quadClass *p);
- int addPrimitive(triangleClass *p);
- int addPrimitive(lineClass *p);
- int addPrimitive(pointClass *p);
- int addPrimitive(vertexClass *p);
- void *getPrimitive(int index);
- int numPrimitives();
-
- geoPrimSetType getType();
- void setType(geoPrimSetType primType);
-
- //void render(int useMaterial, int shaded, polyAsEnum polyAs);
-
- geoPrimSetClass(geoPrimSetType primType = _TRISET);
- ~geoPrimSetClass();
- };
-
- #endif
-