diff --git a/src/processor.cc b/src/processor.cc
index c03a49379af944ced919da04b99258ba932fbcee..c00b786d72a7248c85812832d11464f4e11dd2c9 100644
--- a/src/processor.cc
+++ b/src/processor.cc
@@ -126,7 +126,7 @@ inline std::pair<uint32_t, bool> StreamProcessor::ProcessOrbitHeader(char *rd_pt
 // Goes through orbit worth of data and fills the output memory with the calo
 // data corresponding to the non-empty bunchcrossings, as marked in bx_vect
 StreamProcessor::fillOrbitMetadata StreamProcessor::FillOrbitCalo(
-    std::vector<unsigned int> &bx_vect, char *rd_ptr, char *wr_ptr) {
+    const std::vector<unsigned int> &bx_vect, char *rd_ptr, char *wr_ptr) {
   std::pair<uint32_t, bool> orbit_header = std::pair<uint32_t, bool>{
       ProcessOrbitHeader(rd_ptr)};  //.second is the warning test enable bit
   rd_ptr += 32;                     // +32 to account for orbit header
@@ -142,7 +142,7 @@ StreamProcessor::fillOrbitMetadata StreamProcessor::FillOrbitCalo(
     uint32_t bx = uint32_t{bx_vect[relbx]};
     uint32_t orbit_ = uint32_t{orbit_header.first};
     if (bx > 3554) {
-      orbit_--;
+      --orbit_;
     }  // fix for the fact that bx 3555 - 3564 are from the previous orbit
     uint32_t header = uint32_t{orbit_header.second};  // header can be added to later
     memcpy(wr_ptr, (char *)&header, 4);
@@ -233,7 +233,7 @@ uint32_t StreamProcessor::FillBril(char *rd_ptr, char *wr_ptr, char *end_ptr) {
 // Goes through orbit worth of data and fills the output memory with the muons
 // corresponding to the non-empty bunchcrossings, as marked in bx_vect
 StreamProcessor::fillOrbitMetadata StreamProcessor::FillOrbitMuon(
-    std::vector<unsigned int> &bx_vect, char *rd_ptr, char *wr_ptr) {
+    const std::vector<unsigned int> &bx_vect, char *rd_ptr, char *wr_ptr) {
   std::pair<uint32_t, bool> orbit_header = std::pair<uint32_t, bool>{
       ProcessOrbitHeader(rd_ptr)};  //.second is the warning test enable bit
   rd_ptr += 32;                     // +32 to account for orbit header
@@ -252,7 +252,7 @@ StreamProcessor::fillOrbitMetadata StreamProcessor::FillOrbitMuon(
     bool BblocksOn[8];
     uint32_t bx = uint32_t{bx_vect[relbx]};
     if (bx > 3554) {
-      orbit--;
+      --orbit;
     }  // fix for the fact that bx 3555 - 3564 are from the previous orbit
     for (unsigned int i = 0; i < 8; i++) {
       uint32_t bxA = (bl->bx[i] >> shifts::bx) & masks::bx;
@@ -375,10 +375,9 @@ void StreamProcessor::process(Slice &input, Slice &out) {
     return;
   }
   while (endofpacket == false) {
-    std::vector<unsigned int> bx_vect;
     uint32_t orbitCount = 0;
     bool trailerError = false;
-    bx_vect = CountBX(input, rd_ptr, trailerError);
+    std::vector<unsigned int> bx_vect = CountBX(input, rd_ptr, trailerError);
     if (trailerError == true) {
       stats.orbit_trailer_error_count++;
       LOG(WARNING) << "Orbit trailer error: orbit trailer not found before end of data "