diff --git a/src/libavoid/shape.h b/src/libavoid/shape.h
index acdb36983f7eb466895d63e2dea383d77cdd0cc8..cdcbe7839ddce3ea66aa105a83b949c8f683645c 100644 (file)
--- a/src/libavoid/shape.h
+++ b/src/libavoid/shape.h
* vim: ts=4 sw=4 et tw=0 wm=0
*
* libavoid - Fast, Incremental, Object-avoiding Line Router
- * Copyright (C) 2004-2005 Michael Wybrow <mjwybrow@users.sourceforge.net>
+ * Copyright (C) 2004-2006 Michael Wybrow <mjwybrow@users.sourceforge.net>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
+ *
*/
#ifndef AVOID_SHAPE_H
namespace Avoid {
-typedef unsigned int uint;
-
-class ShapeRef;
class VertInf;
-
+class Router;
+class ShapeRef;
typedef std::list<ShapeRef *> ShapeRefList;
-
+
class ShapeRef
{
public:
- ShapeRef(uint id, Polygn& poly);
+ ShapeRef(Router *router, unsigned int id, Polygn& poly);
~ShapeRef();
+ void setNewPoly(Polygn& poly);
VertInf *firstVert(void);
VertInf *lastVert(void);
- uint id(void);
+ unsigned int id(void);
Polygn poly(void);
-
+ Router *router(void);
+ void boundingBox(BBox& bbox);
+
void makeActive(void);
void makeInactive(void);
void removeFromGraph(void);
-
+
private:
- uint _id;
+ Router *_router;
+ unsigned int _id;
Polygn _poly;
bool _active;
ShapeRefList::iterator _pos;
};
-extern ShapeRefList shapeRefs;
-
-
}