26 #ifndef CASADI_RESOURCE_INTERNAL_HPP
27 #define CASADI_RESOURCE_INTERNAL_HPP
29 #include "resource.hpp"
30 #include "shared_object.hpp"
31 #include "serializing_stream.hpp"
52 virtual const std::string&
path()
const = 0;
59 void change_option(
const std::string& option_name,
74 const std::string&
path()
const override {
return path_;}
79 std::string
class_name()
const override {
return "DirResource";}
82 void disp(std::ostream& stream,
bool more)
const override;
110 const std::string&
path()
const override {
return dir_;}
117 std::string
class_name()
const override {
return "ZipResource";}
120 void disp(std::ostream& stream,
bool more)
const override;
130 std::string lock_file_;
146 const std::string&
path()
const override {
return dir_;}
152 std::string
class_name()
const override {
return "ZipMemResource";}
155 void disp(std::ostream& stream,
bool more)
const override;
161 std::string lock_file_;
163 mutable std::stringstream blob_;
164 #ifdef CASADI_WITH_THREADSAFE_SYMBOLICS
165 mutable std::mutex mutex_blob_;
Helper class for Serialization.
std::string class_name() const override
Get type name.
const std::string & path() const override
Get path for a consumer.
Generic data type, can hold different types such as bool, casadi_int, std::string etc.
RAII class base for reading from resources.
virtual const std::string & path() const =0
Get path for a consumer.
std::string serialize_mode_
Helper class for Serialization.
RAII class for reading from a zip held in memory.
std::string class_name() const override
Get type name.
const std::string & path() const override
Get path for a consumer.
RAII class for reading from a zip file.
const std::string & path() const override
Get path for a consumer.
std::string class_name() const override
Get type name.
std::vector< casadi_int > path(const std::vector< casadi_int > &map, casadi_int i_start)