TuttleOFX
1
|
00001 #ifndef _OFXH_MAJORPLUGIN_HPP_ 00002 #define _OFXH_MAJORPLUGIN_HPP_ 00003 00004 #include "OfxhPlugin.hpp" 00005 00006 namespace tuttle { 00007 namespace host { 00008 namespace ofx { 00009 00010 class OfxhMajorPlugin 00011 { 00012 public: 00013 typedef OfxhMajorPlugin This; 00014 00015 private: 00016 std::string _id; 00017 int _major; 00018 00019 public: 00020 OfxhMajorPlugin() 00021 : _major( 0 ) 00022 {} 00023 00024 OfxhMajorPlugin( const std::string& id, int major ) : _id( id ) 00025 , _major( major ) 00026 {} 00027 00028 OfxhMajorPlugin( OfxhPlugin& iep ) : _id( iep.getIdentifier() ) 00029 , _major( iep.getVersionMajor() ) 00030 {} 00031 00032 const std::string& getId() const 00033 { 00034 return _id; 00035 } 00036 00037 int getMajor() const 00038 { 00039 return _major; 00040 } 00041 00042 bool operator<( const This& other ) const 00043 { 00044 if( _id < other._id ) 00045 return true; 00046 00047 if( _id > other._id ) 00048 return false; 00049 00050 if( _major < other._major ) 00051 return true; 00052 00053 return false; 00054 } 00055 00056 }; 00057 00058 } 00059 } 00060 } 00061 00062 #endif 00063