TuttleOFX  1
NodeAtTimeKey.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_HOST_NODEATTIMEKEY_HPP_
00002 #define _TUTTLE_HOST_NODEATTIMEKEY_HPP_
00003 
00004 #include <ofxCore.h>
00005 
00006 #include <string>
00007 #include <ostream>
00008 
00009 namespace tuttle {
00010 namespace host {
00011 
00012 class NodeAtTimeKey
00013 {
00014 public:
00015         NodeAtTimeKey()
00016         {}
00017         NodeAtTimeKey( const std::string& name, const OfxTime& time )
00018         : _name(name)
00019         , _time(time)
00020         {}
00021         
00022         const std::string& getName() const { return _name; }
00023         void setName( const std::string& name ) { _name = name; }
00024 
00025         OfxTime getTime() const { return _time; }
00026         void setTime( const OfxTime time ) { _time = time; }
00027 
00028         bool operator==( const NodeAtTimeKey& v ) const;
00029         bool operator<( const NodeAtTimeKey& v ) const;
00030 
00031         std::size_t getHash() const;
00032 
00033 public:
00034         friend std::ostream& operator<<( std::ostream& os, const NodeAtTimeKey& k );
00035 
00036 private:
00037         std::string _name;
00038         OfxTime _time;
00039 };
00040 
00041 }
00042 }
00043 
00044 #endif
00045