54 lines
1.5 KiB
C
54 lines
1.5 KiB
C
|
#ifdef __cplusplus
|
||
|
#include <openMVG/image/image_io.hpp>
|
||
|
#include <openMVG/image/image_concat.hpp>
|
||
|
#include <openMVG/vector_graphics/svgDrawer.hpp>
|
||
|
#include <openMVG/features/feature.hpp>
|
||
|
#include <forward_list>
|
||
|
#include <openMVG/sfm/sfm.hpp>
|
||
|
#include <openMVG/features/mser/mser.hpp>
|
||
|
#endif // __cplusplus
|
||
|
|
||
|
#include <stdio.h>
|
||
|
#include <stdlib.h>
|
||
|
#include <stdint.h>
|
||
|
#include <png.h>
|
||
|
|
||
|
extern "C" auto png_sig_cm = png_sig_cmp;
|
||
|
|
||
|
typedef struct _Frame
|
||
|
{
|
||
|
FILE *stream;
|
||
|
int w;
|
||
|
int h;
|
||
|
int depth;
|
||
|
} Frame;
|
||
|
|
||
|
const Frame *new_frame_from_handle(FILE *, int, int, int);
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" __attribute__((visibility("default"))) __attribute((used))
|
||
|
#else
|
||
|
__attribute__((visibility("default"))) __attribute((used))
|
||
|
#endif // __cplusplus
|
||
|
const Frame *
|
||
|
new_frame_from_data(const uint8_t *, const size_t, int, int, int);
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
typedef openMVG::image::Image<openMVG::image::RGBColor> RgbImage;
|
||
|
typedef std::vector<openMVG::features::AffinePointFeature> FeatureVector;
|
||
|
typedef openMVG::image::Image<unsigned char> UImage;
|
||
|
typedef std::vector<openMVG::features::MSER::MSERRegion> RegionVector;
|
||
|
typedef openMVG::sfm::SfM_Data Sfm_Data;
|
||
|
|
||
|
extern "C" namespace Archimedes
|
||
|
{
|
||
|
int get_image_data(const Frame *, unsigned char *data);
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" __attribute__((visibility("default"))) __attribute((used))
|
||
|
#else
|
||
|
__attribute__((visibility("default"))) __attribute((used))
|
||
|
#endif // __cplusplus
|
||
|
int
|
||
|
archimedes_get_image_data(const Frame *, unsigned char *);
|