@@ -55,6 +55,10 @@ namespace pp = pyplusplus::containers::static_sized;
5555#define IS_STRING (x ) (PyObject_IsInstance(x.ptr(), (PyObject*)&PyString_Type))
5656#define IS_INT (x ) (PyObject_IsInstance(x.ptr(), (PyObject*)&PyInt_Type))
5757
58+ static spindle_speed_array spindle_speed_wrapper (Interp & inst) {
59+ return spindle_speed_array (inst._setup .speed );
60+ }
61+
5862static active_g_codes_array active_g_codes_wrapper ( Interp & inst) {
5963 return active_g_codes_array (inst._setup .active_g_codes );
6064}
@@ -366,6 +370,14 @@ static inline double get_CC_origin_offset (Interp &interp) {
366370static inline void set_CC_origin_offset (Interp &interp, double value) {
367371 interp._setup .CC_origin_offset = value;
368372}
373+
374+ static inline int get_active_spindle (Interp const & interp) {
375+ return interp._setup .active_spindle ;
376+ }
377+ static inline void set_active_spindle (Interp & interp, int value) {
378+ interp._setup .active_spindle = value;
379+ }
380+
369381static inline double get_axis_offset_x (Interp &interp) {
370382 return interp._setup .axis_offset_x ;
371383}
@@ -510,12 +522,6 @@ static inline double get_rotation_xy (Interp &interp) {
510522static inline void set_rotation_xy (Interp &interp, double value) {
511523 interp._setup .rotation_xy = value;
512524}
513- static inline double get_speed (Interp &interp, int spindle) {
514- return interp._setup .speed [spindle];
515- }
516- static inline void set_speed (Interp &interp, int spindle, double value) {
517- interp._setup .speed [spindle] = value;
518- }
519525static inline double get_traverse_rate (Interp &interp) {
520526 return interp._setup .traverse_rate ;
521527}
@@ -896,6 +902,7 @@ BOOST_PYTHON_MODULE(interpreter) {
896902 .add_property (" CC_axis_offset" , &get_CC_axis_offset, &set_CC_axis_offset)
897903 .add_property (" CC_current" , &get_CC_current, &set_CC_current)
898904 .add_property (" CC_origin_offset" , &get_CC_origin_offset, &set_CC_origin_offset)
905+ .add_property (" active_spindle" , &get_active_spindle, &set_active_spindle)
899906 .add_property (" axis_offset_x" , &get_axis_offset_x, &set_axis_offset_x)
900907 .add_property (" axis_offset_y" , &get_axis_offset_y, &set_axis_offset_y)
901908 .add_property (" axis_offset_z" , &get_axis_offset_z, &set_axis_offset_z)
@@ -920,7 +927,6 @@ BOOST_PYTHON_MODULE(interpreter) {
920927 .add_property (" program_z" , &get_program_z, &set_program_z)
921928 .add_property (" return_value" , &get_return_value, &set_return_value)
922929 .add_property (" rotation_xy" , &get_rotation_xy, &set_rotation_xy)
923- .add_property (" speed" , &get_speed, &set_speed)
924930 .add_property (" traverse_rate" , &get_traverse_rate, &set_traverse_rate)
925931 .add_property (" u_axis_offset" , &get_u_axis_offset, &set_u_axis_offset)
926932 .add_property (" u_origin_offset" , &get_u_origin_offset, &set_u_origin_offset)
@@ -974,6 +980,14 @@ BOOST_PYTHON_MODULE(interpreter) {
974980
975981
976982 // _setup arrays
983+ .add_property (
984+ " speed" ,
985+ bp::make_function (
986+ spindle_speed_w (&spindle_speed_wrapper),
987+ bp::with_custodian_and_ward_postcall<0 , 1 >()
988+ )
989+ )
990+
977991 .add_property ( " active_g_codes" ,
978992 bp::make_function ( active_g_codes_w (&active_g_codes_wrapper),
979993 bp::with_custodian_and_ward_postcall< 0 , 1 >()))
0 commit comments