7 #ifndef __vtkPlusWinProbeVideoSource_h 8 #define __vtkPlusWinProbeVideoSource_h 12 #include "vtkPlusDataCollectionExport.h" 144 float GetTransmitFrequencyMHz();
150 uint8_t GetVoltage();
156 float GetScanDepthMm();
162 uint8_t GetSSDecimation();
165 float GetTransducerWidthMm();
168 const double* GetCurrentPixelSpacingMm();
171 double GetTimeGainCompensation(
int index);
177 double GetFirstGainValue();
183 double GetOverallTimeGainCompensation();
189 float GetFocalPointDepth(
int index);
192 PlusStatus SetFocalPointDepth(
int index,
float depth);
199 float GetARFIFocalPointDepth(
int index);
207 PlusStatus SetARFIFocalPointDepth(
int index,
float depth);
210 int32_t GetBMultiFocalZoneCount();
216 bool GetARFIIsX8BFEnabled();
219 PlusStatus SetARFITxTxCycleCount(uint16_t propertyValue);
222 uint16_t GetARFITxTxCycleCount();
225 PlusStatus SetARFITxTxCycleWidth(uint8_t propertyValue);
228 uint8_t GetARFITxTxCycleWidth();
231 PlusStatus SetARFITxCycleCount(uint16_t propertyValue);
234 uint16_t GetARFITxCycleCount();
237 PlusStatus SetARFITxCycleWidth(uint8_t propertyValue);
240 uint8_t GetARFITxCycleWidth();
260 std::string GetFPGARevDateString();
266 std::string GetTransducerID();
269 void SetMinValue(
const uint16_t minValue) { m_MinValue = minValue; }
275 void SetMaxValue(
const uint16_t maxValue) { m_MaxValue = maxValue; }
287 void SetLogMax(
const uint8_t threshold) { m_OutputKnee = threshold; }
292 void SetSpatialCompoundEnabled(
bool value);
293 bool GetSpatialCompoundEnabled();
304 void SetSpatialCompoundCount(int32_t
value);
305 int32_t GetSpatialCompoundCount();
313 float GetSpatialCompoundAngle();
315 void SetBHarmonicEnabled(
bool value);
316 bool GetBHarmonicEnabled();
318 void SetBBubbleContrastEnabled(
bool value);
319 bool GetBBubbleContrastEnabled();
321 void SetBAmplitudeModulationEnabled(
bool value);
322 bool GetBAmplitudeModulationEnabled();
324 void SetBTransmitLocked(
bool value);
325 bool GetBTransmitLocked();
327 void SetBTransmitCurrent(
int value);
328 int GetBTransmitCurrent();
330 void SetBTransmitCycleCount(uint16_t
value);
331 uint16_t GetBTransmitCycleCount();
333 void SetBTransmitFNumber(
double value);
334 double GetBTransmitFNumber();
336 void SetBApodizationFNumber(
double value);
337 double GetBApodizationFNumber();
339 void SetBBubbleDestructionEnabled(
bool value);
340 bool GetBBubbleDestructionEnabled();
342 void SetBBubbleDestructionCycleCount(int16_t
value);
343 int16_t GetBBubbleDestructionCycleCount();
345 void SetBTXFilterCoefficientSet(int32_t
value);
346 int32_t GetBTXFilterCoefficientSet();
348 void SetBRFEnabled(
bool value);
349 bool GetBRFEnabled();
351 void SetMModeEnabled(
bool value);
352 bool GetMModeEnabled();
354 void SetMRevolvingEnabled(
bool value);
355 bool GetMRevolvingEnabled();
357 void SetMPRFrequency(int32_t
value);
358 int32_t GetMPRFrequency();
360 void SetMLineIndex(int32_t
value);
361 int32_t GetMLineIndex();
363 void SetMWidth(
int value);
366 void SetMWidthLines(int32_t
value);
367 int32_t GetMWidthLines();
369 void SetMAcousticLineCount(int32_t
value);
370 int32_t GetMAcousticLineCount();
372 void SetMDepth(int32_t
value);
377 void SetBFrameRateLimit(int32_t
value);
378 int32_t GetBFrameRateLimit();
380 void SetARFIEnabled(
bool value);
381 bool GetARFIEnabled();
383 PlusStatus ARFIPush(uint8_t maximumVoltage = 50);
384 void SetARFIStartSample(int32_t
value);
385 int32_t GetARFIStartSample();
387 void SetARFIStopSample(int32_t
value);
388 int32_t GetARFIStopSample();
391 PlusStatus SetARFILineTimer(uint16_t propertyValue);
394 uint16_t GetARFILineTimer();
397 PlusStatus SetARFIPrePushLineRepeatCount(int32_t propertyValue);
400 int32_t GetARFIPrePushLineRepeatCount();
403 PlusStatus SetARFIPostPushLineRepeatCount(int32_t propertyValue);
406 int32_t GetARFIPostPushLineRepeatCount();
416 PlusStatus SetARFIInterSetDelay(int32_t propertyValue);
419 int32_t GetARFIInterSetDelay();
426 PlusStatus SetARFIInterPushDelay(int32_t propertyValue);
429 int32_t GetARFIInterPushDelay();
431 int GetTransducerInternalID();
457 void SetARFIPushConfigurationString(std::string pushConfiguration);
458 std::string GetARFIPushConfigurationString();
485 Mode StringToMode(std::string modeString);
486 std::string ModeToString(Mode
mode);
488 int32_t MWidthFromSeconds(
int value);
489 int MSecondsFromWidth(int32_t
value);
491 std::vector<double> GetPrimarySourceSpacing();
492 std::vector<double> GetExtraSourceSpacing();
519 void AdjustSpacing(
bool value);
522 void AdjustBufferSizes();
524 friend
int __stdcall
frameCallback(
int length,
char*
data,
char* hHeader,
char* hGeometry,
char* hModeFrameHeader);
525 void ReconstructFrame(
char*
data, std::vector<uint8_t>& buffer, const FrameSizeType& frameSize);
526 void FlipTexture(
char*
data, const FrameSizeType& frameSize,
int rowPitch);
527 void FrameCallback(
int length,
char*
data,
char* hHeader,
char* hGeometry);
529 float m_ScanDepth = 26.0;
530 float m_TransducerWidth = 38.1;
531 float m_Frequency = 10.9;
532 uint8_t m_Voltage = 40;
533 std::
string m_TransducerID;
534 std::
string m_FPGAVersion;
535 double m_ADCfrequency = 60.0e6;
536 double m_TimestampOffset = 0;
537 double m_RenderedTimestampOffset = 0;
538 double first_timestamp = 0;
539 FrameSizeType m_PrimaryFrameSize = { 128, 256, 1 };
540 FrameSizeType m_ExtraFrameSize = { 256, 128, 1 };
543 bool m_UseDeviceFrameReconstruction =
true;
545 double m_TimeGainCompensation[8];
546 double m_OverallTimeGainCompensation = 0;
547 float m_FocalPointDepth[4];
548 float m_ARFIFocalPointDepth[6];
549 uint16_t m_MinValue = 16;
550 uint16_t m_MaxValue = 16384;
551 uint16_t m_Knee = 4096;
552 uint8_t m_OutputKnee = 64;
553 bool m_SpatialCompoundEnabled =
false;
554 float m_SpatialCompoundAngle = 10.0f;
555 int32_t m_SpatialCompoundCount = 0;
556 bool m_MRevolvingEnabled =
false;
557 int32_t m_BMultiTxCount = 1;
558 uint16_t m_ARFITxTxCycleCount = 2;
559 uint8_t m_ARFITxTxCycleWidth = 10;
560 uint16_t m_ARFITxCycleCount = 4096;
561 uint8_t m_ARFITxCycleWidth = 15;
562 int32_t m_ARFIStartSample = 0;
563 int32_t m_ARFIStopSample = 1024;
564 uint16_t m_ARFILineTimer = 100;
565 int32_t m_ARFIPrePushLineRepeatCount = 8;
566 int32_t m_ARFIPostPushLineRepeatCount = 56;
567 int32_t m_ARFIInterSetDelay = 100;
568 int32_t m_ARFIInterPushDelay = 100;
569 std::string m_ARFIPushConfigurationString =
"1,33,44;1,41,52;1,49,60;1,57,68;1,65,76;1,73,84";
570 int m_ARFIPushConfigurationCount = 6;
571 int32_t m_MPRF = 100;
572 int32_t m_MLineIndex = 60;
573 int32_t m_MWidth = 256;
574 int32_t m_MAcousticLineCount = 0;
575 int32_t m_MDepth = 0;
576 uint8_t m_SSDecimation = 2;
577 double m_FirstGainValue = 15;
579 int32_t m_BFrameRateLimit = 0;
580 bool m_BHarmonicEnabled =
false;
581 bool m_BBubbleContrastEnabled =
false;
582 bool m_BAmplitudeModulationEnabled =
false;
583 bool m_BTransmitLocked =
false;
584 int m_BTransmitCurrent = 0;
585 uint16_t m_BTransmitCycleCount = 2;
586 double m_BTransmitFNumber = 3;
587 double m_BApodizationFNumber = 0.5;
588 bool m_BBubbleDestructionEnabled =
false;
589 int16_t m_BBubbleDestructionCycleCount = 12;
590 int32_t m_BTXFilterCoefficientSet = 3;
static const char * SET_SPATIAL_COMPOUND_COUNT
uint8_t GetLogMax() const
static const char * SET_M_LINE_COUNT
void SetLogMax(const uint8_t threshold)
static const char * GET_B_TRANSMIT_CURRENT
static const char * GET_RF_MODE_ENABLED
PhidgetRCServo_Voltage voltage
static const char * SET_B_TRANSMIT_LOCKED
static const char * GET_B_BUBBLE_CONTRAST_ENABLED
static const char * SET_ARFI_TX_TX_CYCLE_WIDTH
static const char * GET_ARFI_POST_PUSH_LINE_REPEAT_COUNT
static const char * SET_B_AMPLITUDE_MODULATION_ENABLED
Abstract interface for tracker and video devices.
static const char * SET_ARFI_ENABLED
static const char * GET_SPATIAL_COMPOUND_ANGLE
static const char * SET_ARFI_PUSH_CONFIG
uint16_t GetMinValue() const
static const char * GET_SPATIAL_COMPOUND_COUNT
static const char * SET_B_TX_FILTER_COEFFICIENT_SET
static const char * GET_B_FRAME_RATE_LIMIT
static const char * GET_B_TRANSMIT_LOCKED
virtual PlusStatus InternalConnect()
static const char * GET_B_HARMONIC_ENABLED
int __stdcall frameCallback(int length, char *data, char *hHeader, char *hGeometry, char *hModeFrameHeader)
static const char * GET_FOCAL_DEPTH
static const char * GET_M_WIDTH
static const char * SET_ARFI_TX_TX_CYCLE_COUNT
static const char * GET_B_MULTIFOCAL_ZONE_COUNT
static const char * SET_SPATIAL_COMPOUND_ENABLED
bool GetUseDeviceFrameReconstruction()
void SetMaxValue(const uint16_t maxValue)
static const char * GET_M_LINE_COUNT
uint16_t GetMaxValue() const
static const char * GET_MPR_FREQUENCY
static const char * SET_B_TRANSMIT_CURRENT
static const char * GET_B_BUBBLE_DESTRUCTION_ENABLED
static const char * GET_B_APODIZATION_FNUMBER
static const char * GET_ARFI_TX_TX_CYCLE_WIDTH
static const char * GET_ARFI_TX_CYCLE_COUNT
static const char * SET_ARFI_TX_CYCLE_WIDTH
static const char * UV_SEND_COMMAND
static const char * GET_B_BUBBLE_DESTRUCTION_CYCLE_COUNT
static const char * SET_FREEZE
std::vector< uint8_t > m_PrimaryBuffer
igsioFieldMapType m_CustomFields
static const char * GET_SPATIAL_COMPOUND_ENABLED
static const char * SET_ALL_FOCAL_DEPTHS
std::vector< uint8_t > m_ExtraBuffer
static const char * SET_ARFI_PRE_PUSH_LINE_REPEAT_COUNT
static const char * SET_B_BUBBLE_CONTRAST_ENABLED
virtual PlusStatus WriteConfiguration(vtkXMLDataElement *)
static const char * SET_M_WIDTH
Class for acquiring ultrasound images from WinProbe ultrasound systems.
virtual bool IsTracker() const
static const char * GET_ARFI_INTER_PUSH_DELAY
static const char * SET_M_LINE_INDEX
static const char * SET_ARFI_START_SAMPLE
static const char * SET_TGC_OVERALL_GAIN
virtual void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
static const char * GET_M_LINE_INDEX
static const char * GET_M_DEPTH
static const char * GET_TGC_OVERALL_GAIN
static const char * GET_FPGA_REV_DATE_STRING
static const char * SET_ARFI_FOCAL_DEPTH
static const char * SET_MMODE_ENABLED
static vtkPlusUsDevice * New()
static const char * GET_B_TRANSMIT_CYCLE_COUNT
uint16_t GetLogLinearKnee() const
virtual PlusStatus ReadConfiguration(vtkXMLDataElement *)
static const char * GET_FIRST_GAIN_VALUE
static const char * IS_SCANNING
static const char * SET_FIRST_GAIN_VALUE
std::vector< vtkPlusDataSource * > m_ExtraSources
static const char * SET_B_BUBBLE_DESTRUCTION_CYCLE_COUNT
static const char * GET_ARFI_TX_CYCLE_WIDTH
static const char * SET_MPR_FREQUENCY
static const char * GET_DECIMATION
const char const char * value
Phidget_ChannelClass uint32_t * count
static const char * GET_FREEZE
static const char * GET_ARFI_PUSH_CONFIG
static const char * SET_B_BUBBLE_DESTRUCTION_ENABLED
static const char * SET_B_MULTIFOCAL_ZONE_COUNT
static const char * SET_ALL_ARFI_FOCAL_DEPTHS
std::vector< vtkPlusDataSource * > m_PrimarySources
static const char * GET_B_AMPLITUDE_MODULATION_ENABLED
static const char * GET_B_TRANSMIT_FNUMBER
static const char * SET_ARFI_INTER_SET_DELAY
static const char * GET_M_REVOLVING_ENABLED
static const char * SET_M_DEPTH
static const char * SET_RF_MODE_ENABLED
static const char * SET_B_TRANSMIT_CYCLE_COUNT
static const char * SET_ARFI_TX_CYCLE_COUNT
void SetUseDeviceFrameReconstruction(bool value)
static const char * GET_X8BF_ENABLED
virtual PlusStatus InternalApplyImagingParameterChange()
static const char * SET_ARFI_LINE_TIMER
static const char * GET_ARFI_LINE_TIMER
static const char * GET_TGC
static const char * SET_FOCAL_DEPTH
static const char * SET_ARFI_POST_PUSH_LINE_REPEAT_COUNT
static const char * SET_ARFI_INTER_PUSH_DELAY
void SetMinValue(const uint16_t minValue)
static const char * GET_B_PRF
static const char * GET_ARFI_STOP_SAMPLE
static const char * GET_B_TX_FILTER_COEFFICIENT_SET
static const char * SET_B_HARMONIC_ENABLED
static const char * SET_B_FRAME_RATE_LIMIT
static const char * GET_MMODE_ENABLED
static const char * SET_ARFI_STOP_SAMPLE
static const char * GET_ARFI_START_SAMPLE
static const char * SET_TGC
Abstract interface for ultrasound video devices.
static const char * SET_B_TRANSMIT_FNUMBER
static const char * GET_ARFI_PRE_PUSH_LINE_REPEAT_COUNT
static const char * SET_DECIMATION
static const char * GET_ARFI_ENABLED
static const char * GET_ARFI_FOCAL_DEPTH
static const char * SET_M_REVOLVING_ENABLED
void SetLogLinearKnee(const uint16_t threshold)
static const char * GET_ARFI_INTER_SET_DELAY
static const char * GET_ARFI_TX_TX_CYCLE_COUNT
static const char * SET_B_APODIZATION_FNUMBER
static const char * GET_TRANSDUCER_INTERNAL_ID