(!m->first->GetParentOfType(&
object))
continue;
153 if((m->first->IsSolvent() || m->first->IsHeterogen()) &&
154hetsRedrawn.
find(
object) != hetsRedrawn.
end())
continue;
157hetsRedrawn[object] =
true;
170 ERRORMSG(
"Messenger::RemoveStructureWindow() - window mismatch");
187(*q)->SaveDialog(prompt);
204MoleculeHighlightMap::const_iterator h =
highlights.find(identifier);
207 if(index == -1)
return true;
209 if(index < 0 || index >= (
int)h->second.size()) {
210 ERRORMSG(
"Messenger::IsHighlighted() - index out of range");
213 returnh->second[index];
238StructureSet::ObjectList::const_iterator o, oe =
set->objects.
end();
239ChemicalGraph::MoleculeMap::const_iterator m, me;
240 for(o=
set->objects.
begin(); o!=oe; ++o) {
241 for(m=(*o)->graph->molecules.begin(), me=(*o)->graph->molecules.end(); m!=me; ++m) {
242 if(m->second->identifier == identifier)
250 if(seqIndexFrom > seqIndexTo || seqIndexFrom >= sequence->
Length() || seqIndexTo >= sequence->
Length()) {
251 ERRORMSG(
"Messenger::AddHighlights() - seqIndex out of range");
261 for(
unsigned int i=seqIndexFrom;
i<=seqIndexTo; ++
i) h->second[
i] =
true;
274(*q)->MakeSequenceVisible(sequence->
identifier);
283MoleculeHighlightMap::const_iterator h, he =
highlights.end();
286newHighlights[sequence->
identifier] = h->second;
291 ERRORMSG(
"Selected sequence has no highlights!");
302 if(seqIndexFrom > seqIndexTo || seqIndexFrom >= sequence->
Length() || seqIndexTo >= sequence->
Length()) {
303 ERRORMSG(
"Messenger::RemoveHighlights() - seqIndex out of range");
310 for(
i=seqIndexFrom;
i<=seqIndexTo; ++
i) h->second[
i] =
false;
314 if(h->second[
i] ==
true)
break;
315 if(
i== sequence->
Length())
326 if(indexFrom > indexTo || indexFrom >= identifier->
nResidues|| indexTo >= identifier->
nResidues) {
327 ERRORMSG(
"Messenger::ToggleHighlights() - index out of range");
331MoleculeHighlightMap::iterator h =
highlights.find(identifier);
338 for(
i=indexFrom;
i<=indexTo; ++
i) h->second[
i] = !h->second[
i];
341 for(
i=0;
i<h->second.size(); ++
i)
342 if(h->second[
i] ==
true)
break;
343 if(
i== h->second.size())
357 if(residueIDFrom > residueIDTo || residueIDFrom < 1 || residueIDTo < 1 ||
358residueIDFrom > (
int)molecule->
NResidues() || residueIDTo > (
int)molecule->
NResidues()) {
359 ERRORMSG(
"Messenger::AddHighlights() - residueID out of range");
370 for(
int i=residueIDFrom-1;
i<=residueIDTo-1; ++
i) h->second[
i] =
true;
372 if(scrollViewersTo) {
376(*t)->MakeResidueVisible(molecule, residueIDFrom - 1);
385 if(scrollViewersTo) {
389(*t)->MakeResidueVisible(molecule, residueID - 1);
401MoleculeHighlightMap::const_iterator h, he =
highlights.end();
436MoleculeHighlightMap::const_iterator h, he =
highlights.end();
458MoleculeHighlightMap::const_iterator h, he =
highlights.end();
460 if(h->first->HasStructure())
461(*residues)[h->first] = h->second;
464 return(residues->size() > 0);
476MoleculeHighlightMap::const_iterator h, he =
highlights.end();
478 if(h ==
highlights.begin()) mmdbID = h->first->mmdbID;
480 ERRORMSG(
"All highlights must be on a single PDB structure");
484 ERRORMSG(
"internal error - MoleculeIdentifier has no moleculeID");
494bas->
SetId().push_back(bid);
502bfs->SetFeatures().push_back(bf);
506bf->SetLocation().SetSubgraph(*cgp);
513 while(first < h->second.size()) {
516 while(first < h->second.size() && !h->second[
first]) ++
first;
517 if(
first>= h->second.size())
break;
520 while(
last+ 1 < h->second.size() && h->second[
last+ 1]) ++
last;
524rip->SetMolecule_id().Set(h->first->moleculeID);
525rip->SetFrom().Set(
first+ 1);
526rip->SetTo().Set(
last+ 1);
543MoleculeHighlightMap::const_iterator h, he =
highlights.end();
549 WARNINGMSG(
"Messenger::GetHighlightsForSelectionMessage() - SeqIdToIdentifier() failed");
556 boolfirstInterval =
true;
557 while(first < h->second.size()) {
560 while(first < h->second.size() && !h->second[
first]) ++
first;
561 if(
first>= h->second.size())
break;
565 while(
last+ 1 < h->second.size() && h->second[
last+ 1]) ++
last;
571firstInterval =
false;
590(*q)->SetWindowTitle();
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
CBiostruc_feature_set â.
CNcbiOstrstreamToString class helps convert CNcbiOstrstream to a string Sample usage:
CResidue_interval_pntr â.
void RedrawMolecule(int moleculeID) const
OpenGLRenderer * renderer
StructureSet * structureSet
RedrawSequenceViewerList redrawSequenceViewers
bool redrawAllSequenceViewers
void SetAllWindowTitles(void) const
void RedrawMoleculesWithIdentifier(const MoleculeIdentifier *identifier, const StructureSet *set)
void RestoreCachedHighlights(void)
void NewSequenceViewerFont(void)
void ToggleHighlights(const Sequence *sequence, unsigned int seqIndexFrom, unsigned int seqIndexTo)
void PostRedrawMolecule(const Molecule *molecule)
void GetHighlights(MoleculeHighlightMap *copyHighlights)
ncbi::objects::CBiostruc_annot_set * CreateBiostrucAnnotSetForHighlightsOnSingleObject(void) const
bool IsHighlighted(const Molecule *molecule, int residueID) const
bool IsHighlightedAnywhere(const MoleculeIdentifier *identifier) const
bool IsFileMessengerActive(void) const
void SequenceWindowsSave(bool prompt)
void RemoveStructureWindow(const StructureWindow *structureWindow)
MoleculeHighlightMap highlightCache
bool GetHighlightedResiduesWithStructure(MoleculeHighlightMap *residues) const
bool highlightingSuspended
void PostRedrawSequenceViewer(ViewerBase *viewer)
void KeepHighlightsOnlyOnSequence(const Sequence *sequence)
MoleculeHighlightMap highlights
void HighlightAndShowSequence(const Sequence *sequence)
void UnPostRedrawAllSequenceViewers(void)
bool RemoveAllHighlights(bool postRedraws)
void ToggleHighlight(const Molecule *molecule, int residueID, bool scrollViewersTo=false)
void FileMessengerSend(const std::string &toApp, const std::string &command, const std::string &data)
void RemoveHighlights(const Sequence *sequence, unsigned int seqIndexFrom, unsigned int seqIndexTo)
void PostRedrawAllStructures(void)
bool GetHighlightsForSelectionMessage(std::string *data) const
void UnPostRedrawSequenceViewer(ViewerBase *viewer)
SequenceViewerList sequenceViewers
void RemoveSequenceViewer(const ViewerBase *sequenceViewer)
RedrawMoleculeList redrawMolecules
void SuspendHighlighting(bool suspend)
void PostRedrawAllSequenceViewers(void)
StructureWindow * structureWindow
void AddHighlights(const Sequence *sequence, unsigned int seqIndexFrom, unsigned int seqIndexTo)
void SetHighlights(const MoleculeHighlightMap &newHighlights)
void CacheHighlights(void)
void ProcessRedraws(void)
std::map< const MoleculeIdentifier *, std::vector< bool > > MoleculeHighlightMap
void UnPostStructureRedraws(void)
bool IsAnythingHighlighted(void) const
static const int VALUE_NOT_SET
const MoleculeIdentifier * identifier
unsigned int NResidues(void) const
void NewView(double eyeTranslateToAngleDegrees=0.0) const
const MoleculeIdentifier * identifier
unsigned int Length(void) const
const ChemicalGraph * graph
void SetWindowTitle(void)
void SendCommand(const std::string &toApp, const std::string &command, const std::string &data)
bool IsFileMessengerActive(void) const
const_iterator end() const
const_iterator find(const key_type &key) const
const_iterator begin() const
const_iterator end() const
Include a standard set of the NCBI C++ Toolkit most basic headers.
bool SeqIdToIdentifier(const CRef< ncbi::objects::CSeq_id > &seqID, string &identifier)
static DLIST_TYPE *DLIST_NAME() first(DLIST_LIST_TYPE *list)
static DLIST_TYPE *DLIST_NAME() last(DLIST_LIST_TYPE *list)
TObjectType * Release(void)
Release a reference to the object and return a pointer to the object.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_SCOPE(ns)
Define a new scope.
TInterval & SetInterval(void)
Select the variant.
TResidues & SetResidues(void)
Select the variant.
TId & SetId(void)
Assign a value to Id data member.
TFeatures & SetFeatures(void)
Assign a value to Features data member.
TMmdb_id & SetMmdb_id(void)
Select the variant.
for(len=0;yy_str[len];++len)
if(yy_accept[yy_current_state])
Messenger * GlobalMessenger(void)
static Messenger messenger
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