coriolis/knik/src/knik/VEdge.h

48 lines
1.4 KiB
C
Raw Normal View History

#ifndef _KNIK_VEDGE_H
#define _KNIK_VEDGE_H
#include "knik/Edge.h"
namespace Knik {
class VEdge : public Edge {
// ************************
// Types
// *****
public:
typedef Edge Inherit;
// Constructors & Destructors
// **************************
protected:
VEdge ( Vertex* from, Vertex* to );
VEdge ( Vertex* from, Vertex* to, unsigned capacity );
~VEdge ();
public:
static VEdge* create ( Vertex* from, Vertex* to );
static VEdge* create ( Vertex* from, Vertex* to, unsigned capacity );
//void destroy();
void _postCreate ( bool fenceCapacity );
//void _preDestroy();
// Others
// ******
public:
virtual Box computeBoundingBox() const;
virtual Point getReferencePoint () const;
virtual DbU::Unit getWidth () const;
virtual float getNormalisedLength() const;
// Predicates
// **********
public:
//virtual void createSplitter ( Net* net );
//virtual Hook* getSplitterHook ( Vertex* vertex );
virtual bool isVertical() const { return true; };
virtual bool isHorizontal() const { return false; };
};
} // end namespace
#endif