NCBI C++ ToolKit
|
Search Toolkit Book for CSeqTest
Class CSeqTest provides a general API for performing a given test on. More...
#include <algo/seqqa/seqtest.hpp>
Public Member Functions | |
virtual bool | CanTest (const CSerialObject &obj, const CSeqTestContext *ctx) const =0 |
Test to see whether the given object *can* be used in this test. More... | |
virtual CRef< objects::CSeq_test_result_set > | RunTest (const CSerialObject &obj, const CSeqTestContext *ctx)=0 |
RunTest() is called for each registered object. More... | |
![]() | |
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 |
Protected Types | |
typedef void(* | TCdregionTester) (const objects::CSeq_id &, const CSeqTestContext *ctx, objects::CFeat_CI, objects::CSeq_test_result &) |
A fuction type that analyzes coding regions. More... | |
Protected Member Functions | |
CRef< objects::CSeq_test_result > | x_SkeletalTestResult (const string &test_name) |
Create a Seq-test-result with some fields filled in, including a name for this test, which must be supplied as an argument. More... | |
CRef< objects::CSeq_test_result_set > | x_TestAllCdregions (const CSerialObject &obj, const CSeqTestContext *ctx, const string &test_name, TCdregionTester cdregion_tester) |
Given a Seq-id and a context, analyze all coding regions by calling a supplied function. More... | |
![]() | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |
Additional Inherited Members | |
![]() | |
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... | |
![]() | |
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... | |
Class CSeqTest provides a general API for performing a given test on.
Definition at line 95 of file seqtest.hpp.
|
protected |
A fuction type that analyzes coding regions.
Definition at line 113 of file seqtest.hpp.
|
pure virtual |
Test to see whether the given object *can* be used in this test.
Implemented in CTestTranscript, CTestSingleAln, CTestSeqId, CTestProtProd_EntrezNeighbors, CTestProtProd, and CTestBlastp.
|
pure virtual |
RunTest() is called for each registered object.
Derived code has the guarantee that the CSerialObject can be down-cast to the bound registered type. Derived code should also assume that the context object may be NULL.
Implemented in CTestTranscript_CountAmbiguities, CTestTranscript_OrfExtension, CTestTranscript_Code_break, CTestTranscript_Orfs, CTestTranscript_PolyA, CTestTranscript_Utrs, CTestTranscript_CompareProtProdToTrans, CTestTranscript_PrematureStopCodon, CTestTranscript_CdsStopCodon, CTestTranscript_CdsStartCodon, CTestTranscript_TranscriptCdsLength, CTestTranscript_TranscriptLength, CTestTranscript_CodingPropensity, CTestTranscript_InframeUpstreamStop, CTestTranscript_InframeUpstreamStart, CTestTranscript_CdsFlags, CTestTranscript_CountCdregions, CTestSingleAln_All, CTestSeqId_Biomol, CTestProtProd_EntrezNeighbors, CTestProtProd_Cdd, CTestProtProd_ProteinLength, and CTestBlastp_All.
|
protected |
Create a Seq-test-result with some fields filled in, including a name for this test, which must be supplied as an argument.
Definition at line 54 of file seqtest.cpp.
References CTime::eCurrent, result, and test_name.
Referenced by CTestBlastp_All::RunTest(), CTestProtProd_ProteinLength::RunTest(), CTestProtProd_Cdd::RunTest(), CTestProtProd_EntrezNeighbors::RunTest(), CTestSeqId_Biomol::RunTest(), CTestSingleAln_All::RunTest(), CTestTranscript_CountCdregions::RunTest(), CTestTranscript_TranscriptLength::RunTest(), CTestTranscript_PolyA::RunTest(), CTestTranscript_Orfs::RunTest(), CTestTranscript_CountAmbiguities::RunTest(), and x_TestAllCdregions().
|
protected |
Given a Seq-id and a context, analyze all coding regions by calling a supplied function.
If the serial object passed in is not a Seq-id, the result is null.
Definition at line 69 of file seqtest.cpp.
References ctx, CSeqFeatData::eSubtype_cdregion, ITERATE, MSerial_AsnText, CRef< C, Locker >::Reset(), result, CSeq_test_result_set_Base::Set(), SAnnotSelector::SetResolveDepth(), CSeq_loc::SetWhole(), str(), test_name, and x_SkeletalTestResult().
Referenced by CTestTranscript_CdsFlags::RunTest(), CTestTranscript_InframeUpstreamStart::RunTest(), CTestTranscript_InframeUpstreamStop::RunTest(), CTestTranscript_CodingPropensity::RunTest(), CTestTranscript_TranscriptCdsLength::RunTest(), CTestTranscript_CdsStartCodon::RunTest(), CTestTranscript_CdsStopCodon::RunTest(), CTestTranscript_PrematureStopCodon::RunTest(), CTestTranscript_CompareProtProdToTrans::RunTest(), CTestTranscript_Utrs::RunTest(), CTestTranscript_Code_break::RunTest(), CTestTranscript_OrfExtension::RunTest(), and CTestTranscript_CountAmbiguities::RunTest().