Built-in network analyzer using a directional coupler in coherent pulse NMR system. More...
#include <pulseanalyzer.h>

Classes | |
| struct | Payload |
Public Member Functions | |
| XNMRBuiltInNetworkAnalyzer (const char *name, bool runtime, Transaction &tr_meas, const shared_ptr< XMeasure > &meas) | |
| virtual void | showForms () |
| Shows all forms belonging to driver. | |
| virtual void | onStartFreqChanged (const Snapshot &shot, XValueNodeBase *) |
| virtual void | onStopFreqChanged (const Snapshot &shot, XValueNodeBase *) |
| virtual void | onAverageChanged (const Snapshot &shot, XValueNodeBase *) |
| virtual void | onPointsChanged (const Snapshot &shot, XValueNodeBase *) |
| virtual void | onCalOpenTouched (const Snapshot &shot, XTouchableNode *) |
| virtual void | onCalShortTouched (const Snapshot &shot, XTouchableNode *) |
| virtual void | onCalTermTouched (const Snapshot &shot, XTouchableNode *) |
| virtual void | onCalThruTouched (const Snapshot &shot, XTouchableNode *) |
| virtual void | getMarkerPos (unsigned int num, double &x, double &y) |
| virtual void | oneSweep () |
| virtual void | startContSweep () |
| virtual void | acquireTrace (shared_ptr< RawData > &, unsigned int ch) |
| virtual void | convertRaw (RawDataReader &reader, Transaction &tr) throw (XRecordError&) |
| Converts raw to dispaly-able. | |
| virtual void | open () throw (XKameError &) |
| Be called just after opening interface. Call start() inside this routine appropriately. | |
| virtual void | closeInterface () |
Public Member Functions inherited from XSecondaryDriverInterface< XNetworkAnalyzer > | |
| XSecondaryDriverInterface (const char *name, bool runtime, Transaction &tr_meas, const shared_ptr< XMeasure > &meas) | |
Public Member Functions inherited from XNetworkAnalyzer | |
| XNetworkAnalyzer (const char *name, bool runtime, Transaction &tr_meas, const shared_ptr< XMeasure > &meas) | |
| virtual | ~XNetworkAnalyzer () |
| usually nothing to do. | |
Public Member Functions inherited from XPrimaryDriverWithThread | |
| XPrimaryDriverWithThread (const char *name, bool runtime, Transaction &tr_meas, const shared_ptr< XMeasure > &meas) | |
Public Member Functions inherited from XPrimaryDriver | |
| XPrimaryDriver (const char *name, bool runtime, Transaction &tr_meas, const shared_ptr< XMeasure > &meas) | |
Public Member Functions inherited from XDriver | |
| XDriver (const char *name, bool runtime, Transaction &tr_meas, const shared_ptr< XMeasure > &meas) | |
Public Member Functions inherited from XNode | |
| XNode (const char *name, bool runtime=false) | |
| template<class T > | |
| shared_ptr< T > | create (const char *name) |
| template<class T , typename... Args> | |
| shared_ptr< T > | create (const char *name, bool runtime, Args &&...args) |
| template<class T > | |
| shared_ptr< T > | create (Transaction &tr, const char *name) |
| template<class T , typename... Args> | |
| shared_ptr< T > | create (Transaction &tr, const char *name, bool runtime, Args &&...args) |
| XString | getName () const |
| virtual XString | getLabel () const |
| XString | getTypename () const |
| shared_ptr< XNode > | getChild (const XString &var) const |
| shared_ptr< XNode > | getParent () const |
| void | setUIEnabled (bool v) |
| Enables/disables controls over scripting/GUI. | |
| void | disable () |
| Disables all scripting/GUI operations on this node hereafter. | |
Public Member Functions inherited from Transactional::Node< XNode > | |
| bool | insert (Transaction< XNode > &tr, const shared_ptr< XNode > &var, bool online_after_insertion=false) |
| void | insert (const shared_ptr< XNode > &var) |
| bool | release (Transaction< XNode > &tr, const shared_ptr< XNode > &var) |
| void | release (const shared_ptr< XNode > &var) |
| void | releaseAll () |
| bool | swap (Transaction< XNode > &tr, const shared_ptr< XNode > &x, const shared_ptr< XNode > &y) |
| void | swap (const shared_ptr< XNode > &x, const shared_ptr< XNode > &y) |
| XNode * | upperNode (Snapshot< XNode > &shot) |
| Finds the parent node in shot. | |
| Snapshot< XNode > | iterate_commit (Closure) |
| Snapshot< XNode > | iterate_commit_if (Closure) |
| void | iterate_commit_while (Closure) |
| void | print_ () const |
| Node (const Node &)=delete | |
| Node & | operator= (const Node &)=delete |
Protected Member Functions | |
| virtual void | analyze (Transaction &tr, const Snapshot &shot_emitter, const Snapshot &shot_others, XDriver *emitter) throw (XRecordError&) |
| This function is called when a connected driver emit a signal. | |
| virtual void | visualize (const Snapshot &shot) |
| virtual bool | checkDependency (const Snapshot &shot_this, const Snapshot &shot_emitter, const Snapshot &shot_others, XDriver *emitter) const |
Protected Member Functions inherited from XSecondaryDriverInterface< XNetworkAnalyzer > | |
| void | connect (const shared_ptr< XPointerItemNode< XDriverList > > &selecter) |
| Call this to receive signal/data. | |
| void | requestAnalysis () |
| virtual void | start () |
| usually nothing to do | |
| virtual void | stop () |
| usually nothing to do | |
Protected Member Functions inherited from XNetworkAnalyzer | |
| virtual void | analyzeRaw (RawDataReader &reader, Transaction &tr) throw (XRecordError&) |
| const shared_ptr< XScalarEntry > & | marker1X () const |
| driver specific part below | |
| const shared_ptr< XScalarEntry > & | marker1Y () const |
| const shared_ptr< XScalarEntry > & | marker2X () const |
| const shared_ptr< XScalarEntry > & | marker2Y () const |
| const shared_ptr< XDoubleNode > & | startFreq () const |
| const shared_ptr< XDoubleNode > & | stopFreq () const |
| const shared_ptr< XComboNode > & | points () const |
| const shared_ptr< XUIntNode > & | average () const |
|
const shared_ptr < XTouchableNode > & | calOpen () const |
|
const shared_ptr < XTouchableNode > & | calShort () const |
|
const shared_ptr < XTouchableNode > & | calTerm () const |
|
const shared_ptr < XTouchableNode > & | calThru () const |
Private Types | |
| enum | { CAL_NONE = 0, CAL_OPEN = 1, CAL_SHORT = 2, CAL_TERM = 3, CAL_THRU = 4 } |
Private Member Functions | |
| void | clear () |
| void | restart (Transaction &tr, int calmode, bool clear=false) |
| bool | restart (int calmode, bool clear=false) |
| void | writeTraceAndMarkers (Transaction &tr) |
Private Attributes | |
|
const shared_ptr< XItemNode < XDriverList, XPulser > > | m_pulser |
|
const shared_ptr< XItemNode < XDriverList, XDSO > > | m_dso |
|
const shared_ptr< XItemNode < XDriverList, XSG > > | m_sg |
| shared_ptr< FFT > | m_fft |
|
std::vector< std::complex < double > > | m_fftin |
|
std::vector< std::complex < double > > | m_fftout |
Additional Inherited Members | |
Public Types inherited from Transactional::Node< XNode > | |
| using | NodeNotFoundError = std::domain_error |
| using | NodeList = fast_vector< shared_ptr< XNode >, 2 > |
| using | iterator = typename NodeList::iterator |
| using | const_iterator = typename NodeList::const_iterator |
Static Public Member Functions inherited from XNode | |
| template<class T__ > | |
| static shared_ptr< T__ > | createOrphan (const char *name) |
| template<class T__ , typename... Args_> | |
| static shared_ptr< T__ > | createOrphan (const char *name, bool runtime, Args_ &&...args) |
Built-in network analyzer using a directional coupler in coherent pulse NMR system.
Definition at line 24 of file pulseanalyzer.h.
|
protectedvirtual |
Checks if the connected drivers have valid time stamps.
Implements XSecondaryDriverInterface< XNetworkAnalyzer >.
Definition at line 298 of file pulseanalyzer.cpp.
|
inlinevirtual |
Be called for closing interfaces. This function should not cause an exception.
Implements XPrimaryDriverWithThread.
Definition at line 65 of file pulseanalyzer.h.
|
protectedvirtual |
This function is called inside analyze() or analyzeRaw() this must be reentrant unlike analyze()
Implements XSecondaryDriverInterface< XNetworkAnalyzer >.
Definition at line 435 of file pulseanalyzer.cpp.
References XNetworkAnalyzer::visualize().
1.8.3