mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-11-02 20:51:23 -07:00 
			
		
		
		
	
		
			
				
	
	
		
			54 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
%module{Slic3r::XS};
 | 
						|
 | 
						|
%{
 | 
						|
#include <xsinit.h>
 | 
						|
#include "libslic3r/GCode.hpp"
 | 
						|
#include "libslic3r/GCode/CoolingBuffer.hpp"
 | 
						|
%}
 | 
						|
 | 
						|
%name{Slic3r::GCode::CoolingBuffer} class CoolingBuffer {
 | 
						|
    CoolingBuffer(GCode* gcode)
 | 
						|
        %code{% RETVAL = new CoolingBuffer(*gcode); %};
 | 
						|
    ~CoolingBuffer();
 | 
						|
    Ref<GCode> gcodegen();
 | 
						|
    std::string process_layer(std::string gcode, size_t layer_id)
 | 
						|
        %code{% RETVAL = THIS->process_layer(std::move(gcode), layer_id, true); %};
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
%name{Slic3r::GCode} class GCode {
 | 
						|
    GCode();
 | 
						|
    ~GCode();
 | 
						|
    void do_export(Print *print, const char *path)
 | 
						|
        %code%{
 | 
						|
            try {
 | 
						|
                THIS->do_export(print, path);
 | 
						|
            } catch (std::exception& e) {
 | 
						|
                croak("%s\n", e.what());
 | 
						|
            }
 | 
						|
        %};
 | 
						|
 | 
						|
    Ref<Vec2d> origin()
 | 
						|
        %code{% RETVAL = &(THIS->origin()); %};
 | 
						|
    void set_origin(Vec2d* pointf)
 | 
						|
        %code{% THIS->set_origin(*pointf); %};
 | 
						|
    Ref<Point> last_pos()
 | 
						|
        %code{% RETVAL = &(THIS->last_pos()); %};
 | 
						|
 | 
						|
    unsigned int    layer_count() const;
 | 
						|
    void            set_layer_count(unsigned int value);
 | 
						|
    void            set_extruders(std::vector<unsigned int> extruders) 
 | 
						|
        %code{% THIS->writer().set_extruders(extruders); THIS->writer().set_extruder(0); %};
 | 
						|
 | 
						|
    void apply_print_config(StaticPrintConfig* print_config)
 | 
						|
        %code{%
 | 
						|
            if (const PrintConfig* config = dynamic_cast<PrintConfig*>(print_config)) {
 | 
						|
                THIS->apply_print_config(*config);
 | 
						|
            } else {
 | 
						|
                CONFESS("A PrintConfig object was not supplied to apply_print_config()");
 | 
						|
            }
 | 
						|
        %};
 | 
						|
 | 
						|
    Ref<StaticPrintConfig> config()
 | 
						|
        %code{% RETVAL = const_cast<StaticPrintConfig*>(static_cast<const StaticPrintConfig*>(static_cast<const PrintObjectConfig*>(&THIS->config()))); %};
 | 
						|
};
 |