diff --git a/Tracker/TrackerRecEvent/TrackerPrepRawData/TrackerPrepRawData/TrackerSeed.h b/Tracker/TrackerRecEvent/TrackerPrepRawData/TrackerPrepRawData/TrackerSeed.h
new file mode 100755
index 0000000000000000000000000000000000000000..634163acc73f8373cb705f74ecd7b41a7ac0be66
--- /dev/null
+++ b/Tracker/TrackerRecEvent/TrackerPrepRawData/TrackerPrepRawData/TrackerSeed.h
@@ -0,0 +1,42 @@
+#ifndef TRACKERRAWDATA_TRACKERSEED_H
+#define TRACKERRAWDATA_TRACKERSEED_H
+
+// Space point Class
+#include "TrkSpacePoint/SpacePointCollection.h"
+
+#include <vector>
+
+using namespace std;
+
+class MsgStream;
+
+namespace Tracker {
+
+class TrackerSeed {
+
+ public:
+
+  TrackerSeed();
+  TrackerSeed(const TrackerSeed &);
+  TrackerSeed(TrackerSeed &&);
+  TrackerSeed &operator=(const TrackerSeed &);
+  TrackerSeed &operator=(TrackerSeed &&);
+  
+  TrackerSeed(vector<const Trk::SpacePoint*>);
+  TrackerSeed(vector<const Trk::SpacePoint*>&);
+
+  virtual MsgStream&    dump( MsgStream&    stream) const;
+  virtual std::ostream& dump( std::ostream& stream) const;
+    
+ private:
+
+  vector<const Trk::SpacePoint*> m_seed;
+
+};
+
+
+ MsgStream&    operator << (MsgStream& stream,    const TrackerSeed& prd);
+ std::ostream& operator << (std::ostream& stream, const TrackerSeed& prd);
+
+}
+#endif // TRACKERRAWDATA_TRACKERSEED_H
diff --git a/Tracker/TrackerRecEvent/TrackerPrepRawData/TrackerPrepRawData/TrackerSeedCollection.h b/Tracker/TrackerRecEvent/TrackerPrepRawData/TrackerPrepRawData/TrackerSeedCollection.h
new file mode 100755
index 0000000000000000000000000000000000000000..d94c8c5d4d768438a02cd6f75af610fad4712082
--- /dev/null
+++ b/Tracker/TrackerRecEvent/TrackerPrepRawData/TrackerPrepRawData/TrackerSeedCollection.h
@@ -0,0 +1,19 @@
+#ifndef TRACKERSEEDCOLLECTION_H
+#define TRACKERSEEDCOLLECTION_H
+
+// Base classes
+#include "AthenaKernel/CLASS_DEF.h"
+#include "AthContainers/DataVector.h"
+#include "GaudiKernel/DataObject.h"
+//class SpacePoint;
+#include "TrackerSpacePoint/SpacePointForSeed.h"
+#include "TrackerPrepRawData/TrackerSeed.h"
+
+namespace Tracker {
+typedef DataVector<TrackerSeed> TrackerSeedCollection;
+}
+
+CLASS_DEF(Tracker::TrackerSeedCollection, 1139531114, 1)
+
+#endif // TRACKERSEEDCOLLECTION_H
+
diff --git a/Tracker/TrackerRecEvent/TrackerPrepRawData/src/TrackerSeed.cxx b/Tracker/TrackerRecEvent/TrackerPrepRawData/src/TrackerSeed.cxx
new file mode 100755
index 0000000000000000000000000000000000000000..082eb049eae94f3d229255fe7f9e95325867f112
--- /dev/null
+++ b/Tracker/TrackerRecEvent/TrackerPrepRawData/src/TrackerSeed.cxx
@@ -0,0 +1,48 @@
+#include "TrackerPrepRawData/TrackerSeed.h"
+
+namespace Tracker {
+
+  TrackerSeed::TrackerSeed() {}
+
+  TrackerSeed::TrackerSeed(vector<const Trk::SpacePoint*> seed) : m_seed(seed) {}
+  TrackerSeed::TrackerSeed(vector<const Trk::SpacePoint*>& seed) : m_seed(seed) {}
+
+  TrackerSeed::TrackerSeed(const TrackerSeed& trackerSeed) : m_seed(trackerSeed.m_seed) {}
+
+  TrackerSeed& TrackerSeed::operator=(const TrackerSeed& trackSeed){
+    if(&trackSeed != this) {
+      TrackerCluster::operator=(trackSeed);
+      m_seed = trackSeed.m_seed;
+    }
+    return *this;
+  }
+
+  TrackerSeed& TrackerSeed::operator=(TrackerSeed& trackSeed){
+    if(&trackSeed != this) {
+      TrackerCluster::operator=(trackSeed);
+      m_seed = RIO.m_seed;
+    }
+    return *this;
+  }
+
+  MsgStream& operator << (MsgStream& stream, const TrackerSeed& trackSeed)
+  {
+    return trackSeed.dump(stream);
+  }
+
+  std::ostream& operator << (std::ostream& stream, const TrackerSeed& trackSeed) {
+    return trackSeed.dump(stream);
+  }
+
+  MsgStream& TrackerSeed::dump(MsgStream& stream) const {
+    stream << "TrackerSeed object" << endl;
+    this->TrackerCluster::dump(stream);
+    return stream;
+  }
+
+  std::ostream& TrackerSeed::dump( std::ostream& stream) const {
+    stream << "TrackerSeed object"<<std::endl;
+    this->TrackerCluster::dump(stream);
+    return stream;
+  }
+}