qelectrotech-source-mirror/sources/conductorautonumerotation.h
scorpio810 c639d69108 Revert Rev 2096.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@2097 bfdf4180-ca20-0410-9c96-a3a8aa849046
2013-04-10 11:10:02 +00:00

50 lines
925 B
C++

#ifndef CONDUCTORAUTONUMEROTATION_H
#define CONDUCTORAUTONUMEROTATION_H
#include <conductor.h>
class NumStrategy;
class ConductorAutoNumerotation
{
public:
//constructors & destructor
ConductorAutoNumerotation ();
ConductorAutoNumerotation(Conductor *);
~ConductorAutoNumerotation();
//methods
void setConductor(Conductor *);
void numerate();
protected:
//methods
void setNumStrategy (NumStrategy *);
//attributes
Conductor *conductor_;
Diagram *diagram_;
QSet <Conductor *> conductor_list;
NumStrategy *strategy_;
};
class NumStrategy
{
public:
NumStrategy ();
virtual ~NumStrategy ();
virtual void createNumerotation(Conductor *, Diagram *) = 0; //cree la numerotation en fonction de la strategie utilisé
};
class SamePotential: public NumStrategy
{
virtual void createNumerotation(Conductor *, Diagram *);
};
bool eachIsEqual (const QStringList &);
#endif // CONDUCTORAUTONUMEROTATION_H