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

#include "boost/python.hpp"
#include "python_CEGUI.h"
#include "RenderingContext.pypp.hpp"

namespace bp = boost::python;

struct RenderingContext_wrapper : CEGUI::RenderingContext, bp::wrapper< CEGUI::RenderingContext > {

    RenderingContext_wrapper(CEGUI::RenderingContext const & arg )
    : CEGUI::RenderingContext( arg )
      , bp::wrapper< CEGUI::RenderingContext >(){
        // copy constructor
        
    }

    RenderingContext_wrapper()
    : CEGUI::RenderingContext()
      , bp::wrapper< CEGUI::RenderingContext >(){
        // null constructor
        
    }

    static ::CEGUI::Window const * get_owner(CEGUI::RenderingContext const & inst ){
        return inst.owner;
    }
    
    static void set_owner( CEGUI::RenderingContext & inst, ::CEGUI::Window const * new_value ){ 
        inst.owner = new_value;
    }

    static ::CEGUI::RenderingSurface * get_surface(CEGUI::RenderingContext const & inst ){
        return inst.surface;
    }
    
    static void set_surface( CEGUI::RenderingContext & inst, ::CEGUI::RenderingSurface * new_value ){ 
        inst.surface = new_value;
    }

};

void register_RenderingContext_class(){

    { //::CEGUI::RenderingContext
        typedef bp::class_< RenderingContext_wrapper > RenderingContext_exposer_t;
        RenderingContext_exposer_t RenderingContext_exposer = RenderingContext_exposer_t( "RenderingContext", "*!\n\
        \n\
            struct that holds some context relating to a RenderingSurface object.\n\
        *\n" );
        bp::scope RenderingContext_scope( RenderingContext_exposer );
        RenderingContext_exposer.def_readwrite( "offset", &CEGUI::RenderingContext::offset, "! The Window object that owns the RenederingSurface (0 for default root)\n\
        ! The offset of the owning window on the root RenderingSurface.\n" );
        RenderingContext_exposer.add_property( "owner"
                    , bp::make_function( (::CEGUI::Window const * (*)( ::CEGUI::RenderingContext const & ))(&RenderingContext_wrapper::get_owner), bp::return_internal_reference< >() )
                    , bp::make_function( (void (*)( ::CEGUI::RenderingContext &,::CEGUI::Window const * ))(&RenderingContext_wrapper::set_owner), bp::with_custodian_and_ward_postcall< 1, 2 >() )
                    , "! RenderingSurface to be used for drawing\n\
        ! The Window object that owns the RenederingSurface (0 for default root)\n" );
        RenderingContext_exposer.def_readwrite( "queue", &CEGUI::RenderingContext::queue, "! The offset of the owning window on the root RenderingSurface.\n\
        ! The queue that rendering should be added to.\n" );
        RenderingContext_exposer.add_property( "surface"
                    , bp::make_function( (::CEGUI::RenderingSurface * (*)( ::CEGUI::RenderingContext const & ))(&RenderingContext_wrapper::get_surface), bp::return_internal_reference< >() )
                    , bp::make_function( (void (*)( ::CEGUI::RenderingContext &,::CEGUI::RenderingSurface * ))(&RenderingContext_wrapper::set_surface), bp::with_custodian_and_ward_postcall< 1, 2 >() )
                    , "! RenderingSurface to be used for drawing\n" );
    }

}
