NCBI C++ ToolKit
|
Search Toolkit Book for CSeqGraphicJob
CSeqGraphicJob – the base class of seqgraphic job for handling the job status such as reporting the progress and returning the result. More...
#include <gui/widgets/seq_graphic/seqgraphic_job.hpp>
Public Types | |
typedef int | TJobToken |
typedef map< string, string > | TAnnotNameTitleMap |
List of annotations with the corresponding titles. More... | |
![]() | |
enum | EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern } |
Control filling of newly allocated memory. More... | |
typedef CObjectCounterLocker | TLockerType |
Default locker type for CRef. More... | |
typedef atomic< Uint8 > | TCounter |
Counter type is CAtomiCounter. More... | |
typedef Uint8 | TCount |
Alias for value type of counter. More... | |
![]() | |
enum | EJobState { eInvalid , eRunning , eCompleted , eFailed , eCanceled , eSuspended } |
Job states (describe FSM) More... | |
Public Member Functions | |
CSeqGraphicJob (const string &desc=kEmptyStr) | |
CSeqGraphicJob. More... | |
virtual | ~CSeqGraphicJob () |
void | SetToken (TJobToken token) |
CSeqGraphicJob inline methods. More... | |
IAppJob implementation | |
virtual EJobState | Run () |
Function that does all the useful work, called by the Engine. More... | |
virtual CConstIRef< IAppJobProgress > | GetProgress () |
return progress object, the function shall be synchronized internally. More... | |
virtual CRef< CObject > | GetResult () |
Returns the Job Result. More... | |
virtual CConstIRef< IAppJobError > | GetError () |
Returns IAppJobError object describing internal error that caused the Job to fail. More... | |
virtual string | GetDescr () const |
Returns a human readable description of the Job (optional) More... | |
ISeqTaskProgressCallback implementation. | |
virtual void | SetTaskName (const string &name) |
virtual void | SetTaskCompleted (int completed) |
set total finished task number. More... | |
virtual void | AddTaskCompleted (int delta) |
set to add newly finished task number. More... | |
virtual void | SetTaskTotal (int total) |
virtual bool | StopRequested () const |
![]() | |
CJobCancelable () | |
void | SetDataLocker (ILocker *locker) |
virtual void | RequestCancel () override |
RequestCancel() is called to notify the Job that it shall exit Run() function ASAP. More... | |
virtual bool | IsCanceled () const override |
![]() | |
CObject (void) | |
Constructor. More... | |
CObject (const CObject &src) | |
Copy constructor. More... | |
virtual | ~CObject (void) |
Destructor. More... | |
CObject & | operator= (const CObject &src) THROWS_NONE |
Assignment operator. More... | |
bool | CanBeDeleted (void) const THROWS_NONE |
Check if object can be deleted. More... | |
bool | IsAllocatedInPool (void) const THROWS_NONE |
Check if object is allocated in memory pool (not system heap) More... | |
bool | Referenced (void) const THROWS_NONE |
Check if object is referenced. More... | |
bool | ReferencedOnlyOnce (void) const THROWS_NONE |
Check if object is referenced only once. More... | |
void | AddReference (void) const |
Add reference to object. More... | |
void | RemoveReference (void) const |
Remove reference to object. More... | |
void | ReleaseReference (void) const |
Remove reference without deleting object. More... | |
virtual void | DoNotDeleteThisObject (void) |
Mark this object as not allocated in heap – do not delete this object. More... | |
virtual void | DoDeleteThisObject (void) |
Mark this object as allocated in heap – object can be deleted. More... | |
void * | operator new (size_t size) |
Define new operator for memory allocation. More... | |
void * | operator new[] (size_t size) |
Define new[] operator for 'array' memory allocation. More... | |
void | operator delete (void *ptr) |
Define delete operator for memory deallocation. More... | |
void | operator delete[] (void *ptr) |
Define delete[] operator for memory deallocation. More... | |
void * | operator new (size_t size, void *place) |
Define new operator. More... | |
void | operator delete (void *ptr, void *place) |
Define delete operator. More... | |
void * | operator new (size_t size, CObjectMemoryPool *place) |
Define new operator using memory pool. More... | |
void | operator delete (void *ptr, CObjectMemoryPool *place) |
Define delete operator. More... | |
virtual void | DebugDump (CDebugDumpContext ddc, unsigned int depth) const |
Define method for dumping debug information. More... | |
![]() | |
CDebugDumpable (void) | |
virtual | ~CDebugDumpable (void) |
void | DebugDumpText (ostream &out, const string &bundle, unsigned int depth) const |
void | DebugDumpFormat (CDebugDumpFormatter &ddf, const string &bundle, unsigned int depth) const |
void | DumpToConsole (void) const |
![]() | |
virtual | ~IAppJob () |
virtual bool | BeforeRun () |
Function will be called on the main thread before execution of Run Should not do any lengthy work returns true to continue job execution on worker thread false to quit execution with status - failed. More... | |
![]() | |
virtual | ~ISeqTaskProgressCallback () |
Protected Member Functions | |
virtual EJobState | x_Execute ()=0 |
method truly doing the job. More... | |
![]() | |
CLockerGuard | x_GetGuard () |
ICanceled * | x_GetICanceled () |
![]() | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |
Protected Attributes | |
TJobToken | m_Token |
Job token recognizable by job listener. More... | |
Job results and status. | |
CRef< CAppJobError > | m_Error |
CRef< CObject > | m_Result |
string | m_Desc |
Job description or name. More... | |
Private Attributes | |
CFastMutex | m_Mutex |
mutex for guarding state access More... | |
int | m_TaskTotal |
Total amount of task for a job. More... | |
int | m_TaskCompleted |
The amount of task finished. More... | |
string | m_TaskName |
Additional Inherited Members | |
![]() | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (void) |
Define method to throw null pointer exception. More... | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (const type_info &type) |
static EAllocFillMode | GetAllocFillMode (void) |
static void | SetAllocFillMode (EAllocFillMode mode) |
static void | SetAllocFillMode (const string &value) |
Set mode from configuration parameter value. More... | |
![]() | |
static void | EnableDebugDump (bool on) |
![]() | |
static const TCount | eCounterBitsCanBeDeleted = 1 << 0 |
Define possible object states. More... | |
static const TCount | eCounterBitsInPlainHeap = 1 << 1 |
Heap signature was found. More... | |
static const TCount | eCounterBitsPlaceMask |
Mask for 'in heap' state flags. More... | |
static const int | eCounterStep = 1 << 2 |
Skip over the "in heap" bits. More... | |
static const TCount | eCounterValid = TCount(1) << (sizeof(TCount) * 8 - 2) |
Minimal value for valid objects (reference counter is zero) Must be a single bit value. More... | |
static const TCount | eCounterStateMask |
Valid object, and object in heap. More... | |
CSeqGraphicJob – the base class of seqgraphic job for handling the job status such as reporting the progress and returning the result.
Definition at line 51 of file seqgraphic_job.hpp.
typedef map<string, string> CSeqGraphicJob::TAnnotNameTitleMap |
List of annotations with the corresponding titles.
Definition at line 59 of file seqgraphic_job.hpp.
typedef int CSeqGraphicJob::TJobToken |
Definition at line 56 of file seqgraphic_job.hpp.
Definition at line 56 of file seqgraphic_job.cpp.
References m_Error, CRef< C, Locker >::Reset(), and SetTaskName().
|
inlinevirtual |
Definition at line 63 of file seqgraphic_job.hpp.
|
virtual |
set to add newly finished task number.
Implements ISeqTaskProgressCallback.
Definition at line 119 of file seqgraphic_job.cpp.
References delta(), m_Mutex, and m_TaskCompleted.
Referenced by CSGFeatureJob::x_CreateFeatHist(), CSGFeatureJob::x_CreateFeatSmear(), CSGFeatureJob::x_CreateFeature_Recursive(), CSGFeatureJob::x_CreateFeatures(), CGeneModelFeatJob::x_CreateFeaturesWithFilter(), CGeneModelFeatJob::x_CreateGeneModels(), CSGAlignStatJob::x_CreatePileUpGraphs(), CSGAlignScoringJob::x_Execute(), CSGAlignmentJob::x_GetAlignments(), CSGAlignStatJob::x_LoadAlignments(), CGeneModelFeatJob::x_ProcessLandMarkFeatures(), and CSFTranslationJob::x_Translate().
|
virtual |
Returns a human readable description of the Job (optional)
Implements IAppJob.
Definition at line 99 of file seqgraphic_job.cpp.
References m_Desc.
|
virtual |
Returns IAppJobError object describing internal error that caused the Job to fail.
Result shall be returned only if the Job did fail.
Implements IAppJob.
Definition at line 93 of file seqgraphic_job.cpp.
References CRef< C, Locker >::GetPointer(), and m_Error.
|
virtual |
return progress object, the function shall be synchronized internally.
the returned object should not be modified by the job (job shall create a new instance of Progress object on every GetProgress() invocation).
Implements IAppJob.
Definition at line 75 of file seqgraphic_job.cpp.
References m_Mutex, m_TaskCompleted, m_TaskName, and m_TaskTotal.
Returns the Job Result.
Derive your own object from CObject and return it from your Job class. Result shall be returned only if Job finished succesfully.
Implements IAppJob.
Definition at line 87 of file seqgraphic_job.cpp.
References m_Result.
|
virtual |
Function that does all the useful work, called by the Engine.
Run() shall be implemented so that it will allow for exiting once RequestCancel() is called.
Implements IAppJob.
Definition at line 68 of file seqgraphic_job.cpp.
References m_Result, CRef< C, Locker >::Reset(), and x_Execute().
|
virtual |
set total finished task number.
Implements ISeqTaskProgressCallback.
Definition at line 112 of file seqgraphic_job.cpp.
References m_Mutex, and m_TaskCompleted.
Referenced by CSGFeatureJob::x_CreateFeatures(), CGeneModelFeatJob::x_CreateFeaturesWithFilter(), CGeneModelFeatJob::x_CreateGeneModels(), CSGAlignStatJob::x_CreatePileUpGraphs(), CSGAlignScoringJob::x_Execute(), CSGSeqGraphJob::x_Execute(), CSGFeatureJob::x_Execute(), CSGSegmentsSeqIDJob::x_Execute(), CSFTranslationJob::x_Execute(), CVcfFeatureJob::x_Execute(), CSGAlignmentJob::x_GetAlignments(), CSGFeatureJob::x_LinkFeatures(), CSGAlignmentJob::x_LoadAlignments(), CSGAlignStatJob::x_LoadAlignments(), CSGFeatureJob::x_ProcessCachedBigBed(), CSGFeatureJob::x_ProcessCachedVcfTabix(), and CGeneModelFeatJob::x_ProcessLandMarkFeatures().
Implements ISeqTaskProgressCallback.
Definition at line 105 of file seqgraphic_job.cpp.
References m_Mutex, and m_TaskName.
Referenced by CSeqGraphicJob(), CSFTranslationJob::CSFTranslationJob(), CSGAlignScoringJob::CSGAlignScoringJob(), CSGAlignStatJob::CSGAlignStatJob(), CSGSegmentSmearJob::CSGSegmentSmearJob(), CSGSegmentsSeqIDJob::CSGSegmentsSeqIDJob(), CSGAlignStatJob::x_CollectAlignStats(), CSGFeatureJob::x_CreateFeatHist(), CSGFeatureJob::x_CreateFeatures(), CGeneModelFeatJob::x_CreateFeaturesWithFilter(), CGeneModelFeatJob::x_CreateGeneModels(), CSGAlignStatJob::x_CreatePileUpGraphs(), CSGSeqGraphJob::x_Execute(), CSGFeatureJob::x_Execute(), CGeneModelFeatJob::x_Execute(), CSFTranslationJob::x_Execute(), CVcfFeatureJob::x_Execute(), CSGAlignmentJob::x_GetAlignments(), CSGAlignmentJob::x_GetCoverageGraph(), CSGFeatureJob::x_LinkFeatures(), CSGAlignStatJob::x_LoadAlignments(), CSGAnnotJob::x_LoadCoverageGraph(), CSGSeqGraphJob::x_LoadGraph(), CSGSeqGraphJob::x_LoadGraphFromCoverageGraph(), and CGeneModelFeatJob::x_ProcessLandMarkFeatures().
|
virtual |
Implements ISeqTaskProgressCallback.
Definition at line 126 of file seqgraphic_job.cpp.
References m_Mutex, and m_TaskTotal.
Referenced by CSGFeatureJob::x_CreateFeatures(), CGeneModelFeatJob::x_CreateFeaturesWithFilter(), CGeneModelFeatJob::x_CreateGeneModels(), CSGAlignStatJob::x_CreatePileUpGraphs(), CSGAlignScoringJob::x_Execute(), CSGFeatureJob::x_Execute(), CSGSegmentsSeqIDJob::x_Execute(), CSFTranslationJob::x_Execute(), CVcfFeatureJob::x_Execute(), CSGAlignmentJob::x_LoadAlignments(), CSGAlignStatJob::x_LoadAlignments(), and CGeneModelFeatJob::x_ProcessLandMarkFeatures().
|
inline |
CSeqGraphicJob inline methods.
Definition at line 212 of file seqgraphic_job.hpp.
References m_Token.
Referenced by CSGAlignmentDS::CalculateAlignmentScore(), CSGCalcFeatHistJob::CSGCalcFeatHistJob(), CSGFeatureJob::CSGFeatureJob(), CSGSegmentMapJob::CSGSegmentMapJob(), CSGSegmentsSeqIDJob::CSGSegmentsSeqIDJob(), and CVcfFeatureJob::CVcfFeatureJob().
|
virtual |
Implements ISeqTaskProgressCallback.
Definition at line 133 of file seqgraphic_job.cpp.
References CJobCancelable::IsCanceled().
|
protectedpure virtual |
method truly doing the job.
Implemented in CVcfFeatureJob, CSFTranslationJob, CSGSwitchPointJob, CSGSegmentsSeqIDJob, CSGSegmentSmearJob, CSGSegmentMapJob, CSGCalcFeatHistJob, CBatchFeatJob, CGeneModelFeatJob, CSGFeatureJob, CEpigenomicsJob, CLDBlockJob, CHapmapJob, CBinsJob, CSGSeqGraphJob, CSGAlignStatJob, CSGAlignScoringJob, CSGAlignmentJob, and CSnpJob.
Referenced by Run().
|
protected |
Job description or name.
Definition at line 93 of file seqgraphic_job.hpp.
Referenced by GetDescr().
|
protected |
Definition at line 91 of file seqgraphic_job.hpp.
Referenced by CSeqGraphicJob(), GetError(), CSnpJob::x_Execute(), CSGAlignmentJob::x_Execute(), CSGAlignStatJob::x_Execute(), CSGSeqGraphJob::x_Execute(), CBinsJob::x_Execute(), CHapmapJob::x_Execute(), CLDBlockJob::x_Execute(), CEpigenomicsJob::x_Execute(), CSGFeatureJob::x_Execute(), CGeneModelFeatJob::x_Execute(), CBatchFeatJob::x_Execute(), CSGCalcFeatHistJob::x_Execute(), CSGSegmentMapJob::x_Execute(), and CVcfFeatureJob::x_Execute().
|
private |
mutex for guarding state access
Definition at line 99 of file seqgraphic_job.hpp.
Referenced by AddTaskCompleted(), GetProgress(), SetTaskCompleted(), SetTaskName(), and SetTaskTotal().
Definition at line 92 of file seqgraphic_job.hpp.
Referenced by GetResult(), Run(), CSnpJob::x_Execute(), CSGAlignmentJob::x_Execute(), CSGAlignScoringJob::x_Execute(), CSGAlignStatJob::x_Execute(), CSGSeqGraphJob::x_Execute(), CBinsJob::x_Execute(), CHapmapJob::x_Execute(), CLDBlockJob::x_Execute(), CEpigenomicsJob::x_Execute(), CSGFeatureJob::x_Execute(), CGeneModelFeatJob::x_Execute(), CBatchFeatJob::x_Execute(), CSGCalcFeatHistJob::x_Execute(), CSGSegmentMapJob::x_Execute(), CSGSegmentsSeqIDJob::x_Execute(), CSGSwitchPointJob::x_Execute(), CSFTranslationJob::x_Execute(), CVcfFeatureJob::x_Execute(), CSGAlignmentJob::x_GetCoverageGraph(), CSGAlignmentJob::x_LoadAlignments(), CSGSegmentSmearJob::x_LoadFromDeltaSeqs(), CSGSegmentSmearJob::x_LoadFromNA(), CSGSegmentSmearJob::x_LoadFromNetCache(), CSGSeqGraphJob::x_LoadGraph(), CSGSeqGraphJob::x_LoadGraphFromCoverageGraph(), CSGSeqGraphJob::x_LoadSeqTable(), CSGFeatureJob::x_ProcessCachedBigBed(), and CSGFeatureJob::x_ProcessCachedVcfTabix().
|
private |
The amount of task finished.
Definition at line 101 of file seqgraphic_job.hpp.
Referenced by AddTaskCompleted(), GetProgress(), and SetTaskCompleted().
|
private |
Definition at line 102 of file seqgraphic_job.hpp.
Referenced by GetProgress(), and SetTaskName().
|
private |
Total amount of task for a job.
Definition at line 100 of file seqgraphic_job.hpp.
Referenced by GetProgress(), and SetTaskTotal().
|
protected |
Job token recognizable by job listener.
Definition at line 96 of file seqgraphic_job.hpp.
Referenced by SetToken(), CSGAlignmentJob::x_Execute(), CSGAlignScoringJob::x_Execute(), CSGAlignStatJob::x_Execute(), CSGSeqGraphJob::x_Execute(), CSGFeatureJob::x_Execute(), CGeneModelFeatJob::x_Execute(), CBatchFeatJob::x_Execute(), CSGCalcFeatHistJob::x_Execute(), CSGSegmentMapJob::x_Execute(), CSGSegmentsSeqIDJob::x_Execute(), CSGSwitchPointJob::x_Execute(), CVcfFeatureJob::x_Execute(), CSGAlignmentJob::x_GetCoverageGraph(), CSGAlignmentJob::x_LoadAlignmentFeats(), CSGAlignmentJob::x_LoadAlignments(), CBatchFeatJob::x_LoadFeatProducts(), CSGSeqGraphJob::x_LoadGraph(), and CSGSeqGraphJob::x_LoadSeqTable().