diff options
author | Alejandro Conty Estevez <conty@yafray.org> | 2004-06-25 01:17:52 +0400 |
---|---|---|
committer | Alejandro Conty Estevez <conty@yafray.org> | 2004-06-25 01:17:52 +0400 |
commit | f69cc652e283bfa1958ae6945b0a014eb7d50906 (patch) | |
tree | bdbbe1780b6b246c5addd8ca269ef5e8959466ea /source/blender/yafray | |
parent | 855c6861ef881133b5614c339cd4e52d1aee4510 (diff) |
minor changes to sync with yafray cvs interface, getting closer
to the clean msvc build.
Diffstat (limited to 'source/blender/yafray')
-rw-r--r-- | source/blender/yafray/intern/yafexternal.cpp | 69 | ||||
-rw-r--r-- | source/blender/yafray/intern/yafexternal.h | 31 |
2 files changed, 26 insertions, 74 deletions
diff --git a/source/blender/yafray/intern/yafexternal.cpp b/source/blender/yafray/intern/yafexternal.cpp index 22c666e571a..72c6e3221fa 100644 --- a/source/blender/yafray/intern/yafexternal.cpp +++ b/source/blender/yafray/intern/yafexternal.cpp @@ -2,82 +2,39 @@ #include <iostream> namespace yafray { -bool paramMap_t::getParam(const std::string &name,std::string &s) +parameter_t::parameter_t(const std::string &s):type(TYPE_STRING),used(false),str(s) { - if(includes(name,TYPE_STRING)) s=(*this)[name].getStr(); - else return false; - return true; -} - -bool paramMap_t::getParam(const std::string &name,bool &b) -{ - std::string str; - if(includes(name,TYPE_STRING)) - { - str=(*this)[name].getStr(); - if(str=="on") b=true; - else if(str=="off") b=false; - else return false; - } - else return false; - return true; } -bool paramMap_t::getParam(const std::string &name,float &f) -{ - if(includes(name,TYPE_FLOAT)) f=(*this)[name].getFnum(); - else return false; - return true; -} - -bool paramMap_t::getParam(const std::string &name,double &f) +parameter_t::parameter_t(float f):type(TYPE_FLOAT),used(false),fnum(f) { - if(includes(name,TYPE_FLOAT)) f=(*this)[name].getFnum(); - else return false; - return true; } - -bool paramMap_t::getParam(const std::string &name,int &i) + +parameter_t::parameter_t(const colorA_t &c):type(TYPE_COLOR),used(false) + ,C(c) { - if(includes(name,TYPE_FLOAT)) i=(int)(*this)[name].getFnum(); - else return false; - return true; } -bool paramMap_t::getParam(const std::string &name,point3d_t &p) +parameter_t::parameter_t(const point3d_t &p):type(TYPE_POINT),used(false),P(p) { - if(includes(name,TYPE_POINT)) p=(*this)[name].getP(); - else return false; - return true; } - -bool paramMap_t::getParam(const std::string &name,color_t &c) + +parameter_t::parameter_t():type(TYPE_NONE),used(false) { - if(includes(name,TYPE_COLOR)) c=(*this)[name].getC(); - else return false; - return true; } -bool paramMap_t::getParam(const std::string &name,colorA_t &c) +parameter_t::~parameter_t() { - if(includes(name,TYPE_COLOR)) c=(*this)[name].getAC(); - else return false; - return true; } -bool paramMap_t::includes(const std::string &label,int type) +parameter_t & paramMap_t::operator [] (const std::string &key) { - const_iterator i=find(label); - if(i==end()) return false; - if((*i).second.type!=type) return false; - return true; + return dicc[key]; } -void paramMap_t::checkUnused(const std::string &env) +void paramMap_t::clear() { - for(const_iterator i=begin();i!=end();++i) - if(!( (*i).second.used )) - std::cout<<"[WARNING]:Unused param "<<(*i).first<<" in "<<env<<"\n"; + dicc.clear(); } } diff --git a/source/blender/yafray/intern/yafexternal.h b/source/blender/yafray/intern/yafexternal.h index 2cf1b0a0dd1..e92ae1c08d8 100644 --- a/source/blender/yafray/intern/yafexternal.h +++ b/source/blender/yafray/intern/yafexternal.h @@ -58,12 +58,13 @@ class colorA_t : public color_t class parameter_t { public: - parameter_t(const std::string &s):type(TYPE_STRING),used(false),str(s) {}; - parameter_t(float f):type(TYPE_FLOAT),used(false),fnum(f) {}; - parameter_t(const colorA_t &c):type(TYPE_COLOR),used(false) - ,C(c) {}; - parameter_t(const point3d_t &p):type(TYPE_POINT),used(false),P(p) {}; - parameter_t():type(TYPE_NONE),used(false) {}; + parameter_t(const std::string &s); + parameter_t(float f); + parameter_t(const colorA_t &c); + parameter_t(const point3d_t &p); + parameter_t(); + ~parameter_t(); + const std::string &getStr() {used=true;return str;}; float &getFnum() {used=true;return fnum;}; const point3d_t &getP() {used=true;return P;}; @@ -78,20 +79,14 @@ class parameter_t colorA_t C; }; -class paramMap_t : public std::map<std::string,parameter_t> +class paramMap_t { public: - virtual bool getParam(const std::string &name,std::string &s); - virtual bool getParam(const std::string &name,bool &b); - virtual bool getParam(const std::string &name,float &f); - virtual bool getParam(const std::string &name,double &f); - virtual bool getParam(const std::string &name,int &i); - virtual bool getParam(const std::string &name,point3d_t &p); - virtual bool getParam(const std::string &name,color_t &c); - virtual bool getParam(const std::string &name,colorA_t &c); - virtual bool includes(const std::string &label,int type); - virtual void checkUnused(const std::string &env); - virtual ~paramMap_t() {}; + parameter_t & operator [] (const std::string &key); + void clear(); + ~paramMap_t() {}; + protected: + std::map<std::string,parameter_t> dicc; }; class light_t; |