QXRD  0.11.16
Public Slots | Signals | Public Member Functions | Private Slots | Static Private Member Functions | Private Attributes | List of all members
QxrdScriptEngine Class Reference

#include <qxrdscriptengine.h>

Inheritance diagram for QxrdScriptEngine:
Inheritance graph
[legend]
Collaboration diagram for QxrdScriptEngine:
Collaboration graph
[legend]

Public Slots

void evaluateAppCommand (QString cmd)
 
void evaluateSimpleServerCommand (QString cmd)
 
void evaluateSpecCommand (QString cmd)
 
void loadScript (QString path)
 
static QString convertToString (QScriptValue result)
 
void dumpLocks ()
 
void openScriptOutput (const QString &fileName)
 
void writeScriptOutput (const QString &outputLine)
 
void closeScriptOutput ()
 
- Public Slots inherited from QcepScriptEngine
QString documentationLink (QString base, QString subItem)
 
QByteArray helpText (QString item)
 
QString documentationText (QString item)
 
QString documentationText (QRegExp pattern)
 

Signals

void appResultAvailable (QScriptValue res)
 
void simpleServerResultAvailable (QScriptValue cmd)
 
void specResultAvailable (QScriptValue cmd)
 

Public Member Functions

 QxrdScriptEngine (QxrdApplicationWPtr app, QxrdExperimentWPtr exp)
 
virtual ~QxrdScriptEngine ()
 
void initialize ()
 
void lock ()
 
void unlock ()
 
bool hasUncaughtException () const
 
int uncaughtExceptionLineNumber () const
 
QString uncaughtExceptionString () const
 
void cancelCommand ()
 
QxrdApplicationWPtr application () const
 
QxrdExperimentWPtr experiment () const
 
QxrdAcquisitionWPtr acquisition () const
 
QxrdDataProcessorWPtr dataProcessor () const
 
QxrdWindowWPtr window () const
 
void setWindow (QxrdWindowWPtr win)
 
- Public Member Functions inherited from QcepScriptEngine
 QcepScriptEngine (QObject *parent=0)
 

Private Slots

void evaluateScript (int src, QString cmd)
 

Static Private Member Functions

static QScriptValue printFunc (QScriptContext *context, QScriptEngine *engine, void *u)
 
static QScriptValue fopenFunc (QScriptContext *context, QScriptEngine *engine, void *u)
 
static QScriptValue fdeleteFunc (QScriptContext *context, QScriptEngine *engine, void *u)
 
static QScriptValue fprintFunc (QScriptContext *context, QScriptEngine *engine, void *u)
 
static QScriptValue fcloseFunc (QScriptContext *context, QScriptEngine *engine, void *u)
 
static QScriptValue acquireFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue acquireDarkFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue statusFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue acquireStatusFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue processStatusFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue acquireCancelFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue acquireScalersFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue triggerFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue exposureTimeFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue summedExposuresFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue skippedExposuresFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue darkSummedExposuresFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue phasesInGroupFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue preTriggerFilesFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue postTriggerFilesFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue filePatternFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue outputDirectoryFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue fileIndexFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue dataFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue darkFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue maskFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue overflowFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue liveDataFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue helpFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue processFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue setFileNormalizationFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue matchFilesFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue extraChannelFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue mapUserFunctionFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue timeStampFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue detectorFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue roiFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue newDataGroupFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue newDataArrayFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue newDataColumnFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue newDataColumnScanFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue newDataImageFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue newIntegratedDataFunc (QScriptContext *context, QScriptEngine *engine)
 
static QScriptValue QPointFToScriptValue (QScriptEngine *engine, const QPointF &in)
 
static void QPointFFromScriptValue (const QScriptValue &object, QPointF &pt)
 

Private Attributes

QMutex m_Mutex
 
QxrdApplicationWPtr m_Application
 
QxrdExperimentWPtr m_Experiment
 
QxrdAcquisitionWPtr m_Acquisition
 
QxrdDataProcessorWPtr m_DataProcessor
 
QxrdWindowWPtr m_Window
 
FILE * m_ScriptOutput
 

Detailed Description

Definition at line 19 of file qxrdscriptengine.h.

Constructor & Destructor Documentation

QxrdScriptEngine::QxrdScriptEngine ( QxrdApplicationWPtr  app,
QxrdExperimentWPtr  exp 
)

Definition at line 43 of file qxrdscriptengine.cpp.

References DEBUG_CONSTRUCTORS, and qcepDebug().

44  : QcepScriptEngine(),
45  m_Mutex(QMutex::Recursive),
46  m_Application(app),
47  m_Experiment(exp),
48  m_Acquisition(),
50  m_Window(),
51  m_ScriptOutput(NULL)
52 {
54  printf("QxrdScriptEngine::QxrdScriptEngine(%p)\n", this);
55  }
56 }
qint64 qcepDebug(int cond)
Definition: qcepdebug.cpp:26
QxrdExperimentWPtr m_Experiment
QxrdWindowWPtr m_Window
QcepScriptEngine(QObject *parent=0)
QxrdApplicationWPtr m_Application
QxrdDataProcessorWPtr m_DataProcessor
QxrdAcquisitionWPtr m_Acquisition

Here is the call graph for this function:

QxrdScriptEngine::~QxrdScriptEngine ( )
virtual

Definition at line 58 of file qxrdscriptengine.cpp.

References DEBUG_CONSTRUCTORS, m_ScriptOutput, and qcepDebug().

59 {
61  printf("QxrdScriptEngine::~QxrdScriptEngine(%p)\n", this);
62  }
63 
64  if (m_ScriptOutput) {
65  fclose(m_ScriptOutput);
66  }
67 }
qint64 qcepDebug(int cond)
Definition: qcepdebug.cpp:26

Here is the call graph for this function:

Member Function Documentation

static QScriptValue QxrdScriptEngine::acquireCancelFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::acquireDarkFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::acquireFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::acquireScalersFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::acquireStatusFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
QxrdAcquisitionWPtr QxrdScriptEngine::acquisition ( ) const

Definition at line 79 of file qxrdscriptengine.cpp.

References m_Acquisition.

Referenced by QCEP_DOC_FUNCTION().

80 {
81  return m_Acquisition;
82 }
QxrdAcquisitionWPtr m_Acquisition

Here is the caller graph for this function:

QxrdApplicationWPtr QxrdScriptEngine::application ( ) const

Definition at line 69 of file qxrdscriptengine.cpp.

References m_Application.

Referenced by QCEP_DOC_FUNCTION().

70 {
71  return m_Application;
72 }
QxrdApplicationWPtr m_Application

Here is the caller graph for this function:

void QxrdScriptEngine::appResultAvailable ( QScriptValue  res)
signal

Referenced by evaluateScript(), and QxrdExperiment::openWindows().

Here is the caller graph for this function:

void QxrdScriptEngine::cancelCommand ( )

Definition at line 260 of file qxrdscriptengine.cpp.

261 {
262  abortEvaluation();
263 }
void QxrdScriptEngine::closeScriptOutput ( )
slot

Referenced by QCEP_DOC_FUNCTION().

Here is the caller graph for this function:

QString QxrdScriptEngine::convertToString ( QScriptValue  result)
staticslot

Definition at line 185 of file qxrdscriptengine.cpp.

Referenced by QxrdSimpleServer::finishedCommand(), and QxrdWindow::finishedCommand().

186 {
187  if (result.isError()) {
188  return "ERROR : "+result.property("error").toString();
189  } else if (result.isArray()) {
190  int len = result.property("length").toInteger();
191 
192  QString s = "[";
193 
194  for (int i=0; i<len; i++) {
195  s += convertToString(result.property(tr("%1").arg(i)));
196 
197  if (i<len-1) {
198  s += ", ";
199  }
200  }
201 
202  s += "]";
203 
204  return s;
205 
206  } else if (result.isObject()) {
207  QScriptValueIterator it(result);
208 
209  QString s = "{";
210 
211  while(it.hasNext()) {
212  it.next();
213 
214  s += it.name()+":";
215  s += convertToString(it.value());
216 
217  if (it.hasNext()) {
218  s += ", ";
219  }
220  }
221 
222  s += "}";
223 
224  return s;
225 
226  } else {
227  return result.toString();
228  }
229 }
static QString convertToString(QScriptValue result)

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::darkFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::darkSummedExposuresFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::dataFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
QxrdDataProcessorWPtr QxrdScriptEngine::dataProcessor ( ) const

Definition at line 89 of file qxrdscriptengine.cpp.

References m_DataProcessor.

Referenced by QCEP_DOC_FUNCTION().

90 {
91  return m_DataProcessor;
92 }
QxrdDataProcessorWPtr m_DataProcessor

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::detectorFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
void QxrdScriptEngine::dumpLocks ( )
slot
void QxrdScriptEngine::evaluateAppCommand ( QString  cmd)
slot

Definition at line 125 of file qxrdscriptengine.cpp.

References INVOKE_CHECK, lock(), and m_Mutex.

Referenced by QxrdExperiment::openWindows().

126 {
127  QcepMutexLocker lock(__FILE__, __LINE__, &m_Mutex);
128 
129  // printf("QxrdScriptingEngine::evaluateAppCommand(%s)\n", qPrintable(expr));
130 
131  INVOKE_CHECK(QMetaObject::invokeMethod(this, "evaluateScript", Qt::QueuedConnection, Q_ARG(int, 0), Q_ARG(QString, expr)));
132 }
#define INVOKE_CHECK(res)
Definition: qcepmacros.h:13

Here is the call graph for this function:

Here is the caller graph for this function:

void QxrdScriptEngine::evaluateScript ( int  src,
QString  cmd 
)
privateslot

Definition at line 231 of file qxrdscriptengine.cpp.

References appResultAvailable(), DEBUG_LOGSCRIPTS, m_Experiment, qcepDebug(), simpleServerResultAvailable(), specResultAvailable(), and THREAD_CHECK.

232 {
233  THREAD_CHECK;
234 
235  // printf("QxrdScriptingEngine::evaluateScript(%s)\n", qPrintable(expr));
236 
237  QScriptValue result = QScriptEngine::evaluate(expr);
238 
241 
242  if (exp) {
243  exp->printMessage(tr("Evaluate[%1] %2 = %3").arg(src).arg(expr).arg(result.toString()));
244  }
245  }
246 
247  switch (src) {
248  case 0:
249  emit appResultAvailable(result);
250  break;
251  case 1:
252  emit simpleServerResultAvailable(result);
253  break;
254  case 2:
255  emit specResultAvailable(result);
256  break;
257  }
258 }
QSharedPointer< QxrdExperiment > QxrdExperimentPtr
qint64 qcepDebug(int cond)
Definition: qcepdebug.cpp:26
QxrdExperimentWPtr m_Experiment
void appResultAvailable(QScriptValue res)
#define THREAD_CHECK
Definition: qcepmacros.h:11
void simpleServerResultAvailable(QScriptValue cmd)
void specResultAvailable(QScriptValue cmd)

Here is the call graph for this function:

void QxrdScriptEngine::evaluateSimpleServerCommand ( QString  cmd)
slot

Definition at line 134 of file qxrdscriptengine.cpp.

References INVOKE_CHECK, lock(), and m_Mutex.

Referenced by QxrdExperiment::initialize().

135 {
136  QcepMutexLocker lock(__FILE__, __LINE__, &m_Mutex);
137 
138  // printf("QxrdScriptingEngine::evaluateServerCommand(%s)\n", qPrintable(expr));
139 
140  INVOKE_CHECK(QMetaObject::invokeMethod(this, "evaluateScript", Qt::QueuedConnection, Q_ARG(int, 1), Q_ARG(QString, expr)));
141 }
#define INVOKE_CHECK(res)
Definition: qcepmacros.h:13

Here is the call graph for this function:

Here is the caller graph for this function:

void QxrdScriptEngine::evaluateSpecCommand ( QString  cmd)
slot

Definition at line 143 of file qxrdscriptengine.cpp.

References INVOKE_CHECK, lock(), and m_Mutex.

Referenced by QxrdExperiment::initialize().

144 {
145  QcepMutexLocker lock(__FILE__, __LINE__, &m_Mutex);
146 
147  // printf("QxrdScriptingEngine::evaluateSpecCommand(%s)\n", qPrintable(expr));
148 
149  INVOKE_CHECK(QMetaObject::invokeMethod(this, "evaluateScript", Qt::QueuedConnection, Q_ARG(int, 2), Q_ARG(QString, expr)));
150 }
#define INVOKE_CHECK(res)
Definition: qcepmacros.h:13

Here is the call graph for this function:

Here is the caller graph for this function:

QxrdExperimentWPtr QxrdScriptEngine::experiment ( ) const

Definition at line 74 of file qxrdscriptengine.cpp.

References m_Experiment.

Referenced by loadScript(), and QCEP_DOC_FUNCTION().

75 {
76  return m_Experiment;
77 }
QxrdExperimentWPtr m_Experiment

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::exposureTimeFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::extraChannelFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::fcloseFunc ( QScriptContext *  context,
QScriptEngine *  engine,
void *  u 
)
staticprivate
static QScriptValue QxrdScriptEngine::fdeleteFunc ( QScriptContext *  context,
QScriptEngine *  engine,
void *  u 
)
staticprivate
static QScriptValue QxrdScriptEngine::fileIndexFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::filePatternFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::fopenFunc ( QScriptContext *  context,
QScriptEngine *  engine,
void *  u 
)
staticprivate
static QScriptValue QxrdScriptEngine::fprintFunc ( QScriptContext *  context,
QScriptEngine *  engine,
void *  u 
)
staticprivate
bool QxrdScriptEngine::hasUncaughtException ( ) const

Definition at line 265 of file qxrdscriptengine.cpp.

References lock(), and m_Mutex.

Referenced by loadScript().

266 {
267  QcepMutexLocker lock(__FILE__, __LINE__, &m_Mutex);
268 
269  return QScriptEngine::hasUncaughtException();
270 }

Here is the call graph for this function:

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::helpFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
void QxrdScriptEngine::initialize ( )
static QScriptValue QxrdScriptEngine::liveDataFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
void QxrdScriptEngine::loadScript ( QString  path)
slot

Definition at line 152 of file qxrdscriptengine.cpp.

References experiment(), hasUncaughtException(), INVOKE_CHECK, uncaughtExceptionLineNumber(), and uncaughtExceptionString().

153 {
154  if (QThread::currentThread() != thread()) {
155  INVOKE_CHECK(QMetaObject::invokeMethod(this, "loadScript", Qt::QueuedConnection, Q_ARG(QString, path)));
156  } else {
157  QFile scriptFile(path);
158 
159  if (scriptFile.open(QFile::ReadOnly)) {
160  QTextStream scriptStream(&scriptFile);
161  QString script = scriptStream.readAll();
162 
163  QScriptValue res = QScriptEngine::evaluate(script, path);
164 
166 
167  if (expt) {
168  if (hasUncaughtException()) {
169  expt->printLine(tr("Script error, file %1, line %2 : %3")
170  .arg(path).arg(uncaughtExceptionLineNumber()).arg(uncaughtExceptionString()));
171 
172  QStringList bt = uncaughtExceptionBacktrace();
173 
174  foreach (QString s, bt) {
175  expt->printLine(s);
176  }
177  } else {
178  expt->printLine(tr("= %1").arg(res.toString()));
179  }
180  }
181  }
182  }
183 }
QSharedPointer< QxrdExperiment > QxrdExperimentPtr
QString uncaughtExceptionString() const
#define INVOKE_CHECK(res)
Definition: qcepmacros.h:13
int uncaughtExceptionLineNumber() const
QxrdExperimentWPtr experiment() const
bool hasUncaughtException() const

Here is the call graph for this function:

void QxrdScriptEngine::lock ( )

Definition at line 115 of file qxrdscriptengine.cpp.

References m_Mutex.

Referenced by evaluateAppCommand(), evaluateSimpleServerCommand(), evaluateSpecCommand(), hasUncaughtException(), uncaughtExceptionLineNumber(), and uncaughtExceptionString().

116 {
117  m_Mutex.lock();
118 }

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::mapUserFunctionFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::maskFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::matchFilesFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::newDataArrayFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::newDataColumnFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::newDataColumnScanFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::newDataGroupFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::newDataImageFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::newIntegratedDataFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
void QxrdScriptEngine::openScriptOutput ( const QString &  fileName)
slot

Referenced by QCEP_DOC_FUNCTION().

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::outputDirectoryFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::overflowFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::phasesInGroupFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::postTriggerFilesFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::preTriggerFilesFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::printFunc ( QScriptContext *  context,
QScriptEngine *  engine,
void *  u 
)
staticprivate
static QScriptValue QxrdScriptEngine::processFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::processStatusFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static void QxrdScriptEngine::QPointFFromScriptValue ( const QScriptValue &  object,
QPointF &  pt 
)
staticprivate
static QScriptValue QxrdScriptEngine::QPointFToScriptValue ( QScriptEngine *  engine,
const QPointF &  in 
)
staticprivate
static QScriptValue QxrdScriptEngine::roiFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::setFileNormalizationFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
void QxrdScriptEngine::setWindow ( QxrdWindowWPtr  win)

Definition at line 94 of file qxrdscriptengine.cpp.

References m_Window, and QCEP_DOC_OBJECT().

95 {
96  m_Window = win;
97 
99 
100  if (w) {
101  QCEP_DOC_OBJECT("window", "The Experiment Main Window");
102  globalObject().setProperty("window", newQObject(w.data()));
103 
104  QCEP_DOC_OBJECT("imageGraph", "The Image Plot in the Main Experiment Window");
105  globalObject().setProperty("imageGraph", newQObject(w->m_ImagePlot));
106 
107  QCEP_DOC_OBJECT("centeringGraph", "The Center Finder Plot");
108  globalObject().setProperty("centeringGraph", newQObject(w->m_CenterFinderPlot));
109 
110  QCEP_DOC_OBJECT("integratorGraph", "The Integrated Data Plot");
111  globalObject().setProperty("integratorGraph", newQObject(w->m_IntegratorPlot));
112  }
113 }
QSharedPointer< QxrdWindow > QxrdWindowPtr
Definition: qxrdwindow-ptr.h:6
QxrdWindowWPtr m_Window
QCEP_DOC_OBJECT("JSON","Qt Built-in JSON Parser") QCEP_DOC_FUNCTION("JSON.parse"

Here is the call graph for this function:

void QxrdScriptEngine::simpleServerResultAvailable ( QScriptValue  cmd)
signal

Referenced by evaluateScript(), and QxrdExperiment::initialize().

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::skippedExposuresFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
void QxrdScriptEngine::specResultAvailable ( QScriptValue  cmd)
signal

Referenced by evaluateScript(), and QxrdExperiment::initialize().

Here is the caller graph for this function:

static QScriptValue QxrdScriptEngine::statusFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::summedExposuresFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::timeStampFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
static QScriptValue QxrdScriptEngine::triggerFunc ( QScriptContext *  context,
QScriptEngine *  engine 
)
staticprivate
int QxrdScriptEngine::uncaughtExceptionLineNumber ( ) const

Definition at line 272 of file qxrdscriptengine.cpp.

References lock(), and m_Mutex.

Referenced by loadScript().

273 {
274  QcepMutexLocker lock(__FILE__, __LINE__, &m_Mutex);
275 
276  return QScriptEngine::uncaughtExceptionLineNumber();
277 }

Here is the call graph for this function:

Here is the caller graph for this function:

QString QxrdScriptEngine::uncaughtExceptionString ( ) const

Definition at line 279 of file qxrdscriptengine.cpp.

References lock(), and m_Mutex.

Referenced by loadScript().

280 {
281  QcepMutexLocker lock(__FILE__, __LINE__, &m_Mutex);
282 
283  return uncaughtException().toString();
284 }

Here is the call graph for this function:

Here is the caller graph for this function:

void QxrdScriptEngine::unlock ( )

Definition at line 120 of file qxrdscriptengine.cpp.

References m_Mutex.

121 {
122  m_Mutex.unlock();
123 }
QxrdWindowWPtr QxrdScriptEngine::window ( ) const

Definition at line 84 of file qxrdscriptengine.cpp.

References m_Window.

85 {
86  return m_Window;
87 }
QxrdWindowWPtr m_Window
void QxrdScriptEngine::writeScriptOutput ( const QString &  outputLine)
slot

Referenced by QCEP_DOC_FUNCTION().

Here is the caller graph for this function:

Member Data Documentation

QxrdAcquisitionWPtr QxrdScriptEngine::m_Acquisition
private

Definition at line 124 of file qxrdscriptengine.h.

Referenced by acquisition().

QxrdApplicationWPtr QxrdScriptEngine::m_Application
private

Definition at line 122 of file qxrdscriptengine.h.

Referenced by application().

QxrdDataProcessorWPtr QxrdScriptEngine::m_DataProcessor
private

Definition at line 125 of file qxrdscriptengine.h.

Referenced by dataProcessor().

QxrdExperimentWPtr QxrdScriptEngine::m_Experiment
private

Definition at line 123 of file qxrdscriptengine.h.

Referenced by evaluateScript(), and experiment().

QMutex QxrdScriptEngine::m_Mutex
mutableprivate
FILE* QxrdScriptEngine::m_ScriptOutput
private

Definition at line 127 of file qxrdscriptengine.h.

Referenced by ~QxrdScriptEngine().

QxrdWindowWPtr QxrdScriptEngine::m_Window
private

Definition at line 126 of file qxrdscriptengine.h.

Referenced by setWindow(), and window().


The documentation for this class was generated from the following files: