73 static const string kScale =
"scale";
167 GetChildren().front()->GetHTMLActiveAreas(p_areas);
171 for (
auto& area : areas) {
172 area.m_ParentId =
GetId();
173 area.m_Descr.clear();
177 && area.m_Signature !=
"otl" ) {
181 p_areas->insert(p_areas->end(), areas.begin(), areas.end());
200 m_Sel.ResetAnnotsNames();
203 m_Sel.AddUnnamedAnnots();
231 string cache_svc = reg.
GetString(
"Configuration",
"service",
"NC_SV_Conf_PROD");
232 string cache_name = reg.
GetString(
"Configuration",
"cache",
"conf");
239 return cache_instance;
287 }
catch (exception& e) {
293 bool parameter_present =
false, smooth_curve =
false;
294 string scale, clip_outliers, outlier_color, sd_thresh, stored_scale, num_bins, neg_color, value_range;
306 hist_settings.
m_Color = iter->second;
307 parameter_present =
true;
310 opacity = (opacity <= 0) ? 100 :
min(opacity, 100);
311 parameter_present =
true;
314 parameter_present =
true;
316 hist_settings.
m_Type = iter->second;
317 parameter_present =
true;
319 scale = iter->second;
320 parameter_present =
true;
322 stored_scale = iter->second;
323 parameter_present =
true;
328 outlier_color = iter->second;
329 parameter_present =
true;
331 sd_thresh = iter->second;
332 parameter_present =
true;
334 neg_color = iter->second;
335 parameter_present =
true;
337 num_bins = iter->second;
338 parameter_present =
true;
340 value_range = iter->second;
341 parameter_present =
true;
345 }
catch (exception& e) {
348 parameter_present =
true;
351 fit_step = max<int>(fit_step, 1);
352 parameter_present =
true;
354 }
catch (std::exception&) {
355 LOG_POST(
Error <<
"CGraphTrack::x_LoadSettings: invalid settings "
362 if (!parameter_present)
378 if ( !hist_settings.
m_Color.empty() ) {
390 if (!neg_color.empty())
392 float alpha = opacity;
402 if ( !hist_settings.
m_Type.empty() ) {
404 hist_conf->
m_Type = style;
424 if (!scale.empty()) {
428 if (!stored_scale.empty()) {
432 if (!clip_outliers.empty()) {
436 if (!outlier_color.empty()) {
440 if (!sd_thresh.empty()) {
444 if (!num_bins.empty()) {
449 if (!value_range.empty()) {
450 string range_min, range_max;
452 if (!range_min.empty() && range_min !=
"inf") {
455 if (!range_max.empty() && range_max !=
"inf") {
469 }
catch (std::exception&) {
470 LOG_POST(
Error <<
"CGraphTrack::x_LoadSettings: invalid histogram settings");
477 vector<string> settings;
513 ERR_POST(
"CGraphTrack::x_OnJobCompleted() notification for job \
514 does not contain results.");
520 size_t count =
result->m_ObjectList.size();
523 vector<string> titles;
536 titles.push_back(title);
543 uo->
SetType().SetStr(
"YLimits");
552 }
catch (exception& e) {
577 msg += (count != 1 ?
"s shown" :
" shown");
597 config->m_ShowConnection =
false;
632 if ((*iter)->GetOrder() == order)
644 wxMenuItem* item = menu.AppendCheckItem(id_base++,
wxT(
"Fixed scale"));
648 vector<CRef<CHistogramGlyph>> graphs;
649 vector<wxMenuItem*> settings_menu;
651 if (!graphs.empty()) {
652 menu.AppendSeparator();
653 for (
auto graph : graphs) {
655 static const int kMaxMenuItemLen = 50;
656 if (s.Length() > kMaxMenuItemLen) {
657 s.Truncate(kMaxMenuItemLen - 3);
660 settings_menu.push_back(menu.AppendCheckItem(id_base++, s));
665 wxMenuItem* move_item = 0;
667 menu.AppendSeparator();
668 move_item = menu.AppendCheckItem(id_base,
wxT(
"Remove from parent container"));
678 for (
size_t i = 0;
i < settings_menu.size() &&
i < graphs.size(); ++
i) {
679 if (!settings_menu[
i]->IsChecked())
681 graphs[
i]->RunSettingsDialog();
684 if (move_item && move_item->IsChecked()) {
691 if ((*iter)->GetOrder() ==
GetOrder()) {
705 if ((*ch_it)->GetOrder() >= new_order) {
706 new_order = (*ch_it)->GetOrder() + 1;
711 if ((*it)->GetOrder() ==
GetOrder()) {
719 n_proxy->CTempTrackProxy::operator=(*proxy);
720 n_proxy->SetKey(
"graph_track");
721 n_proxy->SetOrder(new_order);
722 n_proxy->SetTrack(proxy->
GetTrack());
723 n_proxy->GetTrack()->SetShowTitle(
true);
728 annots.push_back(
gt->GetAnnot());
729 n_proxy->SetAnnots(annots);
739 top_container->
Update(
true);
749 vector<int> tracks2remove;
751 if (!current_track_proxy)
753 tracks2remove.push_back(current_track_proxy->
GetOrder());
757 if (!current_track_proxy->
GetId().empty())
766 new_track->
GetChildren().push_back(subtrack_proxy);
771 if (!current_track_proxy)
776 new_track->
GetChildren().push_back(subtrack_proxy);
778 if (!current_track_proxy->
GetId().empty())
784 tracks2remove.push_back(
gt->GetOrder());
786 string track_source =
"graphs:";
790 annots.push_back(track_source);
796 *overlay_params = *this_params;
798 ITERATE(vector<int>, it, tracks2remove) {
822 TAnnotGroup annot_group;
828 string graph_cache_key;
830 bool is_cached_bigwig =
false;
831 if (!graph_cache_key.empty()) {
840 if (is_cached_bigwig) {
844 bool isCoverageCheckFinished{
false};
864 if (seqtable_annots.count(*iter) > 0) {
872 isCoverageCheckFinished =
true;
873 }
NCBI_CATCH(
"CGraphTrackFactory::CreateTracks()");
875 if(!isCoverageCheckFinished) {
930 ITERATE (TAnnotGroup, g_iter, annot_group) {
950 track->SetAnnot(iter->first);
952 if ( !iter->second.empty() ) {
953 track->SetTitle(iter->second);
955 if (!graph_cache_key.empty()) {
997 config->SetLegend_text(
"anchor_12");
1004 bool smooth_curve =
false;
1005 string fit_step =
"4";
1009 config->SetHidden_settings().push_back(
1012 config->SetHidden_settings().push_back(
1015 config->SetHidden_settings().push_back(
1018 config->SetHidden_settings().push_back(
1021 config->SetHidden_settings().push_back(
1028 value_range = iter->second;
1034 config->SetHidden_settings().push_back(
1037 config->SetHidden_settings().push_back(
1042 fit_step = iter->second;
1044 }
catch (std::exception&) {
1049 scale = stored_scale;
1053 "style",
"Display Style",
1055 "Display style for graph data");
1056 choice->SetValues().push_back(
1060 "Shown as a histogram",
1061 "Graph data are shown as a histogram"));
1062 choice->SetValues().push_back(
1066 "Shown as a heat map",
1067 "Graph data are shown as a heat map (smear bar)"));
1068 choice->SetValues().push_back(
1072 "Shown as a line graph",
1073 "Graph data are shown as a line graph"));
1074 config->SetChoice_list().push_back(choice);
1078 kScale,
"Linear/Log Scale",
1080 "Scale for graph data");
1081 choice->SetValues().push_back(
1085 "Shown at linear scale",
1086 "Graph data is shown at linear scale"));
1087 choice->SetValues().push_back(
1091 "Shown at log base 10 scale",
1092 "Graph data is shown at logarithmic (base 10) scale"));
1093 choice->SetValues().push_back(
1097 "Shown at natural logarithm (base e) scale",
1098 "Graph data is shown at natural logrithm (base e) scale"));
1099 choice->SetValues().push_back(
1103 "Shown at log base 2 scale",
1104 "Graph data is shown at logarithmic (base 2) scale"));
1105 config->SetChoice_list().push_back(choice);
1108 config->SetCheck_boxes().push_back(
1110 "smooth_curve",
"Smooth curve",
"Smooth curve",
"", smooth_curve));
1112 bool range_autoscale =
true;
1113 string range_min, range_max;
1114 if (!value_range.empty()) {
1115 string r_min, r_max;
1117 if (!r_min.empty() && r_min !=
"inf") {
1118 range_min = (errno) ?
"" : r_min;
1120 if (!r_max.empty() && r_max !=
"inf") {
1121 range_max = (errno) ?
"" : r_max;
1123 config->SetHidden_settings().push_back(
1129 "Set Value Range (Data outside range will be clipped)",
1130 "Set Value Range (Data outside range will be clipped)",
1136 auto condition =
Ref(
new objects::CConditional);
1137 condition->SetName(
kScale);
1142 range_control->SetConditions().push_back(condition);
1145 auto condition =
Ref(
new objects::CConditional);
1146 condition->SetName(
"style");
1149 range_control->SetConditions().push_back(condition);
1152 config->SetRange_controls().push_back(range_control);
1162 legend_item->SetLabel(track_proxy->
GetSource());
1163 legend_item->SetColor(
"blue");
1164 legend_item->SetId(
"");
1174 color = iter->second;
1177 opacity = (opacity <= 0) ? 100 :
min(opacity, 100);
1181 }
catch (std::exception&) {
1182 LOG_POST(
Error <<
"CGraphTrack::GetLegend: invalid settings " << iter->second);
1185 bool color_is_set =
false;
1187 if (!
color.empty()) {
1190 color_is_set =
true;
1191 }
catch (exception& e) {
1196 if (color_is_set ==
false) {
1212 if (opacity < 100 && opacity > 0) {
1213 float alpha = opacity;
1217 legend_item->SetColor(c.
ToString());
1220 legend_item->SetLabel(
label);
1221 legend.push_back(legend_item);
1329 config->m_ShowConnection =
false;
1342 glyphs.push_back(*hist_it);
1345 if (!glyphs.empty())
1360 graphs.push_back(
g);
1370 if (!graphs.empty()) {
1395 return (
gt != 0 &&
gt->GetChildren().size() == 1);
1400 vector<CRef<CGraphTrack>> tracks;
1402 if (
gt &&
gt->GetChildren().size() == 1) {
1403 tracks.push_back(
Ref(
gt));
1422 graphs.push_back(
Ref(hg));
User-defined methods of the data storage class.
User-defined methods of the data storage class.
Checksum and hash calculation classes.
CAppJobNotification Notification send by CAppJobEventTranslator.
CChecksum – Checksum calculator.
CDataTrack - a abstract base class for layout tracks which need to deal with background data retrieva...
virtual void Update(bool layout_only)
Update content and layout including the bounding box.
virtual void x_UpdateBoundingBox()
Update the bounding box assuming children's sizes are fixed if any.
virtual void x_RenderContent() const
The content rendering must be implemented in the derived layout tracks.
virtual void GetHTMLActiveAreas(TAreaVector *p_areas) const
Get html active areas.
void Add(CSeqGlyph *obj)
Append a layout object to the end.
void SetObjects(const CLayoutGroup::TObjectList &objs)
CLayoutGroup & SetGroup()
const CLayoutGroup::TObjectList & GetChildren() const
const CLayoutGroup & GetGroup() const
CLayoutGroup::TObjectList & SetChildren()
CRef< CLayeredLayout > m_Layered
CRef< CSimpleLayout > m_Simple
void SetLayoutPolicy(ILayoutPolicy *policy)
Set policy on how to deploy the layout of its children.
virtual string GetExtensionIdentifier() const
returns the unique human-readable identifier for the extension the id should use lowercase letters se...
virtual string GetExtensionLabel() const
returns a displayable label for this extension ( please capitalize the key words - "My Extension" )
virtual CRef< objects::CTrackConfigSet > GetSettings(const string &profile, const TKeyValuePairs &settings, const CTempTrackProxy *track_proxy) const
virtual void GetMatchedAnnots(const TAnnotMetaDataList &src_annots, const ILayoutTrackFactory::SExtraParams ¶ms, TAnnotNameTitleMap &out_annots) const
virtual TTrackMap CreateTracks(SConstScopedObject &object, ISGDataSourceContext *ds_context, CRenderingContext *r_cntx, const SExtraParams ¶ms=SExtraParams(), const TAnnotMetaDataList &src_annots=TAnnotMetaDataList()) const
create a layout track based on the input objects and extra parameters.
virtual const CTrackTypeInfo & GetThisTypeInfo() const
virtual CRef< CSGGenBankDS > GetDataSource()
Method for accessing the data source.
virtual void x_LoadSettings(const string &preset_style, const TKeyValuePairs &settings)
load the track settings.
objects::SAnnotSelector m_Sel
void SetAnnot(const string &annot)
virtual void x_UpdateBoundingBox()
Update the bounding box assuming children's sizes are fixed if any.
bool CreateOverlay(vector< CRef< CGraphTrack >> &tracks)
virtual bool Drop(CRef< CLayoutTrack > &track)
static const string kOverlayed
static CNetICacheClient & s_GetICacheInstance()
void x_OnSettingsIconClicked()
bool m_FixedScale
Dynamic or fixed graph scale.
static string x_LayoutValueToStr(ELayout layout)
static ELayout x_LayoutStrToValue(const string &layout)
virtual void x_OnJobCompleted(CAppJobNotification ¬ify)
CGraphTrack(CSGGraphDS *ds, CRenderingContext *r_cntx)
static CNetICacheClient s_InitICache()
virtual void x_OnLayoutChanged()
update the layout.
CRef< CHistogramGlyph > m_Grid
virtual CHTMLActiveArea * InitHTMLActiveArea(TAreaVector *p_areas) const
Initialize the HTML active area for a track.
virtual void x_RenderContent() const
The content rendering must be implemented in the derived layout tracks.
void SetLayout(ELayout layout)
CSGGraphDS::TAxisLimits m_YLimits
Graph y limits stored when FixedScale is set.
virtual const CTrackTypeInfo & GetTypeInfo() const
virtual bool CanDrop(CRef< CLayoutTrack > &track)
virtual void x_UpdateData()
update track content.
virtual void GetLegend(const CTempTrackProxy *track_proxy, objects::CTrackConfig::TLegend &legend) const
static CTrackTypeInfo m_TypeInfo
virtual void x_OnIconClicked(TIconID id)
Mouse left-click event handler on an icon.
virtual void GetHTMLActiveAreas(TAreaVector *p_areas) const
Get html active areas.
void x_CollectAllGraphs(vector< CRef< CHistogramGlyph >> &graphs) const
virtual void x_SaveSettings(const string &preset_style)
save part of settings to a profile string.
string m_Descr
description that can be used as label or tooltip
@ fNoNavigation
track title won't show navigation controls
int m_Flags
area flags, will need to replace m_Type
void AddSettings(const string &name, CRef< CHistParams > hist_params)
Add a new settings for a given name.
bool HasSettings(const string &name) const
Check if there is settings for a given name.
CRef< CHistParams > GetDefHistParams() const
CRef< CHistParams > GetHistParams(TFeatSubtype subtype) const
Get histogram settings using feature subtype.
CRgbaColor m_SmearColorMin
static EType TypeStrToValue(const string &type)
int m_SDeviationThreshold
EScale m_StoredScale
stored scale of the underlying data (e.g. as reported by TMS)
CRgbaColor m_OutlierColor
static EScale ScaleStrToValue(const string &scale)
static const string & TypeValueToStr(CHistParams::EType type)
static const string & ScaleValueToStr(CHistParams::EScale scale)
EScale m_Scale
requested scale
CRange< float > m_ValueRange
CRgbaColor m_SmearColorMax
const string & GetAnnotName() const
void SetAxisMin(TDataType min)
TDataType GetAxisMin() const
void SetShowTitle(bool f)
void SetAnnotName(const string &name)
void SetAxisMax(TDataType max)
void SetFixedScale(bool value)
const string & GetTitle() const
TDataType GetAxisMax() const
Get the axis limits (max/min).
TDataType GetMax() const
Get the actually density max/min values.
void SetRenderingMode(ERenderingMode mode)
void SetDesc(const string &desc)
void DrawGrid(bool include_background) const
void SetConfig(const CSeqGraphicConfig &config)
CLayoutGroup is a container of CSeqGlyphs (layout objects).
void SetLayoutPolicy(ILayoutPolicy *policy)
Set policy on how to deploy the layout of its children.
void PushBack(CSeqGlyph *obj)
Append a layout object to the end.
TObjectList & SetChildren()
const TObjectList & GetChildren() const
CLayoutGroup inline methods.
CConstRef< CSeqGlyph > GetChild(int idx) const
Get the layout object at index 'idx'.
size_t GetChildrenNum() const
Get total number of children.
ILayoutPolicy::TObjectList TObjectList
bool m_Expanded
is this track in expanded state
@ eIcon_Settings
icon id for track settings
ILayoutTrackHost * m_LTHost
Top level host owning the tracks.
string m_Title
track title
bool m_On
is this track shown
CLayoutTrack * GetParentTrack()
void x_OnLayoutChanged()
update the layout.
const string & GetId() const
virtual void x_OnIconClicked(TIconID id)
Mouse left-click event handler on an icon.
TModelUnit x_GetTBHeight() const
Get title bar height including margin.
void SetMsg(const string &msg)
CConstRef< CSeqGraphicConfig > x_GetGlobalConfig() const
Method for getting global configuration from rendering context.
void SetProfile(const string &preset_style)
CLayoutTrack inline method implmentation.
CRef< CSeqGraphicConfig > m_gConfig
global configuration.
int TIconID
use int as TIconID instead of EIconID.
virtual CHTMLActiveArea * InitHTMLActiveArea(TAreaVector *p_areas) const
Initialize the HTML active area for a track.
void x_RegisterIcon(const SIconInfo &icon)
register track icons.
static CNcbiApplication * Instance(void)
Singleton method.
Client to NetCache server (implements ICache interface)
COverlayLayout is the layout policy that arranges glyphs over the top of each other.
Note about the "buf_size" parameter for streams in this API.
@ fOwnReader
Own the underlying reader.
@ fOwnWriter
Own the underlying writer.
CRenderingContext offers the basic context and utility methods for rendering layout objects in featur...
const TSeqRange & GetVisSeqRange() const
TModelRange IntersectVisible(const CSeqGlyph *obj) const
class CRgbaColor provides a simple abstraction for managing colors.
static void ParseProfileString(const string &profile_str, TKeyValuePairs &settings)
virtual bool AllJobsFinished() const
void SetJobListener(CEventHandler *listener)
Set JobDispatcher listener.
virtual void ClearJobID(TJobID job_id)
void SetDepth(int depth)
Set the annotation selector resolving depth.
virtual void DeleteAllJobs()
Remove waiting jobs from queue or cancel the unfinished jobs.
void SetAdaptive(bool flag)
void LoadSeqGraphs(const string &annotName, objects::SAnnotSelector &sel, CRenderingContext &ctx, bool fixed_scale, const TAxisLimits &y_limits, CConstRef< CSeqGraphicConfig > config)
void GetSeqtableAnnots(objects::SAnnotSelector &sel, const TSeqRange &range, TAnnotNameTitleMap &names) const
void SetSeqTable(bool f)
inline methods
void SetGraphCacheKey(const string &graph_cache_key)
void GetAnnotNames(objects::SAnnotSelector &sel, const TSeqRange &range, TAnnotNameTitleMap &names, bool seq_table=false) const
CSGJobResult – the data structure holding the seqgraphic job results.
void x_InitHTMLActiveArea(CHTMLActiveArea &area) const
initialize the basic information for a given active area.
CRenderingContext * m_Context
the rendering context
virtual void SetHeight(TModelUnit h)
void SetParent(CSeqGlyph *p)
virtual void SetWidth(TModelUnit w)
virtual void SetLeft(TModelUnit l)
virtual TModelUnit GetTop() const
virtual TModelUnit GetHeight() const
virtual void Update(bool)
Update content and layout including the bounding box.
virtual void SetTop(TModelUnit b)
virtual TModelUnit GetWidth() const
virtual TModelUnit GetLeft() const
vector< CHTMLActiveArea > TAreaVector
list< CRef< CSeqGlyph > > TObjects
void SetRenderingContext(CRenderingContext *context)
Set the rendering context.
CRef< CHistParamsManager > GetHistParamsManager() const
Get histogram config manager.
list< CRef< CTempTrackProxy > > TTrackProxies
const string & GetKey() const
const TAnnots & GetAnnots() const
const string & GetId() const
const string & GetTrackProfile() const
const TTrackProxies & GetChildren() const
void SetOrder(int order)
CTempTrackProxy class implementation.
TSubTracks & SetSubTracks()
const string & GetStoredScale() const
void SetAnnots(const TAnnots &annots)
const CLayoutTrack * GetTrack() const
const TSubTracks & GetSubTracks() const
const string & GetSource() const
static CRef< objects::CChoice > CreateChoice(const string &name, const string &disp_name, const string &curr_val, const string &help, bool optional=false)
static CRef< objects::CHiddenSetting > CreateHiddenSetting(const string &name, const string &value)
static CRef< objects::CCheckBox > CreateCheckBox(const string &name, const string &disp_n, const string &help_text, const string &legend_txt, bool value, bool optional=false)
static CRef< objects::CRangeControl > CreateRangeControl(const string &name, const string &disp_name, const string &help, const string &value_min, const string &value_max, bool autoscale=true, bool inverse=false, bool optional=false)
static void DecodeValueRange(const string &value_range, string &range_min, string &range_max, bool &range_auto)
static CRef< objects::CChoiceItem > CreateChoiceItem(const string &name, const string &disp_name, const string &help, const string &legend_txt, bool optional=false)
CTrackContainer - a track container in the form of layout track.
const TTrackProxies & GetSubtrackProxies() const
CTrackContainer inline methods.
void AddTrackProxy(CTempTrackProxy *proxy, bool upgateMsg=true)
Add a track proxy.
CTrackProxy * AddNewTrack(const string &track_key, const CTrackProxy::TAnnots &annots, const string &disp_name, const string &name="", const string &filter="", const string &sub_key="")
Add a new empty track proxy.
virtual void RemoveTrack(int order, bool immediately=true)
completely remove a track from the hierachical tree.
void MoveTrack(int from, int to)
CTempTrackProxy::TTrackProxies TTrackProxies
CTrackProxy data structure contains information about the position of a track in its parent scope,...
virtual CRef< CTempTrackProxy > Clone() const
CTrackTypeInfo - holds description of a layout track type.
const string & GetDescr() const
const string & GetId() const
bool HasField(const string &str, const string &delim=".", NStr::ECase use_case=NStr::eCase) const
Verify that a named field exists.
CUser_object & AddField(const string &label, const string &value, EParseField parse=eParse_String)
add a data field to the user object that holds a given value
const CUser_field & GetField(const string &str, const string &delim=".", NStr::ECase use_case=NStr::eCase) const
Access a named field in this user object.
Writer-based output stream.
map< string, string > TAnnotNameTitleMap
List of annotations with the corresponding titles.
static void GetMatchedAnnots(const TAnnotMetaDataList &src_annots, const vector< string > &target_annots, const string &annot_type, const string &track_type, TAnnotNameTitleMap &out_annots)
Help function to find matched annotations.
virtual void LTH_PopupMenu(wxMenu *menu)=0
show track-specific context menu.
ISGDSManager is seqgraphic data source manage that serves as an data source context.
virtual CIRef< ISGDataSource > GetDS(const string &type, SConstScopedObject &object)=0
Get a seqgraphic data source instance of the specified type.
iterator_bool insert(const value_type &val)
container_type::value_type value_type
static const string kSeqGraph
static const string kScale
static const string kNumBins
static const string kSDeviationThreshold
CTrackProxy * s_FindTrackProxy(CTrackContainer &p_track, int order)
static const string kOutlierColor
static const string kClipOutliers
static string s_GetCacheKey(const string &annot_name)
static const CGraphTrack::ELayout kDefaultLayout
static const string kSeqTable
CGraphTrackFactory methods.
static const string kTrackTitle
CGraphTrack.
static const bool kDefaultFixedScale
static const string kNegColor
static const string kValueRange
static const string kStoredScale
const CNcbiRegistry & GetConfig(void) const
Get the application's cached configuration parameters (read-only).
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define ERASE_ITERATE(Type, Var, Cont)
Non-constant version with ability to erase current element, if container permits.
#define VECTOR_ERASE(Var, Cont)
Use this macro inside body of ERASE_ITERATE cycle to erase from vector-like container.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
string GetHexSum(void) const
Return string with checksum in hexadecimal form.
void AddLine(const char *line, size_t len)
#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 Error(CExceptionArgs_Base &args)
#define NCBI_CATCH(message)
Catch CExceptions as well This macro is deprecated - use *_X or *_XX variant instead of it.
static objects::SAnnotSelector GetAnnotSelector(TAnnotFlags flags=0)
request an annotation selector for a given type
static TAnnotNameType NameTypeStrToValue(const string &type)
static bool isRmtAnnotName(const string &sAnnotname)
check if a given annotation was created by a remote file pipeline
@ eAnnot_Unnamed
unnamed annotation
string ToString(bool printAlpha=true, bool uchars=true) const
Return a string representation of the current color.
CRef< CObject > GetResult() const
returns non-null pointer only if Completed or Running and has temporary results available
static bool GetKey(const TTrackSettings &TrackSettings, const string &key, string &value)
returns a specified key; if it does not exist, returns false
void FromString(const string &str)
Assign color values encoded in a string.
void Lighten(float scale)
@ eSerial_AsnBinary
ASN.1 binary.
IReader * GetReadStream(const string &key, int version, const string &subkey, size_t *blob_size_ptr, const CNamedParameterList *optional=NULL)
Read a lengthy blob via the IReader interface.
virtual bool HasBlobs(const string &key, const string &subkey)
Check if any BLOB exists (any version)
virtual IWriter * GetWriteStream(const string &key, int version, const string &subkey, unsigned int time_to_live=0, const string &owner=kEmptyStr)
Return sequential stream interface to write BLOB data.
static CObjectOStream * Open(ESerialDataFormat format, CNcbiOstream &outStream, bool deleteOutStream)
Create serial object writer and attach it to an output stream.
static CObjectIStream * Open(ESerialDataFormat format, CNcbiIstream &inStream, bool deleteInStream)
Create serial object reader and attach it to an input stream.
SAnnotSelector & ExcludeNamedAnnots(const CAnnotName &name)
Add named annot to set of annots names to exclude.
CRef< C > Ref(C *object)
Helper functions to get CRef<> and CConstRef<> objects.
TObjectType * GetPointer(void) THROWS_NONE
Get pointer,.
void Reset(void)
Reset reference object.
static position_type GetEmptyFrom(void)
TThisType & Set(position_type from, position_type to)
static position_type GetEmptyTo(void)
static TThisType GetWhole(void)
virtual string GetString(const string §ion, const string &name, const string &default_value, TFlags flags=0) const
Get the parameter string value.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static bool StringToBool(const CTempString str)
Convert string to bool.
static string SizetToString(size_t value, TNumToStringFlags flags=0, int base=10)
Convert size_t to string.
static int StringToNonNegativeInt(const CTempString str, TStringToNumFlags flags=0)
Convert string to non-negative integer value.
static int StringToInt(const CTempString str, TStringToNumFlags flags=0, int base=10)
Convert string to int.
static const string BoolToString(bool value)
Convert bool to string.
static string Join(const TContainer &arr, const CTempString &delim)
Join strings using the specified delimiter.
static bool StartsWith(const CTempString str, const CTempString start, ECase use_case=eCase)
Check if a string starts with a specified prefix value.
static bool EqualNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive equality of a substring with another string.
@ fConvErr_NoThrow
Do not throw an exception on error.
static const char label[]
void SetFrom(TFrom value)
Assign a value to From data member.
TTo GetTo(void) const
Get the To member data.
TFrom GetFrom(void) const
Get the From member data.
void SetTo(TTo value)
Assign a value to To data member.
const TData & GetData(void) const
Get the Data member data.
TReal GetReal(void) const
Get the variant data.
void SetType(TType &value)
Assign a value to Type data member.
list< CRef< CLegendItem > > TLegend
Tdata & Set(void)
Assign a value to data member.
constexpr bool empty(list< Ts... >) noexcept
double value_type
The numeric datatype used by the parser.
const struct ncbi::grid::netcache::search::fields::SIZE size
const struct ncbi::grid::netcache::search::fields::KEY key
NetCache ICache client specs.
T bound(T x_, T xlo_, T xhi_)
void copy(Njn::Matrix< S > *matrix_, const Njn::Matrix< T > &matrix0_)
Reader-writer based streams.
A help struct for storing information about a icon.
SCustomizedHistSettings()
int g(Seg_Gsm *spe, Seq_Mtf *psm, Thd_Gsm *tdg)
void UseDefaultMarginWidth(wxMenu &menu)
Using default menu item margin width.
wxString ToWxString(const string &s)