Go to the documentation of this file.
45 defineOptionalProperty<float>(
"framerate", 30.0f,
"framerate for the point clouds").setMin(0.0f).setMax(60.0f);
46 defineOptionalProperty<bool>(
"isEnabled",
true,
"enable the capturing process immediately");
58 virtual public CapturingPointCloudProviderInterface
71 void startCapture(
const Ice::Current&
c = Ice::emptyCurrent)
override;
87 void stopCapture(
const Ice::Current&
c = Ice::emptyCurrent)
override;
ImageSyncMode pointCloudSyncMode
Point cloud synchronization information.
virtual void onStopCapture()=0
This is called when the point cloud provider capturing has been stopped.
const VariantTypeId Float
void startCaptureForNumFrames(int numFrames, const Ice::Current &c=Ice::emptyCurrent) override
Starts point cloud capturing.
virtual void onInitCapturingPointCloudProvider()=0
This is called when the Component::onInitComponent() is called.
void onInitPointCloudProvider() override
void setPointCloudSyncMode(ImageSyncMode pointCloudSyncMode)
Sets the point cloud synchronization mode.
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
bool isCaptureEnabled(const Ice::Current &c=Ice::emptyCurrent) override
virtual void onStartCapture(float framesPerSecond)=0
This is called when the point cloud provider capturing has been started.
void onExitPointCloudProvider() override
virtual void onExitCapturingPointCloudProvider()=0
This is called when the Component::onExitComponent() setup is called.
std::mutex captureMutex
mutex for capturing for proper exit
CapturingPointCloudProviderPropertyDefinitions(std::string prefix)
std::atomic_bool captureEnabled
Indicates that capturing is enabled and running.
float frameRate
Required frame rate.
armarx::RunningTask< CapturingPointCloudProvider >::pointer_type captureTask
Capture thread.
void startCapture(const Ice::Current &c=Ice::emptyCurrent) override
Starts point cloud capturing.
The CapturingPointCloudProvider provides a callback function to trigger the capturing of point clouds...
void changeFrameRate(Ice::Float framesPerSecond, const Ice::Current &c=Ice::emptyCurrent) override
set a new frame rate
FPSCounter fpsCounter
FPS manager.
ImageSyncMode getPointCloudSyncMode()
Returns the point cloud sync mode.
void onConnectPointCloudProvider() override
int numFramesToCapture
Number of frames to capture.
virtual bool doCapture()=0
Main capturing function.
virtual void onStartCapturingPointCloudProvider()
This is called when the Component::onConnectComponent() setup is called.
PointCloudProvider abstract class defines a component which provide point clouds via ice or shared me...
The FPSCounter class provides methods for calculating the frames per second (FPS) count in periodic t...
void stopCapture(const Ice::Current &c=Ice::emptyCurrent) override
Stops point cloud capturing.