00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _CJNP_WEIGHTDISTDUMP_H_
00021 #define _CJNP_WEIGHTDISTDUMP_H_ 1
00022
00023 #include <string>
00024 #include <stdexcept>
00025 #include "CjNP_LoggableBase.hh"
00026
00027 namespace jmitie {
00028 namespace corelib {
00029 class CjNP_weightDistDump : public CjNP_LoggableBase {
00030 public:
00031 std::string getName() const { return getName_static(); }
00032 static std::string getName_static() { return "weightDistDump"; }
00033 std::string getProperty(const std::string & prop) const { return getProperty_static(prop); }
00034 static std::string getProperty_static(const std::string & opt) {
00035 if(opt=="desc") return "Prints the frequency distribution of the link weights.";
00036 if(opt=="usage") return getProperty_static("desc") + "\nAvailable options:\n" + CjNP_LoggableBase::getProperty_static(opt);
00037 throw std::invalid_argument("CjNP_weightDistDump::getProperty_static(" + opt + "): Unknown property requested.");
00038 }
00039
00040 CjNP_weightDistDump(const std::string & args, const ctor_va_t & var_arg );
00041 virtual void performAction( const action_va_t & opts );
00042
00043 ~CjNP_weightDistDump();
00044
00045 };
00046 }
00047 }
00048
00049 #endif // _CJNP_WEIGHTDISTDUMP_H_