Go to the documentation of this file. 1 #ifndef AIKIDO_RVIZ_RESOURCESERVER_HPP_
2 #define AIKIDO_RVIZ_RESOURCESERVER_HPP_
5 #include <unordered_map>
7 #include <dart/dynamics/dynamics.hpp>
8 #include <microhttpd.h>
43 std::unordered_map<std::string, TextureResourcePtr>
mTextures;
63 bool start(
unsigned short port = 0);
66 std::string
addMesh(
const aiScene& scene,
const std::string& scenePath);
78 std::unordered_map<aiScene const*, MeshResourcePtr>
mScenes;
79 std::unordered_map<std::string, WeakResourcePtr>
mResources;
84 struct MHD_Connection* connection,
86 const std::string& message);
91 void* cls, uint64_t pos,
char* buf,
size_t max);
97 struct MHD_Connection* connection,
101 const char* upload_data,
102 std::size_t* upload_data_size,
BinaryResource()
Definition: ResourceServer.hpp:15
std::shared_ptr< MeshResource > MeshResourcePtr
Definition: ResourceServer.hpp:69
Definition: ResourceServer.hpp:51
virtual ~ResourceServer()
std::shared_ptr< BinaryResource > ResourcePtr
Definition: ResourceServer.hpp:70
Format of serialized trajectory in YAML.
Definition: algorithm.hpp:4
static ssize_t resourceReaderCallback(void *cls, uint64_t pos, char *buf, size_t max)
Definition: ResourceServer.hpp:32
std::string addMesh(const aiScene &scene, const std::string &scenePath)
static void resourceReaderFreeCallback(void *cls)
std::unordered_map< std::string, TextureResourcePtr > mTextures
Definition: ResourceServer.hpp:43
Definition: ResourceServer.hpp:46
std::unordered_map< aiScene const *, MeshResourcePtr > mScenes
Definition: ResourceServer.hpp:78
std::size_t mSize
Definition: ResourceServer.hpp:28
std::shared_ptr< TextureResource > TextureResourcePtr
Definition: ResourceServer.hpp:37
static int queueHttpError(struct MHD_Connection *connection, unsigned int code, const std::string &message)
std::string mHost
Definition: ResourceServer.hpp:74
static int processConnection(void *cls, struct MHD_Connection *connection, const char *url, const char *method, const char *version, const char *upload_data, std::size_t *upload_data_size, void **ptr)
std::unordered_map< std::string, WeakResourcePtr > mResources
Definition: ResourceServer.hpp:79
std::string mPath
Definition: ResourceServer.hpp:27
Definition: ResourceServer.hpp:13
bool start(unsigned short port=0)
struct MHD_Daemon * mDaemon
Definition: ResourceServer.hpp:73
static bool hasBuggyAssimp()
std::string getMeshURI(const MeshResourcePtr &meshResource) const
unsigned short getPort() const
char * mData
Definition: ResourceServer.hpp:29
std::shared_ptr< BinaryResource > resource
Definition: ResourceServer.hpp:48
std::weak_ptr< BinaryResource > WeakResourcePtr
Definition: ResourceServer.hpp:71
unsigned short mPort
Definition: ResourceServer.hpp:75
virtual ~TextureResource()=default
Definition: ResourceServer.hpp:39
std::mutex mMutex
Definition: ResourceServer.hpp:77
virtual ~BinaryResource()
Definition: ResourceServer.hpp:19
virtual ~MeshResource()=default
ResourceServer & operator=(const ResourceServer &other)=delete