diff --git a/.gitattributes b/.gitattributes
index 2bf35aeecd1271000cace59d9a3471d87dd69d96..9ad2cbdef750f01f2bfec5644550ec31eb16c458 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -3963,20 +3963,22 @@ RTCP/IONProc/test/tSSH.cc -text
 RTCP/IONProc/test/tSSH.sh -text
 RTCP/IONProc/test/tSSH.stdout -text
 RTCP/InputProc/CMakeLists.txt -text
-RTCP/InputProc/src/BufferSettings.cc -text
-RTCP/InputProc/src/BufferSettings.h -text
+RTCP/InputProc/src/Buffer/BufferSettings.cc -text
+RTCP/InputProc/src/Buffer/BufferSettings.h -text
+RTCP/InputProc/src/Buffer/Ranges.cc -text
+RTCP/InputProc/src/Buffer/Ranges.h -text
+RTCP/InputProc/src/Buffer/SampleBuffer.h -text
+RTCP/InputProc/src/Buffer/SampleBufferReader.h -text
+RTCP/InputProc/src/Buffer/SampleBufferReader.tcc -text
+RTCP/InputProc/src/Buffer/SharedMemory.cc -text
+RTCP/InputProc/src/Buffer/SharedMemory.h -text
+RTCP/InputProc/src/Buffer/StationID.cc -text
+RTCP/InputProc/src/Buffer/StationID.h -text
 RTCP/InputProc/src/CMakeLists.txt -text
 RTCP/InputProc/src/OMPThread.h -text
 RTCP/InputProc/src/RSPBoards.cc -text
 RTCP/InputProc/src/RSPBoards.h -text
-RTCP/InputProc/src/Ranges.cc -text
-RTCP/InputProc/src/Ranges.h -text
-RTCP/InputProc/src/SampleBuffer.h -text
-RTCP/InputProc/src/SampleBufferReader.h -text
-RTCP/InputProc/src/SampleBufferReader.tcc -text
 RTCP/InputProc/src/SampleType.h -text
-RTCP/InputProc/src/SharedMemory.cc -text
-RTCP/InputProc/src/SharedMemory.h -text
 RTCP/InputProc/src/Station/Generator.cc -text
 RTCP/InputProc/src/Station/Generator.h -text
 RTCP/InputProc/src/Station/PacketReader.cc -text
@@ -3987,8 +3989,6 @@ RTCP/InputProc/src/Station/PacketsToBuffer.cc -text
 RTCP/InputProc/src/Station/PacketsToBuffer.h -text
 RTCP/InputProc/src/Station/RSP.h -text
 RTCP/InputProc/src/Station/filterRSP.cc -text
-RTCP/InputProc/src/StationID.cc -text
-RTCP/InputProc/src/StationID.h -text
 RTCP/InputProc/src/Transpose/MPITransferStations.h -text
 RTCP/InputProc/src/Transpose/MPITransferStations.tcc -text
 RTCP/InputProc/src/WallClockTime.h -text
diff --git a/RTCP/InputProc/src/BufferSettings.cc b/RTCP/InputProc/src/Buffer/BufferSettings.cc
similarity index 95%
rename from RTCP/InputProc/src/BufferSettings.cc
rename to RTCP/InputProc/src/Buffer/BufferSettings.cc
index e2031a4dab4d733c9c436e79e77098a5e5d446b1..b2bd7e364af0598bf7e1eb188336660ea53fe451 100644
--- a/RTCP/InputProc/src/BufferSettings.cc
+++ b/RTCP/InputProc/src/Buffer/BufferSettings.cc
@@ -1,6 +1,6 @@
 #include <lofar_config.h>
-#include "BufferSettings.h"
-#include "SharedMemory.h"
+#include "Buffer/BufferSettings.h"
+#include "Buffer/SharedMemory.h"
 #include <Common/LofarLogger.h>
 
 namespace LOFAR {
diff --git a/RTCP/InputProc/src/BufferSettings.h b/RTCP/InputProc/src/Buffer/BufferSettings.h
similarity index 95%
rename from RTCP/InputProc/src/BufferSettings.h
rename to RTCP/InputProc/src/Buffer/BufferSettings.h
index f94646169a85ba10562b6059bc7ff239ca799c91..a423327ba6ff536e73a78fa38d345e485eb4d296 100644
--- a/RTCP/InputProc/src/BufferSettings.h
+++ b/RTCP/InputProc/src/Buffer/BufferSettings.h
@@ -2,8 +2,8 @@
 #define __BUFFERSETTINGS__
 
 #include <Common/LofarLogger.h>
-#include "SharedMemory.h"
-#include "StationID.h"
+#include "Buffer/SharedMemory.h"
+#include "Buffer/StationID.h"
 #include <ostream>
 
 namespace LOFAR {
diff --git a/RTCP/InputProc/src/Ranges.cc b/RTCP/InputProc/src/Buffer/Ranges.cc
similarity index 99%
rename from RTCP/InputProc/src/Ranges.cc
rename to RTCP/InputProc/src/Buffer/Ranges.cc
index 5ba0cce57614d1323761d9b5da615a44dcdce7a5..ac25d93263c998982f950c105a0f2e9bfb817e5a 100644
--- a/RTCP/InputProc/src/Ranges.cc
+++ b/RTCP/InputProc/src/Buffer/Ranges.cc
@@ -1,5 +1,5 @@
 #include <lofar_config.h>
-#include "Ranges.h"
+#include "Buffer/Ranges.h"
 #include <Common/LofarLogger.h>
 
 namespace LOFAR {
diff --git a/RTCP/InputProc/src/Ranges.h b/RTCP/InputProc/src/Buffer/Ranges.h
similarity index 100%
rename from RTCP/InputProc/src/Ranges.h
rename to RTCP/InputProc/src/Buffer/Ranges.h
diff --git a/RTCP/InputProc/src/SampleBuffer.h b/RTCP/InputProc/src/Buffer/SampleBuffer.h
similarity index 97%
rename from RTCP/InputProc/src/SampleBuffer.h
rename to RTCP/InputProc/src/Buffer/SampleBuffer.h
index 3b2df27c26147388e56a0ac1f89128fcbdddb960..bd70459c79e3d8e9ab555cc821ce4890e04f53d1 100644
--- a/RTCP/InputProc/src/SampleBuffer.h
+++ b/RTCP/InputProc/src/Buffer/SampleBuffer.h
@@ -4,9 +4,9 @@
 #include <Common/LofarLogger.h>
 #include <Interface/MultiDimArray.h>
 #include <Interface/Allocator.h>
-#include "BufferSettings.h"
-#include "SharedMemory.h"
-#include "Ranges.h"
+#include "Buffer/BufferSettings.h"
+#include "Buffer/SharedMemory.h"
+#include "Buffer/Ranges.h"
 #include "SampleType.h"
 #include <string>
 #include <vector>
diff --git a/RTCP/InputProc/src/SampleBufferReader.h b/RTCP/InputProc/src/Buffer/SampleBufferReader.h
similarity index 96%
rename from RTCP/InputProc/src/SampleBufferReader.h
rename to RTCP/InputProc/src/Buffer/SampleBufferReader.h
index 40b49443c108214c27492ae26c861f047938ff12..a1667bee437d00513d31b256d81ca7879c38df53 100644
--- a/RTCP/InputProc/src/SampleBufferReader.h
+++ b/RTCP/InputProc/src/Buffer/SampleBufferReader.h
@@ -2,8 +2,8 @@
 #define __SAMPLEBUFFERREADER__
 
 #include <Interface/RSPTimeStamp.h>
-#include "BufferSettings.h"
-#include "SampleBuffer.h"
+#include "Buffer/BufferSettings.h"
+#include "Buffer/SampleBuffer.h"
 
 #include <vector>
 #include <string>
diff --git a/RTCP/InputProc/src/SampleBufferReader.tcc b/RTCP/InputProc/src/Buffer/SampleBufferReader.tcc
similarity index 98%
rename from RTCP/InputProc/src/SampleBufferReader.tcc
rename to RTCP/InputProc/src/Buffer/SampleBufferReader.tcc
index a3827d3f29d9aa87644aaf73a5a652c9d6a5d83b..dae44caedbfc6a36160fd02c794c0f4d41e78b97 100644
--- a/RTCP/InputProc/src/SampleBufferReader.tcc
+++ b/RTCP/InputProc/src/Buffer/SampleBufferReader.tcc
@@ -1,8 +1,8 @@
 #include <Common/LofarLogger.h>
 #include "WallClockTime.h"
 #include <Interface/RSPTimeStamp.h>
-#include "BufferSettings.h"
-#include "SampleBuffer.h"
+#include "Buffer/BufferSettings.h"
+#include "Buffer/SampleBuffer.h"
 
 #include <mpi.h>
 #include <vector>
diff --git a/RTCP/InputProc/src/SharedMemory.cc b/RTCP/InputProc/src/Buffer/SharedMemory.cc
similarity index 98%
rename from RTCP/InputProc/src/SharedMemory.cc
rename to RTCP/InputProc/src/Buffer/SharedMemory.cc
index feb114537ceb466c1e427210d893f86c0415097c..0830be265fc2928df78a4252c1e8a4a4ecd5a345 100644
--- a/RTCP/InputProc/src/SharedMemory.cc
+++ b/RTCP/InputProc/src/Buffer/SharedMemory.cc
@@ -1,5 +1,5 @@
 #include <lofar_config.h>
-#include "SharedMemory.h"
+#include "Buffer/SharedMemory.h"
 #include <Common/Exception.h>
 #include <Common/SystemCallException.h>
 #include <Common/LofarLogger.h>
diff --git a/RTCP/InputProc/src/SharedMemory.h b/RTCP/InputProc/src/Buffer/SharedMemory.h
similarity index 100%
rename from RTCP/InputProc/src/SharedMemory.h
rename to RTCP/InputProc/src/Buffer/SharedMemory.h
diff --git a/RTCP/InputProc/src/StationID.cc b/RTCP/InputProc/src/Buffer/StationID.cc
similarity index 98%
rename from RTCP/InputProc/src/StationID.cc
rename to RTCP/InputProc/src/Buffer/StationID.cc
index f47086aa13ca680580dfb80298d0f437c78f8ff0..a6fd38234137101632f2c96f93c17017dea918e3 100644
--- a/RTCP/InputProc/src/StationID.cc
+++ b/RTCP/InputProc/src/Buffer/StationID.cc
@@ -1,5 +1,5 @@
 #include <lofar_config.h>
-#include "StationID.h"
+#include "Buffer/StationID.h"
 #include <Common/LofarLogger.h>
 #include <cstdio>
 
diff --git a/RTCP/InputProc/src/StationID.h b/RTCP/InputProc/src/Buffer/StationID.h
similarity index 100%
rename from RTCP/InputProc/src/StationID.h
rename to RTCP/InputProc/src/Buffer/StationID.h
diff --git a/RTCP/InputProc/src/CMakeLists.txt b/RTCP/InputProc/src/CMakeLists.txt
index c76d0268319df35b0a953a4c648a1f543d0c236f..2f331910d43247c1ed43471257565c2aa2ddae42 100644
--- a/RTCP/InputProc/src/CMakeLists.txt
+++ b/RTCP/InputProc/src/CMakeLists.txt
@@ -6,11 +6,11 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
 
 lofar_add_library(inputproc
   Package__Version.cc
-  BufferSettings.cc
-  Ranges.cc
-  SharedMemory.cc
-  StationID.cc
   RSPBoards.cc
+  Buffer/BufferSettings.cc
+  Buffer/Ranges.cc
+  Buffer/SharedMemory.cc
+  Buffer/StationID.cc
   Station/Generator.cc
   Station/PacketReader.cc
   Station/PacketsToBuffer.cc
diff --git a/RTCP/InputProc/src/RSPBoards.h b/RTCP/InputProc/src/RSPBoards.h
index 5aa4e5351279617d99444298a44d29f5d2aca6cb..f9fb1c2ccc7bbd9b6a1acfa3e949bf7cd44821e1 100644
--- a/RTCP/InputProc/src/RSPBoards.h
+++ b/RTCP/InputProc/src/RSPBoards.h
@@ -1,7 +1,7 @@
 #ifndef __RSPBOARDS__
 #define __RSPBOARDS__
 
-#include "BufferSettings.h"
+#include "Buffer/BufferSettings.h"
 #include "WallClockTime.h"
 #include <string>
 #include <vector>
diff --git a/RTCP/InputProc/src/Station/Generator.h b/RTCP/InputProc/src/Station/Generator.h
index c13e04f85e5f61652f19ebbe0e59e467751aed2b..bc0475c4418872779c4c4319b25ba23d5e4e254e 100644
--- a/RTCP/InputProc/src/Station/Generator.h
+++ b/RTCP/InputProc/src/Station/Generator.h
@@ -3,7 +3,7 @@
 
 #include "Station/RSP.h"
 #include "RSPBoards.h"
-#include "BufferSettings.h"
+#include "Buffer/BufferSettings.h"
 #include <string>
 #include <vector>
 
diff --git a/RTCP/InputProc/src/Station/PacketReader.h b/RTCP/InputProc/src/Station/PacketReader.h
index 81e544f1dbbc7609ed8ca1053ed7412f9381610d..40543e549e52b193a8a1f0e7624b8d9e556a5767 100644
--- a/RTCP/InputProc/src/Station/PacketReader.h
+++ b/RTCP/InputProc/src/Station/PacketReader.h
@@ -5,7 +5,7 @@
 #include <Stream/Stream.h>
 #include <Interface/SmartPtr.h>
 #include "Station/RSP.h"
-#include "BufferSettings.h"
+#include "Buffer/BufferSettings.h"
 #include <string>
 
 namespace LOFAR {
diff --git a/RTCP/InputProc/src/Station/PacketWriter.h b/RTCP/InputProc/src/Station/PacketWriter.h
index 69f052c2cf7e4f38d633acad458cf677df95d0c7..f74ad1f7a70952ca882b02b05c7a843cd33d0935 100644
--- a/RTCP/InputProc/src/Station/PacketWriter.h
+++ b/RTCP/InputProc/src/Station/PacketWriter.h
@@ -2,9 +2,9 @@
 #define __PACKETWRITER__
 
 #include "Station/RSP.h"
-#include "SampleBuffer.h"
-#include "BufferSettings.h"
-#include "Ranges.h"
+#include "Buffer/SampleBuffer.h"
+#include "Buffer/BufferSettings.h"
+#include "Buffer/Ranges.h"
 #include <string>
 
 namespace LOFAR {
diff --git a/RTCP/InputProc/src/Station/PacketWriter.tcc b/RTCP/InputProc/src/Station/PacketWriter.tcc
index 21203c33e5dbb9763e51d1383d24bf0c985a25b9..932df8d42c292d22cc2bfb019abcb404e9f9c209 100644
--- a/RTCP/InputProc/src/Station/PacketWriter.tcc
+++ b/RTCP/InputProc/src/Station/PacketWriter.tcc
@@ -2,9 +2,9 @@
 #include <Common/LofarConstants.h>
 #include <Interface/RSPTimeStamp.h>
 #include <Interface/SmartPtr.h>
-#include "SampleBuffer.h"
-#include "BufferSettings.h"
-#include "Ranges.h"
+#include "Buffer/SampleBuffer.h"
+#include "Buffer/BufferSettings.h"
+#include "Buffer/Ranges.h"
 #include "Station/RSP.h"
 #include <boost/format.hpp>
 #include <string>
diff --git a/RTCP/InputProc/src/Station/PacketsToBuffer.cc b/RTCP/InputProc/src/Station/PacketsToBuffer.cc
index 497d14587ed18be1addbb1b9de834d740f309246..235e468c6b318419f1ebc2ca8d57e349e9049323 100644
--- a/RTCP/InputProc/src/Station/PacketsToBuffer.cc
+++ b/RTCP/InputProc/src/Station/PacketsToBuffer.cc
@@ -5,8 +5,8 @@
 #include <Interface/SmartPtr.h>
 #include <Interface/Stream.h>
 #include <Stream/Stream.h>
-#include "SampleBuffer.h"
-#include "BufferSettings.h"
+#include "Buffer/SampleBuffer.h"
+#include "Buffer/BufferSettings.h"
 #include "Station/RSP.h"
 #include "Station/PacketReader.h"
 #include "Station/PacketWriter.h"
diff --git a/RTCP/InputProc/src/Station/PacketsToBuffer.h b/RTCP/InputProc/src/Station/PacketsToBuffer.h
index 9d566e65e1b4d48cd3b73c8ab98f58ac979bf00d..87558b3faa2a619f781479bc52b37e0af3d207fb 100644
--- a/RTCP/InputProc/src/Station/PacketsToBuffer.h
+++ b/RTCP/InputProc/src/Station/PacketsToBuffer.h
@@ -6,8 +6,8 @@
 #include <Stream/Stream.h>
 #include "Station/RSP.h"
 #include "RSPBoards.h"
-#include "SampleBuffer.h"
-#include "BufferSettings.h"
+#include "Buffer/SampleBuffer.h"
+#include "Buffer/BufferSettings.h"
 #include "Station/PacketReader.h"
 #include <string>
 #include <ios>
diff --git a/RTCP/InputProc/src/Transpose/MPITransferStations.h b/RTCP/InputProc/src/Transpose/MPITransferStations.h
index 499fc474c777ca7f9d9cb97045109202c2e15c99..c042e49f3ced4b96d26d736dcf1e513ad12cdc77 100644
--- a/RTCP/InputProc/src/Transpose/MPITransferStations.h
+++ b/RTCP/InputProc/src/Transpose/MPITransferStations.h
@@ -3,8 +3,8 @@
 
 #include <Interface/MultiDimArray.h>
 #include <Interface/SparseSet.h>
-#include "SampleBufferReader.h"
-#include "BufferSettings.h"
+#include "Buffer/SampleBufferReader.h"
+#include "Buffer/BufferSettings.h"
 #include "mpi.h"
 #include <vector>
 
diff --git a/RTCP/InputProc/src/Transpose/MPITransferStations.tcc b/RTCP/InputProc/src/Transpose/MPITransferStations.tcc
index a0363c370f13bdcef00c23ddeab32536403e9236..fa930d4175826b66deb4efcb5a5f9dff7df6f3ff 100644
--- a/RTCP/InputProc/src/Transpose/MPITransferStations.tcc
+++ b/RTCP/InputProc/src/Transpose/MPITransferStations.tcc
@@ -2,8 +2,8 @@
 #include <Common/Thread/Mutex.h>
 #include <Interface/MultiDimArray.h>
 #include <Interface/SparseSet.h>
-#include "SampleBufferReader.h"
-#include "BufferSettings.h"
+#include "Buffer/SampleBufferReader.h"
+#include "Buffer/BufferSettings.h"
 #include "mpi.h"
 #include <pthread.h>
 
diff --git a/RTCP/InputProc/src/newInputSection.cc b/RTCP/InputProc/src/newInputSection.cc
index 40b543a138e93d4dcfbbf809f2184ec04a948889..f68def4448c4733b195503e048750e2f998489d0 100644
--- a/RTCP/InputProc/src/newInputSection.cc
+++ b/RTCP/InputProc/src/newInputSection.cc
@@ -6,14 +6,14 @@
 #include <Interface/MultiDimArray.h>
 #include <Interface/Stream.h>
 #include "WallClockTime.h"
-#include "SharedMemory.h"
-#include "Ranges.h"
+#include "Buffer/SharedMemory.h"
+#include "Buffer/Ranges.h"
 #include "OMPThread.h"
-#include "StationID.h"
-#include "BufferSettings.h"
+#include "Buffer/StationID.h"
+#include "Buffer/BufferSettings.h"
 #include "SampleType.h"
-#include "SampleBuffer.h"
-#include "SampleBufferReader.h"
+#include "Buffer/SampleBuffer.h"
+#include "Buffer/SampleBufferReader.h"
 #include "Station/Generator.h"
 #include "Station/PacketsToBuffer.h"
 #include "mpi.h"
diff --git a/RTCP/InputProc/test/tPacketWriter.cc b/RTCP/InputProc/test/tPacketWriter.cc
index 769335a36a23626b0f6cf06c426b9d86fa472d2b..3075c93b915d7f153b97f8b1413a990abc0cb2ab 100644
--- a/RTCP/InputProc/test/tPacketWriter.cc
+++ b/RTCP/InputProc/test/tPacketWriter.cc
@@ -1,5 +1,5 @@
 #include <lofar_config.h>
-#include "SampleBuffer.h"
+#include "Buffer/SampleBuffer.h"
 #include "SampleType.h"
 #include "Station/PacketReader.h"
 #include "Station/PacketWriter.h"
diff --git a/RTCP/InputProc/test/tPacketsToBuffer.cc b/RTCP/InputProc/test/tPacketsToBuffer.cc
index f8ff9b59ab2ffceeddd6b928781d322c73977f7b..3a31942d1d5d56edd40cd4b54f0d24316a949345 100644
--- a/RTCP/InputProc/test/tPacketsToBuffer.cc
+++ b/RTCP/InputProc/test/tPacketsToBuffer.cc
@@ -1,6 +1,6 @@
 #include <lofar_config.h>
 #include "Station/PacketsToBuffer.h"
-#include "SampleBuffer.h"
+#include "Buffer/SampleBuffer.h"
 #include "SampleType.h"
 #include <Common/LofarLogger.h>
 #include <Stream/FileStream.h>
diff --git a/RTCP/InputProc/test/tRanges.cc b/RTCP/InputProc/test/tRanges.cc
index a5d31fb8afe8c097e8070f1385f745ccc89708ad..520e33f33e07ce27c09c55bc0bd52ef44fdf97d8 100644
--- a/RTCP/InputProc/test/tRanges.cc
+++ b/RTCP/InputProc/test/tRanges.cc
@@ -1,5 +1,5 @@
 #include <lofar_config.h>
-#include "Ranges.h"
+#include "Buffer/Ranges.h"
 #include <Common/LofarLogger.h>
 #include <vector>
 
diff --git a/RTCP/InputProc/test/tSampleBuffer.cc b/RTCP/InputProc/test/tSampleBuffer.cc
index 9ee829a3efae06dded89039f6695437db0d664a8..a19393ba4663104a907380b3e3a7d8e249b3d5b8 100644
--- a/RTCP/InputProc/test/tSampleBuffer.cc
+++ b/RTCP/InputProc/test/tSampleBuffer.cc
@@ -1,5 +1,5 @@
 #include <lofar_config.h>
-#include "SampleBuffer.h"
+#include "Buffer/SampleBuffer.h"
 #include "SampleType.h"
 #include <Common/LofarLogger.h>
 #include <vector>
diff --git a/RTCP/InputProc/test/tSharedMemory.cc b/RTCP/InputProc/test/tSharedMemory.cc
index 801080aa0d9351e734eadb7710146cedc491a650..62ac4df5b505c4676d0ce3f210c102f17e918aba 100644
--- a/RTCP/InputProc/test/tSharedMemory.cc
+++ b/RTCP/InputProc/test/tSharedMemory.cc
@@ -1,5 +1,5 @@
 #include <lofar_config.h>
-#include "SharedMemory.h"
+#include "Buffer/SharedMemory.h"
 #include <Common/LofarLogger.h>
 #include <Common/Thread/Thread.h>
 #include <unistd.h>