一、osg程序的信息输出分为7个级别,分别是
osg/Notify
enum NotifySeverity {
ALWAYS=0,
FATAL=1,
WARN=2,
NOTICE=3,
INFO=4,
DEBUG_INFO=5,
DEBUG_FP=6
};
信息的严重性级别依次升高。osg支持设置输出信息的严重性阈值,不高于该阈值的信息会进行输出,默认的阈值是是osg::NOTICE。
二、优先级的设置有几种方式:
1、环境变量,OSG_NOTIFY_LEVEL或OSGNOTIFYLEVEL,
2、程序设置,osg::setNotifyLevel()
三、信息输出的使用:
OSG_INFO << "\tAttrib \"" << name << "\""
<< " loc=" << loc
<< " size=" << size
<< std::endl;
其中OSG_INFO是这样定义的:
osg/Notify
#define OSG_NOTIFY(level) if (osg::isNotifyEnabled(level)) osg::notify(level)
#define OSG_ALWAYS OSG_NOTIFY(osg::ALWAYS)
#define OSG_FATAL OSG_NOTIFY(osg::FATAL)
#define OSG_WARN OSG_NOTIFY(osg::WARN)
#define OSG_NOTICE

本文介绍了osg程序的信息输出级别,包括osg::NOTICE等7个级别,以及如何设置输出信息的优先级,如通过环境变量OSG_NOTIFY_LEVEL或程序中的osg::setNotifyLevel()。osg的消息通知采用单实例模式,通过NotifyStream或NullStream处理,其中NotifyStream在遇到std::endl时会触发回调函数,可能将信息输出到文件或弹窗。
最低0.47元/天 解锁文章
4231

被折叠的 条评论
为什么被折叠?



