Add some missing functions to CCMap

This commit is contained in:
Paul Fd 2020-04-18 16:16:00 +02:00 committed by Jean Pierre Cimalando
parent acba0ba40b
commit 114cd22f76

View file

@ -22,7 +22,10 @@ namespace sfz {
template <class ValueType> template <class ValueType>
class CCMap { class CCMap {
public: public:
CCMap() = delete; CCMap()
: defaultValue(ValueType {})
{
}
/** /**
* @brief Construct a new CCMap object with the specified default value. * @brief Construct a new CCMap object with the specified default value.
* *
@ -87,8 +90,17 @@ public:
{ {
return absl::c_binary_search(container, index, CCDataComparator<ValueType> {}); return absl::c_binary_search(container, index, CCDataComparator<ValueType> {});
} }
/**
* @brief Container size
*
* @return size_t
*/
size_t size() const noexcept { return container.size(); }
typename std::vector<CCData<ValueType>>::const_iterator begin() const { return container.cbegin(); } typename std::vector<CCData<ValueType>>::const_iterator begin() const { return container.cbegin(); }
typename std::vector<CCData<ValueType>>::const_iterator end() const { return container.cend(); } typename std::vector<CCData<ValueType>>::const_iterator end() const { return container.cend(); }
private: private:
// typename std::vector<std::pair<int, ValueType>>::iterator begin() { return container.begin(); } // typename std::vector<std::pair<int, ValueType>>::iterator begin() { return container.begin(); }
// typename std::vector<std::pair<int, ValueType>>::iterator end() { return container.end(); } // typename std::vector<std::pair<int, ValueType>>::iterator end() { return container.end(); }