#include <qpidlogger.h>
Definition at line 12 of file qpidlogger.h.
Definition at line 8 of file qpidlogger.cpp.
References onFilenameChanged().
13 m_Enabled(
m_Saver,
this,
"enabled",
true,
"Logging Enabled?"),
14 m_FileName(
m_Saver,
this,
"fileName",
"pidctrl.log",
"Log file name"),
15 m_UpdateInterval(
m_Saver,
this,
"updateInterval", 30,
"Logging interval (seconds)"),
16 m_PointLimit(
m_Saver,
this,
"pointLimit", 0,
"Start new log scan after this many points"),
17 m_ScanNumber(
m_Saver,
this,
"scanNumber", 0,
"Log file scan number"),
18 m_PointCount(QcepSettingsSaverPtr(),
this,
"pointCount", 0,
"Number of points in current log scan"),
19 m_ChannelNames(QcepSettingsSaverPtr(),
this,
"channelNames", QStringList(),
"Log File Column Names")
21 connect(prop_FileName(), SIGNAL(valueChanged(QString,
int)),
this, SLOT(
onFilenameChanged(QString,
int)));
QPidObjectNamer m_ObjectNamer
QPidControllerWPtr m_Controller
QcepSettingsSaverWPtr m_Saver
void onFilenameChanged(QString name, int n)
void QPidLogger::logChannelNames |
( |
QStringList |
names | ) |
|
|
slot |
Definition at line 24 of file qpidlogger.cpp.
References DEBUG_LOGGER, and printMessage().
26 if (QThread::currentThread() != thread()) {
27 INVOKE_CHECK(QMetaObject::invokeMethod(
this,
"logChannelNames", Q_ARG(QStringList, names)));
30 printMessage(tr(
"QPidLogger::logChannelNames %1 ,...").arg(names.value(0)));
33 set_ChannelNames(names);
void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
void QPidLogger::logChannelValues |
( |
QcepDoubleList |
values | ) |
|
|
slot |
Definition at line 37 of file qpidlogger.cpp.
References DEBUG_LOGGER, m_File, openLogFileIfNeeded(), and printMessage().
39 if (QThread::currentThread() != thread()) {
40 INVOKE_CHECK(QMetaObject::invokeMethod(
this,
"logChannelValues", Q_ARG(QcepDoubleList, values)));
43 printMessage(tr(
"QPidLogger::logChannelValues %1 ,...").arg(values.value(0)));
50 if (get_PointCount() == 0) {
51 QStringList names = get_ChannelNames();
53 int n = names.length();
55 fprintf(
m_File,
"#S %d qpid timescan \"%s\" %g\n",
57 qPrintable(get_FileName()),
58 get_UpdateInterval());
60 fprintf(
m_File,
"#D %s\n", qPrintable(QDateTime::currentDateTime().toString(
"ddd MMM d hh:mm:ss yyyy")));
61 fprintf(
m_File,
"#N %d\n", n);
65 fprintf(
m_File,
"%s", qPrintable(names[0]));
68 for (
int i=1; i<n; i++) {
69 fprintf(
m_File,
" %s", qPrintable(names[i]));
75 prop_ScanNumber()->incValue(1);
78 int n = values.length();
81 fprintf(
m_File,
"%0.15g", values.value(0));
84 for (
int i=1; i<n; i++) {
85 fprintf(
m_File,
"\t%0.15g", values.value(i));
91 prop_PointCount()->incValue(1);
93 if ((get_PointLimit() > 0) && (get_PointCount() > get_PointLimit())) {
void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
void openLogFileIfNeeded()
void QPidLogger::logString |
( |
QString |
str | ) |
|
|
slot |
Definition at line 101 of file qpidlogger.cpp.
References DEBUG_LOGGER, m_File, openLogFileIfNeeded(), and printMessage().
103 if (QThread::currentThread() != thread()) {
104 INVOKE_CHECK(QMetaObject::invokeMethod(
this,
"logString", Q_ARG(QString, str)));
107 printMessage(tr(
"QPidLogger::logString %1 ,...").arg(str));
114 fprintf(
m_File,
"#C %s. %s.\n", qPrintable(QDateTime::currentDateTime().toString(
"ddd MMM d hh:mm:ss yyyy")),
void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
void openLogFileIfNeeded()
void QPidLogger::onFilenameChanged |
( |
QString |
name, |
|
|
int |
n |
|
) |
| |
|
privateslot |
void QPidLogger::openLogFileIfNeeded |
( |
| ) |
|
|
protected |
Definition at line 122 of file qpidlogger.cpp.
References m_File, and printMessage().
Referenced by logChannelValues(), and logString().
125 FILE *f = fopen(qPrintable(get_FileName()),
"a+");
136 fgets(buff,
sizeof(buff),
m_File);
142 if (sscanf(buff,
"#S %d", &scan) == 1) {
143 set_ScanNumber(scan+1);
147 fprintf(
m_File,
"#F %s\n", qPrintable(get_FileName()));
148 fprintf(
m_File,
"#E %d\n", QDateTime::currentDateTime().toTime_t());
149 fprintf(
m_File,
"#D %s\n", qPrintable(QDateTime::currentDateTime().toString(
"ddd MMM d hh:mm:ss yyyy")));
void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
void QPidLogger::printMessage |
( |
QString |
msg, |
|
|
QDateTime |
ts = QDateTime::currentDateTime() |
|
) |
| |
|
slot |
void QPidLogger::readSettings |
( |
QSettings * |
set, |
|
|
QString |
section |
|
) |
| |
Definition at line 181 of file qpidlogger.cpp.
183 QcepProperty::readSettings(
this, &staticMetaObject, section, set);
void QPidLogger::writeSettings |
( |
QSettings * |
set, |
|
|
QString |
section |
|
) |
| |
Definition at line 176 of file qpidlogger.cpp.
178 QcepProperty::writeSettings(
this, &staticMetaObject, section, set);
QcepSettingsSaverWPtr QPidLogger::m_Saver |
|
private |
QStringList QPidLogger::channelNames |
|
readwrite |
QString QPidLogger::fileName |
|
readwrite |
int QPidLogger::pointCount |
|
readwrite |
int QPidLogger::pointLimit |
|
readwrite |
int QPidLogger::scanNumber |
|
readwrite |
double QPidLogger::updateInterval |
|
readwrite |
The documentation for this class was generated from the following files: