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. More...
 
typedef struct _Tango3DR_Config * Tango3DR_Config
 
typedef uint32_t Tango3DR_Face[3]
 
typedef struct Tango3DR_FloorplanLevel Tango3DR_FloorplanLevel
 Struct representing a single building level. More...
 
typedef struct Tango3DR_FloorplanLevelArray Tango3DR_FloorplanLevelArray
 Struct representing building levels. More...
 
typedef int Tango3DR_GridIndex[3]
 
typedef int Tango3DR_GridIndex2D[2]
 An array of two integers describing a specific location in the 2D. More...
 
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. More...
 
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. More...
 
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. More...
 
typedef struct _Tango3DR_ReconstructionContext * Tango3DR_ReconstructionContext
 This provides a handle to a Tango 3D reconstruction context. More...
 
typedef struct Tango3DR_SignedDistanceVoxel Tango3DR_SignedDistanceVoxel
 The Tango3DR_SignedDistanceVoxel struct contains a single voxel. More...
 
typedef float Tango3DR_TexCoord[2]
 An array of two floats describing a texture coordinate in UV order. More...
 
typedef struct _Tango3DR_TexturingContext * Tango3DR_TexturingContext
 This provides a handle to a Tango 3D texturing context. More...
 
typedef struct _Tango3DR_Trajectory * Tango3DR_Trajectory
 
typedef float Tango3DR_Vector2[2]
 An array of two floats, commonly a 2D position. More...
 
typedef float Tango3DR_Vector3[3]
 An array of three floats, commonly a 3D position or normal. More...
 
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. More...
 
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 Mon Jun 10 2019 15:37:45