summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/gras/detail/work_buffer.hpp19
-rw-r--r--include/gras/work_buffer.hpp10
2 files changed, 29 insertions, 0 deletions
diff --git a/include/gras/detail/work_buffer.hpp b/include/gras/detail/work_buffer.hpp
index 851bbf9..ec7cbea 100644
--- a/include/gras/detail/work_buffer.hpp
+++ b/include/gras/detail/work_buffer.hpp
@@ -60,6 +60,25 @@ inline size_t &WorkBufferArray<PtrType>::max(void)
return _max;
}
+template <typename PtrType>
+inline const std::vector<PtrType> &WorkBufferArray<PtrType>::vec(void) const
+{
+ return _vec;
+}
+
+template <typename PtrType>
+inline std::vector<PtrType> &WorkBufferArray<PtrType>::vec(void)
+{
+ return _vec;
+}
+
+template <typename PtrType>
+inline void WorkBufferArray<PtrType>::resize(const size_t size)
+{
+ _vec.resize(size);
+ std::vector<WorkBuffer<PtrType> >::resize(size);
+}
+
} //namespace gras
#endif /*INCLUDED_GRAS_DETAIL_WORK_BUFFER_HPP*/
diff --git a/include/gras/work_buffer.hpp b/include/gras/work_buffer.hpp
index 0900ed7..fa38314 100644
--- a/include/gras/work_buffer.hpp
+++ b/include/gras/work_buffer.hpp
@@ -50,9 +50,19 @@ public:
//! Get a reference to the max items
size_t &max(void);
+ //! Get a vector of just the work pointers
+ const std::vector<PtrType> &vec(void) const;
+
+ //! Get a reference to the work pointers
+ std::vector<PtrType> &vec(void);
+
+ //! Resize the work buffer array
+ void resize(const size_t size);
+
private:
size_t _min;
size_t _max;
+ std::vector<PtrType> _vec;
};
} //namespace gras