// This file has been generated by Py++.

#include "boost/python.hpp"
#include "__ctypes_integration.pypp.hpp"
#include "opencv_headers.hpp"
#include "boost/python/object.hpp"
#include "boost/python/str.hpp"
#include "CvSet.pypp.hpp"

namespace bp = boost::python;

struct CvSet_wrapper : CvSet, bp::wrapper< CvSet > {

    CvSet_wrapper(CvSet const & arg )
    : CvSet( arg )
      , bp::wrapper< CvSet >(){
        // copy constructor
        
    }

    CvSet_wrapper()
    : CvSet()
      , bp::wrapper< CvSet >(){
        // null constructor
        
    }

    static bp::object get_h_prev( ::CvSet const & inst ){        
        return inst.h_prev? bp::object(inst.h_prev): bp::object();
    }

    static bp::object get_h_next( ::CvSet const & inst ){        
        return inst.h_next? bp::object(inst.h_next): bp::object();
    }

    static bp::object get_v_prev( ::CvSet const & inst ){        
        return inst.v_prev? bp::object(inst.v_prev): bp::object();
    }

    static bp::object get_v_next( ::CvSet const & inst ){        
        return inst.v_next? bp::object(inst.v_next): bp::object();
    }

    static bp::object get_storage( ::CvSet const & inst ){        
        return inst.storage? bp::object(inst.storage): bp::object();
    }

    static bp::object get_free_blocks( ::CvSet const & inst ){        
        return inst.free_blocks? bp::object(inst.free_blocks): bp::object();
    }

    static bp::object get_first( ::CvSet const & inst ){        
        return inst.first? bp::object(inst.first): bp::object();
    }

    static bp::object get_block_max( ::CvSet const & inst ){        
        return inst.block_max? bp::str(inst.block_max): bp::object();
    }

    static bp::object get_ptr( ::CvSet const & inst ){        
        return inst.ptr? bp::str(inst.ptr): bp::object();
    }

    static bp::object get_free_elems( ::CvSet const & inst ){        
        return inst.free_elems? bp::object(inst.free_elems): bp::object();
    }

};

void register_CvSet_class(){

    bp::class_< CvSet_wrapper >( "CvSet" )    
        .add_property( "this", pyplus_conv::make_addressof_inst_getter< CvSet >() )    
        .def_readwrite( "active_count", &CvSet::active_count )    
        .def_readwrite( "delta_elems", &CvSet::delta_elems )    
        .def_readwrite( "elem_size", &CvSet::elem_size )    
        .def_readwrite( "flags", &CvSet::flags )    
        .def_readwrite( "header_size", &CvSet::header_size )    
        .def_readwrite( "total", &CvSet::total )    
        .add_property( "h_prev", bp::make_function(&::CvSet_wrapper::get_h_prev) )    
        .add_property( "h_next", bp::make_function(&::CvSet_wrapper::get_h_next) )    
        .add_property( "v_prev", bp::make_function(&::CvSet_wrapper::get_v_prev) )    
        .add_property( "v_next", bp::make_function(&::CvSet_wrapper::get_v_next) )    
        .add_property( "storage", bp::make_function(&::CvSet_wrapper::get_storage) )    
        .add_property( "free_blocks", bp::make_function(&::CvSet_wrapper::get_free_blocks) )    
        .add_property( "first", bp::make_function(&::CvSet_wrapper::get_first) )    
        .add_property( "block_max", bp::make_function(&::CvSet_wrapper::get_block_max) )    
        .add_property( "ptr", bp::make_function(&::CvSet_wrapper::get_ptr) )    
        .add_property( "free_elems", bp::make_function(&::CvSet_wrapper::get_free_elems) );

}
