diff --git a/RTCP/InputProc/src/SampleType.h b/RTCP/InputProc/src/SampleType.h
index d43d1aa780ed01c5bb8eaf4a2b6c745d9bc9f7e5..3c2abf8179fc245e05b71ead3f79defc0dfd10e0 100644
--- a/RTCP/InputProc/src/SampleType.h
+++ b/RTCP/InputProc/src/SampleType.h
@@ -3,16 +3,20 @@
 
 #include <complex>
 #include <ostream>
+#include <Common/LofarTypes.h>
 
 namespace LOFAR {
 namespace RTCP {
 
 
 template<typename T> struct SampleType {
-  std::complex<T> x;
-  std::complex<T> y;
+  T x, y;
 };
 
+template<> struct SampleType<i16complex>;
+template<> struct SampleType<i8complex>;
+template<> struct SampleType<i4complex>;
+
 
 template<typename T> std::ostream &operator <<(std::ostream &str, const struct SampleType<T> &sample)
 {