NCBI C++ ToolKit
|
Search Toolkit Book for CSeqTableInfo
#include <objmgr/impl/seq_table_info.hpp>
Public Member Functions | |
CSeqTableInfo (const CSeq_table &feat_table, bool is_feat) | |
CSeqTableInfo (const CSeq_table &feat_table) | |
~CSeqTableInfo () | |
bool | IsFeatTable (void) const |
size_t | GetNumRows (void) const |
void | UpdateSeq_feat (size_t row, CRef< CSeq_feat > &seq_feat, CRef< CSeq_point > &seq_pnt, CRef< CSeq_interval > &seq_int) const |
CConstRef< CSeq_loc > | GetTableLocation (void) const |
TSeqPos | GetSortedMaxLength (void) const |
bool | IsSorted (void) const |
SAnnotTypeSelector | GetType (void) const |
const CSeqTableLocColumns & | GetLocation (void) const |
const CSeqTableLocColumns & | GetProduct (void) const |
bool | RowIsDisabled (size_t row) const |
bool | IsPartial (size_t row) const |
CConstRef< CSeq_id > | GetLocationId (size_t row) const |
TSeqPos | GetLocationFrom (size_t row) const |
CRange< TSeqPos > | GetLocationRange (size_t row) const |
ENa_strand | GetLocationStrand (size_t row) const |
bool | HasLabel (size_t row) const |
string | GetLabel (size_t row) const |
bool | MatchBitFilter (const SAnnotSelector &sel, size_t row) const |
const CSeqTableColumnInfo * | FindColumn (int field_id) const |
const CSeqTableColumnInfo * | FindColumn (const string &field_name) const |
const CSeqTableColumnInfo & | GetColumn (int field_id) const |
const CSeqTableColumnInfo & | GetColumn (const string &field_name) const |
![]() | |
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 |
Static Public Member Functions | |
static bool | IsGoodFeatTable (const CSeq_table &table) |
![]() | |
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) |
Private Types | |
typedef CSeqTableSetFeatField | TSetter |
typedef pair< CSeqTableColumnInfo, CConstRef< TSetter > > | TColumnInfo |
typedef vector< TColumnInfo > | TExtraColumns |
typedef map< int, CSeqTableColumnInfo > | TColumnsById |
typedef map< string, CSeqTableColumnInfo > | TColumnsByName |
Private Member Functions | |
void | x_Initialize (const CSeq_table &table) |
bool | x_IsSorted (void) const |
CSeqTableInfo (const CSeqTableInfo &) | |
void | operator= (const CSeqTableInfo &) |
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 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... | |
![]() | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |
Definition at line 206 of file seq_table_info.hpp.
|
private |
Definition at line 277 of file seq_table_info.hpp.
|
private |
Definition at line 295 of file seq_table_info.hpp.
|
private |
Definition at line 296 of file seq_table_info.hpp.
|
private |
Definition at line 278 of file seq_table_info.hpp.
|
private |
Definition at line 276 of file seq_table_info.hpp.
|
explicit |
Definition at line 766 of file seq_table_info.cpp.
References x_Initialize().
|
explicit |
Definition at line 775 of file seq_table_info.cpp.
References x_Initialize().
CSeqTableInfo::~CSeqTableInfo | ( | ) |
Definition at line 949 of file seq_table_info.cpp.
|
private |
const CSeqTableColumnInfo * CSeqTableInfo::FindColumn | ( | const string & | field_name | ) | const |
Definition at line 1126 of file seq_table_info.cpp.
References map_checker< Container >::end(), map_checker< Container >::find(), and m_ColumnsByName.
const CSeqTableColumnInfo * CSeqTableInfo::FindColumn | ( | int | field_id | ) | const |
Definition at line 1115 of file seq_table_info.cpp.
References map_checker< Container >::end(), map_checker< Container >::find(), and m_ColumnsById.
Referenced by GetColumn(), and CTableFieldHandle_Base::x_FindColumn().
const CSeqTableColumnInfo & CSeqTableInfo::GetColumn | ( | const string & | field_name | ) | const |
Definition at line 1150 of file seq_table_info.cpp.
References column, FindColumn(), and NCBI_THROW_FMT.
const CSeqTableColumnInfo & CSeqTableInfo::GetColumn | ( | int | field_id | ) | const |
Definition at line 1137 of file seq_table_info.cpp.
References column, FindColumn(), and NCBI_THROW_FMT.
string CSeqTableInfo::GetLabel | ( | size_t | row | ) | const |
Definition at line 1067 of file seq_table_info.cpp.
References CSeqTable_column_info_Base::GetField_name(), CSeqTable_column_Base::GetHeader(), CSeqTable_column_info_Base::IsSetField_name(), m_ExtraColumns, and str().
Referenced by CSeq_annot_Info::TableFeat_GetLabel().
|
inline |
Definition at line 235 of file seq_table_info.hpp.
References m_Location.
Referenced by GetLocationFrom(), GetLocationId(), GetLocationRange(), GetLocationStrand(), CSeq_annot_Info::UpdateTableFeatLocation(), and CSeq_annot_Info::x_InitFeatTableKeys().
|
inline |
Definition at line 251 of file seq_table_info.hpp.
References CSeqTableLocColumns::GetFrom(), GetLocation(), and row.
Referenced by CSeq_annot_Info::StartSortedIterator().
Definition at line 248 of file seq_table_info.hpp.
References CSeqTableLocColumns::GetId(), GetLocation(), and row.
Referenced by CAnnotObject_Ref::CAnnotObject_Ref().
Definition at line 254 of file seq_table_info.hpp.
References GetLocation(), CSeqTableLocColumns::GetRange(), and row.
Referenced by CSeq_annot_SortedIter::x_Valid().
|
inline |
Definition at line 257 of file seq_table_info.hpp.
References GetLocation(), CSeqTableLocColumns::GetStrand(), and row.
Referenced by CAnnotObject_Ref::CAnnotObject_Ref().
|
inline |
Definition at line 217 of file seq_table_info.hpp.
References CSeq_table_Base::GetNum_rows(), and m_Seq_table.
Referenced by CSeq_annot_Info::StartSortedIterator().
|
inline |
Definition at line 238 of file seq_table_info.hpp.
References m_Product.
Referenced by CSeq_annot_Info::UpdateTableFeatProduct(), and CSeq_annot_Info::x_InitFeatTableKeys().
TSeqPos CSeqTableInfo::GetSortedMaxLength | ( | void | ) | const |
Definition at line 972 of file seq_table_info.cpp.
References m_SortedMaxLength.
Referenced by CSeq_annot_Info::StartSortedIterator().
Definition at line 966 of file seq_table_info.cpp.
References m_TableLocation.
Referenced by CSeq_table_CI::GetOriginalLocation(), and CSeq_annot_Info::x_InitFeatTableKeys().
SAnnotTypeSelector CSeqTableInfo::GetType | ( | void | ) | const |
Definition at line 954 of file seq_table_info.cpp.
References _ASSERT, IsFeatTable(), m_Seq_table, table, and type.
Referenced by CSeq_feat_Handle::GetFeatSubtype(), CSeq_feat_Handle::GetFeatType(), CAnnotObjectType_Less::operator()(), and CSeq_annot_Info::x_InitFeatTable().
bool CSeqTableInfo::HasLabel | ( | size_t | row | ) | const |
Definition at line 1051 of file seq_table_info.cpp.
References CSeqTable_column_info_Base::GetField_name(), CSeqTable_column_Base::GetHeader(), CSeqTable_column_info_Base::IsSetField_name(), and m_ExtraColumns.
Referenced by CSeq_annot_Info::TableFeat_HasLabel().
|
inline |
Definition at line 213 of file seq_table_info.hpp.
References m_IsFeatTable.
Referenced by GetType(), CSeq_annot_Info::x_InitFeatTableKeys(), and x_Initialize().
|
static |
Definition at line 750 of file seq_table_info.cpp.
References CSeqFeatData_Base::e_MaxChoice, CSeqFeatData_Base::e_not_set, CSeqFeatData::eSubtype_bad, CSeqFeatData::eSubtype_max, and table.
Referenced by CBlobSplitterImpl::CopyAnnot(), and CSeq_annot_Info::x_InitFeatTable().
|
inline |
Definition at line 244 of file seq_table_info.hpp.
References CSeqTableColumnInfo::GetBool(), m_Partial, and row.
Referenced by CSeq_annot_Info::IsTableFeatPartial(), and CSeq_annot_Info::x_InitFeatTableKeys().
|
inline |
Definition at line 229 of file seq_table_info.hpp.
References m_IsSorted.
Referenced by CSeq_annot_Info::IsSortedTable().
bool CSeqTableInfo::MatchBitFilter | ( | const SAnnotSelector & | sel, |
size_t | row | ||
) | const |
Definition at line 1091 of file seq_table_info.cpp.
References CSeqTable_column_info_Base::GetField_name(), SAnnotSelector::GetFilterBits(), SAnnotSelector::GetFilterMask(), CSeqTable_column_Base::GetHeader(), CSeqTable_column_info_Base::IsSetField_name(), and m_ExtraColumns.
Referenced by CSeq_annot_Info::MatchBitFilter().
|
private |
|
inline |
Definition at line 241 of file seq_table_info.hpp.
References CSeqTableColumnInfo::GetBool(), m_Disabled, and row.
Referenced by CSeq_annot_Info::x_InitFeatTableKeys(), and CSeq_annot_SortedIter::x_Valid().
void CSeqTableInfo::UpdateSeq_feat | ( | size_t | row, |
CRef< CSeq_feat > & | seq_feat, | ||
CRef< CSeq_point > & | seq_pnt, | ||
CRef< CSeq_interval > & | seq_int | ||
) | const |
Definition at line 1009 of file seq_table_info.cpp.
References CSeqTableColumnInfo::GetValue(), CSeqTableLocColumns::IsSet(), CSeq_feat_Base::IsSetLocation(), CSeq_feat_Base::IsSetProduct(), ITERATE, m_ExtraColumns, m_Location, m_Partial, m_Product, CSeq_feat_Base::Reset(), row, CSeq_feat_Base::SetLocation(), CSeq_feat_Base::SetPartial(), CSeq_feat_Base::SetProduct(), CSeqTableLocColumns::UpdateSeq_loc(), and val.
Referenced by CCreateFeat::GetOriginalFeat(), CCreatedFeat_Ref::GetOriginalFeature(), and CSeq_annot_Info::UpdateTableFeat().
|
private |
Definition at line 784 of file seq_table_info.cpp.
References CSeqTableLocColumns::AddColumn(), CSeqTable_column_info_Base::eField_id_comment, CSeqTable_column_info_Base::eField_id_data_imp_key, CSeqTable_column_info_Base::eField_id_data_region, CSeqTable_column_info_Base::eField_id_dbxref, CSeqTable_column_info_Base::eField_id_ext, CSeqTable_column_info_Base::eField_id_ext_type, CSeqTable_column_info_Base::eField_id_partial, CSeqTable_column_info_Base::eField_id_qual, CTempString::empty(), ERR_POST, ERR_POST_X, CSeq_table_Base::GetColumns(), CSeqTable_column_Base::GetHeader(), info, map_checker< Container >::insert(), IsFeatTable(), ITERATE, m_ColumnsById, m_ColumnsByName, m_Disabled, m_ExtraColumns, m_IsSorted, m_Location, m_Partial, m_Product, m_Seq_table, m_SortedMaxLength, m_TableLocation, NCBI_CATCH, NCBI_THROW_FMT, CSeqTableLocColumns::ParseDefaults(), rapidjson::value, and x_IsSorted().
Referenced by CSeqTableInfo().
|
private |
Definition at line 978 of file seq_table_info.cpp.
References CSeq_loc_Base::GetInt(), CSeq_interval::GetLength(), CSeq_loc_Base::IsInt(), CSeqTableLocColumns::IsRealLoc(), CSeqTableLocColumns::IsSet(), CSeqTableColumnInfo::IsSingular(), CSeqTableLocColumns::m_Id, CSeqTableLocColumns::m_Is_simple, CSeqTableLocColumns::m_Is_simple_interval, CSeqTableLocColumns::m_Is_simple_point, m_Location, m_Product, m_SortedMaxLength, and m_TableLocation.
Referenced by x_Initialize().
|
private |
Definition at line 297 of file seq_table_info.hpp.
Referenced by FindColumn(), and x_Initialize().
|
private |
Definition at line 298 of file seq_table_info.hpp.
Referenced by FindColumn(), and x_Initialize().
|
private |
Definition at line 286 of file seq_table_info.hpp.
Referenced by RowIsDisabled(), and x_Initialize().
|
private |
Definition at line 290 of file seq_table_info.hpp.
Referenced by GetLabel(), HasLabel(), MatchBitFilter(), UpdateSeq_feat(), and x_Initialize().
|
private |
Definition at line 284 of file seq_table_info.hpp.
Referenced by IsFeatTable().
|
private |
Definition at line 285 of file seq_table_info.hpp.
Referenced by IsSorted(), and x_Initialize().
|
private |
Definition at line 287 of file seq_table_info.hpp.
Referenced by GetLocation(), UpdateSeq_feat(), x_Initialize(), and x_IsSorted().
|
private |
Definition at line 289 of file seq_table_info.hpp.
Referenced by IsPartial(), UpdateSeq_feat(), and x_Initialize().
|
private |
Definition at line 288 of file seq_table_info.hpp.
Referenced by GetProduct(), UpdateSeq_feat(), x_Initialize(), and x_IsSorted().
|
private |
Definition at line 283 of file seq_table_info.hpp.
Referenced by GetNumRows(), GetType(), and x_Initialize().
|
private |
Definition at line 293 of file seq_table_info.hpp.
Referenced by GetSortedMaxLength(), x_Initialize(), and x_IsSorted().
Definition at line 292 of file seq_table_info.hpp.
Referenced by GetTableLocation(), x_Initialize(), and x_IsSorted().