IVGCVSW-3432 Fix a multithread store conflict

* Unit test was using the same CaptureData object across 50 threads

Change-Id: I0249b5a8e0bb05e3d3efdd855f5b34b1d5ef3dc9
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
diff --git a/src/profiling/Holder.hpp b/src/profiling/Holder.hpp
index c22c72a..d8d1f5b 100644
--- a/src/profiling/Holder.hpp
+++ b/src/profiling/Holder.hpp
@@ -26,7 +26,7 @@
     CaptureData& operator= (const CaptureData& captureData);
 
     void SetCapturePeriod(uint32_t capturePeriod);
-    void SetCounterIds(std::vector<uint16_t>& counterIds);
+    void SetCounterIds(const std::vector<uint16_t>& counterIds);
     uint32_t GetCapturePeriod() const;
     std::vector<uint16_t> GetCounterIds() const;
 
@@ -41,7 +41,7 @@
     Holder()
         : m_CaptureData() {};
     CaptureData GetCaptureData() const;
-    void SetCaptureData(uint32_t capturePeriod, std::vector<uint16_t>& counterIds);
+    void SetCaptureData(uint32_t capturePeriod, const std::vector<uint16_t>& counterIds);
 
 private:
     mutable std::mutex m_CaptureThreadMutex;