#include #include #include #ifndef DO_ITK_INLINE #include #endif Reader::Reader() : Operation() , m_is_open_multipage( false) , m_filename( 0) , m_max_filename_len( 0) { } Reader::Reader( const char *new_filename) : Operation() , m_is_open_multipage( false) , m_filename( 0) , m_max_filename_len( 0) { filename( new_filename); } Reader::~Reader() { if (is_open_multipage()) { close_multipage(); } delete []m_filename; } Reader & Reader::filename( const char *new_filename) { size_t len = strlen( new_filename); if (len > m_max_filename_len) { delete []m_filename; m_filename = new char[ len+1]; m_max_filename_len = len; } strcpy( m_filename, new_filename); return *this; } bool Reader::imp_open_multipage() { assert( !"Should not be in Reader::imp_open_multipage()"); return false; } bool Reader::imp_load_next( Raster &raster) { assert( !"Should not be in Reader::imp_load_next()"); return false; } bool Reader::imp_close_multipage() { assert( !"Should not be in Reader::imp_close_multipage()"); return false; }