109 result->m_ObjectList.swap(glyphs);
113 }
catch (std::exception& ex) {
139 typedef std::map<string, CLDBlockLine::TListFeats> TMapPopNames;
140 TMapPopNames mapPopName;
142 for ( ; feat; ++feat) {
149 mapPopName[pop].push_back(*feat);
157 ITERATE(TMapPopNames, mapIter, mapPopName) {
158 const string& title = mapIter->first;
163 dmap.
AddRange(feat_iter->GetTotalRange());
173 ITERATE(TMapPopNames, mapIter, mapPopName) {
181 the_feats.push_back(fref);
184 string title = mapIter->first;
188 glyphs->push_back(ref_line);
209 const CSeq_id&
id =
dynamic_cast<const CSeq_id&
>(
object.object.GetObject());
219 if (iter->IsNamed()) {
253 const CSeq_id&
id =
dynamic_cast<const CSeq_id&
>(
object.object.GetObject());
254 return new CLDBlockDS(
object.scope.GetObject(),
id);
260 static string sid(
"seqgraphic_ldblock_ds_type");
266 static string slabel(
"Graphical View SNP Data Source Type");
User-defined methods of the data storage class.
const TAnnotNames & GetAnnotNames(void) const
size_t GetSize(void) const
CAppJobError Default implementation for IAppJobError - encapsulates a text error message.
void SetObjects(const CLayoutGroup::TObjectList &objs)
void SetAnnotName(const string &name)
virtual string GetExtensionLabel() const
returns a displayable label for this extension ( please capitalize the key words - "My Extension" )
virtual ISGDataSource * CreateDS(SConstScopedObject &object) const
CLDBlockDSType.
virtual string GetExtensionIdentifier() const
returns the unique human-readable identifier for the extension the id should use lowercase letters se...
virtual bool IsSharable() const
check if the data source can be shared.
void SetName(const string &)
void LoadData(const SParams ¶m)
CLDBlockDS(objects::CScope &scope, const objects::CSeq_id &id)
CLDBlockDS.
static void GetTrackNames(SConstScopedObject &object, TAnnotNameTitleMap &names, const TSeqRange &range, const ILayoutTrackFactory::SExtraParams ¶ms)
CLDBlockDS::SParams m_Params
CLDBlockJob(const CBioseq_Handle &handle, const CLDBlockDS::SParams ¶ms)
virtual EJobState x_Execute()
method truly doing the job.
void x_LoadFtable(CFeat_CI &feats, CSeqGlyph::TObjects *glyphs)
void x_Load(CSeqGlyph::TObjects *)
std::list< objects::CMappedFeat > TListFeats
ILayoutPolicy::TObjectList TObjectList
void SetTitle(const string &label, const string &default_title=NcbiEmptyString)
TSeqRange m_Range
target range
objects::CBioseq_Handle m_Handle
target sequence
TJobID x_LaunchJob(IAppJob &job, int report_period=1, const string &pool="ObjManagerEngine")
Launch either a background or foreground job.
bool m_Adaptive
adaptive/exact annot selector
int m_Depth
annotation resolving depth
objects::CBioseq_Handle m_Handle
CSGJobResult – the data structure holding the seqgraphic job results.
class CSeqGlyph defines an interface that wraps a rectilinear abstract object.
list< CRef< CSeqGlyph > > TObjects
CRef< CAppJobError > m_Error
namespace ncbi::objects::
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.
container_type::value_type value_type
static const struct name_t names[]
unsigned int TSeqPos
Type for sequence locations and lengths.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
const string & GetMsg(void) const
Get message string.
virtual const char * what(void) const noexcept
Standard report (includes full backlog).
static objects::SAnnotSelector GetAnnotSelector(TAnnotFlags flags=0)
request an annotation selector for a given type
static void SetResolveDepth(objects::SAnnotSelector &sel, bool adaptive, int depth=-1)
help function for setting selector resolve depth.
virtual void AddRange(TSeqRange range, CntType score=1, bool expand=false)
EJobState
Job states (describe FSM)
TRange GetTotalRange(void) const
const CSeq_feat & GetOriginalFeature(void) const
Get original feature with unmapped location/product.
SAnnotSelector & SetCollectNames(bool value=true)
Collect available annot names rather than annots.
SAnnotSelector & AddNamedAnnots(const CAnnotName &name)
Add named annot to set of annots names to look for.
TObjectType * GetPointer(void) THROWS_NONE
Get pointer,.
void Reset(void)
Reset reference object.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
TTo GetTo(void) const
Get the To member data.
TFrom GetFrom(void) const
Get the From member data.
const TStr & GetStr(void) const
Get the variant data.
const TData & GetData(void) const
Get the Data member data.
TReal GetReal(void) const
Get the variant data.
const TData & GetData(void) const
Get the Data member data.
const TUser & GetUser(void) const
Get the variant data.
static bool s_PassesFilter(const CMappedFeat &feat, CLDBlockDS::SParams ¶ms)
Static Helper functions.
range(_Ty, _Ty) -> range< _Ty >
CRenderingContext * r_cntx