VR-Vantage 3.0.3 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rfxCaptureProcess.h
Go to the documentation of this file.
1 /*********************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************************/
5 
6 #pragma once
7 
8 #include <radarFxServer/export.h>
10 
12 
14 
16 
17 namespace makVrv
18 {
19  class DtDe;
20  class DtVideoStream;
21  class DtObserver;
22  class DtVideoFrameBuffer;
23 }
24 
25 namespace makRadarFx
26 {
30  {
31  protected:
32 
34  enum ProcessStep {WAITING, CONFIGURE_OBSERVER, CONFIGURE_VIEWPORT, WAIT_TERRAIN, FRAME_CAPTURE, WAIT_FRAME, FRAME_RECEIVED, END_REQUEST, END_ERROR};
35 
36  public:
39  virtual ~DtCaptureProcess();
40 
42  virtual void tick();
43 
45  virtual bool isDone();
46 
48  virtual void processFrame(makVrv::DtVideoFrameBuffer* frame) = 0;
49 
50  protected:
51 
55  {
58  bool myIsValid;
59  };
60 
63  {
65 
66  std::string myRequestorId;
68 
72  DtVector myTargetLocation;
73 
74  std::string mySensorName;
79  unsigned int myImageReturnMethod;
80  std::string myImageSavePath;
81  std::string myImageFilename;
82  };
83 
84  protected:
85 
86  virtual void beginRequest();
87  virtual void configureViewport();
88  virtual void configureObserver();
89  virtual void waitTerrain();
90  virtual void installFrameCapture();
91  virtual void respondError(std::string errorMsg, DtImageError err) = 0;
92  virtual void endRequest();
93 
94  virtual void restoreDisplay();
95 
96  virtual void configureSensor(const std::string& sensorName) = 0;
97 
99  virtual std::string generateFilename(const std::string& path, const std::string& filename,
100  DtImageFormat format);
101 
102 
103  protected:
104 
106 
108 
112 
113  double myWaitTime;
114  double myLastTime;
117 
118  };
119 }
A DtVideoStream instance will create a single streaming video pipeline on the channel indicated by wi...
Definition: DtVideoStream.h:35
DtImageRequest defines a request for an image from the RadarFX Server.
Definition: rfxImageMessage.h:37
std::string myImageFilename
Definition: rfxCaptureProcess.h:81
std::string myRequestorId
Definition: rfxCaptureProcess.h:66
bool myUseObserverOrientation
Definition: rfxCaptureProcess.h:70
DtImageRotation
Definition: rfxImageMessage.h:23
bool myTerrainTimeoutFlag
Definition: rfxCaptureProcess.h:116
A DtObserverSettingsRecord contains the state of an observer.
Definition: DtObserverStateRecord.h:20
DtImageDataType
Definition: rfxImageMessage.h:25
double myTerrainTimeout
Definition: rfxCaptureProcess.h:115
ProcessStep myProcessStep
Definition: rfxCaptureProcess.h:107
This owns a list of channel configurations.
Definition: DtWindowConfiguration.h:28
DtImageCaptureConfig * myCaptureConfig
Definition: rfxCaptureProcess.h:105
structure used by Capture processes to keep around backups of the observer state so they can reset th...
Definition: rfxCaptureProcess.h:54
unsigned int myImageReturnMethod
Definition: rfxCaptureProcess.h:79
std::string myImageSavePath
Definition: rfxCaptureProcess.h:80
DtImageError
Definition: rfxImageMessage.h:49
int myRequestId
Definition: rfxCaptureProcess.h:67
DtImageFormat
Definition: rfxImageMessage.h:22
DtImageFormat myImageFormat
Definition: rfxCaptureProcess.h:76
makVrv::DtWindowConfiguration myWindowConfiguration
Definition: rfxCaptureProcess.h:57
DtBaseProcess is the base class for all messages processes that can be sent between the server and th...
Definition: rfxBaseProcess.h:27
double myWaitTime
Definition: rfxCaptureProcess.h:113
A facade for a DtObserverObject.
Definition: DtObserver.h:37
DtObserverState * myOriginalState
Definition: rfxCaptureProcess.h:111
DtVector myOwnshipLocation
Definition: rfxCaptureProcess.h:71
makArchives::DtObserverStateRecord myObserverState
Definition: rfxCaptureProcess.h:56
std::string mySensorName
Definition: rfxCaptureProcess.h:74
DtImageSize myImageSize
Definition: rfxCaptureProcess.h:75
bool myUseObserverLoc
Definition: rfxCaptureProcess.h:69
Definition: rfxCaptureProcess.h:34
#define DT_DLL_RFXSERVER
Definition: include/radarFxServer/export.h:15
DtImageDataType myImageDataType
Definition: rfxCaptureProcess.h:77
Contains makArchives::DtObserverStateRecord class.
DtImageCaptureConfig defines a request for an image from the RadarFX Server.
Definition: rfxCaptureProcess.h:62
The DtCaptureProcess represents the capture of a single frame from the renderer.
Definition: rfxCaptureProcess.h:29
ProcessStep
steps in the image capture process
Definition: rfxCaptureProcess.h:34
makVrv::DtObserver * myObserver
Definition: rfxCaptureProcess.h:110
makVrv::DtVideoStream * myVideoStream
Definition: rfxCaptureProcess.h:109
Defines the base class for all message processes that can be used by the server or client...
DtImageRotation myImageRotation
Definition: rfxCaptureProcess.h:78
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:70
double myLastTime
Definition: rfxCaptureProcess.h:114
DtVector myTargetLocation
Definition: rfxCaptureProcess.h:72
The image as initially captured from the camera is placed into a DtVideoFrameBuffer.
Definition: DtVideoFrameBuffer.h:20
Contains makVrv::DtWindowConfiguration class.
Definition: rfxImageMessage.h:27
bool myIsValid
Definition: rfxCaptureProcess.h:58


Copyright © 2005-2023 MAK Technologies. All Rights Reserved (www.mak.com)