Go to the SVN repository for this file.
1 #ifndef OBJTOOLS_ALNMGR___ALN_ASN_READER__HPP 2 #define OBJTOOLS_ALNMGR___ALN_ASN_READER__HPP 85 template<
classTCallback>
88 const string& top_level_asn_object =
kEmptyStr)
96 if( top_level_asn_object.empty() ) {
98 "ReadFileHeader() returned empty. " 100 "Please supply the top_level_asn_object.");
103obj = top_level_asn_object;
107 if(!top_level_asn_object.empty() && obj != top_level_asn_object) {
116 if(obj ==
"Seq-entry") {
128 else if(obj ==
"Seq-submit") {
145 else if(obj ==
"Seq-align") {
154 else if(obj ==
"Seq-align-set") {
157 for(
i=
Begin(*sas);
i; ++
i) {
163 else if(obj ==
"Seq-annot") {
166 for(
i=
Begin(*san);
i; ++
i) {
172 else if(obj ==
"Dense-seg") {
177sa->
SetSegs().SetDenseg(*ds);
184 "ReadFileHeader() returned empty. " 185 "Binary ASN.1 file? " 186 "Please supply the top_level_asn_object.");
189cerr <<
"Don't know how to extract alignments from: "<< obj << endl;
190cerr <<
"Do you know? Please contact us at aln-mgr@ncbi.nlm.nih.gov."<< endl;
196cerr <<
"Finished reading "<< obj <<
"."<< endl;
User-defined methods of the data storage class.
Helper class for reading seq-align objects from a CObjectIStream.
CAlnAsnReader(CScope *scope=NULL)
Create alignment reader.
void Read(CObjectIStream *obj_in_stream, TCallback callback, const string &top_level_asn_object=kEmptyStr)
Read all seq-align objects from the stream.
void SetVerbose(bool verbose=true)
Switch verbose report about loaded objects on/off.
Template base class for CTypesIterator and CTypesConstIterator Do not use it directly.
Include a standard set of the NCBI C++ Toolkit most basic headers.
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
CBeginInfo Begin(C &obj)
Get starting point of object hierarchy.
static void AddTo(CTypesIterator &it)
void Read(const CObjectInfo &object)
Read object of know type.
virtual bool EndOfData(void)
Check if there is still some meaningful data that can be read; in text streams this function will ski...
virtual string ReadFileHeader(void)
Read file header.
CSeq_entry_Handle AddTopLevelSeqEntry(CSeq_entry &top_entry, TPriority pri=kPriority_Default, EExist action=eExist_Default)
Add seq_entry, default priority is higher than for defaults or loaders Add object to the score with p...
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
void SetSegs(TSegs &value)
Assign a value to Segs data member.
void SetDim(TDim value)
Assign a value to Dim data member.
void SetType(TType value)
Assign a value to Type data member.
TDim GetDim(void) const
Get the Dim member data.
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.
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