NCBI C++ ToolKit
Public Types | Public Member Functions | Protected Attributes | Private Member Functions | Friends | List of all members
CSimpleScoringMethod Class Reference

Search Toolkit Book for CSimpleScoringMethod

CSimpleScoringMethod - trivial implementation of IScoringMethod. More...

#include <gui/widgets/aln_score/simple_methods.hpp>

+ Inheritance diagram for CSimpleScoringMethod:
+ Collaboration diagram for CSimpleScoringMethod:

Public Types

enum  EOptions { fIgnoreEmptySpace = 0x01 , fIgnoreGaps = 0x02 }
 
- Public Types inherited from CObject
enum  EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern }
 Control filling of newly allocated memory. More...
 
typedef CObjectCounterLocker TLockerType
 Default locker type for CRef. More...
 
typedef atomic< Uint8TCounter
 Counter type is CAtomiCounter. More...
 
typedef Uint8 TCount
 Alias for value type of counter. More...
 
- Public Types inherited from IScoringMethod
enum  EColorType { fBackground = 0x1 , fForeground = 0x2 }
 
typedef float TScore
 
typedef vector< TScoreTScoreVector
 
typedef CAttrRangeCollection< TScore, TSeqPosTScoreColl
 

Public Member Functions

 CSimpleScoringMethod ()
 CSimpleScoringMethod. More...
 
 CSimpleScoringMethod (int colors)
 
 CSimpleScoringMethod (const CSimpleScoringMethod &orig)
 
virtual ~CSimpleScoringMethod ()
 
void SetOptions (int options)
 
int GetOptions ()
 
void CreateColorTable (int size)
 
IUITool implementation
virtual IUIToolClone () const
 
virtual string GetName () const
 returns unique name of the method that is used in UI to identify it More...
 
virtual string GetDescription () const
 returns a detailed description of the method that is used in UI More...
 
IScoringMethod implementation
virtual int GetType () const
 returns combination of EAlignType flags defining types of alignments that can be colored with this method More...
 
virtual bool IsAverageable () const
 return "true" if scores could be averaged More...
 
virtual int GetSupportedColorTypes () const
 returns a combination of EColorType flags More...
 
virtual const CRgbaColorGetColorForScore (TScore score, EColorType type) const
 returns a color corresponding to a given score value. More...
 
virtual const CRgbaColorGetColorForNoScore (EColorType type) const
 Call for display colors when CanCalculateScores returns false. More...
 
virtual void SetColorForNoScore (EColorType type, const CRgbaColor &color)
 
IColumnScoringMethod implementation
virtual void CalculateScores (char cons, const string &column, TScore &col_score, TScoreVector &scores)
 
virtual bool CanCalculateScores (const IScoringAlignment &aln)
 Do we have what it takes to calculate scores? e.g. a master row selected? More...
 
IUIToolWithGUI implementation
virtual const CMenuItemGetMenu ()
 Returns a pointer to the submenu. More...
 
virtual bool HasPropertiesPanel () const
 returns true if the method supports properties dialog More...
 
virtual wxWindow * CreatePropertiesPanel (wxWindow *parent)
 This a factory method that shall produce a CPropertiesPanel representing properties of the method; the panel Apply() must take care of appying changes to the method. More...
 
- Public Member Functions inherited from CObject
 CObject (void)
 Constructor. More...
 
 CObject (const CObject &src)
 Copy constructor. More...
 
virtual ~CObject (void)
 Destructor. More...
 
CObjectoperator= (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...
 
- Public Member Functions inherited from CDebugDumpable
 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
 
- Public Member Functions inherited from IScoringMethod
virtual ~IScoringMethod ()
 
- Public Member Functions inherited from IUITool
virtual ~IUITool ()
 
- Public Member Functions inherited from IColumnScoringMethod
virtual ~IColumnScoringMethod ()
 
virtual bool NeedsTranslation () const
 
virtual void UpdateSettings (const IScoringAlignment &aln)
 Set alignment specifi settings. More...
 
- Public Member Functions inherited from IUIToolWithGUI
virtual ~IUIToolWithGUI ()
 
virtual ~IUIToolWithGUI ()
 

Protected Attributes

int m_Options
 
CRgbaColor m_Worst
 combination of EOptions flags More...
 
CRgbaColor m_Best
 
CRgbaGradColorTable m_ColorTable
 
vector< intm_vCharCounts
 
char m_Space
 histogramm of characters More...
 
char m_Gap
 
unique_ptr< CMenuItemm_Menu
 
- Protected Attributes inherited from IColumnScoringMethod
char m_AmbiguousResidue = ' '
 Ambiguous Residue, typically 'N' for nucleotides, 'X' for proteins. More...
 
std::function< bool(char c, char b)> mf_CompareResidue
 

Private Member Functions

void x_Init (int colors)
 

Friends

class CSimpleScoringPanel
 

Additional Inherited Members

- Static Public Member Functions inherited from CObject
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 Public Member Functions inherited from CDebugDumpable
static void EnableDebugDump (bool on)
 
- Static Public Member Functions inherited from IScoringMethod
static const char * GetAlignmentTagByType (IAlnExplorer::EAlignType type)
 returns symbolic label for the given alignment type, should be More...
 
static IAlnExplorer::EAlignType GetAlignmentTypeByTag (const string &tag)
 
- Static Public Attributes inherited from CObject
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...
 
- Static Public Attributes inherited from IScoringMethod
static const int sm_DefGradientSize = 32
 default number of colors in gradient More...
 
- Static Public Attributes inherited from IColumnScoringMethod
static const int kAmbiguousResidueScore = 1000
 
- Protected Member Functions inherited from CObject
virtual void DeleteThis (void)
 Virtual method "deleting" this object. More...
 

Detailed Description

CSimpleScoringMethod - trivial implementation of IScoringMethod.

Scores are calculated as frequencies of symbols normalized to fit in range [0, 1]. CreateColorTable() must be called once before any GetColorForScore() calls.

Definition at line 51 of file simple_methods.hpp.

Member Enumeration Documentation

◆ EOptions

Enumerator
fIgnoreEmptySpace 
fIgnoreGaps 

Definition at line 60 of file simple_methods.hpp.

Constructor & Destructor Documentation

◆ CSimpleScoringMethod() [1/3]

CSimpleScoringMethod::CSimpleScoringMethod ( )

◆ CSimpleScoringMethod() [2/3]

CSimpleScoringMethod::CSimpleScoringMethod ( int  colors)

Definition at line 147 of file simple_methods.cpp.

References colors, and x_Init().

◆ CSimpleScoringMethod() [3/3]

CSimpleScoringMethod::CSimpleScoringMethod ( const CSimpleScoringMethod orig)

Definition at line 166 of file simple_methods.cpp.

References m_ColorTable, m_vCharCounts, orig, and SetOptions().

◆ ~CSimpleScoringMethod()

CSimpleScoringMethod::~CSimpleScoringMethod ( )
virtual

Definition at line 142 of file simple_methods.cpp.

Member Function Documentation

◆ CalculateScores()

void CSimpleScoringMethod::CalculateScores ( char  cons,
const string column,
TScore col_score,
TScoreVector scores 
)
virtual

◆ CanCalculateScores()

bool CSimpleScoringMethod::CanCalculateScores ( const IScoringAlignment aln)
virtual

Do we have what it takes to calculate scores? e.g. a master row selected?

Implements IColumnScoringMethod.

Reimplemented in CSNPScoringMethod.

Definition at line 271 of file simple_methods.cpp.

◆ Clone()

IUITool * CSimpleScoringMethod::Clone ( void  ) const
virtual

Implements IUITool.

Reimplemented in CSNPScoringMethod.

Definition at line 179 of file simple_methods.cpp.

References CSimpleScoringMethod().

◆ CreateColorTable()

void CSimpleScoringMethod::CreateColorTable ( int  size)

◆ CreatePropertiesPanel()

wxWindow * CSimpleScoringMethod::CreatePropertiesPanel ( wxWindow *  parent)
virtual

This a factory method that shall produce a CPropertiesPanel representing properties of the method; the panel Apply() must take care of appying changes to the method.

Implements IUIToolWithGUI.

Reimplemented in CSNPScoringMethod.

Definition at line 413 of file simple_methods.cpp.

References CSimpleScoringPanel.

◆ GetColorForNoScore()

const CRgbaColor & CSimpleScoringMethod::GetColorForNoScore ( EColorType  type) const
virtual

Call for display colors when CanCalculateScores returns false.

Implements IScoringMethod.

Reimplemented in CSNPScoringMethod.

Definition at line 277 of file simple_methods.cpp.

References _ASSERT.

◆ GetColorForScore()

const CRgbaColor & CSimpleScoringMethod::GetColorForScore ( TScore  score,
EColorType  type 
) const
virtual

returns a color corresponding to a given score value.

It is recommended that this method be implemented using color table, on-the-fly creation of colors is expensive.

Implements IScoringMethod.

Reimplemented in CSNPScoringMethod.

Definition at line 297 of file simple_methods.cpp.

References _ASSERT, IScoringMethod::fBackground, CRgbaGradColorTable::GetSize(), int, m_ColorTable, min(), and ncbi::grid::netcache::search::fields::size.

Referenced by CSNPScoringMethod::GetColorForScore().

◆ GetDescription()

string CSimpleScoringMethod::GetDescription ( ) const
virtual

returns a detailed description of the method that is used in UI

Implements IUITool.

Reimplemented in CSNPScoringMethod.

Definition at line 218 of file simple_methods.cpp.

References SIMPLE_DESCR.

◆ GetMenu()

const CMenuItem * CSimpleScoringMethod::GetMenu ( )
virtual

Returns a pointer to the submenu.

If the pointer is not NULL, then this submenu is integrated into the application's menu. If method is derived from CCommandTarget it will recieve command events.

Implements IUIToolWithGUI.

Reimplemented in CSNPScoringMethod.

Definition at line 321 of file simple_methods.cpp.

References m_Menu.

◆ GetName()

string CSimpleScoringMethod::GetName ( ) const
virtual

returns unique name of the method that is used in UI to identify it

Implements IUITool.

Reimplemented in CSNPScoringMethod.

Definition at line 208 of file simple_methods.cpp.

◆ GetOptions()

int CSimpleScoringMethod::GetOptions ( void  )

Definition at line 193 of file simple_methods.cpp.

References m_Options.

Referenced by CSimpleScoringPanel::Init(), and CSNPScoringPanel::Init().

◆ GetSupportedColorTypes()

int CSimpleScoringMethod::GetSupportedColorTypes ( ) const
virtual

returns a combination of EColorType flags

Implements IScoringMethod.

Reimplemented in CSNPScoringMethod.

Definition at line 291 of file simple_methods.cpp.

References IScoringMethod::fBackground.

◆ GetType()

int CSimpleScoringMethod::GetType ( ) const
virtual

returns combination of EAlignType flags defining types of alignments that can be colored with this method

Implements IScoringMethod.

Definition at line 224 of file simple_methods.cpp.

References IAlnExplorer::fDNA, and IAlnExplorer::fProtein.

◆ HasPropertiesPanel()

bool CSimpleScoringMethod::HasPropertiesPanel ( ) const
virtual

returns true if the method supports properties dialog

Implements IUIToolWithGUI.

Reimplemented in CSNPScoringMethod.

Definition at line 331 of file simple_methods.cpp.

◆ IsAverageable()

bool CSimpleScoringMethod::IsAverageable ( ) const
virtual

return "true" if scores could be averaged

Implements IScoringMethod.

Definition at line 230 of file simple_methods.cpp.

◆ SetColorForNoScore()

void CSimpleScoringMethod::SetColorForNoScore ( EColorType  type,
const CRgbaColor color 
)
virtual

Implements IScoringMethod.

Reimplemented in CSNPScoringMethod.

Definition at line 285 of file simple_methods.cpp.

◆ SetOptions()

void CSimpleScoringMethod::SetOptions ( int  options)

◆ x_Init()

void CSimpleScoringMethod::x_Init ( int  colors)
private

Friends And Related Function Documentation

◆ CSimpleScoringPanel

friend class CSimpleScoringPanel
friend

Definition at line 58 of file simple_methods.hpp.

Referenced by CreatePropertiesPanel().

Member Data Documentation

◆ m_Best

CRgbaColor CSimpleScoringMethod::m_Best
protected

◆ m_ColorTable

CRgbaGradColorTable CSimpleScoringMethod::m_ColorTable
protected

◆ m_Gap

char CSimpleScoringMethod::m_Gap
protected

◆ m_Menu

unique_ptr<CMenuItem> CSimpleScoringMethod::m_Menu
protected

Definition at line 120 of file simple_methods.hpp.

Referenced by GetMenu(), and CSNPScoringMethod::GetMenu().

◆ m_Options

int CSimpleScoringMethod::m_Options
protected

Definition at line 111 of file simple_methods.hpp.

Referenced by GetOptions(), and SetOptions().

◆ m_Space

char CSimpleScoringMethod::m_Space
protected

histogramm of characters

Definition at line 117 of file simple_methods.hpp.

Referenced by CalculateScores(), CSNPScoringMethod::CalculateScores(), and SetOptions().

◆ m_vCharCounts

vector<int> CSimpleScoringMethod::m_vCharCounts
protected

Definition at line 116 of file simple_methods.hpp.

Referenced by CalculateScores(), CSimpleScoringMethod(), and x_Init().

◆ m_Worst

CRgbaColor CSimpleScoringMethod::m_Worst
protected

The documentation for this class was generated from the following files:
Modified on Fri Dec 08 08:19:57 2023 by modify_doxy.py rev. 669887