PlusLib  2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
vtkPlusStartStopRecordingCommand.h
Go to the documentation of this file.
1 /*=Plus=header=begin======================================================
2  Program: Plus
3  Copyright (c) Laboratory for Percutaneous Surgery. All rights reserved.
4  See License.txt for details.
5 =========================================================Plus=header=end*/
6 
7 #ifndef __vtkPlusStartStopRecordingCommand_h
8 #define __vtkPlusStartStopRecordingCommand_h
9 
10 #include "vtkPlusServerExport.h"
11 
12 #include "vtkPlusCommand.h"
13 
16 
22 class vtkPlusServerExport vtkPlusStartStopRecordingCommand : public vtkPlusCommand
23 {
24 public:
25 
28  virtual void PrintSelf(ostream& os, vtkIndent indent);
29  virtual vtkPlusCommand* Clone();
30 
32  virtual PlusStatus Execute();
33 
35  virtual PlusStatus ReadConfiguration(vtkXMLDataElement* aConfig);
36 
38  virtual PlusStatus WriteConfiguration(vtkXMLDataElement* aConfig);
39 
41  virtual void GetCommandNames(std::list<std::string>& cmdNames);
42 
44  virtual std::string GetDescription(const std::string& commandName);
45 
46  vtkGetStdStringMacro(OutputFilename);
47  vtkSetStdStringMacro(OutputFilename);
48 
49  vtkGetStdStringMacro(CaptureDeviceId);
50  vtkSetStdStringMacro(CaptureDeviceId);
51 
52  vtkGetStdStringMacro(ChannelId);
53  vtkSetStdStringMacro(ChannelId);
54 
55  vtkGetMacro(EnableCompression, bool);
56  vtkSetMacro(EnableCompression, bool);
57 
58  vtkGetMacro(PauseOnStart, bool);
59  vtkSetMacro(PauseOnStart, bool);
60 
61  vtkGetStdStringMacro(CodecFourCC);
62  vtkSetStdStringMacro(CodecFourCC);
63 
64  void SetNameToStart();
65  void SetNameToSuspend();
66  void SetNameToResume();
67  void SetNameToStop();
68  void SetNameToHeader();
69 
74  vtkPlusVirtualCapture* GetCaptureDevice(const std::string& captureDeviceId);
75 
80  vtkPlusVirtualCapture* GetOrCreateCaptureDevice(const std::string& channelId);
81 
82 protected:
85 
86 private:
87  bool EnableCompression;
88  bool PauseOnStart;
89  std::string CodecFourCC;
90  std::string OutputFilename;
91  std::string CaptureDeviceId;
92  std::string ChannelId;
93 
94  std::map<std::string, std::string> RequestedCustomHeaders;
95 
97  void operator=(const vtkPlusStartStopRecordingCommand&);
98 
99 };
100 
101 #endif
virtual void PrintSelf(ostream &os, vtkIndent indent)
virtual std::string GetDescription(const std::string &commandName)=0
virtual PlusStatus WriteConfiguration(vtkXMLDataElement *aConfig)
virtual PlusStatus Execute()=0
This is an abstract superclass for commands in the OpenIGTLink network interface for Plus.
igsioStatus PlusStatus
Definition: PlusCommon.h:40
vtkGetStdStringMacro(Name)
virtual PlusStatus ReadConfiguration(vtkXMLDataElement *aConfig)
vtkSetStdStringMacro(Name)
virtual vtkPlusCommand * Clone()=0
virtual void GetCommandNames(std::list< std::string > &cmdNames)=0
Manages devices that record image or positional data.
This command starts and stops capturing with a vtkPlusVirtualCapture capture on the server side.