00001 00012 #ifndef CVERB_H 00013 #define CVERB_H 00014 00015 #include <iosfwd> 00016 #include <string> 00017 #include <vector> 00018 00019 struct cverb_object { }; 00020 00025 extern cverb_object cverb; 00026 00051 class verbose { 00053 friend std::ostream & operator<<(cverb_object &, verbose const &); 00054 public: 00060 verbose(char const * name); 00061 00062 verbose operator|(verbose const &); 00063 verbose operator&(verbose const &); 00064 00066 static bool setup(std::string const &); 00068 static bool setup(std::vector<std::string> const & args); 00069 private: 00070 bool set; 00071 }; 00072 00076 extern verbose vlevel1; 00077 extern verbose vdebug; 00078 extern verbose vstats; 00079 extern verbose vxml; 00080 // all sample filename manipulation. 00081 extern verbose vsfile; 00082 extern verbose varcs; 00085 #endif /* !CVERB_H */