Scanframe Modular Application 0.1.0
Loading...
Searching...
No Matches
sf::ScanBinder Class Referenceabstract

Abstract base class for implementing scan binders. More...

#include <ScanBinder.h>

Inheritance diagram for sf::ScanBinder:
Collaboration diagram for sf::ScanBinder:

Classes

struct  InfoBase
 Structure used a base class for derived binder classes to store scan dependant information. More...
 
struct  Parameters
 Mandatory structure for initialization of derive class. More...
 

Public Types

enum  EState {
  sbsCFGERR = -2 , sbsERROR = -1 , sbsNOINIT = 0 , sbsABORTED ,
  sbsREADY , sbsWAITING , sbsSUSPENDED , sbsACTIVE ,
  sbsCHECKING , sbsSCANNING , sbsEVALUATING
}
 
- Public Types inherited from sf::ScriptObject
enum  EIdentifier {
  idUnknown = 0 , idConstant , idVariable , idFunction ,
  idTypedef , idKeyword
}
 Keyword identifiers. More...
 
typedef std::string::size_type pos_type
 Source position type.
 
typedef ssize_t ip_type
 Instruction pointer type.
 

Public Member Functions

 ScanBinder (const Parameters &parameters)
 
 ~ScanBinder () override
 
void ReadWriteConfig (bool rd)
 
ConfigStoreGetSaveState ()
 
virtual void AddPropertyPages (PropertySheetDialog *sheet)
 
void NewScanEntry (ScanEntry *se)
 
void DeleteScanEntry (const ScanEntry *se)
 
void DoAddPropertyPages (PropertySheetDialog *sheet, bool scan)
 
QWidget * DoGetFrame ()
 
void DoReadProfile (IniProfile &inifile)
 
void DoWriteProfile (IniProfile &inifile)
 
bool DoPreInitialize ()
 
bool DoInitialize ()
 
void DoSustain (timespec clk)
 
void DoClear ()
 
bool DoSuspend (bool immediate)
 
bool DoResume ()
 
bool DoStop ()
 
bool DoAbort ()
 
bool DoMoveTo (int scan, int index=-1, double frac=0.0, bool rect=false)
 
bool DoMoveToQuery (int scan)
 
bool DoMoveToSysPos (ESystemPosition sp)
 
bool DoCheck (int scan)
 
bool DoScan (int scan)
 
bool DoEvaluate (int scan)
 
bool DoActivate (int scan)
 
bool DoRotate (int scan, int index=-1)
 
bool CanRotate (int scan) const
 
bool IsRotating () const
 
int DoGetIndex () const
 
Vector3D DoGetOffset () const
 
const char * GetStateName () const
 
EState GetState () const
 
const gmi::AxesCoordGetVelocity () const
 
const gmi::AxesCoordGetAcceleration () const
 
const gmi::AxesCoordGetParkPosition () const
 
const gmi::AxesCoordGetToolPosition () const
 
const Vector3D & GetFixtureOffset () const
 
const VariableGetMediumVelocity () const
 
int GetActiveScanIndex () const
 
double GetScanProgress () const
 
bool CanAllocateController () const
 
bool IsControllerAllocated () const
 
bool AllocateController (bool alloc)
 
gmi::ControllerGetController ()
 
const gmi::ControllerGetController () const
 
void SetAcqPopManual (RsaTypes::EPopManual pop_manual)
 
bool IsAcqPopManualReady () const
 
void SetProgVelocityEnable (bool enabled)
 
bool GetProgVelocityEnable () const
 
const Variable::PtrVectorGetVars () const
 
- Public Member Functions inherited from sf::ProjectScriptObject
 ProjectScriptObject (const char *type_name)
 Constructor.
 
 ~ProjectScriptObject () override
 Virtual overridden destructor.
 
void AddScriptParam (const std::string &name, Variable *variable)
 Adds the passed variable as a parameter in the script.
 
- Public Member Functions inherited from sf::ScriptObject
 ScriptObject (const char *type_name, ScriptObject *parent=nullptr)
 
virtual ~ScriptObject ()=default
 Virtual destructor which can be overloaded to clean up objects.
 
virtual std::string getStatusText ()
 Gets the status text of this object for debugging purposes.
 
int getRefCount () const
 Gets the reference count.
 
 operator Value () const
 Cast operator to be able to return this instance as a Value.
 
std::string getTypeName () const
 Returns the type name Set at the constructor.
 
ScriptObjectgetParent ()
 Gets the script object owner.
 
const ScriptObjectgetParent () const
 Gets the script object owner.
 
ScriptObjectcastToObject (const Value &value)
 Casts a sf::Value::vitCustom typed sf::Value to a ScriptObject typed pointer.
 

Static Public Member Functions

static const char * GetStateName (EState state)
 
- Static Public Member Functions inherited from sf::ScriptObject
static const IdInfogetInfoUnknown ()
 Returns the static Info structure for unknowns.
 

Protected Member Functions

bool GetScanPos (gmi::AxesCoord &pos, int scan, int index, double frac, bool rect) const
 
int GetScanIndex ()
 
ScanMethodGetScan (int scan) const
 
bool SetState (EState state)
 
InfoBaseGetScanInfo (int scan)
 
const InfoBaseGetScanInfo (int scan) const
 
InfoBaseGetScanInfo (const ScanMethod *sm)
 
const InfoBaseGetScanInfo (const ScanMethod *sm) const
 
virtual InfoBaseNewScanInfo ()=0
 
virtual void StateChange (EState prev, EState cur)=0
 
virtual void AddPropertyPages (PropertySheetDialog *sheet, bool scan)=0
 
virtual void ReadProfile (IniProfile &inifile)=0
 
virtual void WriteProfile (IniProfile &inifile)=0
 
virtual int GetIndex ()=0
 
virtual void Clear ()=0
 
virtual void Sustain (timespec)=0
 
virtual bool Initialize ()=0
 
virtual bool Suspend (bool immediate)=0
 
virtual bool Resume ()=0
 
virtual bool Stop ()=0
 
virtual bool Abort ()=0
 
virtual bool MoveTo (int scan, int index, double frac, bool rect)=0
 
virtual bool Check (int scan)=0
 
virtual bool Scan (int scan)=0
 
virtual bool Evaluate (int scan)=0
 
virtual bool Activate (int scan)=0
 
virtual bool Rotate (int scan, int index)=0
 
virtual QWidget * GetFrame ()=0
 
virtual Vector3D GetOffset () const
 
virtual bool GetGenericInfoList (StringList &)=0
 
ProjectDataGetProjectData ()
 
const IdInfogetInfo (const std::string &name) const override
 Overridden from base class.
 
bool getSetValue (const ScriptObject::IdInfo *info, Value *value, Value::vector_type *params, bool flag_set) override
 Overridden from base class.
 
virtual void DoReadWriteConfig (IniEnvelope &ini, bool rd)
 
- Protected Member Functions inherited from sf::ProjectScriptObject
void destroyObject (bool &should_delete) override
 Overridden from base class.
 
- Protected Member Functions inherited from sf::ScriptObject
void makeParent (ScriptObject *so)
 Makes this object the owner of the other object.
 
void setParent (ScriptObject *parent)
 Sets the owner to the pass script object.
 

Detailed Description

Abstract base class for implementing scan binders.

Member Enumeration Documentation

◆ EState

Enumerator
sbsCFGERR 

Binder a configuration error.

sbsERROR 

Execution resulted in an error.

sbsNOINIT 

Binder has not been initialized.

sbsABORTED 

Binder movement was aborted abruptly.

sbsREADY 

Waiting for activation by a command and the controller is freed.

sbsWAITING 

Waiting to execute.

sbsSUSPENDED 

Execution of the current task is suspended.

sbsACTIVE 

Binder is active and the controller is allocated.

sbsCHECKING 

Binder is active and the controller is allocated.

sbsSCANNING 

Binder is active and scanning.

sbsEVALUATING 

Binder is active and evaluating.

Constructor & Destructor Documentation

◆ ScanBinder()

sf::ScanBinder::ScanBinder ( const Parameters parameters)
explicit

◆ ~ScanBinder()

sf::ScanBinder::~ScanBinder ( )
override

Member Function Documentation

◆ Abort()

virtual bool sf::ScanBinder::Abort ( )
protectedpure virtual

◆ Activate()

virtual bool sf::ScanBinder::Activate ( int  scan)
protectedpure virtual

◆ AddPropertyPages() [1/2]

virtual void sf::ScanBinder::AddPropertyPages ( PropertySheetDialog sheet)
virtual

◆ AddPropertyPages() [2/2]

virtual void sf::ScanBinder::AddPropertyPages ( PropertySheetDialog sheet,
bool  scan 
)
protectedpure virtual

◆ AllocateController()

bool sf::ScanBinder::AllocateController ( bool  alloc)

◆ CanAllocateController()

bool sf::ScanBinder::CanAllocateController ( ) const
inline

◆ CanRotate()

bool sf::ScanBinder::CanRotate ( int  scan) const

◆ Check()

virtual bool sf::ScanBinder::Check ( int  scan)
protectedpure virtual

◆ Clear()

virtual void sf::ScanBinder::Clear ( )
protectedpure virtual

◆ DeleteScanEntry()

void sf::ScanBinder::DeleteScanEntry ( const ScanEntry se)

◆ DoAbort()

bool sf::ScanBinder::DoAbort ( )

◆ DoActivate()

bool sf::ScanBinder::DoActivate ( int  scan)

◆ DoAddPropertyPages()

void sf::ScanBinder::DoAddPropertyPages ( PropertySheetDialog sheet,
bool  scan 
)

◆ DoCheck()

bool sf::ScanBinder::DoCheck ( int  scan)

◆ DoClear()

void sf::ScanBinder::DoClear ( )

◆ DoEvaluate()

bool sf::ScanBinder::DoEvaluate ( int  scan)

◆ DoGetFrame()

QWidget * sf::ScanBinder::DoGetFrame ( )

◆ DoGetIndex()

int sf::ScanBinder::DoGetIndex ( ) const

◆ DoGetOffset()

Vector3D sf::ScanBinder::DoGetOffset ( ) const

◆ DoInitialize()

bool sf::ScanBinder::DoInitialize ( )

◆ DoMoveTo()

bool sf::ScanBinder::DoMoveTo ( int  scan,
int  index = -1,
double  frac = 0.0,
bool  rect = false 
)

◆ DoMoveToQuery()

bool sf::ScanBinder::DoMoveToQuery ( int  scan)

◆ DoMoveToSysPos()

bool sf::ScanBinder::DoMoveToSysPos ( ESystemPosition  sp)

◆ DoPreInitialize()

bool sf::ScanBinder::DoPreInitialize ( )

◆ DoReadProfile()

void sf::ScanBinder::DoReadProfile ( IniProfile inifile)

◆ DoReadWriteConfig()

virtual void sf::ScanBinder::DoReadWriteConfig ( IniEnvelope ini,
bool  rd 
)
inlineprotectedvirtual

◆ DoResume()

bool sf::ScanBinder::DoResume ( )

◆ DoRotate()

bool sf::ScanBinder::DoRotate ( int  scan,
int  index = -1 
)

◆ DoScan()

bool sf::ScanBinder::DoScan ( int  scan)

◆ DoStop()

bool sf::ScanBinder::DoStop ( )

◆ DoSuspend()

bool sf::ScanBinder::DoSuspend ( bool  immediate)

◆ DoSustain()

void sf::ScanBinder::DoSustain ( timespec  clk)

◆ DoWriteProfile()

void sf::ScanBinder::DoWriteProfile ( IniProfile inifile)

◆ Evaluate()

virtual bool sf::ScanBinder::Evaluate ( int  scan)
protectedpure virtual

◆ GetAcceleration()

const gmi::AxesCoord & sf::ScanBinder::GetAcceleration ( ) const
inline

◆ GetActiveScanIndex()

int sf::ScanBinder::GetActiveScanIndex ( ) const

◆ GetController() [1/2]

gmi::Controller * sf::ScanBinder::GetController ( )

◆ GetController() [2/2]

const gmi::Controller * sf::ScanBinder::GetController ( ) const
inline

◆ GetFixtureOffset()

const Vector3D & sf::ScanBinder::GetFixtureOffset ( ) const

◆ GetFrame()

virtual QWidget * sf::ScanBinder::GetFrame ( )
protectedpure virtual

◆ GetGenericInfoList()

virtual bool sf::ScanBinder::GetGenericInfoList ( StringList )
protectedpure virtual

◆ GetIndex()

virtual int sf::ScanBinder::GetIndex ( )
protectedpure virtual

◆ getInfo()

const IdInfo * sf::ScanBinder::getInfo ( const std::string &  name) const
overrideprotectedvirtual

Overridden from base class.

Reimplemented from sf::ProjectScriptObject.

◆ GetMediumVelocity()

const Variable & sf::ScanBinder::GetMediumVelocity ( ) const
inline

◆ GetOffset()

virtual Vector3D sf::ScanBinder::GetOffset ( ) const
protectedvirtual

◆ GetParkPosition()

const gmi::AxesCoord & sf::ScanBinder::GetParkPosition ( ) const
inline

◆ GetProgVelocityEnable()

bool sf::ScanBinder::GetProgVelocityEnable ( ) const
inline

◆ GetProjectData()

ProjectData * sf::ScanBinder::GetProjectData ( )
inlineprotected

◆ GetSaveState()

ConfigStore & sf::ScanBinder::GetSaveState ( )
inline

◆ GetScan()

ScanMethod * sf::ScanBinder::GetScan ( int  scan) const
protected

◆ GetScanIndex()

int sf::ScanBinder::GetScanIndex ( )
protected

◆ GetScanInfo() [1/4]

InfoBase * sf::ScanBinder::GetScanInfo ( const ScanMethod sm)
protected

◆ GetScanInfo() [2/4]

const ScanBinder::InfoBase * sf::ScanBinder::GetScanInfo ( const ScanMethod sm) const
inlineprotected

◆ GetScanInfo() [3/4]

InfoBase * sf::ScanBinder::GetScanInfo ( int  scan)
protected

◆ GetScanInfo() [4/4]

const ScanBinder::InfoBase * sf::ScanBinder::GetScanInfo ( int  scan) const
inlineprotected

◆ GetScanPos()

bool sf::ScanBinder::GetScanPos ( gmi::AxesCoord pos,
int  scan,
int  index,
double  frac,
bool  rect 
) const
protected

◆ GetScanProgress()

double sf::ScanBinder::GetScanProgress ( ) const

◆ getSetValue()

bool sf::ScanBinder::getSetValue ( const ScriptObject::IdInfo info,
Value value,
Value::vector_type params,
bool  flag_set 
)
overrideprotectedvirtual

Overridden from base class.

Reimplemented from sf::ProjectScriptObject.

◆ GetState()

ScanBinder::EState sf::ScanBinder::GetState ( ) const
inline

◆ GetStateName() [1/2]

const char * sf::ScanBinder::GetStateName ( ) const
inline

◆ GetStateName() [2/2]

static const char * sf::ScanBinder::GetStateName ( EState  state)
static

◆ GetToolPosition()

const gmi::AxesCoord & sf::ScanBinder::GetToolPosition ( ) const
inline

◆ GetVars()

const Variable::PtrVector & sf::ScanBinder::GetVars ( ) const
inline

◆ GetVelocity()

const gmi::AxesCoord & sf::ScanBinder::GetVelocity ( ) const

◆ Initialize()

virtual bool sf::ScanBinder::Initialize ( )
protectedpure virtual

◆ IsAcqPopManualReady()

bool sf::ScanBinder::IsAcqPopManualReady ( ) const

◆ IsControllerAllocated()

bool sf::ScanBinder::IsControllerAllocated ( ) const
inline

◆ IsRotating()

bool sf::ScanBinder::IsRotating ( ) const
inline

◆ MoveTo()

virtual bool sf::ScanBinder::MoveTo ( int  scan,
int  index,
double  frac,
bool  rect 
)
protectedpure virtual

◆ NewScanEntry()

void sf::ScanBinder::NewScanEntry ( ScanEntry se)

◆ NewScanInfo()

virtual InfoBase * sf::ScanBinder::NewScanInfo ( )
protectedpure virtual

◆ ReadProfile()

virtual void sf::ScanBinder::ReadProfile ( IniProfile inifile)
protectedpure virtual

◆ ReadWriteConfig()

void sf::ScanBinder::ReadWriteConfig ( bool  rd)

◆ Resume()

virtual bool sf::ScanBinder::Resume ( )
protectedpure virtual

◆ Rotate()

virtual bool sf::ScanBinder::Rotate ( int  scan,
int  index 
)
protectedpure virtual

◆ Scan()

virtual bool sf::ScanBinder::Scan ( int  scan)
protectedpure virtual

◆ SetAcqPopManual()

void sf::ScanBinder::SetAcqPopManual ( RsaTypes::EPopManual  pop_manual)

◆ SetProgVelocityEnable()

void sf::ScanBinder::SetProgVelocityEnable ( bool  enabled)
inline

◆ SetState()

bool sf::ScanBinder::SetState ( EState  state)
protected

◆ StateChange()

virtual void sf::ScanBinder::StateChange ( EState  prev,
EState  cur 
)
protectedpure virtual

◆ Stop()

virtual bool sf::ScanBinder::Stop ( )
protectedpure virtual

◆ Suspend()

virtual bool sf::ScanBinder::Suspend ( bool  immediate)
protectedpure virtual

◆ Sustain()

virtual void sf::ScanBinder::Sustain ( timespec  )
protectedpure virtual

◆ WriteProfile()

virtual void sf::ScanBinder::WriteProfile ( IniProfile inifile)
protectedpure virtual

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