/* Interleaved.cpp Written by: Michael Götting (2007) University of Bielefeld AG Neuroinformatik {mgoettin,celbrech}@techfak.uni-bielefeld.de */ #include "Interleaved.h" #include "Img.h" using namespace icl; using namespace std; namespace icl { template Interleaved::Interleaved(ImgBase *poSrc, bool deepCopyData) : m_bHaveData(deepCopyData) { // deep copy data if (deepCopyData) { m_poData = poSrc->deepCopy(); } else { m_poData = poSrc; } // create Ptr Vector for (int i=0;igetChannels();i++) { m_vecDataPtr.push_back((T*) m_poData->asImg()->getDataPtr(i)); } } template Interleaved::~Interleaved() { if (m_bHaveData) { delete m_poData; } } template inline const vector& Interleaved::getDataPtr() { return m_vecDataPtr; } template class Interleaved; template class Interleaved; template class Interleaved; }