// ========================================================================= // @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co) // ========================================================================= #include #include #include // ------------------------------------------------------------------------- cpPluginsBase::AppendRawDataFilter:: AppendRawDataFilter( ) : Superclass( ) { } // ------------------------------------------------------------------------- cpPluginsBase::AppendRawDataFilter:: ~AppendRawDataFilter( ) { } // ------------------------------------------------------------------------- void cpPluginsBase::AppendRawDataFilter:: _Configure( ) { this->_ConfigureInput< cpPluginsBase::RawData >( "Input", true, true ); this->_ConfigureOutput< cpPluginsBase::RawData >( "Output" ); } // ------------------------------------------------------------------------- void cpPluginsBase::AppendRawDataFilter:: _GenerateData( ) { typedef cpPluginsBase::RawData _TData; unsigned int N = this->GetNumberOfInputs( "Input" ); std::size_t size = 0; for( unsigned int i = 0; i < N; ++i ) { const _TData* input = this->_GetInput< _TData >( "Input", i ); size += input->GetSize( ); } // rof char* buffer = new char[ size ]; size = 0; for( unsigned int i = 0; i < N; ++i ) { const _TData* input = this->_GetInput< _TData >( "Input", i ); std::memcpy( buffer + size, input->GetBuffer( ), input->GetSize( ) ); size += input->GetSize( ); } // rof this->_GetOutput< _TData >( "Output" )->TakeOwnership( buffer, size ); } // eof - $RCSfile$