Adding documentation for placement tree.

This commit is contained in:
Damien Dupuis 2011-09-14 10:45:57 +00:00
parent c6ab2d5ed8
commit 052572a13d
3 changed files with 121 additions and 0 deletions

View File

@ -30,5 +30,16 @@ namespace OpenChams {
/*! \fn inline const std::map<Name, Infos*>& Layout::getInstances()
* \brief returns the map of Instances.
*/
/*! \fn inline Node* Layout::getHBTreeRoot()
* \brief returns the root of the placement tree associated to the layout.
*/
/*! \fn inline void Layout::setHBTreeRoot(Node* root)
* \brief sets the root of the placement tree associated to the layout.
*
* \param root the root of the palcement tree.
*/
}

View File

@ -0,0 +1,107 @@
// -*- C++ -*-
namespace OpenChams {
/*! \class Node
*
* This class describes a node of the placement tree.
*
* This is an abstract class used to easily managed blocs and groups of the placement tree.
*/
/*! \fn inline Name Node::getName()
* \brief returns the name of the node.
*/
/*! \fn inline Position Node::getPosition()
* \brief returns the position of the node.
*/
/*! \fn inline Node* Node::getParent()
* \brief returns the parent node of the current node.
*/
/*! \fn inline Node* Node::getRight()
* \brief returns the child node at the right of the current node.
*/
/*! \fn inline Node* Node::getTop()
* \brief returns the child node at the top of the current node.
*/
/*! \fn inline bool Node::isRoot()
* \brief returns tru if the node is the root of the tree (has no parent).
*/
/*! \fn inline void Node::setRight(Node* node)
* \brief sets the child node at the right of the current node.
*
* \param node the node at the right of the current node.
*/
/*! \fn inline void Node::setTop(Node* node)
* \brief sets the node at the top of the current node.
*
* \param node the node at the top of the current node.
*/
/*! \class Bloc
*
* This class describes a bloc of the placement tree.
*/
/*! \fn Bloc::Bloc(Name blocName, Position position, Node* parent)
* \brief creates a new bloc.
*
* \param blocName the name of the bloc
* \param position the position of the bloc (default value: NONE)
* \param parent the parent node of the node (default value: NULL)
*/
/*! \class Group
*
* This class describes a group of the placement tree.
*/
/*! \fn inline void Group::setRootNode(Node* node)
* \brief sets the root node of the group.
*
* \param node the root node of the group
*/
/*! \fn inline void Group::setIsolated(bool isolated)
* \brief sets whether the group has an isolation constraint or not.
*
* \param isolated if true the group has an isolation constraint.
*/
/*! \fn inline void Group::setPaired(bool paired)
* \brief sets whether the group has a pairing constraint or not.
*
* \param paired if true the group has a pairing constraint.
*/
/*! \fn inline void Group::setAlign(Align align)
* \brief sets an alignment constraint on the group.
*
* \param align the value of the alignment constraint can be NONE, VERTICAL or HORIZONTAL.
*/
/*! \fn inline Node* group::getRootNode()
* \brief returns the root node of the group.
*/
/*! \fn inline bool Group::isIsolated()
* \brief returns true if the group has an isolation constraint.
*/
/*! \fn inline bool Group::isPaired()
* \brief returns true if the group has a pairing constraint.
*/
/*! \fn inline Align Group::getAlign()
* \brief returns the alignment constraint of the group.
*/
}

View File

@ -35,6 +35,9 @@
- OpenChams::IntermediatePoint
- Layout
- OpenChams::Layout
- OpenChams::Node
- OpenChams::Bloc
- OpenChams::Group
\subsection openChamsParser Using the parser
Simply load an OPENCHAMS file using the static function OpenChams::Circuit::readFromFile() and then get the netlist object (OpenChams::Circuit::getNetlist()) or the sizing procedure (OpenChams::Circuit::getSizing(), might be NULL) or any other useful information (see OpenChams::Circuit).