/* Get argument rules */ const ArgumentRules& Func_Mcmc::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule("model" , Model::getClassTypeSpec() , ArgumentRule::BY_VALUE ) ); argumentRules.push_back( new ArgumentRule("monitors", WorkspaceVector<Monitor>::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); argumentRules.push_back( new ArgumentRule("moves" , WorkspaceVector<Move>::getClassTypeSpec() , ArgumentRule::BY_VALUE ) ); std::vector<std::string> options; options.push_back( "sequential" ); options.push_back( "random" ); options.push_back( "single" ); argumentRules.push_back( new OptionRule( "moveschedule", new RlString( "random" ), options ) ); argumentRules.push_back( new ArgumentRule("nruns" , Natural::getClassTypeSpec() , ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Natural(1) ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_convertToPhylowood::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if (!rulesSet) { argumentRules.push_back( new ArgumentRule( "statefile", RlString::getClassTypeSpec() , "", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "treefile", RlString::getClassTypeSpec() , "", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "geofile", RlString::getClassTypeSpec() , "", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "outfile", RlString::getClassTypeSpec() , "", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "burnin", Probability::getClassTypeSpec() , "", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Integer(-1) ) ); std::vector<std::string> options; options.push_back( "NaturalNumbers" ); options.push_back( "Standard" ); argumentRules.push_back( new OptionRule( "chartype", new RlString("NaturalNumbers"), options, "" ) ); std::vector<std::string> options2; options2.push_back( "Range" ); options2.push_back( "Area" ); argumentRules.push_back( new OptionRule( "bgtype", new RlString("Area"), options2, "" ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_annotateTree::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rules_set = false; if (!rules_set) { argumentRules.push_back( new ArgumentRule( "tree", Tree::getClassTypeSpec() , "The input tree which will be annotated.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "trace", TraceTree::getClassTypeSpec() , "The sample trace.", ArgumentRule::BY_REFERENCE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "file" , RlString::getClassTypeSpec() , "The name of the file where to store the tree.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlString("") ) ); argumentRules.push_back( new ArgumentRule( "ages" , RlBoolean::getClassTypeSpec() , "Annotate node ages?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(true) ) ); argumentRules.push_back( new ArgumentRule( "ccAges" , RlBoolean::getClassTypeSpec() , "Annotate conditional clade ages?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); argumentRules.push_back( new ArgumentRule( "ccp" , RlBoolean::getClassTypeSpec() , "Annotate conditional clade probabilities?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); argumentRules.push_back( new ArgumentRule( "conditionalAges" , RlBoolean::getClassTypeSpec() , "Annotate node ages conditional on the input topology?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(true) ) ); argumentRules.push_back( new ArgumentRule( "hpd" , Probability::getClassTypeSpec() , "The probability mass of the highest posterior density age interval.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Probability(0.95) ) ); argumentRules.push_back( new ArgumentRule( "mean" , RlBoolean::getClassTypeSpec() , "Annotate node ages using the mean age instead of the median?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(true) ) ); argumentRules.push_back( new ArgumentRule( "sampledAncestors" , RlBoolean::getClassTypeSpec() , "Annotate sampled ancestor probs?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); rules_set = true; } return argumentRules; }
/* Get method specifications */ const RevLanguage::MethodTable& RealNodeValTree::getMethods(void) const { static MethodTable methods = MethodTable(); static bool methodsSet = false; if ( methodsSet == false ) { ArgumentRules* meanArgRules = new ArgumentRules(); methods.addFunction("mean", new MemberFunction<RealNodeValTree,Real>( this, meanArgRules ) ); ArgumentRules* tipmeanArgRules = new ArgumentRules(); methods.addFunction("tipMean", new MemberFunction<RealNodeValTree,Real>( this, tipmeanArgRules ) ); ArgumentRules* stdevArgRules = new ArgumentRules(); methods.addFunction("stdev", new MemberFunction<RealNodeValTree,RealPos>( this, stdevArgRules ) ); ArgumentRules* rootArgRules = new ArgumentRules(); methods.addFunction("rootVal", new MemberProcedure(Real::getClassTypeSpec(), rootArgRules ) ); ArgumentRules* clampArgRules = new ArgumentRules(); clampArgRules->push_back(new ArgumentRule("data", false, AbstractCharacterData::getClassTypeSpec())); clampArgRules->push_back(new ArgumentRule("dataIndex", false, Natural::getClassTypeSpec())); methods.addFunction("clampAt", new MemberProcedure(RealNodeValTree::getClassTypeSpec(), clampArgRules ) ); // necessary call for proper inheritance methods.setParentTable( &ModelObject<RevBayesCore::RealNodeContainer>::getMethods() ); methodsSet = true; } return methods; }
/** Construct from bool */ RootedTripletDistribution::RootedTripletDistribution(const RevBayesCore::RootedTripletDistribution &t) : ModelObject<RevBayesCore::RootedTripletDistribution>( new RevBayesCore::RootedTripletDistribution( t ) ) { ArgumentRules* nTripletsArgRules = new ArgumentRules(); methods.addFunction( new MemberProcedure( "nTriplets", Natural::getClassTypeSpec(), nTripletsArgRules ) ); ArgumentRules* nTreesArgRules = new ArgumentRules(); methods.addFunction( new MemberProcedure( "nTrees", Natural::getClassTypeSpec(), nTreesArgRules ) ); ArgumentRules* SpeciesArgRules = new ArgumentRules(); methods.addFunction( new MemberProcedure( "species", ModelVector<RlString>::getClassTypeSpec(), SpeciesArgRules ) ); ArgumentRules* TaxaArgRules = new ArgumentRules(); methods.addFunction( new MemberProcedure( "taxa", ModelVector<Taxon>::getClassTypeSpec(), TaxaArgRules ) ); ArgumentRules* setTaxaArgRules = new ArgumentRules(); setTaxaArgRules->push_back( new ArgumentRule( "taxa", ModelVector<Taxon>::getClassTypeSpec(), "", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); methods.addFunction( new MemberProcedure( "setTaxa", RlUtils::Void, setTaxaArgRules ) ); ArgumentRules* setSpeciesArgRules = new ArgumentRules(); setSpeciesArgRules->push_back( new ArgumentRule( "species", ModelVector<RlString>::getClassTypeSpec(), "", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); methods.addFunction( new MemberProcedure( "setSpecies", RlUtils::Void, setSpeciesArgRules ) ); ArgumentRules* extractTripletsArgRules = new ArgumentRules(); extractTripletsArgRules->push_back( new ArgumentRule( "trees", ModelVector<TimeTree>::getClassTypeSpec(), "", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); methods.addFunction( new MemberProcedure( "extractTriplets", RlUtils::Void, extractTripletsArgRules ) ); }
/* Get method specifications */ const MethodTable& ParallelMcmcmc::getMethods(void) const { static MethodTable methods = MethodTable(); static bool methodsSet = false; if ( methodsSet == false ) { ArgumentRules* runArgRules = new ArgumentRules(); runArgRules->push_back( new ArgumentRule("generations", true, Natural::getClassTypeSpec()) ); methods.addFunction("run", new MemberProcedure( RlUtils::Void, runArgRules) ); ArgumentRules* burninArgRules = new ArgumentRules(); burninArgRules->push_back( new ArgumentRule("generations", true, Natural::getClassTypeSpec()) ); burninArgRules->push_back( new ArgumentRule("tuningInterval", true, Natural::getClassTypeSpec()) ); methods.addFunction("burnin", new MemberProcedure( RlUtils::Void, burninArgRules) ); ArgumentRules* operatorSummaryArgRules = new ArgumentRules(); methods.addFunction("operatorSummary", new MemberProcedure( RlUtils::Void, operatorSummaryArgRules) ); // necessary call for proper inheritance methods.setParentTable( &RevObject::getMethods() ); methodsSet = true; } return methods; }
Model::Model() : WorkspaceToCoreWrapperObject<RevBayesCore::Model>() { ArgumentRules* dotArgRules = new ArgumentRules(); dotArgRules->push_back( new ArgumentRule("file", RlString::getClassTypeSpec() , ArgumentRule::BY_VALUE ) ); dotArgRules->push_back( new ArgumentRule("verbose", RlBoolean::getClassTypeSpec(), ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); dotArgRules->push_back( new ArgumentRule("bg", RlString::getClassTypeSpec(), ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlString("lavenderblush2") ) ); methods.addFunction("graph", new MemberProcedure( RlUtils::Void, dotArgRules) ); }
TraceTree::TraceTree(const RevBayesCore::TraceTree &m) : WorkspaceToCoreWrapperObject<RevBayesCore::TraceTree>( new RevBayesCore::TraceTree( m ) ) { ArgumentRules* summarizeArgRules = new ArgumentRules(); summarizeArgRules->push_back( new ArgumentRule("burninFraction", Probability::getClassTypeSpec(), "The fraction of samples to disregard as burnin.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Probability(0.1)) ); summarizeArgRules->push_back( new ArgumentRule("credibleTreeSetSize", Probability::getClassTypeSpec(), "The size of the credible set to print.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Probability(0.95)) ); summarizeArgRules->push_back( new ArgumentRule("minCladeProbability", Probability::getClassTypeSpec(), "The minimum clade probability used when printing.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Probability(0.05)) ); this->methods.addFunction( new MemberProcedure( "summarize", RlUtils::Void, summarizeArgRules) ); }
/** Get argument rules */ const ArgumentRules& Func_readCharacterDataUniversal::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if (!rulesSet) { argumentRules.push_back( new ArgumentRule( "file", RlString::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); argumentRules.push_back( new ArgumentRule( "alwaysReturnAsVector", RlBoolean::getClassTypeSpec(), ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_readCharacterDataUniversal::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rules_set = false; if (!rules_set) { argumentRules.push_back( new ArgumentRule( "file", RlString::getClassTypeSpec(), "File or directory names where to find the character data.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "alwaysReturnAsVector", RlBoolean::getClassTypeSpec(), "Should the value be returned as a vector even it is only a single matrix?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); rules_set = true; } return argumentRules; }
PowerPosteriorAnalysis::PowerPosteriorAnalysis() : WorkspaceToCoreWrapperObject<RevBayesCore::PowerPosteriorAnalysis>() { ArgumentRules* runArgRules = new ArgumentRules(); runArgRules->push_back( new ArgumentRule("generations", Natural::getClassTypeSpec(), "The number of generations to run.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); methods.addFunction( new MemberProcedure( "run", RlUtils::Void, runArgRules) ); ArgumentRules* burninArgRules = new ArgumentRules(); burninArgRules->push_back( new ArgumentRule("generations" , Natural::getClassTypeSpec(), "The number of generations to run.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); burninArgRules->push_back( new ArgumentRule("tuningInterval", Natural::getClassTypeSpec(), "The frequency when the moves are tuned (usually between 50 and 1000).", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); methods.addFunction( new MemberProcedure( "burnin", RlUtils::Void, burninArgRules) ); }
/* Get argument rules */ const ArgumentRules& Func_varianceCovarianceMatrix::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "standardDeviations" , ModelVector<RealPos>::getClassTypeSpec(), "The vector of standard deviations.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "correlationCoefficients", ModelVector<Real>::getClassTypeSpec(), "The correlation coefficients.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_simplex::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "", true, RealPos::getClassTypeSpec() ) ); argumentRules.push_back( new Ellipsis ( RealPos::getClassTypeSpec() ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_source::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "file", true, RlString::getClassTypeSpec() ) ); argumentRules.push_back( new ArgumentRule( "echo.on", true, RlBoolean::getClassTypeSpec(), new RlBoolean(false) ) ); rulesSet = true; } return argumentRules; }
/** * Get the argument rules for this function. * * The argument rules of the writeFasta function are: * (1) the filename which must be a string. * (2) the data object that must be some character matrix. * * \return The argument rules. */ const ArgumentRules& Func_writeFasta::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rules_set = false; if (!rules_set) { argumentRules.push_back( new ArgumentRule( "filename", RlString::getClassTypeSpec(), "The name of the file.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "data" , AbstractHomologousDiscreteCharacterData::getClassTypeSpec(), "The character data object.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); rules_set = true; } return argumentRules; }
/* Get argument rules */ const ArgumentRules& Func_dppMeanFromConc::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "concentration", true, RealPos::getClassTypeSpec() ) ); argumentRules.push_back( new ArgumentRule( "num_elements", true, RealPos::getClassTypeSpec() ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_simplex::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "x1", RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "x2", RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new Ellipsis ( RealPos::getClassTypeSpec() ) ); rulesSet = true; } return argumentRules; }
/* Get argument rules */ const ArgumentRules& Func_epoch::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "Q" , ModelVector<RateGenerator>::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "times" , ModelVector<RealPos>::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "rates" , ModelVector<RealPos>::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); rulesSet = true; } return argumentRules; }
/* Get argument rules */ const ArgumentRules& Func_FreeBinary::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rules_set = false; if ( !rules_set ) { argumentRules.push_back( new ArgumentRule( "transition_rates", ModelVector<Real>::getClassTypeSpec(), "The transition rates between the two states.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "rescaled", RlBoolean::getClassTypeSpec(), "Should the matrix be normalized?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(true) ) ); rules_set = true; } return argumentRules; }
/* Get argument rules */ const ArgumentRules& Func_mrcaIndex::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "tree" , TimeTree::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "clade", Clade::getClassTypeSpec() , ArgumentRule::BY_VALUE ) ); rulesSet = true; } return argumentRules; }
/* Get argument rules */ const ArgumentRules& Func_treeAssembly::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "topology", Topology::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "brlens", ModelVector<RealPos>::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); rulesSet = true; } return argumentRules; }
/* Get argument rules */ const ArgumentRules& Func_power::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "base", true, Real::getClassTypeSpec() ) ); argumentRules.push_back( new ArgumentRule( "exponent", true, Real::getClassTypeSpec() ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_discretizePositiveDistribution::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "G0" , PositiveContinuousDistribution::getClassTypeSpec(), "The distribution to discretize.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "num_cats", Integer::getClassTypeSpec() , "The number of categories.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); rulesSet = true; } return argumentRules; }
RlAtlas::RlAtlas( RevBayesCore::TypedDagNode<RevBayesCore::TimeAtlas> *m) : ModelObject<RevBayesCore::TimeAtlas>( m ), atlas(&m->getValue()) { ArgumentRules* nAreasArgRules = new ArgumentRules(); ArgumentRules* nEpochsArgRules = new ArgumentRules(); ArgumentRules* namesArgRules = new ArgumentRules(); ArgumentRules* epochsArgRules = new ArgumentRules(); methods.addFunction( new MemberProcedure( "names", ModelVector<RlString>::getClassTypeSpec(), namesArgRules ) ); methods.addFunction( new MemberProcedure( "nAreas", Natural::getClassTypeSpec(), nAreasArgRules ) ); methods.addFunction( new MemberProcedure( "nEpochs", Natural::getClassTypeSpec(), nEpochsArgRules ) ); methods.addFunction( new MemberProcedure( "epochTimes", ModelVector<RealPos>::getClassTypeSpec(), epochsArgRules ) ); ArgumentRules* adjacentArgRules = new ArgumentRules(); std::vector<std::string> optionsValue; optionsValue.push_back( "dispersal" ); optionsValue.push_back( "dispersal-upper" ); optionsValue.push_back( "extinction" ); optionsValue.push_back( "latlon" ); optionsValue.push_back( "altitude" ); optionsValue.push_back( "size" ); adjacentArgRules->push_back( new OptionRule( "value", new RlString( "dispersal" ), optionsValue, "" ) ); // adjacentArgRules->push_back( new OptionRule( "elements", new RlString( "off-diagonal" ), optionsElements ) ); // adjacentArgRules->push_back( new ArgumentRule("symmetric", RlBoolean::getClassTypeSpec(), ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); methods.addFunction( new MemberProcedure( "getValues", RlUtils::Void, adjacentArgRules) ); // Add method for call "size" as a function ArgumentRules* sizeArgRules = new ArgumentRules(); methods.addFunction( new MemberProcedure( "size", Natural::getClassTypeSpec(), sizeArgRules) ); }
/* Get argument rules */ const ArgumentRules& Func_pomo::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "mutationRates", RateGenerator::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "fitness" , ModelVector<Real>::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "virtualNe" , Natural::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); rulesSet = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_discretizeDistribution::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "G0" , ContinuousDistribution::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "num_cats", Integer::getClassTypeSpec() , ArgumentRule::BY_VALUE ) ); rulesSet = true; } return argumentRules; }
AncestralStateTrace::AncestralStateTrace() : WorkspaceToCoreWrapperObject<RevBayesCore::AncestralStateTrace>() { ArgumentRules* summarizeArgRules = new ArgumentRules(); summarizeArgRules->push_back( new ArgumentRule("burnin", Natural::getClassTypeSpec(), "The number of iterations to discard as burnin.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Natural(0)) ); }
/** Get argument rules */ const ArgumentRules& Func_normalize::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rules_set = false; if ( !rules_set ) { argumentRules.push_back( new ArgumentRule( "x", ModelVector<RealPos>::getClassTypeSpec(), "The vector of numbers.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); argumentRules.push_back( new ArgumentRule( "sum", RealPos::getClassTypeSpec(), "The sum the vector will have after normalization.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(1.0) ) ); rules_set = true; } return argumentRules; }
/** Get argument rules */ const ArgumentRules& Func_structure::getArgumentRules( void ) const { static ArgumentRules argumentRules = ArgumentRules(); static bool rulesSet = false; if ( !rulesSet ) { argumentRules.push_back( new ArgumentRule( "x" , RevObject::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); argumentRules.push_back( new ArgumentRule( "verbose", RlBoolean::getClassTypeSpec(), ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); rulesSet = true; } return argumentRules; }
/** Make member methods for this class */ RevLanguage::MethodTable TimeTree::makeMethods( void ) const { MethodTable methods = MethodTable(); ArgumentRules* nnodesArgRules = new ArgumentRules(); methods.addFunction("nnodes", new MemberProcedure(Natural::getClassTypeSpec(), nnodesArgRules ) ); ArgumentRules* ntipsArgRules = new ArgumentRules(); methods.addFunction("ntips", new MemberProcedure(Natural::getClassTypeSpec(), ntipsArgRules ) ); ArgumentRules* heightArgRules = new ArgumentRules(); methods.addFunction("rootAge", new MemberProcedure(RealPos::getClassTypeSpec(), heightArgRules ) ); ArgumentRules* namesArgRules = new ArgumentRules(); methods.addFunction("names", new MemberProcedure(ModelVector<RlString>::getClassTypeSpec(), namesArgRules ) ); ArgumentRules* rescaleArgRules = new ArgumentRules(); rescaleArgRules->push_back( new ArgumentRule( "factor", RealPos::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); methods.addFunction("rescale", new MemberProcedure(RlUtils::Void, rescaleArgRules ) ); // Insert inherited methods methods.insertInheritedMethods( ModelObject<RevBayesCore::TimeTree>::makeMethods() ); return methods; }