diff --git a/slam_service_go/main.go b/slam_service_go/main.go new file mode 100644 index 00000000..9e7da98c --- /dev/null +++ b/slam_service_go/main.go @@ -0,0 +1,18 @@ +package main + +/* + #cgo LDFLAGS: -v -L../viam-cartographer/build -lviam-cartographer -lstdc++ -lpthread + #include "../viam-cartographer/src/c-api/slam_service_c.h" +*/ +import "C" +import "fmt" + +func main() { + fmt.Println(C.TestCgoC(1)) + fmt.Println(C.TestCgoC(5)) + + fmt.Println(C.TestCgoC(100)) + fmt.Println(C.TestCgoC(101)) + fmt.Println(C.TestCgoC(199)) + fmt.Println(C.TestCgoC(998)) +} diff --git a/viam-cartographer/src/c-api/slam_service_c.cc b/viam-cartographer/src/c-api/slam_service_c.cc new file mode 100644 index 00000000..332b7f65 --- /dev/null +++ b/viam-cartographer/src/c-api/slam_service_c.cc @@ -0,0 +1,6 @@ +#include "slam_service_c.h" +#include "../slam_service/slam_service.h" + +int TestCgoC(int num) { + return static_cast(viam::SensorId::SensorType::IMU) + num; +} diff --git a/viam-cartographer/src/c-api/slam_service_c.h b/viam-cartographer/src/c-api/slam_service_c.h new file mode 100644 index 00000000..0dcba34c --- /dev/null +++ b/viam-cartographer/src/c-api/slam_service_c.h @@ -0,0 +1,14 @@ +#ifndef SLAM_SERVICE_C_H +#define SLAM_SERVICE_C_H + +#ifdef __cplusplus +extern "C" { +#endif + +int TestCgoC(int num); + +#ifdef __cplusplus +} +#endif + +#endif /*SLAM_SERVICE_C_H*/ diff --git a/viam-cartographer/src/io/draw_trajectories.h b/viam-cartographer/src/io/draw_trajectories.h index 716a110a..a885a3fc 100644 --- a/viam-cartographer/src/io/draw_trajectories.h +++ b/viam-cartographer/src/io/draw_trajectories.h @@ -2,7 +2,7 @@ #ifndef VIAM_CARTOGRAPHER_IO_DRAW_TRAJECTORIES_H_ #define VIAM_CARTOGRAPHER_IO_DRAW_TRAJECTORIES_H_ -#include "../src/io/color.h" +#include "color.h" #include "cairo/cairo.h" #include "cartographer/io/color.h" #include "cartographer/io/image.h"