hasFGColors = ( hasTR || hasTRF );
94 if(entry.size() != 1) {
95 ERR_POST(
"CColorTableMethod::Load() - base must be a single character: \"" 98 charcbase = entry[0];
112 if(entry.size() != 1) {
113 ERR_POST(
"CColorTableMethod::Load() - base must be a single character: \"" 116 charcbase = entry[0];
130 if(entry.size() != 1) {
131 ERR_POST(
"CColorTableMethod::Load() - base must be a single character: \"" 134 charcbase = entry[0];
214 ITERATE(
string, base_it, bases) {
215 charcbase = *base_it;
237 for(
size_t i= 0;
i<
buf.size();
i++) {
253 size_t i= (size_t) score;
273DECLARE_EVENT_TABLE()
288 constwxPoint& pos = wxDefaultPosition,
289 constwxSize&
size= wxDefaultSize);
298 void OnChar( wxKeyEvent& event );
302 void OnDelete( wxHyperlinkEvent& event );
312BEGIN_EVENT_TABLE(
CColorPanel, wxScrolledWindow )
319m_Data(
data), m_NewID(kIdBase)
321Create(parent,
id, pos,
size, wxScrolledWindowStyle|wxBORDER_SUNKEN|wxTAB_TRAVERSAL);
328 int key=
event.GetKeyCode();
329 if(wxIsspace(
key) || wxIsdigit(
key))
337wxTextCtrl* textCtrlBase = (wxTextCtrl*)event.GetEventObject();
338wxString textBase = textCtrlBase->GetValue().Upper();
341wxTextCtrl* textCtrl = (wxTextCtrl*)FindWindow(
i);
342 if(textCtrl == 0 || textCtrl == textCtrlBase)
345 boolchanged =
false;
346wxString
text= textCtrl->GetValue().Upper();
349 size_tpos =
text.find_first_of(textBase);
350 if(pos == wxString::npos)
357 if(changed) textCtrl->ChangeValue(
text);
360textCtrlBase->ChangeValue(textBase);
361textCtrlBase->SetInsertionPointEnd();
369wxTextCtrl* textCtrl = (wxTextCtrl*)FindWindow(
i);
370wxColourPickerCtrl* pickerFG = (wxColourPickerCtrl*)FindWindow(
i+ 1);
371wxColourPickerCtrl* pickerBG = (wxColourPickerCtrl*)FindWindow(
i+ 2);
372 if(textCtrl != 0 && pickerFG != 0 && pickerBG != 0) {
384wxFlexGridSizer* itemSizer =
newwxFlexGridSizer(4, 0, 0);
385this->SetSizer(itemSizer);
386itemSizer->AddGrowableCol(0);
388itemSizer->Add(
newwxStaticText(
this,
wxID_ANY,
wxT(
"Bases")),
3891, wxALIGN_CENTER_HORIZONTAL|wxTOP|wxBOTTOM, 5);
390itemSizer->Add(
newwxStaticText(
this,
wxID_ANY,
wxT(
"Text")),
3910, wxALIGN_LEFT|wxTOP|wxBOTTOM, 5);
392itemSizer->Add(
newwxStaticText(
this,
wxID_ANY,
wxT(
"Back")),
3930, wxALIGN_LEFT|wxTOP|wxBOTTOM, 5);
394itemSizer->Add(
newwxStaticText(
this,
wxID_ANY,
wxT(
"")),
3950, wxALIGN_LEFT|wxTOP|wxBOTTOM, 5);
397 for(
size_t i= 0;
i<
m_Data.size(); ++
i)
414wxColourPickerCtrl* pickerFG = (wxColourPickerCtrl*)FindWindow(
i+ 1);
415wxColourPickerCtrl* pickerBG = (wxColourPickerCtrl*)FindWindow(
i+ 2);
416 if(pickerFG != 0 && pickerBG != 0) {
417wxColor
color= pickerFG->GetColour();
418pickerFG->SetColour(pickerBG->GetColour());
419pickerBG->SetColour(
color);
427wxColourPickerCtrl* pickerFG = (wxColourPickerCtrl*)FindWindow(
i+ 1);
428wxColourPickerCtrl* pickerBG = (wxColourPickerCtrl*)FindWindow(
i+ 2);
429 if(pickerFG != 0 && pickerBG != 0) {
439wxColourPickerCtrl* pickerFG = (wxColourPickerCtrl*)FindWindow(
i+ 1);
440wxColourPickerCtrl* pickerBG = (wxColourPickerCtrl*)FindWindow(
i+ 2);
441 if(pickerFG != 0 && pickerBG != 0) {
450wxSizer* itemSizer = GetSizer();
452wxTextCtrl* itemTextControl1 =
453 newwxTextCtrl(
this,
m_NewID, wxEmptyString,
454wxDefaultPosition, wxDLG_UNIT(
this, wxSize(48, -1)), wxTE_LEFT);
460itemSizer->Add(itemTextControl1, 1, wxGROW|wxALL, 2);
462wxColourPickerCtrl* itemColorPicker1 =
newwxColourPickerCtrl(
this,
m_NewID+ 1, fgColor);
463itemSizer->Add(itemColorPicker1, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 2);
465wxColourPickerCtrl* itemColorPicker2 =
newwxColourPickerCtrl(
this,
m_NewID+ 2,
bgColor);
466itemSizer->Add(itemColorPicker2, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 2);
468wxHyperlinkCtrl* itemHyperLink =
new CHyperlink(
this,
m_NewID+ 3,
wxT(
"Delete"), wxEmptyString);
469itemSizer->Add(itemHyperLink, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5);
475wxWindow* window = FindWindow(
id);
479wxSizer* sizer = GetSizer();
481wxSizerItemList::iterator node = sizer->GetChildren().begin();
482 for( ; node != sizer->GetChildren().end(); ++node, ++index) {
483wxSizerItem* item = *node;
484 if(item->IsWindow()&& item->GetWindow() == window)
488 if(node == sizer->GetChildren().end()) {
492sizer->GetItem(index)->DeleteWindows();
493sizer->GetItem(index-1)->DeleteWindows();
494sizer->GetItem(index-2)->DeleteWindows();
495sizer->GetItem(index-3)->DeleteWindows();
496sizer->Remove(index);
497sizer->Remove(index-1);
498sizer->Remove(index-2);
499sizer->Remove(index-3);
504 x_AddNewRow(
"", wxColor(255, 255, 255), wxColor(0, 0, 0));
507GetClientSize(0, &h);
508GetVirtualSize(0, &hv);
509 if(hv > h) Scroll(-1, (hv - h + 5)/5);
520DECLARE_EVENT_TABLE()
526 void OnApply( wxCommandEvent& event );
530 void OnAddRow( wxCommandEvent& event );
537 #define ID_ADD_ROW 10000 538 #define ID_SWAP_COLORS 10001 539 #define ID_CONTRAST_FG 10002 540 #define ID_CONTRAST_BG 10003 552m_Method(method), m_ColorPanel()
562 ITERATE(
string, base_it, bases) {
565 boolcat_found =
false;
567 if(cat_it->m_ForeColor == fc && cat_it->m_BackColor == bc) {
568cat_it->m_Bases.append(1, *base_it);
578 m_Data.push_back(new_cat);
585wxBoxSizer* itemSizer1 =
newwxBoxSizer(wxHORIZONTAL);
586this->SetSizer(itemSizer1);
588wxStaticBox* staticBox =
newwxStaticBox(
this,
wxID_ANY,
wxT(
"Bases Text and Background Colors"));
589wxStaticBoxSizer* staticSizer =
newwxStaticBoxSizer(staticBox, wxVERTICAL);
591wxSize clrPanelSize = wxDLG_UNIT(
this, wxSize(150, 100));
593wxDefaultPosition, clrPanelSize);
597staticSizer->Add(
newwxButton(
this,
ID_ADD_ROW,
wxT(
"Add Row")),
5980, wxALIGN_LEFT|wxALL, 2);
599itemSizer1->Add(staticSizer, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
602wxBoxSizer* itemSizer2 =
newwxBoxSizer(wxVERTICAL);
6040, wxALIGN_CENTER_HORIZONTAL|wxALL, 2);
6060, wxALIGN_CENTER_HORIZONTAL|wxALL, 2);
6080, wxALIGN_CENTER_HORIZONTAL|wxALL, 2);
609itemSizer1->Add(itemSizer2, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
620 for(
size_t i= 0;
i<
m_Data.size(); ++
i) {
665m_MinColor(
"black"),
666m_MidColor(
"gray"),
667m_MaxColor(
"white"),
668m_UseConsensus(
false),
705 string table=
"Table";
722 table=
"TableRows";
730 charcbase = entry[0];
754 for(
size_t i= 0;
i<
column.size();
i++) {
775col_score /=
column.size();
778 for(
size_t i= 0;
i<
column.size();
i++) {
782scores[
i] = (c_score - col_score);
822 const floatfudge_factor = 0.75;
830normal= ((score - mins) / (mids - mins))/2;
832normal = ((score - mids) / (maxs - mids))/2 + 0.5f;
834 #if defined(_DEBUG) && 0 837 static TScoremaxnormal = 0.0, minnormal = 1.0;
838 if(normal > maxnormal) {
840 LOG_POST(
"CColumnScoringMethod::GetColorForScore - max normal: "<< maxnormal);
842 if(normal < minnormal) {
844 LOG_POST(
"CColumnScoringMethod::GetColorForScore - min normal: "<< minnormal);
848 intindex = (
int) (normal *
size);
849index =
max(0, index);
882DECLARE_EVENT_TABLE()
888 void OnApply( wxCommandEvent& event );
901m_Method(method), m_GradPanel(), m_WindowSize(0)
915wxBoxSizer* itemBoxSizer1 =
newwxBoxSizer(wxVERTICAL);
916this->SetSizer(itemBoxSizer1);
934itemBoxSizer1->Add(
m_GradPanel, 1, wxGROW|wxALL, 5);
936wxBoxSizer* itemBoxSizer2 =
newwxBoxSizer(wxHORIZONTAL);
937itemBoxSizer1->Add(itemBoxSizer2, 0, wxALIGN_RIGHT|wxALL, 5);
939itemBoxSizer2->Add(
newwxStaticText(
this, wxID_STATIC,
wxT(
"Averaging Window Size:")),
9400, wxALIGN_CENTER_VERTICAL|wxALL, 5);
942wxTextCtrl* itemTextControl1 =
943 newwxTextCtrl(
this,
wxID_ANY, wxEmptyString,
944wxDefaultPosition, wxDLG_UNIT(
this, wxSize(26, -1)), wxTE_RIGHT);
945itemTextControl1->SetMaxLength(4);
947itemBoxSizer2->Add(itemTextControl1, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
949wxCheckBox* itemCheckBox1 =
newwxCheckBox(
this,
wxID_ANY,
wxT(
"Use Consensus"));
951itemBoxSizer1->Add(itemCheckBox1, 0, wxALIGN_LEFT|wxALL, 5);
981m_CalculateRange(
eNone),
984m_MinColor(
"black"),
985m_MidColor(
"gray"),
986m_MaxColor(
"white"),
987m_UndefColor(0.8f, 0.8f, 1.0f),
988m_UseConsensus(
false),
1009 if(i < 0 || i > 25)
1051 stringsection =
"Table";
1054 if(!reg.
HasEntry(section,
"ConsensusMinimumValue") || (!reg.
HasEntry(section,
"ConsensusMaximumValue")))
1059 if(!reg.
HasEntry(section,
"NonConsensusMinimumValue") || (!reg.
HasEntry(section,
"NonConsensusMaximumValue")))
1070 const stringkBuiltinKey(
"Builtin");
1072 if(reg.
HasEntry(section, kBuiltinKey)) {
1075 const string& builtin_name = reg.
Get(section, kBuiltinKey);
1091 if(! builtin_matrix) {
1094 intbase_cnt = (
int) strlen(builtin_matrix->
symbols);
1095 for(
int i= 0;
i< base_cnt; ++
i) {
1097 for(
intj = 0; j < base_cnt; ++j) {
1115list <string> row_names;
1116section =
"TableRows";
1123 stringfirst_base =
columns.front().substr(0,1);
1124list<string> scores;
1126triangular = scores.size() == 1;
1129 ITERATE(list<string>, it, row_names) {
1134list<string> scores;
1136list<string>::iterator col_it =
columns.begin();
1137 ITERATE(list<string>, scores_it, scores) {
1169 for(
size_t i= 0;
i<
column.size();
i++ ) {
1175scores[
i] = score;
1180col_score = score_sum/num;
1189 for(
size_t i= 0;
i<
column.size();
i++ ) {
1192 if(col_scores[x] > -1) {
1193score = scores[col_scores[x]];
1199 for(
size_tj = 0; j <
column.size(); j++ ) {
1206score = score_sum/(
column.size() + 1);
1207col_scores[x] = (
int)
i;
1209scores[
i] = score;
1214 for(
size_t i= 0;
i<
column.size();
i++) {
1215avg_score += scores[
i];
1217avg_score /=
column.size();
1218 for(
size_t i= 0;
i<
column.size();
i++) {
1219scores[
i] -= avg_score;
1261 intindex = (
int) (normal *
size);
1262index =
max(0, index);
1263index =
min(index,
size- 1);
1324DECLARE_EVENT_TABLE()
1330 void OnApply( wxCommandEvent& event );
1343m_Method(method), m_GradPanel(), m_WindowSize(0)
1346Create(parent,
id);
1357wxBoxSizer* itemBoxSizer1 =
newwxBoxSizer(wxVERTICAL);
1358this->SetSizer(itemBoxSizer1);
1373itemBoxSizer1->Add(
m_GradPanel, 1, wxGROW|wxALL, 5);
1376wxBoxSizer* itemBoxSizer3 =
newwxBoxSizer(wxHORIZONTAL);
1377itemBoxSizer3->Add(
newwxStaticText(
this, wxID_STATIC,
wxT(
"Neutral (no master specified)")),
13780, wxALIGN_CENTER_VERTICAL|wxALL, 5);
1380wxColourPickerCtrl* itemColorPicker =
newwxColourPickerCtrl(
this,
wxID_ANY);
1382itemBoxSizer3->Add(itemColorPicker, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
1383itemBoxSizer1->Add(itemBoxSizer3, 0, wxALIGN_RIGHT|wxALL, 0);
1386wxBoxSizer* itemBoxSizer2 =
newwxBoxSizer(wxHORIZONTAL);
1387itemBoxSizer1->Add(itemBoxSizer2, 0, wxALIGN_RIGHT|wxALL, 0);
1389itemBoxSizer2->Add(
newwxStaticText(
this, wxID_STATIC,
wxT(
"Averaging Window Size:")),
13900, wxALIGN_CENTER_VERTICAL|wxALL, 5);
1392wxTextCtrl* itemTextControl1 =
1393 newwxTextCtrl(
this,
wxID_ANY, wxEmptyString,
1394wxDefaultPosition, wxDLG_UNIT(
this, wxSize(26, -1)), wxTE_RIGHT);
1395itemTextControl1->SetMaxLength(4);
1397itemBoxSizer2->Add(itemTextControl1, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
1399wxCheckBox* itemCheckBox1 =
newwxCheckBox(
this,
wxID_ANY,
wxT(
"Use Consensus"), wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT);
1401itemBoxSizer1->Add(itemCheckBox1, 0, wxALIGN_RIGHT | wxALL, 5);
static const char * bgColor
CColorPanel(vector< SData > &data, wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize)
void x_AddNewRow(const string &text, wxColor fgColor, wxColor bgColor)
void OnChar(wxKeyEvent &event)
void OnDelete(wxHyperlinkEvent &event)
void x_DeleteRow(wxWindowID id)
void OnTextCtrlUpdated(wxCommandEvent &event)
const string & GetSetBases() const
Which bases have colors specified?
virtual const CRgbaColor & GetColorForScore(TScore score, EColorType type) const
returns a color corresponding to a given score value.
virtual bool HasPropertiesPanel() const
returns true if the method supports properties dialog
virtual ~CColorTableMethod()
virtual int GetSupportedColorTypes() const
returns a combination of EColorType flags
virtual wxWindow * CreatePropertiesPanel(wxWindow *parent)
This a factory method that shall produce a CPropertiesPanel representing properties of the method; th...
string m_SetBases
> Foreground color when nothing specified for a base.
virtual const CMenuItem * GetMenu()
Returns a pointer to the submenu.
virtual IScoringMethod * Clone() const
CRgbaColor GetColor(char cbase, EColorType type) const
virtual void CalculateScores(IAlnExplorer::TNumrow row, const IScoringAlignment &aln_vec, TScoreColl &scores)
void AddSetBase(char cbase)
CRgbaColor m_DefaultForeColor
> Background color when nothing specified for a base.
virtual const CRgbaColor & GetColorForNoScore(EColorType type) const
Call for display colors when CanCalculateScores returns false.
CRgbaColor m_DefaultBackColor
> foreground or text colors
vector< CRgbaColor > m_Colors
virtual bool Load(CNcbiRegistry ®)
vector< CRgbaColor > m_ForeColors
> background colors
bool Save(CNcbiRegistry ®)
Opposite of Load().
virtual void SetColorForNoScore(IScoringMethod::EColorType type, const CRgbaColor &color)
void SetColor(char cbase, const CRgbaColor &color, EColorType type=fForeground)
CColorTableScoringPanel - Properties Panel for CColorTableMethod.
void OnSwapColors(wxCommandEvent &event)
void OnContrastBG(wxCommandEvent &event)
void OnApply(wxCommandEvent &event)
CColorTableMethod & m_Method
CColorTableScoringPanel(CColorTableMethod &method, wxWindow *parent, wxWindowID id=wxID_ANY)
CColorPanel * m_ColorPanel
void OnContrastFG(wxCommandEvent &event)
vector< CColorPanel::SData > m_Data
void OnAddRow(wxCommandEvent &event)
void SetColorForNoScore(EColorType type, const CRgbaColor &color)
vector< TScore > m_vScore
virtual const CRgbaColor & GetColorForScore(TScore score, EColorType type) const
returns a color corresponding to a given score value.
void x_CalculateNonConsensusScores(const string &column, TScore &col_score, TScoreVector &scores)
virtual bool Load(CNcbiRegistry ®)
virtual ~CColumnScoringMethod()
virtual int GetSupportedColorTypes() const
returns a combination of EColorType flags
size_t m_WindowSize
relative, not absolute scores.
size_t GetWindowSize() const
void x_CalculateConsensusScores(char cons, const string &column, TScore &col_score, TScoreVector &scores)
virtual IScoringMethod * Clone() const
CRgbaGradColorTable m_ColorTable
TScore m_MinScore
weight matrix
bool CanCalculateScores(const IScoringAlignment &aln)
Do we have what it takes to calculate scores? e.g. a master row selected?
virtual wxWindow * CreatePropertiesPanel(wxWindow *parent)
This a factory method that shall produce a CPropertiesPanel representing properties of the method; th...
TScore m_MaxScore
possible range of scores.
virtual const CMenuItem * GetMenu()
Returns a pointer to the submenu.
virtual void CalculateScores(char cons, const string &column, TScore &col_score, TScoreVector &scores)
CColumnScoringMethod()
CColumnScoringMethod.
const CRgbaColor & GetColorForNoScore(EColorType type) const
Call for display colors when CanCalculateScores returns false.
virtual void CreateColorTable(int size)
friend class CColumnScoringPanel
virtual bool HasPropertiesPanel() const
returns true if the method supports properties dialog
CColumnScoringPanel(CColumnScoringMethod &method, wxWindow *parent, wxWindowID id=wxID_ANY)
void OnApply(wxCommandEvent &event)
CGradientColorPanel * m_GradPanel
CColumnScoringMethod & m_Method
void GetParams(stParams ¶ms) const
CHyperlink is wrapper class for wxHyperlinkCtrl On OSX platform it posts URL click instead of sending...
virtual wxWindow * CreatePropertiesPanel(wxWindow *parent)
This a factory method that shall produce a CPropertiesPanel representing properties of the method; th...
virtual const CRgbaColor & GetColorForScore(TScore score, EColorType type) const
returns a color corresponding to a given score value.
virtual void CalculateScores(char cons, const string &column, TScore &col_score, TScoreVector &scores)
virtual ~CMatrixScoringMethod()
void x_CalculateNonConsensusRange()
TScore m_NonConsensusMaxScore
const CRgbaColor & GetColorForNoScore(EColorType type) const
Call for display colors when CanCalculateScores returns false.
virtual bool HasPropertiesPanel() const
returns true if the method supports properties dialog
TScore m_NonConsensusMinScore
static int x_BaseToIndex(char c)
virtual int GetSupportedColorTypes() const
returns a combination of EColorType flags
virtual IScoringMethod * Clone() const
virtual bool Load(CNcbiRegistry ®)
virtual const CMenuItem * GetMenu()
Returns a pointer to the submenu.
unsigned char m_CalculateRange
void x_CalculateConsensusRange()
void SetColorForNoScore(EColorType type, const CRgbaColor &color)
bool CanCalculateScores(const IScoringAlignment &aln)
Do we have what it takes to calculate scores? e.g. a master row selected?
CNcbiMatrix< TScore > m_vScore
TScore m_ConsensusMinScore
TScore m_ConsensusMaxScore
size_t GetWindowSize() const
virtual void CreateColorTable(int size)
friend class CMatrixScoringPanel
CRgbaGradColorTable m_ColorTable
CGradientColorPanel * m_GradPanel
CMatrixScoringMethod & m_Method
CMatrixScoringPanel(CMatrixScoringMethod &method, wxWindow *parent, wxWindowID id=wxID_ANY)
void OnApply(wxCommandEvent &event)
void Resize(size_t i, size_t j, T val=T())
resize this matrix, filling the empty cells with a known value
size_t GetRows() const
get the number of rows in this matrix
size_t GetCols() const
get the number of columns in this matrix
class CRgbaColor provides a simple abstraction for managing colors.
virtual bool SaveInfo(CNcbiRegistry ®)
saves only descriptive information
EColorGradType m_ColorGradType
CRgbaColor x_GetColor(CNcbiRegistry ®, const string &key, const string def_value)
virtual bool LoadInfo(CNcbiRegistry ®)
loads only descriptive information
virtual TSeqPos GetAlnStart() const =0
virtual TSeqPos GetBaseWidth(IAlnExplorer::TNumrow) const =0
virtual TSeqPos GetAlnStop() const =0
virtual string & GetAlnSeqString(IAlnExplorer::TNumrow row, string &buffer, const IAlnExplorer::TSignedRange &aln_range) const =0
IScoringMethod represents an abstract algorithm for calculating alignment scores and assigning colors...
vector< TScore > TScoreVector
static const int sm_DefGradientSize
default number of colors in gradient
CRgbaColor & GetColor(CSeqFeatData::ESubtype subtype)
static const char * str(char *buf, int n)
static const char * column
static const column_t columns[]
unsigned int TSeqPos
Type for sequence locations and lengths.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
#define ERR_POST(message)
Error posting with file, line number information but without error codes.
#define LOG_POST(message)
This macro is deprecated and it's strongly recomended to move in all projects (except tests) to macro...
void SetSize(size_t size)
void FillGradient(const CRgbaColor &start_c, const CRgbaColor &end_c)
initialize the whole table with gradient colors in [start_c, end_c] range
void SetFrom(TSeqPos start)
string ToString(bool printAlpha=true, bool uchars=true) const
Return a string representation of the current color.
static CRgbaColor GetColor(const string &color_type)
return a color based on a string.
void push_back(const attr_type &attr)
virtual bool GetBool(const string §ion, const string &name, bool default_value, TFlags flags=0, EErrAction err_action=eThrow) const
Get boolean value of specified parameter name.
virtual const string & Get(const string §ion, const string &name, TFlags flags=0) const
Get the parameter value.
virtual double GetDouble(const string §ion, const string &name, double default_value, TFlags flags=0, EErrAction err_action=eThrow) const
Get double value of specified parameter name.
virtual bool HasEntry(const string §ion, const string &name=kEmptyStr, TFlags flags=0) const
virtual void EnumerateEntries(const string §ion, list< string > *entries, TFlags flags=fAllLayers) const
Enumerate parameter names for a specified section.
virtual string GetString(const string §ion, const string &name, const string &default_value, TFlags flags=0) const
Get the parameter string value.
bool Set(const string §ion, const string &name, const string &value, TFlags flags=0, const string &comment=kEmptyStr)
Set the configuration parameter value.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static string DoubleToString(double value, int precision=-1, TNumToStringFlags flags=0)
Convert double to string.
static int CompareNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive compare of a substring with another string.
static list< string > & Split(const CTempString str, const CTempString delim, list< string > &arr, TSplitFlags flags=0, vector< SIZE_TYPE > *token_pos=NULL)
Split a string using specified delimiters.
static double StringToDouble(const CTempStringEx str, TStringToNumFlags flags=0)
Convert string to double.
static string TruncateSpaces(const string &str, ETrunc where=eTrunc_Both)
Truncate whitespace in a string.
@ fSplit_Tokenize
All delimiters are merged and trimmed, to get non-empty tokens only.
TFrom GetFrom(void) const
Get the From member data.
unsigned int
A callback function used to compare two keys in a database.
<!DOCTYPE HTML >< html > n< header > n< title > PubSeq Gateway Help Page</title > n< style > n table
static void text(MDB_val *v)
const struct ncbi::grid::netcache::search::fields::SIZE size
const struct ncbi::grid::netcache::search::fields::KEY key
Process information in the NCBI Registry, including working with configuration files.
const SNCBIPackedScoreMatrix NCBISM_Pam30
const SNCBIPackedScoreMatrix NCBISM_Blosum62
const SNCBIPackedScoreMatrix NCBISM_Pam250
const SNCBIPackedScoreMatrix NCBISM_Blosum80
const SNCBIPackedScoreMatrix NCBISM_Pam70
const SNCBIPackedScoreMatrix NCBISM_Blosum45
The standard matrices.
#define row(bind, expected)
const TNCBIScore * scores
strlen(symbols) x strlen(symbols)
const char * symbols
order of residues
static const string kTablerowB
static const string kTablerowF
static const string kTablerow
const unsigned int kMatrixSize
CMatrixScoringMethod.
static const string kDefaultColorStr
CColorTableMethod.
static wxAcceleratorEntry entries[3]
wxColour ConvertColor(const CRgbaColor &color)
wxString ToWxString(const string &s)
string ToStdString(const wxString &s)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4