13 INVERTOR::~INVERTOR() {
19 case DBT_LINES::Fronius:
21 case DBT_LINES::ModbusTCP:
23 case DBT_LINES::ModbusRTU:
24 case DBT_LINES::Unknown:
31 INVERTOR::INVERTOR() : QThread(0) {
37 QTimer::singleShot(10,
this, SLOT(
slotInit()));
38 QThread::start(priority);
55 QMutexLocker locker(&m_status_mutex);
64 QMutexLocker locker(&m_status_mutex);
70 if (!isRunning())
return;
void quit()
Quits the running thread.
Communicates with invertors using serial port.
INVERTOR_status status()
Returns current status of the line.
int retries
Number of retries.
virtual void slotInit()=0
Initializes ancestors.
virtual void setLine(const DBT_LINES &)
Sets the parameters for the line.
QString status
Status string.
QString command
Current command pending.
DBT_LINES m_line
Stores information about line.
int line
line number (database id)
QList< DBT_INVERTORS > m_invertors
Stores information about all invertors connected to the line.
QString line_description
Line description.
INVERTOR_status m_status
Line status.
virtual void slotQuit()=0
Quits ancestors.
Communicates with invertors using serial port.
virtual void setInvertors(const QList< DBT_INVERTORS > &)
Sets the list of invertors connected to the line.
Stores the invertors status.
static INVERTOR * create(DBT_LINES::Type)
Factory makes instances depending on type.
Virtual class for invertor communication.
int address
address of invertor
Class describing database table LINES.
void start(Priority priority=InheritPriority)
Starts the thread.
void setStatus(int address, int retries, const QString &command, const QString &status)
Set status of line.