// -*- 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 */ // \} }