43 virtual void Init(
void);
44 virtual int Run(
void);
51 arg_desc->AddDefaultKey
54 "Text file containing hgvs expression",
59 arg_desc->AddDefaultKey
62 "Output file for seqfeat; used in conjunction with -out",
67 arg_desc->AddFlag(
"return-irep",
68 "Return intermediate representation as output");
71 string prog_description =
"Convert hgvs expression to a Seq-feat\n";
72 arg_desc->SetUsageContext(
GetArguments().GetProgramBasename(),
73 prog_description,
false);
94 string hgvs_expression;
96 istr >> hgvs_expression;
103 bool success = hgvs_parser.
Apply(hgvs_expression, irep);
109 if (args[
"return-irep"]) {
115 auto seq_type = irep->GetSequence_variant().GetSeqtype();
118 seq_feat = irep_reader->CreateSeqfeat(*irep);
121 seq_feat = irep_reader->CreateSeqfeat(*irep);
134 int main(
int argc,
const char* argv[])
static TRegisterLoaderInfo RegisterInObjectManager(CObjectManager &om, CReader *reader=0, CObjectManager::EIsDefault is_default=CObjectManager::eDefault, CObjectManager::TPriority priority=CObjectManager::kPriority_NotSet)
bool Apply(const string &hgvs_expression, CRef< CVariantExpression > &varient_irep) const
virtual int Run(void)
Run the application.
virtual void Init(void)
Initialize the application.
virtual const char * GetErrCodeString(void) const
Get error code interpreted as text.
NCBI_EXCEPTION_DEFAULT(CHgvsVariantException, CException)
virtual const CArgs & GetArgs(void) const
Get parsed command line arguments.
int AppMain(int argc, const char *const *argv, const char *const *envp=0, EAppDiagStream diag=eDS_Default, const char *conf=NcbiEmptyCStr, const string &name=NcbiEmptyString)
Main function (entry point) for the NCBI application.
virtual void SetupArgDescriptions(CArgDescriptions *arg_desc)
Setup the command line argument descriptions.
const CNcbiArguments & GetArguments(void) const
Get the application's cached unprocessed command-line arguments.
@ fPreOpen
Open file right away; for eInputFile, eOutputFile, eIOFile.
@ eInputFile
Name of file (must exist and be readable)
@ eOutputFile
Name of file (must be writable)
void SetDiagFilter(EDiagFilter what, const char *filter_str)
Set diagnostic filter.
EDiagSev SetDiagPostLevel(EDiagSev post_sev=eDiag_Error)
Set the threshold severity for posting the messages.
@ eDiag_Info
Informational message.
@ eDiag_Fatal
Fatal error – guarantees exit(or abort)
@ eDiagFilter_All
for all non-FATAL
TErrCode GetErrCode(void) const
Get error code.
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
EErrCode
Error types that an application can generate.
virtual const char * GetErrCodeString(void) const
Get error code interpreted as text.
static void SetStackTraceLevel(EDiagSev level)
Set severity level for saving and printing stack trace.
#define MSerial_AsnText
I/O stream manipulators –.
static CRef< CObjectManager > GetInstance(void)
Return the existing object manager or create one.
void AddDefaults(TPriority pri=kPriority_Default)
Add default data loaders from object manager.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.
@ eVariantSeqType_p
protein
@ eVariantSeqType_c
coding
int main(int argc, const char *argv[])
Defines the CNcbiApplication and CAppException classes for creating NCBI applications.
Defines command line argument related classes.
Defines NCBI C++ exception handling.
void g_ValidateVariationSeqfeat(const CSeq_feat &feat, CScope *scope, bool IsCDS=false)