FlowEngine  4.301
Photogrammetry Software Development Kit
FlowEngine Namespace Reference

Classes

class  BoundingBoxInterface
 An oriented bounding box Its parameters can be set manually or from a sparse point cloud. More...
 
struct  Buffer
 Holds a (mutable) non_owning pointer and a size Used to marshal memory buffers as arguments in a safely manner. More...
 
struct  Buffer< char >
 Specialization for a Buffer of characters. More...
 
struct  Buffer< T *>
 Buffer specialization for FlowEngine object classes. More...
 
class  CameraCalibrationInterface
 Stores a camera calibration. More...
 
class  CameraInterface
 
class  CamerasLoaderInterface
 Utility class to load and setup cameras from a specific folder. This class will optionally setup also cameras parameters from XMP and BIM masks files when available. More...
 
struct  Color
 a packed RGB color More...
 
struct  ConstBuffer
 Holds a (non mutable) non_owning pointer and a count Used to marshal memory buffers as arguments in a safely manner. More...
 
struct  ConstBuffer< char >
 Specialization for a const buffer characters. More...
 
class  ControlPointConstraintInterface
 Stores a ground control point constraint with image projections and 3D constraint. More...
 
struct  DateTime
 Represents a moment in time. More...
 
class  FlowEngineInterface
 FlowEngine main computation interface. More...
 
class  LicenseManager
 Handles licensing. More...
 
class  LogListenerInterface
 Pure virtual Log Listener interface. More...
 
struct  LogListenerOStream
 Simple log listener class. More...
 
struct  Normal
 a normal More...
 
class  OrthophotoInterface
 Hold an Orthophoto object Use FlowEngine to generate an orthophoto from a point cloud or a mesh. You can save the orthophoto to geotiff. More...
 
struct  Point2
 a 2 dimensional point More...
 
struct  Point3
 a three dimensional point More...
 
struct  PointColor32
 a floating-point color More...
 
struct  ProgressBarEmpty
 Simple/Empty progress bar class. More...
 
class  ProgressBarInterface
 Pure virtual Progress Bar interface. More...
 
struct  Quaternion
 a Quaternion Holds an axis and an angle More...
 
class  SettingsInterface
 Store the processing settings. On construction, the object is filled with the default settings. More...
 
class  SparsePointCloudInterface
 Store a PointCloud object. Nothing needed in input. Everything will be filled by samantha. More...
 
class  StereoMeshInterface
 Store a simple stereo mesh object for the FlowEngine interface. Nothing needed in input. Everything will be filled by FlowEngine during MVS Computation. More...
 
class  StereoPointCloudInterface
 Store a simple Dense Point Cloud object for the FlowEngine interface. Nothing needed in input. Everything will be filled by FlowEngine during MVS Computation. More...
 
class  StereoTexturedMeshInterface
 Store a simple textured mesh object for the FlowEngine interface. Nothing needed in input. Everything will be filled by FlowEngine during MVS Computation. More...
 
struct  TexCoords
 a texture coordinate Holds a couple of floats representing texture coordinates More...
 
struct  Triangle
 a triangle. Holds 3 indexes to points. Triangles are specified in counter-clockwise order More...
 
class  WorkspaceLoaderInterface
 Utility class to load objects from ".3dk" binary files that can be saved using the WorkspaceSaverInterface. More...
 
class  WorkspaceSaverInterface
 Utility class to save output objects as .3dk binary files that can be opened by 3DF Zephyr gui. More...
 

Typedefs

using Index = std::ptrdiff_t
 Index type. More...
 
using Size = std::size_t
 Size type. More...
 
using ColorComponent = std::uint8_t
 Color component (8 bits) type. More...
 
using ColorComponent32 = float
 Color component (32 bits) type. More...
 
using StringBuffer = Buffer< char >
 Buffer of chars to store strings. More...
 
using ConstStringBuffer = ConstBuffer< char >
 ConstBuffer of chars to store strings. More...
 
using UniqueFlowEnginePtr = Detail::UniquePtr< FlowEngineInterface >
 Automatically manages the lifetime of a FlowEngine object. More...
 
using UniqueCameraPtr = Detail::UniquePtr< CameraInterface >
 Automatically manages the lifetime of a Camera object. More...
 
using UniqueCameraCalibrationPtr = Detail::UniquePtr< CameraCalibrationInterface >
 Automatically manages the lifetime of a Camera calibration object. More...
 
using UniqueCamerasLoaderPtr = Detail::UniquePtr< CamerasLoaderInterface >
 Automatically manages the lifetime of a CamerasLoader object. More...
 
using UniqueSparsePointCloudPtr = Detail::UniquePtr< SparsePointCloudInterface >
 Automatically manages the lifetime of a Sparse Point Cloud object. More...
 
using UniqueStereoPointCloudPtr = Detail::UniquePtr< StereoPointCloudInterface >
 Automatically manages the lifetime of a Stereo Point cloud object. More...
 
using UniqueStereoMeshPtr = Detail::UniquePtr< StereoMeshInterface >
 Automatically manages the lifetime of a Stereo mesh object. More...
 
using UniqueStereoTexturedMeshPtr = Detail::UniquePtr< StereoTexturedMeshInterface >
 Automatically manages the lifetime of a Stereo textured mesh object. More...
 
using UniqueSettingsPtr = Detail::UniquePtr< SettingsInterface >
 Automatically manages the lifetime of a Settings object. More...
 
using UniqueBoundingBoxPtr = Detail::UniquePtr< BoundingBoxInterface >
 Automatically manages the lifetime of a Bounding box object. More...
 
using UniqueWorkspaceSaverPtr = Detail::UniquePtr< WorkspaceSaverInterface >
 Automatically manages the lifetime of a Workspace Saver object. More...
 
using UniqueWorkspaceLoaderPtr = Detail::UniquePtr< WorkspaceLoaderInterface >
 Automatically manages the lifetime of a Workspace Loader object. More...
 
using UniqueControlPointConstraintPtr = Detail::UniquePtr< ControlPointConstraintInterface >
 Automatically manages the lifetime of a Control Point Constraint object. More...
 
using UniqueOrthophotoPtr = Detail::UniquePtr< OrthophotoInterface >
 Automatically manages the lifetime of a Orthophoto object. More...
 

Enumerations

enum  Result : std::size_t {
  Result::Success = 0, Result::FeatureNotAvailable, Result::GenericError, Result::InvalidArgument,
  Result::FileNotFound, Result::BufferTooSmall, Result::GenericIOError, Result::ProcessNotRunning,
  Result::NewVersionAvailable, Result::OutOfMemoryError, Result::DiskWriteError
}
 Enumerates possible results generate by Flow Engine. More...
 
enum  LicenseResult : std::uint64_t {
  LicenseResult::Success = 0x00000000L, LicenseResult::GenericError = 0x00000001L, LicenseResult::InvalidProductKey = 0x00000002L, LicenseResult::ProductNotActivated = 0x00000003L,
  LicenseResult::ConnectionFailed = 0x00000004L, LicenseResult::LicenseInUse = 0x00000005L, LicenseResult::LicenseRevoked = 0x00000006L, LicenseResult::LicenseExpired = 0x0000000DL,
  LicenseResult::Permissions = 0x0000000FL, LicenseResult::NoMoreDeactivations = 0x00000018L, LicenseResult::AlreadyActivated = 0x0000001AL, LicenseResult::InvalidArgument = 0x00001000L,
  LicenseResult::InternalError = 0x00001001L, LicenseResult::Unsupported = 0x00001002L
}
 
enum  LogType { LogType::Normal, LogType::Warning, LogType::Error, LogType::Info }
 Enumerates the possible types of a log. More...
 

Functions

BoundingBoxInterfaceCreateBoundingBox ()
 
void DestroyBoundingBox (BoundingBoxInterface *boundingBox)
 
CameraCalibrationInterfaceCreateCameraCalibration ()
 
void DestroyCameraCalibration (CameraCalibrationInterface *cameraCalibration)
 
CameraInterfaceCreateCamera ()
 
void DestroyCamera (CameraInterface *camera)
 
CamerasLoaderInterfaceCreateCamerasLoader ()
 
void DestroyCamerasLoader (CamerasLoaderInterface *CamerasLoader)
 
ControlPointConstraintInterfaceCreateControlPointConstraint ()
 
void DestroyControlPointConstraint (ControlPointConstraintInterface *controlPoint)
 
FLE_DLL FlowEngineInterfaceCreateFlowEngine ()
 
FLE_DLL void DestroyFlowEngineObject (FlowEngineInterface *flowEngine)
 
OrthophotoInterfaceCreateOrthophoto ()
 
void DestroyOrthophoto (OrthophotoInterface *orthophoto)
 
SettingsInterfaceCreateSettings ()
 
void DestroySettings (SettingsInterface *settings)
 
SparsePointCloudInterfaceCreateSparsePointCloud ()
 
void DestroySparsePointCloud (SparsePointCloudInterface *boundingBox)
 
StereoMeshInterfaceCreateStereoMesh ()
 
void DestroyStereoMesh (StereoMeshInterface *stereoMesh)
 
StereoPointCloudInterfaceCreateStereoPointCloud ()
 
void DestroyStereoPointCloud (StereoPointCloudInterface *stereoPointCloud)
 
StereoTexturedMeshInterfaceCreateStereoTexturedMesh ()
 
void DestroyStereoTexturedMesh (StereoTexturedMeshInterface *stereoTexturedMesh)
 
void CheckResult (Result result, LogListenerInterface &logListener)
 
WorkspaceLoaderInterfaceCreateWorkspaceLoader ()
 
void DestroyWorkspaceLoader (WorkspaceLoaderInterface *workspaceLoader)
 
WorkspaceSaverInterfaceCreateWorkspaceSaver ()
 
void DestroyWorkspaceSaver (WorkspaceSaverInterface *workspaceSaver)
 

Typedef Documentation

◆ ColorComponent

using FlowEngine::ColorComponent = typedef std::uint8_t

Color component (8 bits) type.

◆ ColorComponent32

using FlowEngine::ColorComponent32 = typedef float

Color component (32 bits) type.

◆ ConstStringBuffer

using FlowEngine::ConstStringBuffer = typedef ConstBuffer< char >

ConstBuffer of chars to store strings.

◆ Index

using FlowEngine::Index = typedef std::ptrdiff_t

Index type.

◆ Size

using FlowEngine::Size = typedef std::size_t

Size type.

◆ StringBuffer

using FlowEngine::StringBuffer = typedef Buffer< char >

Buffer of chars to store strings.

◆ UniqueBoundingBoxPtr

using FlowEngine::UniqueBoundingBoxPtr = typedef Detail::UniquePtr< BoundingBoxInterface >

Automatically manages the lifetime of a Bounding box object.

◆ UniqueCameraCalibrationPtr

Automatically manages the lifetime of a Camera calibration object.

◆ UniqueCameraPtr

using FlowEngine::UniqueCameraPtr = typedef Detail::UniquePtr< CameraInterface >

Automatically manages the lifetime of a Camera object.

◆ UniqueCamerasLoaderPtr

using FlowEngine::UniqueCamerasLoaderPtr = typedef Detail::UniquePtr< CamerasLoaderInterface >

Automatically manages the lifetime of a CamerasLoader object.

◆ UniqueControlPointConstraintPtr

Automatically manages the lifetime of a Control Point Constraint object.

◆ UniqueFlowEnginePtr

using FlowEngine::UniqueFlowEnginePtr = typedef Detail::UniquePtr< FlowEngineInterface >

Automatically manages the lifetime of a FlowEngine object.

◆ UniqueOrthophotoPtr

using FlowEngine::UniqueOrthophotoPtr = typedef Detail::UniquePtr< OrthophotoInterface >

Automatically manages the lifetime of a Orthophoto object.

◆ UniqueSettingsPtr

using FlowEngine::UniqueSettingsPtr = typedef Detail::UniquePtr< SettingsInterface >

Automatically manages the lifetime of a Settings object.

◆ UniqueSparsePointCloudPtr

Automatically manages the lifetime of a Sparse Point Cloud object.

◆ UniqueStereoMeshPtr

using FlowEngine::UniqueStereoMeshPtr = typedef Detail::UniquePtr< StereoMeshInterface >

Automatically manages the lifetime of a Stereo mesh object.

◆ UniqueStereoPointCloudPtr

Automatically manages the lifetime of a Stereo Point cloud object.

◆ UniqueStereoTexturedMeshPtr

Automatically manages the lifetime of a Stereo textured mesh object.

◆ UniqueWorkspaceLoaderPtr

using FlowEngine::UniqueWorkspaceLoaderPtr = typedef Detail::UniquePtr< WorkspaceLoaderInterface >

Automatically manages the lifetime of a Workspace Loader object.

◆ UniqueWorkspaceSaverPtr

using FlowEngine::UniqueWorkspaceSaverPtr = typedef Detail::UniquePtr< WorkspaceSaverInterface >

Automatically manages the lifetime of a Workspace Saver object.

Enumeration Type Documentation

◆ LicenseResult

enum FlowEngine::LicenseResult : std::uint64_t
strong
Enumerator
Success 
GenericError 
InvalidProductKey 
ProductNotActivated 
ConnectionFailed 
LicenseInUse 
LicenseRevoked 
LicenseExpired 
Permissions 
NoMoreDeactivations 
AlreadyActivated 
InvalidArgument 
InternalError 
Unsupported 

◆ LogType

enum FlowEngine::LogType
strong

Enumerates the possible types of a log.

Enumerator
Normal 
Warning 
Error 
Info 

◆ Result

enum FlowEngine::Result : std::size_t
strong

Enumerates possible results generate by Flow Engine.

Enumerator
Success 

Everything went ok.

FeatureNotAvailable 

This feature is not available in this version of FlowEngine.

GenericError 

Something went wrong.

InvalidArgument 

One or more supplied arguments are invalid.

FileNotFound 

The supplied file was not found or is not supported.

BufferTooSmall 

The supplied buffer is too small to complete the operation.

GenericIOError 

Something went wrong when writing or loading file.

ProcessNotRunning 

An abort or pause signal has been emitted, but no process is running.

NewVersionAvailable 

A New SDK version is available to download.

OutOfMemoryError 

An out of RAM memory error has been received.

DiskWriteError 

An error has occurred on disk write.

Function Documentation

◆ CheckResult()

FLE_DLL void FlowEngine::CheckResult ( Result  inResult,
LogListenerInterface inLogListener 
)

Checks the result of an operation On failure, prints the error to the log and calls std::abort

Parameters
[in]inResultthe result code
[in]inLogListenerthe log listener used to write the error messages

◆ CreateBoundingBox()

FLE_DLL BoundingBoxInterface * FlowEngine::CreateBoundingBox ( )

Creates a BoundingBox object

Returns
a new BoundingBox object or nullptr if the operation failed

◆ CreateCamera()

FLE_DLL CameraInterface * FlowEngine::CreateCamera ( )

Creates a Camera object

Returns
a new CameraInterface object or nullptr if the operation failed

◆ CreateCameraCalibration()

FLE_DLL CameraCalibrationInterface * FlowEngine::CreateCameraCalibration ( )

Creates a CameraCalibration object

Returns
a new CameraCalibration object or nullptr if the operation failed

◆ CreateCamerasLoader()

FLE_DLL CamerasLoaderInterface * FlowEngine::CreateCamerasLoader ( )

Creates a CamerasLoader object

Returns
a new CamerasLoader object or nullptr if the operation failed

◆ CreateControlPointConstraint()

FLE_DLL ControlPointConstraintInterface * FlowEngine::CreateControlPointConstraint ( )

Creates a Control Point Constraint object

Returns
a new Control Point Constraint object or nullptr if the operation failed

◆ CreateFlowEngine()

FlowEngine::FlowEngineInterface * FlowEngine::CreateFlowEngine ( )

Creates a FlowEngineInterface object

Returns
a new FlowEngineInterface object or nullptr if the operation failed

◆ CreateOrthophoto()

FLE_DLL OrthophotoInterface * FlowEngine::CreateOrthophoto ( )

Creates an Orthophoto object

Returns
a new Orthophoto object or nullptr if the operation failed

◆ CreateSettings()

FLE_DLL SettingsInterface * FlowEngine::CreateSettings ( )

Creates a Settings object

Returns
a new Settings object or nullptr if the operation failed

◆ CreateSparsePointCloud()

FLE_DLL SparsePointCloudInterface * FlowEngine::CreateSparsePointCloud ( )

Creates a SparsePointCloud object

Returns
a new SparsePointCloud object or nullptr if the operation failed

◆ CreateStereoMesh()

FLE_DLL StereoMeshInterface * FlowEngine::CreateStereoMesh ( )

Creates a StereoMesh object

Returns
a new StereoMesh object or nullptr if the operation failed

◆ CreateStereoPointCloud()

FLE_DLL StereoPointCloudInterface * FlowEngine::CreateStereoPointCloud ( )

Creates a StereoPointCloud object

Returns
a new StereoPointCloud object or nullptr if the operation failed

◆ CreateStereoTexturedMesh()

FLE_DLL StereoTexturedMeshInterface * FlowEngine::CreateStereoTexturedMesh ( )

Creates a StereoTexturedMesh object

Returns
a new StereoTexturedMesh object or nullptr if the operation failed

◆ CreateWorkspaceLoader()

FLE_DLL WorkspaceLoaderInterface * FlowEngine::CreateWorkspaceLoader ( )

Creates a WorkspaceLoader object

Returns
a new WorkspaceLoader object or nullptr if the operation failed

◆ CreateWorkspaceSaver()

FLE_DLL WorkspaceSaverInterface * FlowEngine::CreateWorkspaceSaver ( )

Creates a WorkspaceSaver object

Returns
a new WorkspaceSaver object or nullptr if the operation failed

◆ DestroyBoundingBox()

FLE_DLL void FlowEngine::DestroyBoundingBox ( BoundingBoxInterface boundingBox)

Destroys a BoundingBox object

Parameters
[in,out]boundingBoxpointer to a BoundingBox created with CreateBoundingBox()

◆ DestroyCamera()

FLE_DLL void FlowEngine::DestroyCamera ( CameraInterface camera)

Destroys a Camera object

Parameters
[in]camerapointer to a Camera created with CreateCamera()

◆ DestroyCameraCalibration()

FLE_DLL void FlowEngine::DestroyCameraCalibration ( CameraCalibrationInterface cameraCalibration)

Destroys a CameraCalibration object

Parameters
[in,out]cameraCalibrationpointer to a CameraCalibration created with CreateCameraCalibration()

◆ DestroyCamerasLoader()

FLE_DLL void FlowEngine::DestroyCamerasLoader ( CamerasLoaderInterface camerasLoader)

Destroys a CamerasLoader object

Parameters
[in]camerasLoaderpointer to a CamerasLoader created with CreateCamerasLoader()

◆ DestroyControlPointConstraint()

FLE_DLL void FlowEngine::DestroyControlPointConstraint ( ControlPointConstraintInterface controlPoint)

Destroys a Control Point Constraint object

Parameters
[in]controlPointpointer to a Control Point Constraint created with CreateSettings()

◆ DestroyFlowEngineObject()

void FlowEngine::DestroyFlowEngineObject ( FlowEngine::FlowEngineInterface flowEngine)

Destroys a FlowEngineInterface object

Parameters
[in]flowEnginepointer to a FlowEngineInterface object created with CreateFlowEngineObject()

◆ DestroyOrthophoto()

FLE_DLL void FlowEngine::DestroyOrthophoto ( OrthophotoInterface orthophoto)

Destroys an Orthophoto object

Parameters
[in,out]orthophotopointer to an Orthophoto created with CreateOrthophoto()

◆ DestroySettings()

FLE_DLL void FlowEngine::DestroySettings ( SettingsInterface settings)

Destroyes a Settings object

Parameters
[in]settingsa pointer to a Settings created with CreateSettings()

◆ DestroySparsePointCloud()

FLE_DLL void FlowEngine::DestroySparsePointCloud ( SparsePointCloudInterface pointCloud)

Destroys a SparsePointCloud object

Parameters
[in,out]pointCloudpointer to a BoundingBox created with CreateBoundingBox()

◆ DestroyStereoMesh()

FLE_DLL void FlowEngine::DestroyStereoMesh ( StereoMeshInterface stereoMesh)

Destroys a StereoMesh object

Parameters
[in]stereoMeshpointer to a StereoMesh created with CreateStereoMesh()

◆ DestroyStereoPointCloud()

FLE_DLL void FlowEngine::DestroyStereoPointCloud ( StereoPointCloudInterface stereoPointCloud)

Destroys a StereoPointCloud object

Parameters
[in]stereoPointCloudpointer to a StereoPointCloud created with CreateStereoPointCloud()

◆ DestroyStereoTexturedMesh()

FLE_DLL void FlowEngine::DestroyStereoTexturedMesh ( StereoTexturedMeshInterface stereoTexturedMesh)

Destroys a StereoMesh object

Parameters
[in]stereoTexturedMeshpointer to a StereoTexturedMesh created with CreateStereoTexturedMesh()

◆ DestroyWorkspaceLoader()

FLE_DLL void FlowEngine::DestroyWorkspaceLoader ( WorkspaceLoaderInterface workspaceLoader)

Destroys a WorkspaceLoader object

Parameters
[in]workspaceLoaderpointer to a WorkspaceLoader object created with CreateWorkspaceLoader()

◆ DestroyWorkspaceSaver()

FLE_DLL void FlowEngine::DestroyWorkspaceSaver ( WorkspaceSaverInterface workspaceSaver)

Destroys a WorkspaceSaver object

Parameters
[in]workspaceSaverpointer to a WorkspaceSaver created with CreateWorkspaceSaver()