我的订单|我的收藏|我的商城|帮助中心|返回首页
虚拟现实新闻>VR>行业资讯>培训教程

OSG教程:外部参数管理类ArgumentParser

文章来源:第三维度 作者: 发布时间:2012年04月01日 点击数: 字号:

    来源:第三维度
    作者:FreeSouth[杨石兴]编著

    选自《OSG程序设计教程》第二章第四节

    osg::ArgumentParser

    类描述:

   ArgumentParser读取main函数参数以及外部参数的类,会自动识别外部参数正确与否。 类继承图:它是个单独的类。

    类方法:

    ArgumentParser (int *argc, char **argv)

    说明:构造函数,传入参数为main的两个参数。

    参数

OSG教程:外部参数管理类ArgumentParser

    void setApplicationUsage (ApplicationUsage *usage)

    说明:设置应用程序类,该类中含有解析命令行,程序名称等等。

    参数

OSG教程:外部参数管理类ArgumentParser

    ApplicationUsage * getApplicationUsage ()

    const ApplicationUsage * getApplicationUsage () const

    说明:得到应用程序类。返回值为指向应用程序类的指针。

    int & argc () char ** argv ()

    说明:得到argc与argv参数。

    char * operator[] (int pos) const char * operator[] (int pos) const

    说明:得到第pos个参数的命令串。

    参数

OSG教程:外部参数管理类ArgumentParser

    std::string getApplicationName () const

    说明:得到应用程序的名称,返回该名称所对应的字串。

    int find (const std::string &str) const

    说明:得到命令行字符串所对应的索引值。返回该索引值,为整数。索引值意思为该行agrc值。

    参数

OSG教程:外部参数管理类ArgumentParser

    bool isOption (int pos) const

    说明:判断该位置是否是操作。类似于-o –help –a 等等前面带单或者双划线的一般视为操作。该函数还可以判断是否为有效操作。如果是有效操作则返回真,如果是字符串不代表操作函义则返回假。

    参数

OSG教程:外部参数管理类ArgumentParser

    bool isString (int pos) const

    说明:判断该位置是否是字符串。类似于glider.osg这样前面不带单双划线的又不是纯数字的被视为字符串。字符串一般会表示文件名。如果是字符串则返回真,否则返回假。

    参数

OSG教程:外部参数管理类ArgumentParser

    bool isNumber (int pos) const

    说明:判断该位置是否是数字,类似于-t 10.0 11.0中两个字符串会被视为数字。如果是数字则返回真,否则返回假。

    参数

OSG教程:外部参数管理类ArgumentParser

    bool containsOptions () const

    说明:看命令行中是否包含操作,如果包含操作则返回真,否则返回假。

    void remove (int pos, int num=1)

    说明:移除某一个位置的字符串。可移除多个字串,默认为1。

    参数

OSG教程:外部参数管理类ArgumentParser

    bool match (int pos, const std::string &str) const

    说明:看pos位置的字串与str是否批配,如果批配则返回真,否则返回假。

    参数

OSG教程:外部参数管理类ArgumentParser

    bool read (const std::string &str)

    bool read (const std::string &str, Parameter value1)

    bool read (const std::string &str, Parameter value1, Parameter value2)

    bool read (const std::string &str, Parameter value1, Parameter value2, Parameter value3)

    bool read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4)

    bool read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5)

    bool read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6)

    bool read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7)

    bool read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7, Parameter value8)

    bool read (int pos, const std::string &str) bool read (int pos, const std::string &str, Parameter value1)

    bool read (int pos, const std::string &str, Parameter value1, Parameter value2)

    bool read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3)

    bool read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4)

    bool read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5)

    bool read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6)

    bool read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7)

    bool read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7, Parameter value8)

    说明:为实际的读命令行的操作以及其对应的参数。返回值表:如果有该操作串且参数值也满足就返回真,否则返回假。比如read(“-h”)如果有-h则返回真,否则返回假。

    参数

OSG教程:外部参数管理类ArgumentParser

    bool errors (ErrorSeverity severity=BENIGN) const

    说明:检查命令行是否有错误,如果有错误则返回真。参数代表检查的级别,分两种,一种是小错,一种就致命错。小错代表不能识别的错误,致命错则可能是其它的任何错误。

    参数

OSG教程:外部参数管理类ArgumentParser

    void reportError (const std::string &message, ErrorSeverity severity=CRITICAL)

    说明:报告命令行错误。输出错误信息到message.默认是报告致命的错误级别。

    参数

OSG教程:外部参数管理类ArgumentParser

    void reportRemainingOptionsAsUnrecognized (ErrorSeverity severity=BENIGN)

    说明:报告命令行中无法识别的字符串,相当于小错级别,默认为是小错级别。

    参数

OSG教程:外部参数管理类ArgumentParser

    ErrorMessageMap & getErrorMessageMap ()

    const ErrorMessageMap & getErrorMessageMap () const

    说明:得到一个错误的消息映射,该映射定义为,键为错误串名,值为错误级别。Error的实际定义是这样的:std::map<std::string,ErrorSeverity>

    void writeErrorMessages (std::ostream &output, ErrorSeverity sevrity=BENIGN)

    说明:输出命令行错误到output,默认输出小错误级别。

    参数

OSG教程:外部参数管理类ArgumentParser

  • 暂无资料
  • 暂无资料
  • 暂无资料
  • 暂无资料
  • 暂无资料