// -*- C++ -*-

namespace OpenChams {
/*! \class Schematic::Infos
 *
 *  This class describes schematic informations for an instance.
 *  It contains x and y coordinates and the orientation of the instance.
 */

/*! \fn Schematic::Infos::Infos(double x, double y, Name orient)
 *   \brief creates a new Infos object.
 *
 *   \param x      the x coordinate.
 *   \param y      the y corrdinate.
 *   \param orient the orientation.
 */

/*! \fn inline double Schematic::Infos::getX()
 *   \brief returns the x coordinate.
 */

/*! \fn inline double Schematic::Infos::getY()
 *   \brief returns the y coordinate.
 */

/*! \fn inline Name Schematic::Infos::getOrientation()
 *   \brief returns the orientation.
 */

/*! \class Schematic
 *
 *  This class describes schematic informations.
 *
 *  The Schematic object is used to store all informations relative to schematic of the circuit.
 *
 *   \note The Schematic object is optionnal in Circuit.
 */

/*! \fn Schematic::Schematic(Circuit* circuit)
 *   \brief creates a new schematic.
 *
 *   \param circuit the circuit to which the schematic belongs.
 */

/*! \fn void Schematic::addInstance(Name name, double x, double y, Name orient)
 *   \brief adds schematic informations for an instance.
 *
 *   \param name   the instance's name to which the schematic informations are associated.
 *   \param x      the x coordinate.
 *   \param y      the y coordinate.
 *   \param orient the orientation.
 */

/*! \fn inline bool Schematic::hasNoInstances()
 *   \brief returns true if the schematc has no Infos.
 */

/*! \fn inline const std::map<Name, Infos*>& Schematic::getInstances()
 *   \brief returns the map of instance's Infos.
 */
}
