Removed the "Broken croak" support, which was useful on broken

64bit Strawberry perl only. We don't use Strawberry perl anymore,
so this has been removed for clarity.

Added a PerlCallback wrapper to call a Perl subroutine from a C++ code.
This commit is contained in:
bubnikv 2018-05-03 21:45:43 +02:00
parent 81bfd8ce7e
commit 19977edae2
7 changed files with 104 additions and 65 deletions

View file

@ -84,6 +84,21 @@ inline T next_highest_power_of_2(T v)
return ++ v;
}
class PerlCallback {
public:
PerlCallback(void *sv) : m_callback(nullptr) { this->register_callback(sv); }
PerlCallback() : m_callback(nullptr) {}
~PerlCallback() { this->deregister_callback(); }
void register_callback(void *sv);
void deregister_callback();
void call();
void call(int i);
void call(int i, int j);
// void call(const std::vector<int> &ints);
private:
void *m_callback;
};
} // namespace Slic3r
#endif // slic3r_Utils_hpp_