diff --git a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/SCT_RawDataByteStreamCnv/ISCT_RodEncoder.h b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/SCT_RawDataByteStreamCnv/ISCT_RodEncoder.h
index 46b5a835c5929170d0e9812d35390d5020eb573c..cc51ee48c43328eacb66d9a8ec62694804b4d5c1 100644
--- a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/SCT_RawDataByteStreamCnv/ISCT_RodEncoder.h
+++ b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/SCT_RawDataByteStreamCnv/ISCT_RodEncoder.h
@@ -33,7 +33,7 @@ class ISCT_RodEncoder : virtual public IAlgTool {
   DeclareInterfaceID(ISCT_RodEncoder, 1, 0);
 
   /** convert all collections of RDO's in the current  list to vector of 32bit words */
-  virtual void fillROD(std::vector<uint32_t>& vec32Data, const uint32_t& robID, vRDOs& vecRDOs) const = 0;
+  virtual void fillROD(std::vector<uint32_t>& vec32Data, const uint32_t& robID, const vRDOs& vecRDOs) const = 0;
 
 }; 
 
diff --git a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.cxx b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.cxx
index f2259b8aaa409108426a53a8c06a32eaf163f1b9..9f7a51eb3b8c5718e2268941c7ce5b79e633b609 100644
--- a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.cxx
+++ b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.cxx
@@ -85,7 +85,7 @@ StatusCode SCT_RodEncoder::finalize() {
 ///=========================================================================
 
 void SCT_RodEncoder::fillROD(std::vector<uint32_t>& vec32Data, const uint32_t& robID, 
-                             vRDOs_t& vecRDOs) const {
+                             const vRDOs_t& vecRDOs) const {
   
   /** retrieve errors from SCT_ByteStreamErrorsSvc */
 
@@ -275,7 +275,7 @@ void SCT_RodEncoder::addSpecificErrors(const uint32_t& robID, const std::set<Ide
 /// Encode Data function
 ///========================================================================= 
 
-void SCT_RodEncoder::encodeData(std::vector<int>& vecTimeBins, std::vector<uint16_t>& vec16Words, const RDO *rdo, const int& groupSize, const int& strip) const {
+void SCT_RodEncoder::encodeData(const std::vector<int>& vecTimeBins, std::vector<uint16_t>& vec16Words, const RDO *rdo, const int& groupSize, const int& strip) const {
   
   const int encodedSide{side(rdo) << 14};
   
diff --git a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.h b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.h
index 4c4331f2fcab8c5c1f574c380c0a1b1ad255fc87..82407534ae01078372885d2ab237c379ec190b7a 100644
--- a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.h
+++ b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCT_RodEncoder.h
@@ -58,12 +58,12 @@ class SCT_RodEncoder : public extends<AthAlgTool, ISCT_RodEncoder>
   virtual StatusCode finalize();
 
   /// convert all collections of RDO's in the current  list to vector of 32bit words   
-  virtual void fillROD(std::vector<uint32_t>& vec32Data, const uint32_t& robID, vRDOs_t& vecRDOs) const;
+  virtual void fillROD(std::vector<uint32_t>& vec32Data, const uint32_t& robID, const vRDOs_t& vecRDOs) const;
 
  private:
 
   /// Encode rdo into the data: called by fillROD(..) 
-  void encodeData(std::vector<int>& vecTimeBins, std::vector<uint16_t>& vec16Words, const RDO *rdo, const int& groupSize, const int& strip) const;
+  void encodeData(const std::vector<int>& vecTimeBins, std::vector<uint16_t>& vec16Words, const RDO *rdo, const int& groupSize, const int& strip) const;
   
   /// pack 32 bit word:  called by  encodeData(..) 
   void packFragments(std::vector<uint16_t>& vec16Words, std::vector<uint32_t>& vec32Words) const;