Classes | Typedefs | Enumerations | Functions
tango_3d_reconstruction_api.h File Reference

File containing Project Tango 3D Reconstruction C API. More...

#include <stdbool.h>
#include <stdint.h>
Include dependency graph for tango_3d_reconstruction_api.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Tango3DR_CameraCalibration
struct  Tango3DR_FloorplanLevel
 Struct representing a single building level. More...
struct  Tango3DR_FloorplanLevelArray
 Struct representing building levels. More...
struct  Tango3DR_GridIndexArray
struct  Tango3DR_ImageBuffer
struct  Tango3DR_Matrix3x3
 The Tango3DR_Matrix3x3 struct contains a single 3x3 matrix. More...
struct  Tango3DR_Mesh
struct  Tango3DR_PointCloud
struct  Tango3DR_Polygon
 Struct representing a single 2D polyline or polygon. More...
struct  Tango3DR_PolygonArray
struct  Tango3DR_Pose
struct  Tango3DR_SignedDistanceVoxel
 The Tango3DR_SignedDistanceVoxel struct contains a single voxel. More...

Typedefs

typedef struct
_Tango3DR_AreaDescription * 
Tango3DR_AreaDescription
typedef struct
Tango3DR_CameraCalibration 
Tango3DR_CameraCalibration
typedef uint8_t Tango3DR_Color [4]
 An array of four 8-bit integers describing a color in RGBA order.
typedef struct _Tango3DR_Config * Tango3DR_Config
typedef uint32_t Tango3DR_Face [3]
typedef struct
Tango3DR_FloorplanLevel 
Tango3DR_FloorplanLevel
 Struct representing a single building level.
typedef struct
Tango3DR_FloorplanLevelArray 
Tango3DR_FloorplanLevelArray
 Struct representing building levels.
typedef int Tango3DR_GridIndex [3]
typedef int Tango3DR_GridIndex2D [2]
 An array of two integers describing a specific location in the 2D.
typedef struct
Tango3DR_GridIndexArray 
Tango3DR_GridIndexArray
typedef struct Tango3DR_ImageBuffer Tango3DR_ImageBuffer
typedef struct Tango3DR_Matrix3x3 Tango3DR_Matrix3x3
 The Tango3DR_Matrix3x3 struct contains a single 3x3 matrix.
typedef struct Tango3DR_Mesh Tango3DR_Mesh
typedef struct Tango3DR_PointCloud Tango3DR_PointCloud
typedef struct Tango3DR_Polygon Tango3DR_Polygon
 Struct representing a single 2D polyline or polygon.
typedef struct
Tango3DR_PolygonArray 
Tango3DR_PolygonArray
typedef struct Tango3DR_Pose Tango3DR_Pose
typedef void(* Tango3DR_ProgressCallback )(int progress, void *callback_param)
 A callback function for dataset processing to report progress.
typedef struct
_Tango3DR_ReconstructionContext * 
Tango3DR_ReconstructionContext
 This provides a handle to a Tango 3D reconstruction context.
typedef struct
Tango3DR_SignedDistanceVoxel 
Tango3DR_SignedDistanceVoxel
 The Tango3DR_SignedDistanceVoxel struct contains a single voxel.
typedef float Tango3DR_TexCoord [2]
 An array of two floats describing a texture coordinate in UV order.
typedef struct
_Tango3DR_TexturingContext * 
Tango3DR_TexturingContext
 This provides a handle to a Tango 3D texturing context.
typedef struct
_Tango3DR_Trajectory * 
Tango3DR_Trajectory
typedef float Tango3DR_Vector2 [2]
 An array of two floats, commonly a 2D position.
typedef float Tango3DR_Vector3 [3]
 An array of three floats, commonly a 3D position or normal.
typedef float Tango3DR_Vector4 [4]

Enumerations

enum  Tango3DR_CameraId { TANGO_3DR_CAMERA_COLOR = 0, TANGO_3DR_CAMERA_IR = 1, TANGO_3DR_CAMERA_FISHEYE = 2, TANGO_3DR_CAMERA_DEPTH = 3 }
enum  Tango3DR_ConfigType { TANGO_3DR_CONFIG_RECONSTRUCTION = 0, TANGO_3DR_CONFIG_TEXTURING = 1 }
 Tango 3DR configuration enumerations. More...
enum  Tango3DR_FloorplanLayer { TANGO_3DR_LAYER_SPACE = 0, TANGO_3DR_LAYER_WALLS, TANGO_3DR_LAYER_FURNITURE, TANGO_3DR_LAYER_OBSTACLES }
 Enumeration of floor plan layers. More...
enum  Tango3DR_ImageFormatType { TANGO_3DR_HAL_PIXEL_FORMAT_RGBA_8888 = 1, TANGO_3DR_HAL_PIXEL_FORMAT_RGB_888 = 3, TANGO_3DR_HAL_PIXEL_FORMAT_YCrCb_420_SP = 0x11, TANGO_3DR_HAL_PIXEL_FORMAT_DEPTH16 = 0x44363159 }
enum  Tango3DR_Status { TANGO_3DR_ERROR = -3, TANGO_3DR_INSUFFICIENT_SPACE = -2, TANGO_3DR_INVALID = -1, TANGO_3DR_SUCCESS = 0 }
 3D Reconstruction Error types. Errors less than 0 should be dealt with by the program. Success is denoted by TANGO_3DR_SUCCESS = 0. More...
enum  Tango3DR_TangoCalibrationType {
  TANGO_3DR_CALIBRATION_UNKNOWN = 0, TANGO_3DR_CALIBRATION_EQUIDISTANT = 1, TANGO_3DR_CALIBRATION_POLYNOMIAL_2_PARAMETERS = 2, TANGO_3DR_CALIBRATION_POLYNOMIAL_3_PARAMETERS = 3,
  TANGO_3DR_CALIBRATION_POLYNOMIAL_5_PARAMETERS = 4
}
 Tango 3DR Camera Calibration types. More...
enum  Tango3DR_TexturingBackend { TANGO_3DR_CPU_TEXTURING = 0, TANGO_3DR_GL_TEXTURING = 1 }
 Enumerates the available texturing backends. More...
enum  Tango3DR_UpdateMethod { TANGO_3DR_TRAVERSAL_UPDATE = 0, TANGO_3DR_PROJECTIVE_UPDATE = 1 }
 3D Reconstruction update algorithm types. Determines the algorithm used to update the reconstruction during the Tango3DR_update call. The default value is TANGO_3DR_TRAVERSAL_UPDATE. More...

Functions

Tango3DR_Status Tango3DR_AreaDescription_createFromDataset (const char *dataset_path, const char *loop_closure_database_path, Tango3DR_AreaDescription *area_description, Tango3DR_ProgressCallback progress_callback, void *callback_param)
Tango3DR_Status Tango3DR_AreaDescription_destroy (Tango3DR_AreaDescription area_description)
Tango3DR_Status Tango3DR_AreaDescription_loadFromAdf (const char *const path, Tango3DR_AreaDescription *area_description)
Tango3DR_Status Tango3DR_AreaDescription_saveToAdf (Tango3DR_AreaDescription area_description, const char *const path)
Tango3DR_Status Tango3DR_CameraCalibration_initEmpty (Tango3DR_CameraCalibration *calibration)
Tango3DR_Status Tango3DR_CameraCalibration_loadFromDataset (Tango3DR_CameraId camera_id, const char *const dataset_path, Tango3DR_CameraCalibration *calibration)
Tango3DR_Status Tango3DR_CameraCalibration_rescale (const int new_width, const int new_height, Tango3DR_CameraCalibration *calibration_to_rescale)
Tango3DR_Status Tango3DR_clear (Tango3DR_ReconstructionContext context)
Tango3DR_Config Tango3DR_Config_create (Tango3DR_ConfigType config_type)
Tango3DR_Status Tango3DR_Config_destroy (Tango3DR_Config config)
Tango3DR_Status Tango3DR_Config_getBool (const Tango3DR_Config config, const char *key, bool *value)
Tango3DR_Status Tango3DR_Config_getDouble (const Tango3DR_Config config, const char *key, double *value)
Tango3DR_Status Tango3DR_Config_getInt32 (const Tango3DR_Config config, const char *key, int32_t *value)
Tango3DR_Status Tango3DR_Config_getInt64 (const Tango3DR_Config config, const char *key, int64_t *value)
Tango3DR_Status Tango3DR_Config_getMatrix3x3 (Tango3DR_Config config, const char *key, Tango3DR_Matrix3x3 *value)
Tango3DR_Status Tango3DR_Config_setBool (Tango3DR_Config config, const char *key, bool value)
Tango3DR_Status Tango3DR_Config_setDouble (Tango3DR_Config config, const char *key, double value)
Tango3DR_Status Tango3DR_Config_setInt32 (Tango3DR_Config config, const char *key, int32_t value)
Tango3DR_Status Tango3DR_Config_setInt64 (Tango3DR_Config config, const char *key, int64_t value)
Tango3DR_Status Tango3DR_Config_setMatrix3x3 (Tango3DR_Config config, const char *key, const Tango3DR_Matrix3x3 *value)
void Tango3DR_destroyLevels (Tango3DR_FloorplanLevelArray *levels)
Tango3DR_Status Tango3DR_extractFloorplanImageSegment (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndex2D grid_index, Tango3DR_FloorplanLayer layer, Tango3DR_ImageBuffer *image)
Tango3DR_Status Tango3DR_extractFloorplanSegment (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndex2D grid_index, Tango3DR_PolygonArray *graphics)
Tango3DR_Status Tango3DR_extractFullFloorplan (const Tango3DR_ReconstructionContext context, Tango3DR_PolygonArray *graphics)
Tango3DR_Status Tango3DR_extractFullFloorplanImage (const Tango3DR_ReconstructionContext context, Tango3DR_FloorplanLayer layer, Tango3DR_Vector2 *origin, Tango3DR_ImageBuffer *image)
Tango3DR_Status Tango3DR_extractFullMesh (const Tango3DR_ReconstructionContext context, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_extractLevels (const Tango3DR_ReconstructionContext context, Tango3DR_FloorplanLevelArray *levels)
Tango3DR_Status Tango3DR_extractMesh (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndexArray *grid_index_array, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_extractMeshSegment (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndex grid_index, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_extractPreallocatedFullMesh (const Tango3DR_ReconstructionContext context, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_extractPreallocatedMesh (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndexArray *grid_index_array, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_extractPreallocatedMeshSegment (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndex grid_index, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_extractPreallocatedVoxelGridSegment (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndex grid_index, const int num_sdf_voxels, Tango3DR_SignedDistanceVoxel *sdf_voxels)
Tango3DR_Status Tango3DR_extractRawDataFromDataset (const char *dataset_path, const char *output_path, Tango3DR_ProgressCallback progress_callback, void *callback_param)
Tango3DR_Status Tango3DR_getActiveIndices (const Tango3DR_ReconstructionContext context, Tango3DR_GridIndexArray *active_indices)
Tango3DR_Status Tango3DR_getGridSegmentBoundingBox (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndex grid_index, Tango3DR_Vector3 *corner_min, Tango3DR_Vector3 *corner_max)
Tango3DR_Status Tango3DR_getMeshSegmentBoundingBox (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndex grid_index, Tango3DR_Vector3 *corner_min, Tango3DR_Vector3 *corner_max)
Tango3DR_Status Tango3DR_getPoseAtTime (const Tango3DR_Trajectory trajectory, const double timestamp, Tango3DR_Pose *tango_pose)
Tango3DR_Status Tango3DR_getTexturedMesh (const Tango3DR_TexturingContext context, Tango3DR_Mesh *tango_mesh_out)
Tango3DR_Status Tango3DR_GridIndexArray_destroy (Tango3DR_GridIndexArray *grid_index_array)
Tango3DR_Status Tango3DR_GridIndexArray_init (const uint32_t num_indices, Tango3DR_GridIndexArray *grid_index_array)
Tango3DR_Status Tango3DR_GridIndexArray_initEmpty (Tango3DR_GridIndexArray *grid_index_array)
Tango3DR_Status Tango3DR_ImageBuffer_destroy (Tango3DR_ImageBuffer *image)
Tango3DR_Status Tango3DR_ImageBuffer_init (uint32_t width, uint32_t height, Tango3DR_ImageFormatType format, Tango3DR_ImageBuffer *image)
Tango3DR_Status Tango3DR_ImageBuffer_initEmpty (Tango3DR_ImageBuffer *image)
Tango3DR_Status Tango3DR_ImageBuffer_loadFromPng (const char *const path, Tango3DR_ImageBuffer *image)
Tango3DR_Status Tango3DR_ImageBuffer_loadFromPnm (const char *const path, Tango3DR_ImageBuffer *image)
Tango3DR_Status Tango3DR_ImageBuffer_saveToPng (const Tango3DR_ImageBuffer *image, const char *const path)
Tango3DR_Status Tango3DR_ImageBuffer_saveToPnm (const Tango3DR_ImageBuffer *image, const char *const path)
Tango3DR_Status Tango3DR_Mesh_destroy (Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_Mesh_init (const uint32_t vertices_capacity, const uint32_t faces_capacity, const bool allocate_normals, const bool allocate_colors, const bool allocate_tex_coords, const bool allocate_tex_ids, const uint32_t textures_capacity, const uint32_t textures_width, const uint32_t textures_height, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_Mesh_initEmpty (Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_Mesh_loadFromObj (const char *const path, Tango3DR_Mesh *mesh)
Tango3DR_Status Tango3DR_Mesh_saveToObj (const Tango3DR_Mesh *mesh, const char *const path)
Tango3DR_Status Tango3DR_PointCloud_destroy (Tango3DR_PointCloud *cloud)
Tango3DR_Status Tango3DR_PointCloud_init (const uint32_t num_points, Tango3DR_PointCloud *cloud)
Tango3DR_Status Tango3DR_PointCloud_initEmpty (Tango3DR_PointCloud *cloud)
Tango3DR_Status Tango3DR_PointCloud_loadFromPly (const char *const path, Tango3DR_PointCloud *cloud)
Tango3DR_Status Tango3DR_PointCloud_saveToPly (const Tango3DR_PointCloud *cloud, const char *const path)
Tango3DR_Status Tango3DR_PointCloudToRectifiedDepthImage (const Tango3DR_PointCloud *cloud, const Tango3DR_CameraCalibration *depth_camera_calibration, Tango3DR_ImageBuffer *image)
 Converts a point cloud into a depth image.
Tango3DR_ReconstructionContext Tango3DR_ReconstructionContext_create (const Tango3DR_Config context_config)
Tango3DR_Status Tango3DR_ReconstructionContext_decimatePlanes (const Tango3DR_ReconstructionContext context, const double min_plane_area, Tango3DR_Mesh *tango_mesh)
Tango3DR_Status Tango3DR_ReconstructionContext_destroy (Tango3DR_ReconstructionContext context)
Tango3DR_Status Tango3DR_ReconstructionContext_setColorCalibration (const Tango3DR_ReconstructionContext context, const Tango3DR_CameraCalibration *calibration)
Tango3DR_Status Tango3DR_ReconstructionContext_setDepthCalibration (const Tango3DR_ReconstructionContext context, const Tango3DR_CameraCalibration *calibration)
Tango3DR_Status Tango3DR_resetLevelsEstimator (const Tango3DR_ReconstructionContext context)
Tango3DR_Status Tango3DR_selectLevel (const Tango3DR_ReconstructionContext context, const Tango3DR_FloorplanLevel *level)
Tango3DR_Status Tango3DR_textureMeshFromDataset (const Tango3DR_Config texture_config, const char *dataset_path, const Tango3DR_Trajectory trajectory, const Tango3DR_Mesh *tango_mesh_in, Tango3DR_Mesh *tango_mesh_out, Tango3DR_ProgressCallback progress_callback, void *callback_param)
Tango3DR_TexturingContext Tango3DR_TexturingContext_create (const Tango3DR_Config texture_config, const Tango3DR_Mesh *tango_mesh)
Tango3DR_Status Tango3DR_TexturingContext_destroy (Tango3DR_TexturingContext context)
Tango3DR_Status Tango3DR_TexturingContext_setColorCalibration (const Tango3DR_TexturingContext context, const Tango3DR_CameraCalibration *calibration)
Tango3DR_Status Tango3DR_Trajectory_createFromAreaDescription (const Tango3DR_AreaDescription area_description, Tango3DR_Trajectory *trajectory)
Tango3DR_Status Tango3DR_Trajectory_destroy (Tango3DR_Trajectory trajectory)
Tango3DR_Status Tango3DR_Trajectory_getEarliestTime (const Tango3DR_Trajectory trajectory, double *timestamp)
Tango3DR_Status Tango3DR_Trajectory_getLatestTime (const Tango3DR_Trajectory trajectory, double *timestamp)
Tango3DR_Status Tango3DR_updateFloorplan (const Tango3DR_ReconstructionContext context, const Tango3DR_GridIndexArray *grid_index_array)
Tango3DR_Status Tango3DR_updateFromDepthImage (Tango3DR_ReconstructionContext context, const Tango3DR_ImageBuffer *depth_image, const Tango3DR_Pose *depth_image_pose, const Tango3DR_ImageBuffer *color_image, const Tango3DR_Pose *color_image_pose, Tango3DR_GridIndexArray *updated_indices)
Tango3DR_Status Tango3DR_updateFromPointCloud (Tango3DR_ReconstructionContext context, const Tango3DR_PointCloud *cloud, const Tango3DR_Pose *cloud_pose, const Tango3DR_ImageBuffer *color_image, const Tango3DR_Pose *color_image_pose, Tango3DR_GridIndexArray *updated_indices)
Tango3DR_Status Tango3DR_updateFromTrajectoryAndDataset (const Tango3DR_ReconstructionContext context, const char *dataset_path, const Tango3DR_Trajectory trajectory, Tango3DR_ProgressCallback progress_callback, void *callback_param)
Tango3DR_Status Tango3DR_updateFullFloorplan (const Tango3DR_ReconstructionContext context)
Tango3DR_Status Tango3DR_updateTexture (Tango3DR_TexturingContext context, const Tango3DR_ImageBuffer *image, const Tango3DR_Pose *image_pose)
Tango3DR_Status Tango3DR_updateTextureGl (Tango3DR_TexturingContext context, const int texture_target, const int image_texture_id, const Tango3DR_Pose *image_pose)
void Tango3DR_VectorGraphics_destroy (Tango3DR_PolygonArray *graphics)

Detailed Description

File containing Project Tango 3D Reconstruction C API.

Definition in file tango_3d_reconstruction_api.h.



tango_3d_reconstruction
Author(s):
autogenerated on Thu Jun 6 2019 19:49:50