FlowEngine 8.011
Photogrammetry Software Development Kit
Loading...
Searching...
No Matches
FlowEngine::WorkspaceSaverInterface Class Referenceabstract

#include <WorkspaceSaverInterface.h>

Public Member Functions

virtual FLE_DLL Result addBoundingBox (const BoundingBoxInterface &boundingBox)=0
 
virtual FLE_DLL Result addCamera (const CameraInterface &camera)=0
 
virtual FLE_DLL Result addCameraConstraint (const CameraConstraintInterface &cameraConstraint)=0
 
virtual FLE_DLL Result addCamerasAndSparsePointCloud (ConstBuffer< CameraInterface * > cameras, const SparsePointCloudInterface &sparsePointCloud)=0
 
virtual FLE_DLL Result addControlPointConstraint (const ControlPointConstraintInterface &controlPoint)=0
 
virtual FLE_DLL Result addDistanceConstraint (const DistanceConstraintInterface &distanceConstraint)=0
 
virtual FLE_DLL Result addOrthophoto (const OrthophotoInterface &orthophoto, ConstStringBuffer orthophotoSaveFilePath, ConstStringBuffer dsmSaveFilePath, const ProjectedCoordinateSystemInterface *projCS=nullptr, float dpi=96.0f)=0
 
virtual FLE_DLL Result addProjectedCoordinateSystem (const ProjectedCoordinateSystemInterface &projCS)=0
 
virtual FLE_DLL Result addSparsePointCloud (const SparsePointCloudInterface &sparsePointCloud)=0
 
virtual FLE_DLL Result addStereoMesh (const StereoMeshInterface &stereoMesh)=0
 
virtual FLE_DLL Result addStereoPointCloud (const StereoPointCloudInterface &stereoPointCloud)=0
 
virtual FLE_DLL Result addStereoTexturedMesh (const StereoTexturedMeshInterface &stereTexturedMesh)=0
 
virtual FLE_DLL Result save (ConstStringBuffer filePath, bool saveAsSeparateFiles=false) const =0
 
virtual FLE_DLL Result save (DynamicBufferInterface &outBuffer) const =0
 
virtual FLE_DLL ~WorkspaceSaverInterface ()=default
 

Detailed Description

Utility class to save output objects as .3dk binary files that can be opened by 3DF Zephyr gui.

Constructor & Destructor Documentation

◆ ~WorkspaceSaverInterface()

virtual FLE_DLL FlowEngine::WorkspaceSaverInterface::~WorkspaceSaverInterface ( )
virtualdefault

Default virtual destructor.

Member Function Documentation

◆ addBoundingBox()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addBoundingBox ( const BoundingBoxInterface boundingBox)
pure virtual

Adds a bounding box object to the list of objects to be saved

Parameters
[in]boundingBoxBounding Box object to be saved
Returns
One of the following result codes:

◆ addCamera()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addCamera ( const CameraInterface camera)
pure virtual

Adds a camera object to the list of objects to be saved

Parameters
[in]cameracamera object to be saved.
Returns
One of the following result codes:
Note
It's mandatory to add the related sparse point cloud object for any added cameras, consider using WorkspaceSaverInterface::addCamerasAndSparsePointCloud instead.

◆ addCameraConstraint()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addCameraConstraint ( const CameraConstraintInterface cameraConstraint)
pure virtual

Adds a camera constraint object to the list of objects to be saved

Parameters
[in]cameraConstraintCamera Constraint object to be saved
Returns
One of the following result codes:

◆ addCamerasAndSparsePointCloud()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addCamerasAndSparsePointCloud ( ConstBuffer< CameraInterface * >  cameras,
const SparsePointCloudInterface sparsePointCloud 
)
pure virtual

Adds a vector of cameras and their related sparse point cloud.

Parameters
[in]camerasa const buffer of camera pointers.
[in]sparsePointCloudthe sparse point cloud related to the cameras.
Returns
One of the following result codes:

◆ addControlPointConstraint()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addControlPointConstraint ( const ControlPointConstraintInterface controlPoint)
pure virtual

Adds a control point constraint object to the list of objects to be saved

Parameters
[in]controlPointControl Point object to be saved
Returns
One of the following result codes:

◆ addDistanceConstraint()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addDistanceConstraint ( const DistanceConstraintInterface distanceConstraint)
pure virtual

Adds a distance constraint object to the list of objects to be saved

Parameters
[in]distanceConstraintDistance Constraint object to be saved
Returns
One of the following result codes:

◆ addOrthophoto()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addOrthophoto ( const OrthophotoInterface orthophoto,
ConstStringBuffer  orthophotoSaveFilePath,
ConstStringBuffer  dsmSaveFilePath,
const ProjectedCoordinateSystemInterface projCS = nullptr,
float  dpi = 96.0f 
)
pure virtual

Adds an orthophoto object to the list of objects to be saved

Parameters
[in]orthophotoOrthophoto object to be saved
[in]orthophotoSaveFilePathstring buffer containing a UTF-8 encoded file path where to save the orthophoto. Should have tif format to retain the georeferencing information.
[in]dsmSaveFilePathstring buffer containing a UTF-8 encoded file path where to save the DSM.
[in]projCS(optional, default none) projected coordinate system from which the orthophoto is generated.
[in]dpi(optional, default 96.0f) dots per inch of the orthophoto.
Returns
One of the following result codes:

◆ addProjectedCoordinateSystem()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addProjectedCoordinateSystem ( const ProjectedCoordinateSystemInterface projCS)
pure virtual

Adds a projected coordinate system to be saved

Parameters
[in]projCSprojected coordinate system to be saved
Returns
One of the following result codes:

◆ addSparsePointCloud()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addSparsePointCloud ( const SparsePointCloudInterface sparsePointCloud)
pure virtual

Adds a sparse point cloud object to the list of objects to be saved.

Parameters
[in]sparsePointCloudsparse point cloud object to be saved.
Returns
One of the following result codes:
Note
Please note that it's mandatory to add all the related cameras object for the saved sparse point cloud, consider using WorkspaceSaverInterface::addCamerasAndSparsePointCloud instead.

◆ addStereoMesh()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addStereoMesh ( const StereoMeshInterface stereoMesh)
pure virtual

Adds a stereo mesh object to the list of objects to be saved.

Parameters
[in]stereoMeshstereo mesh object to be saved.
Returns
One of the following result codes:

◆ addStereoPointCloud()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addStereoPointCloud ( const StereoPointCloudInterface stereoPointCloud)
pure virtual

Adds a stereo point cloud object to the list of objects to be saved.

Parameters
[in]stereoPointCloudstereo point cloud cloud object to be saved.
Returns
One of the following result codes:

◆ addStereoTexturedMesh()

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::addStereoTexturedMesh ( const StereoTexturedMeshInterface stereTexturedMesh)
pure virtual

Adds a stereo textured mesh object to the list of objects to be saved.

Parameters
[in]stereTexturedMeshstereo textured mesh object to be saved.
Returns
One of the following result codes:

◆ save() [1/2]

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::save ( ConstStringBuffer  filePath,
bool  saveAsSeparateFiles = false 
) const
pure virtual

Saves all previously added objects to a file in 3DK format.

Parameters
[in]filePathstring buffer containing a UTF-8 encoded file path where to save the workspace.
[in]saveAsSeparateFileswhen true, stereo point clouds and meshes will be saved as compressed separated 3bd files.
Note
It's advisable to use a .3dk extension so that the file can be directly open from Zephyr.
Returns
One of the following result codes:

◆ save() [2/2]

virtual FLE_DLL Result FlowEngine::WorkspaceSaverInterface::save ( DynamicBufferInterface outBuffer) const
pure virtual

Saves all previously added objects to a dynamic buffer in 3DK format.

Parameters
[in]outBuffera dynamic buffer that will be used to write the 3DK data.
Returns
One of the following result codes: