PARTONS  
PARtonic Tomography Of Nucleon Software
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
PARTONS::DVCSObservableService Class Reference

Singleton to handle and compute some pre-configured observable modules. More...

Inheritance diagram for PARTONS::DVCSObservableService:
PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult > PARTONS::ServiceObjectTyped< KinematicType, ResultType > PARTONS::ServiceObject PARTONS::BaseObject

Public Member Functions

virtual ~DVCSObservableService ()
 Destructor. More...
 
virtual void resolveObjectDependencies ()
 See parent class for details. More...
 
virtual DVCSObservableKinematic newKinematicFromTask (const Task &task) const
 Uses an automation task (XML file) to set specific kinematics. More...
 
virtual List< DVCSObservableKinematicnewListOfKinematicFromTask (const Task &task) const
 Uses an automation task (XML file) to set a list of kinematics. More...
 
virtual void storeResultListInDatabase (const List< DVCSObservableResult > &results) const
 Store list of results in DB. More...
 
virtual void generatePlotFileTask (Task &task)
 Method used in the automated interface to generate a data file ready for plotting. More...
 
DVCSProcessModulenewDVCSProcessModuleFromTask (const Task &task) const
 Uses an automation task (XML file) to configure a DVCSProcessModule. More...
 
DVCSObservablenewDVCSObservableModuleFromTask (const Task &task) const
 Uses an automation task (XML file) to configure a DVCSObservable. More...
 
- Public Member Functions inherited from PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >
virtual ~ObservableService ()
 Destructor. More...
 
virtual void computeTask (Task &task)
 Compute task. More...
 
DVCSObservableResult computeSingleKinematic (const DVCSObservableKinematic &observableKinematic, Observable< DVCSObservableKinematic, DVCSObservableResult > *pObservable, const List< GPDType > &gpdTypeList=List< GPDType >()) const
 Computes an Observable at specific kinematics. More...
 
List< DVCSObservableResultcomputeManyKinematic (const List< DVCSObservableKinematic > &listOfKinematic, Observable< DVCSObservableKinematic, DVCSObservableResult > *pObservable, const List< GPDType > &gpdTypeList=List< GPDType >())
 Computes an Observable for a list of kinematics. More...
 
- Public Member Functions inherited from PARTONS::ServiceObjectTyped< KinematicType, ResultType >
virtual ~ServiceObjectTyped ()
 Destructor. More...
 
void add (const ResultType &result)
 Add single result to result list. More...
 
void add (const List< ResultType > &resultList)
 Add many results to result list. More...
 
void sortResultList ()
 Sort result list. More...
 
List< ResultType > & getResultList ()
 Get result list. More...
 
void clearResultListBuffer ()
 Clear result list. More...
 
void clearKinematicListBuffer ()
 Clear kinematic list. More...
 
List< ResultType > computeScenario (Scenario &scenario)
 Compute scenario. More...
 
List< ResultType > flushResultList ()
 Flush result list. More...
 
- Public Member Functions inherited from PARTONS::ServiceObject
 ServiceObject (const std::string &className)
 Default constructor. More...
 
virtual ~ServiceObject ()
 Default destructor. More...
 
void addTasks (const List< ElemUtils::Packet > &tasks)
 Add task to queue. More...
 
bool isEmptyTaskQueue ()
 Check if queue is empty. More...
 
ElemUtils::Packet popTaskFormQueue ()
 Pop task from queue. More...
 
void initComputationalThread (ModuleObject *pModuleObject)
 Initialize all threads. More...
 
void launchAllThreadAndWaitingFor ()
 Lunch all threads. More...
 
void clearAllThread ()
 Clear all threads. More...
 
std::string generateSQLQueryForPlotFile (const std::string &tableName, const ElemUtils::Parameters &selectParams, const ElemUtils::Parameters &whereParams) const
 Generate SQL query to create a plot file. More...
 
void generatePlotFile (const std::string &filePath, const std::string &sqlQuery, const char splitChar) const
 Generate a plot file. More...
 
- Public Member Functions inherited from PARTONS::BaseObject
 BaseObject (const std::string &className)
 Constructor. More...
 
virtual ~BaseObject ()
 Default destructor. More...
 
virtual BaseObjectclone () const
 Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. More...
 
virtual std::string toString () const
 Return a pre-formatted characters string for output visualization of class member's values. More...
 
void serialize (ElemUtils::Packet &packet) const
 Used to split a complex C++ object into a concatenation of simple types. More...
 
void unserialize (ElemUtils::Packet &packet)
 Used to rebuild a complex C++ object from a concatenation of simple type. More...
 
bool operator< (const BaseObject &other) const
 Overload of < operator to sort BaseObject object by its indexId value. More...
 
const std::string & getClassName () const
 
unsigned int getObjectId () const
 
int getIndexId () const
 
void setIndexId (int indexId)
 

Static Public Attributes

static const unsigned int classId
 Unique ID to automatically register the class in the registry. More...
 
- Static Public Attributes inherited from PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >
static const std::string OBSERVABLE_SERVICE_COMPUTE_SINGLE_KINEMATIC
 Name of the XML task used to compute an Observable at given kinematics. More...
 
static const std::string OBSERVABLE_SERVICE_COMPUTE_MANY_KINEMATIC
 Name of the XML task used to compute an Observable for a list of kinematics. More...
 
static const std::string OBSERVABLE_SERVICE_GENERATE_PLOT_FILE
 Name of the XML task used for generating a data file ready for plotting. More...
 
- Static Public Attributes inherited from PARTONS::ServiceObjectTyped< KinematicType, ResultType >
static const std::string SERVICE_OBJECT_PRINT_RESULTS
 Name of the XML task used to print results via Logger. More...
 

Protected Member Functions

 DVCSObservableService (const std::string &className)
 Default constructor. More...
 
virtual ProcessModule< DVCSObservableKinematic, DVCSObservableResult > * newProcessModuleFromTask (const Task &task) const
 Uses an automation task (XML file) to configure a ProcessModule, e.g. a DVCSModule. More...
 
virtual Observable< DVCSObservableKinematic, DVCSObservableResult > * newObservableModuleFromTask (const Task &task) const
 Uses an automation task (XML file) to configure an Observable. More...
 
- Protected Member Functions inherited from PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >
 ObservableService (const std::string &className)
 Default constructor. More...
 
- Protected Member Functions inherited from PARTONS::ServiceObjectTyped< KinematicType, ResultType >
 ServiceObjectTyped (const std::string &className)
 Default constructor. More...
 
bool computeGeneralTask (Task &task)
 General tasks. More...
 
void printResultListBuffer ()
 Print results to buffer. More...
 
void updateResultInfo (ResultType &result, const ResultInfo &resultInfo)
 Update result info. More...
 
void updateResultInfo (List< ResultType > &resultList, const ResultInfo &resultInfo)
 Update result info. More...
 
- Protected Member Functions inherited from PARTONS::ServiceObject
std::string generateSQLQueryForPlotFileTask (Task &task, const std::string &tableName) const
 Generate SQL query from a task. More...
 
std::string getOutputFilePathForPlotFileTask (Task &task) const
 Get path to a plot file from a task. More...
 
List< GPDTypegetGPDTypeListFromTask (Task &task) const
 Get list of GPD types to be computed from a task. More...
 
List< CollinearDistributionTypegetCollinearDistributionTypeListFromTask (Task &task) const
 Get list of Collinear Distribution types to be computed from a task. More...
 
void errorUnknownMethod (const Task &task) const
 Throw exception if unknown method. More...
 
- Protected Member Functions inherited from PARTONS::BaseObject
 BaseObject (const BaseObject &other)
 Copy constructor. More...
 
void info (const std::string &functionName, const std::string &message) const
 Print info message into logger. More...
 
void debug (const std::string &functionName, const std::string &message) const
 Print debug message into logger. More...
 
void warn (const std::string &functionName, const std::string &message) const
 Print warning message into logger. More...
 
void errorMissingParameter (const std::string &parameterName) const
 Use in automation process to throw exception when a parameter is missing from the XML scenario file. More...
 

Additional Inherited Members

- Protected Attributes inherited from PARTONS::ServiceObjectTyped< KinematicType, ResultType >
unsigned int m_batchSize
 Batch size. More...
 
sf::Mutex m_mutexKinematicList
 Mutex for kinematic list. More...
 
sf::Mutex m_mutexResultListBuffer
 Mutex for result list. More...
 
List< KinematicTypem_kinematicListBuffer
 Kinematic list. More...
 
List< ResultType > m_resultListBuffer
 Result list. More...
 
ResultInfo m_resultInfo
 Result info. More...
 
- Protected Attributes inherited from PARTONS::ServiceObject
ModuleObjectFactorym_pModuleObjectFactory
 Pointer to ModuleObjectFactory. More...
 
AutomationServicem_pAutomationService
 Pointer to AutomationService. More...
 

Detailed Description

Singleton to handle and compute some pre-configured observable modules.

See the general tutorial and this table of examples.

Constructor & Destructor Documentation

◆ ~DVCSObservableService()

PARTONS::DVCSObservableService::~DVCSObservableService ( )
virtual

Destructor.

◆ DVCSObservableService()

PARTONS::DVCSObservableService::DVCSObservableService ( const std::string &  className)
protected

Default constructor.

Member Function Documentation

◆ generatePlotFileTask()

void PARTONS::DVCSObservableService::generatePlotFileTask ( Task task)
virtual

Method used in the automated interface to generate a data file ready for plotting.

Parameters
taskAutomated XML task.

Implements PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >.

◆ newDVCSObservableModuleFromTask()

DVCSObservable * PARTONS::DVCSObservableService::newDVCSObservableModuleFromTask ( const Task task) const

Uses an automation task (XML file) to configure a DVCSObservable.

Parameters
taskAutomation task.
Returns
Pre-configured DVCSObservable.

◆ newDVCSProcessModuleFromTask()

DVCSProcessModule * PARTONS::DVCSObservableService::newDVCSProcessModuleFromTask ( const Task task) const

Uses an automation task (XML file) to configure a DVCSProcessModule.

Parameters
taskAutomation task.
Returns
Pre-configured DVCSProcessModule.

◆ newKinematicFromTask()

DVCSObservableKinematic PARTONS::DVCSObservableService::newKinematicFromTask ( const Task task) const
virtual

Uses an automation task (XML file) to set specific kinematics.

Parameters
task
Returns
Observable kinematics.

Implements PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >.

◆ newListOfKinematicFromTask()

List< DVCSObservableKinematic > PARTONS::DVCSObservableService::newListOfKinematicFromTask ( const Task task) const
virtual

Uses an automation task (XML file) to set a list of kinematics.

Parameters
task
Returns
List of Observable kinematics.

Implements PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >.

◆ newObservableModuleFromTask()

Observable< DVCSObservableKinematic, DVCSObservableResult > * PARTONS::DVCSObservableService::newObservableModuleFromTask ( const Task task) const
protectedvirtual

Uses an automation task (XML file) to configure an Observable.

Parameters
taskAutomation task.
Returns
Pre-configured Observable.

Implements PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >.

◆ newProcessModuleFromTask()

ProcessModule< DVCSObservableKinematic, DVCSObservableResult > * PARTONS::DVCSObservableService::newProcessModuleFromTask ( const Task task) const
protectedvirtual

Uses an automation task (XML file) to configure a ProcessModule, e.g. a DVCSModule.

Parameters
taskAutomation task.
Returns
Pre-configured ProcessModule.

Implements PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >.

◆ resolveObjectDependencies()

void PARTONS::DVCSObservableService::resolveObjectDependencies ( )
virtual

See parent class for details.

Reimplemented from PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >.

◆ storeResultListInDatabase()

void PARTONS::DVCSObservableService::storeResultListInDatabase ( const List< DVCSObservableResult > &  results) const
virtual

Store list of results in DB.

Parameters
resultsList of results.
Returns
True is insertion successful.

Implements PARTONS::ObservableService< DVCSObservableKinematic, DVCSObservableResult >.

Member Data Documentation

◆ classId

const unsigned int PARTONS::DVCSObservableService::classId
static
Initial value:
=
new DVCSObservableService("DVCSObservableService"))
unsigned int registerBaseObject(BaseObject *pBaseObject)
Store a unique instance of a module identified by a unique string character key.
Definition: BaseObjectRegistry.cpp:45
DVCSObservableService(const std::string &className)
Default constructor.
Definition: DVCSObservableService.cpp:25
static Partons * getInstance()
Share a unique pointer of this class.
Definition: Partons.cpp:27
BaseObjectRegistry * getBaseObjectRegistry() const
Definition: Partons.cpp:175

Unique ID to automatically register the class in the registry.


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