aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/chelper/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'klippy/chelper/__init__.py')
-rw-r--r--klippy/chelper/__init__.py27
1 files changed, 23 insertions, 4 deletions
diff --git a/klippy/chelper/__init__.py b/klippy/chelper/__init__.py
index 32b065d3..da31ec38 100644
--- a/klippy/chelper/__init__.py
+++ b/klippy/chelper/__init__.py
@@ -15,11 +15,13 @@ COMPILE_CMD = ("gcc -Wall -g -O2 -shared -fPIC"
" -flto -fwhole-program -fno-use-linker-plugin"
" -o %s %s")
SOURCE_FILES = [
- 'stepcompress.c', 'kin_cartesian.c', 'kin_delta.c',
+ 'stepcompress.c', 'kin_cartesian.c', 'kin_delta.c', 'itersolve.c',
'serialqueue.c', 'pyhelper.c'
]
DEST_LIB = "c_helper.so"
-OTHER_FILES = ['list.h', 'serialqueue.h', 'stepcompress.h', 'pyhelper.h']
+OTHER_FILES = [
+ 'list.h', 'serialqueue.h', 'stepcompress.h', 'itersolve.h', 'pyhelper.h'
+]
defs_stepcompress = """
struct stepcompress *stepcompress_alloc(uint32_t oid);
@@ -39,6 +41,19 @@ defs_stepcompress = """
int steppersync_flush(struct steppersync *ss, uint64_t move_clock);
"""
+defs_itersolve = """
+ struct move *move_alloc(void);
+ void move_fill(struct move *m, double print_time
+ , double accel_t, double cruise_t, double decel_t
+ , double start_pos_x, double start_pos_y, double start_pos_z
+ , double axes_d_x, double axes_d_y, double axes_d_z
+ , double start_v, double cruise_v, double accel);
+ int32_t itersolve_gen_steps(struct stepper_kinematics *sk, struct move *m);
+ void itersolve_set_commanded_pos(struct stepper_kinematics *sk, double pos);
+ void itersolve_set_stepcompress(struct stepper_kinematics *sk
+ , struct stepcompress *sc, double step_dist);
+"""
+
defs_kin_cartesian = """
int32_t stepcompress_push(struct stepcompress *sc, double step_clock
, int32_t sdir);
@@ -84,9 +99,13 @@ defs_pyhelper = """
double get_monotonic(void);
"""
+defs_std = """
+ void free(void*);
+"""
+
defs_all = [
- defs_stepcompress, defs_kin_cartesian, defs_kin_delta,
- defs_serialqueue, defs_pyhelper
+ defs_stepcompress, defs_itersolve, defs_kin_cartesian, defs_kin_delta,
+ defs_serialqueue, defs_pyhelper, defs_std
]
# Return the list of file modification times