7 #ifndef DAVID_SDK_SHAPE_FUSION_D4LIB_H
8 #define DAVID_SDK_SHAPE_FUSION_D4LIB_H
10 #include "davidSDK/IShapeFusion.h"
11 #include "davidSDK/d4lib_helpers.h"
46 virtual void ExportMesh(
int meshID,
const std::string& filename);
49 virtual int ImportMesh(
const std::string& filename);
76 virtual void GetTriangles(std::vector<int>& triangles,
int meshID);
79 virtual void GetTextureImageData(
void* data,
size_t dataSizeInBytes,
int meshID,
int submeshIndex = 0);
85 virtual void SetTexture(
const void* data,
size_t dataSizeInBytes,
int width,
int height,
enum PixelFormat pixelFormat,
int meshID,
int submeshIndex = 0);
88 virtual void GetPose(
double world_T_local[16],
int meshID);
91 virtual void SetPose(
const double world_T_local[16],
int meshID);
121 virtual int Fuse(
int resolution,
float holeSizeThresRel=1.f,
int sharpness=1);
172 int AddToList(std::shared_ptr<d4mesh> mesh);
193 typedef std::lock_guard<std::recursive_mutex>
Guard;
207 std::shared_ptr<d4mesh>&
GetMesh(
int meshID);
219 typedef std::map<int, std::shared_ptr<d4mesh> >
Scanlist;
229 #endif // DAVID_SDK_SHAPE_FUSION_D4LIB_H