/* Copyright 2017 The MathWorks, Inc. */ #ifndef MATLAB_LIBRARY_HPP #define MATLAB_LIBRARY_HPP #include "matlab_application.hpp" #include #include #include #include #include #include namespace matlab { namespace cpplib { using namespace matlab::execution; class MATLABLibrary : public matlab::execution::ExecutionInterface{ public: /** * Destructor * * @throw none */ ~MATLABLibrary(); /** * wait for all figures to be closed **/ void waitForFiguresToClose(); private: friend FutureResult> initMATLABLibraryAsync(std::shared_ptr application, const std::u16string& ctffilename); /** * Constructor * * @param handle - The internal implementation * * @throw none */ MATLABLibrary(std::shared_ptr application, uint64_t handle); std::shared_ptr appPtr_; }; } } #endif //MATLAB_LIBRARY_HPP