contrib/tbl/vipl/vipl_with_vnl_matrix/vipl_filterable_section_container_generator_vnl_matrix.txx
Go to the documentation of this file.
00001 #ifndef vipl_filterable_section_container_generator_vnl_matrix_txx_
00002 #define vipl_filterable_section_container_generator_vnl_matrix_txx_
00003 
00004 #include <vnl/vnl_matrix.h>
00005 
00006 #undef FILTER_IMPTR_DEC_REFCOUNT
00007 #define FILTER_IMPTR_DEC_REFCOUNT(v) {delete (v); (v)=0;}
00008 #undef FILTER_IMPTR_INC_REFCOUNT
00009 #define FILTER_IMPTR_INC_REFCOUNT(v)
00010 #undef FILTER_KERNPTR_DEC_REFCOUNT
00011 #define FILTER_KERNPTR_DEC_REFCOUNT(v)
00012 
00013 #include <vipl/section/vipl_section_container.txx>
00014 #include <vipl/section/vipl_section_iterator.txx>
00015 template <class DataType>
00016 vipl_section_container<DataType>*
00017 vipl_filterable_section_container_generator(const vnl_matrix<DataType>& im, DataType*)
00018 {
00019   vipl_section_container<DataType> *rtn = new vipl_section_container<DataType>((vipl_section_container<DataType>*)0);
00020   rtn->put_imgptr((const void*) &im);
00021   rtn->ref_imgsz()[0] = im.columns();
00022   rtn->ref_imgsz()[1] = im.rows();
00023 
00024   rtn->ref_secsz()[0] = im.columns();
00025   rtn->ref_secsz()[1] = im.rows();
00026 
00027   return rtn;
00028 }
00029 
00030 #endif // vipl_filterable_section_container_generator_vnl_matrix_txx_