00001 #ifndef StrTargetBuffer_h_ 00002 #define StrTargetBuffer_h_ 00003 00004 #include <string> 00005 00006 class StrTargetBuffer : public std::string 00007 { 00008 size_t _target_size; 00009 public: 00010 StrTargetBuffer() : std::string(), _target_size(0) 00011 { 00012 } 00013 00014 size_t left_to_fill() 00015 { 00016 if(_target_size < size()) 00017 return 0; 00018 00019 return _target_size - size(); 00020 }; 00021 00022 void SetDataSize(size_t target) 00023 { 00024 _target_size = target; 00025 } 00026 00027 size_t GetTargetSize() { return _target_size; }; 00028 }; 00029 00030 #endif // StrTargetBuffer_h_ 00031