77 lines
2.2 KiB
Plaintext
77 lines
2.2 KiB
Plaintext
|
|
||
|
// -*- C++ -*-
|
||
|
|
||
|
|
||
|
namespace KNIK {
|
||
|
|
||
|
/*! \class HEdge
|
||
|
* \brief A routing graph horizontal edge.\n
|
||
|
* - \ref HEdgeConstructors "Constructors"
|
||
|
* - \ref HEdgeAccessors "Accessors"
|
||
|
* - \ref HEdgeModifiers "Modifiers"
|
||
|
* - \ref HEdgePredicates "Predicates"
|
||
|
*
|
||
|
* The HEdge represents a horizontal edge of the routing graph. The class is derivated from KNIK::Edge and can be instanciated.
|
||
|
*
|
||
|
* \section secHEdgeImplementation HEdge Implementation
|
||
|
* This class exists only because it simplifies a lot the way specific functions are written
|
||
|
*/
|
||
|
|
||
|
/*! \anchor HEdgeConstructors Constructors
|
||
|
* \name
|
||
|
*/
|
||
|
// \{
|
||
|
|
||
|
/*! \function static HEdge* HEdge::Create( Fence* fence, Vertex* from, Vertex* to, DisplaySlot* displaySlot );
|
||
|
* \param fence is the fence associated to the edge
|
||
|
* \param from is the source vertex
|
||
|
* \param to is the target vertex
|
||
|
* \param displaySlot is the displaySlot used by GTK for graphical display
|
||
|
* \return The newly created HEdge
|
||
|
* \exception error if \e from or \e to are \NULL
|
||
|
* \exception error if the object can not be allocated
|
||
|
*/
|
||
|
|
||
|
// \}
|
||
|
|
||
|
/*! \anchor HEdgeAccessors Accessors
|
||
|
* \name
|
||
|
*/
|
||
|
// \{
|
||
|
|
||
|
/*! \function virtual Hook* HEdge::GetSplitterHook ( Vertex* vertex );
|
||
|
* \param vertex the vertex of the edge from which we want to get the splitter's hook
|
||
|
* \return The splitter's hook of the specified vertex
|
||
|
* \exception assert that Edge::_splitter exists
|
||
|
* \exception assert that the given vertex is Edge::_from or Edge::_to
|
||
|
*/
|
||
|
// \}
|
||
|
|
||
|
/*! \anchor HEdgeModifiers Modifiers
|
||
|
* \name
|
||
|
*/
|
||
|
// \{
|
||
|
|
||
|
/*! \function virtual void HEdge::CreateSplitter ( Net* net );
|
||
|
* \param net the current net for which we want to create a splitter on the Edge
|
||
|
*/
|
||
|
|
||
|
// \}
|
||
|
|
||
|
/*! \anchor HEdgePredicates Predicates
|
||
|
* \name
|
||
|
*/
|
||
|
// \{
|
||
|
|
||
|
/*! \function virtual bool HEdge::IsVertical ();
|
||
|
* \return Return \False
|
||
|
*/
|
||
|
|
||
|
/*! \function virtual bool HEdge::IsHorizontal ();
|
||
|
* \return Return \True
|
||
|
*/
|
||
|
|
||
|
// \}
|
||
|
|
||
|
}
|