NCBI C++ ToolKit
|
Search Toolkit Book for CLayoutObject
class CLayoutObject defines an interface that wraps a rectilinear abstract object. More...
#include <gui/widgets/aln_crossaln/layout.hpp>
Public Types | |
enum | EType { eAlign , eAlignPairwise , eAlignSmear , eComment , eFeat , eFeatLabel , eFeatPack , eFeatProtProduct , eFeatVariation , eGraph , eHistogram , eAssnStudy , eLabel , eMatepair , eSeqMap , eSequence , eSwitchPoints , eVisRange } |
type of layout objects currently supported More... | |
enum | EChildrenLayout { eInline , eIndividual } |
typedef vector< CRef< CLayoutObject > > | TObjects |
typedef vector< CConstRef< CLayoutObject > > | TConstObjects |
![]() | |
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... | |
Public Member Functions | |
CLayoutObject () | |
virtual | ~CLayoutObject () |
virtual const objects::CSeq_loc & | GetLocation (void) const =0 |
access the position of this object. More... | |
virtual TSeqRange | GetRange (void) const =0 |
access the position of this object. More... | |
virtual bool | LessByPos (const CLayoutObject &obj) const =0 |
compare this object to another, based on position More... | |
virtual bool | LessBySize (const CLayoutObject &obj) const =0 |
compare this object to another, based on size More... | |
virtual CConstRef< CObject > | GetObject (TSeqPos pos) const =0 |
access our core component - we wrap an object(s) of some sort. More... | |
virtual void | GetObjects (vector< CConstRef< CObject > > &objs) const =0 |
retrieve CObjects corresponding to this CLayoutObject More... | |
virtual bool | HasObject (CConstRef< CObject > obj) const =0 |
check if the wrapped object(s) is the one More... | |
virtual EType | GetType () const =0 |
retrieve the type of this object More... | |
bool | IsSelected () const |
object is selected More... | |
void | SetSelected (bool flag) |
const vector< TSeqRange > & | GetIntervals (void) const |
const CLayoutObject * | GetParent (void) const |
void | SetParent (CLayoutObject *feat) |
TObjects & | SetChildren (void) |
const TObjects & | GetChildren (void) const |
void | SetChildrenLayout (EChildrenLayout type) |
EChildrenLayout | GetChildrenLayout (void) const |
TModelRect | GetModelRect () const |
area rectangle of the object in model space More... | |
void | SetModelRect (const TModelRect &rect) |
void | SetHorizontal (bool b_horz) |
bool | IsHorizontal () const |
void | SetFlippedStrand (bool b_flip) |
bool | IsFlippedStrand () 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 |
Protected Member Functions | |
virtual void | x_CalcIntervals (void) const |
![]() | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |
Protected Attributes | |
bool | m_Selected |
bool | m_bHorz |
bool | m_bFlipStrand |
bool | m_bInlineChildren |
CLayoutObject * | m_Parent |
TObjects | m_Children |
TModelRect | m_Rect |
vector< TSeqRange > | m_Intervals |
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... | |
class CLayoutObject defines an interface that wraps a rectilinear abstract object.
CLayoutObject defines how an axis-aligned rectilinear object appears to a layout algorithm. The basic concepts supported include: – querying rectilnear position or interval as a total range – functors for sorting – Draw() for rendering the object, once it is laid out
Definition at line 60 of file layout.hpp.