FLImaging 6.6.27.1
DeviceTriggerBase.h
1#pragma once
2
10
11#include "DeviceBase.h"
12
14namespace FLImaging
15{
17 namespace Devices
18 {
26 class FL_EXPORT CDeviceTriggerBase : public CDeviceBase
27 {
28 public:
29
39 {
48
57 };
58
68 {
77
86
95
104
113
122
131 };
132
142 {
151
160
169
178
187 };
188
198 {
207
216 };
217
227 {
236
245
254 };
255
256 public:
257
266
275
293 virtual const CResult SetEncoderSource(int32_t i32Channel, EEncoderSource eSource) = 0;
294
312 virtual const CResult GetEncoderSource(int32_t i32Channel, EEncoderSource& eSource) = 0;
313
329 virtual const CResult SetEncoderReverse(int32_t i32Channel, bool bReverse) = 0;
330
346 virtual const CResult GetEncoderReverse(int32_t i32Channel, bool& bReverse) = 0;
347
365 virtual const CResult SetEncoderMethod(int32_t i32Channel, EEncoderMethod eMethod) = 0;
366
384 virtual const CResult GetEncoderMethod(int32_t i32Channel, EEncoderMethod& eMethod) = 0;
385
401 virtual const CResult SetEncoderUnitPerPulse(int32_t i32Channel, double f64UnitPerPulse) = 0;
402
418 virtual const CResult GetEncoderUnitPerPulse(int32_t i32Channel, double& f64UnitPerPulse) = 0;
419
435 virtual const CResult SetEncoderPosition(int32_t i32Channel, double f64Position) = 0;
436
452 virtual const CResult GetEncoderPosition(int32_t i32Channel, double& f64Position) = 0;
453
471 virtual const CResult GenerateTriggerOutput(int32_t i32Channel, ETriggerLevel eLevel) = 0;
472
488 virtual const CResult SetTriggerEnable(int32_t i32Channel, bool bEnable) = 0;
489
505 virtual const CResult GetTriggerEnable(int32_t i32Channel, bool& bEnable) = 0;
506
524 virtual const CResult SetTriggerMode(int32_t i32Channel, ETriggerMode eMode) = 0;
525
543 virtual const CResult GetTriggerMode(int32_t i32Channel, ETriggerMode& eMode) = 0;
544
562 virtual const CResult SetTriggerLevel(int32_t i32Channel, ETriggerLevel eLevel) = 0;
563
581 virtual const CResult GetTriggerLevel(int32_t i32Channel, ETriggerLevel& eLevel) = 0;
582
598 virtual const CResult SetTriggerTime(int32_t i32Channel, double f64TimeUSec) = 0;
599
615 virtual const CResult GetTriggerTime(int32_t i32Channel, double& f64TimeUSec) = 0;
616
634 virtual const CResult SetTriggerDirection(int32_t i32Channel, ETriggerDirection eDirection) = 0;
635
653 virtual const CResult GetTriggerDirection(int32_t i32Channel, ETriggerDirection& eDirection) = 0;
654
672 virtual const CResult SetTriggerPosition(int32_t i32Channel, const Base::CFLArray<double>& flaPosition) = 0;
673
689 virtual const CResult SetTriggerPositionPeriod(int32_t i32Channel, double f64Period) = 0;
690
706 virtual const CResult GetTriggerPositionPeriod(int32_t i32Channel, double& f64Period) = 0;
707
723 virtual const CResult SetTriggerFrequency(int32_t i32Channel, uint32_t u32FrequencyHz) = 0;
724
740 virtual const CResult GetTriggerFrequency(int32_t i32Channel, uint32_t& u32FrequencyHz) = 0;
741 };
742 }
743}
Template type 의 배열 클래스.
Definition FLArray.h:53
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1596
virtual const CResult SetEncoderSource(int32_t i32Channel, EEncoderSource eSource)=0
엔코더 소스를 설정합니다.
virtual const CResult SetEncoderMethod(int32_t i32Channel, EEncoderMethod eMethod)=0
엔코더 방식을 설정합니다.
virtual const CResult GetTriggerMode(int32_t i32Channel, ETriggerMode &eMode)=0
트리거 모드를 가져옵니다.
virtual const CResult SetTriggerMode(int32_t i32Channel, ETriggerMode eMode)=0
트리거 모드를 설정합니다.
ETriggerMode
트리거 모드 타입 정의
Definition DeviceTriggerBase.h:142
@ ETriggerMode_Position
위치
Definition DeviceTriggerBase.h:150
@ ETriggerMode_AbsolutePosition
절대 위치
Definition DeviceTriggerBase.h:159
@ ETriggerMode_TimePeriodic
시간 주기적
Definition DeviceTriggerBase.h:177
@ ETriggerMode_TimePeriodicCounter
Time Periodic Counter
Definition DeviceTriggerBase.h:186
@ ETriggerMode_PositionPeriodic
위치 주기적
Definition DeviceTriggerBase.h:168
virtual const CResult SetTriggerDirection(int32_t i32Channel, ETriggerDirection eDirection)=0
트리거 방향을 설정합니다.
virtual const CResult SetTriggerFrequency(int32_t i32Channel, uint32_t u32FrequencyHz)=0
트리거 주파수를 설정합니다.
virtual const CResult GetTriggerEnable(int32_t i32Channel, bool &bEnable)=0
트리거 활성화 상태를 가져옵니다.
virtual const CResult SetTriggerPosition(int32_t i32Channel, const Base::CFLArray< double > &flaPosition)=0
트리거 위치를 설정합니다.
virtual ~CDeviceTriggerBase()
기본 소멸자
virtual const CResult GetEncoderSource(int32_t i32Channel, EEncoderSource &eSource)=0
엔코더 소스를 가져옵니다.
virtual const CResult GetTriggerFrequency(int32_t i32Channel, uint32_t &u32FrequencyHz)=0
트리거 주파수를 가져옵니다.
virtual const CResult GetEncoderReverse(int32_t i32Channel, bool &bReverse)=0
엔코더 반전 상태를 가져옵니다.
virtual const CResult SetEncoderPosition(int32_t i32Channel, double f64Position)=0
엔코더 위치를 설정합니다.
virtual const CResult GetTriggerTime(int32_t i32Channel, double &f64TimeUSec)=0
트리거 시간을 가져옵니다.
virtual const CResult SetTriggerEnable(int32_t i32Channel, bool bEnable)=0
트리거를 활성화하거나 비활성화합니다.
virtual const CResult GetEncoderMethod(int32_t i32Channel, EEncoderMethod &eMethod)=0
엔코더 방식을 가져옵니다.
virtual const CResult SetEncoderReverse(int32_t i32Channel, bool bReverse)=0
엔코더 반전 상태를 설정합니다.
virtual const CResult SetEncoderUnitPerPulse(int32_t i32Channel, double f64UnitPerPulse)=0
펄스당 엔코더 단위를 설정합니다.
virtual const CResult GetEncoderPosition(int32_t i32Channel, double &f64Position)=0
엔코더 위치를 가져옵니다.
virtual const CResult SetTriggerPositionPeriod(int32_t i32Channel, double f64Period)=0
트리거 위치 주기를 설정합니다.
ETriggerLevel
트리거 레벨 타입 정의
Definition DeviceTriggerBase.h:198
@ ETriggerLevel_Low
낮은 레벨
Definition DeviceTriggerBase.h:206
@ ETriggerLevel_High
높은 레벨
Definition DeviceTriggerBase.h:215
virtual const CResult SetTriggerLevel(int32_t i32Channel, ETriggerLevel eLevel)=0
트리거 레벨을 설정합니다.
virtual const CResult GetTriggerPositionPeriod(int32_t i32Channel, double &f64Period)=0
트리거 위치 주기를 가져옵니다.
virtual const CResult GetTriggerLevel(int32_t i32Channel, ETriggerLevel &eLevel)=0
트리거 레벨을 가져옵니다.
virtual const CResult SetTriggerTime(int32_t i32Channel, double f64TimeUSec)=0
트리거 시간을 설정합니다.
virtual const CResult GetEncoderUnitPerPulse(int32_t i32Channel, double &f64UnitPerPulse)=0
펄스당 엔코더 단위를 가져옵니다.
EEncoderMethod
엔코더 방식 정의
Definition DeviceTriggerBase.h:68
@ EEncoderMethod_ABPhaseSqr4
AB 위상 스퀘어 4
Definition DeviceTriggerBase.h:112
@ EEncoderMethod_PulseDirSqr2
펄스/방향 스퀘어 2
Definition DeviceTriggerBase.h:130
@ EEncoderMethod_ABPhaseSqr1
AB 위상 스퀘어 1
Definition DeviceTriggerBase.h:94
@ EEncoderMethod_PulseDirSqr1
펄스/방향 스퀘어 1
Definition DeviceTriggerBase.h:121
@ EEncoderMethod_UpDownSqr2
업/다운 스퀘어 2
Definition DeviceTriggerBase.h:85
@ EEncoderMethod_UpDownSqr1
업/다운 스퀘어 1
Definition DeviceTriggerBase.h:76
@ EEncoderMethod_ABPhaseSqr2
AB 위상 스퀘어 2
Definition DeviceTriggerBase.h:103
EEncoderSource
엔코더 소스 타입 정의
Definition DeviceTriggerBase.h:39
@ EEncoderSource_ZPhase
Z 위상
Definition DeviceTriggerBase.h:56
@ EEncoderSource_ABPhase
AB 위상
Definition DeviceTriggerBase.h:47
ETriggerDirection
방향 타입 정의
Definition DeviceTriggerBase.h:227
@ ETriggerDirection_Both
양방향
Definition DeviceTriggerBase.h:235
@ ETriggerDirection_Increase
증가
Definition DeviceTriggerBase.h:244
@ ETriggerDirection_Decrease
감소
Definition DeviceTriggerBase.h:253
virtual const CResult GetTriggerDirection(int32_t i32Channel, ETriggerDirection &eDirection)=0
트리거 방향을 가져옵니다.
virtual const CResult GenerateTriggerOutput(int32_t i32Channel, ETriggerLevel eLevel)=0
트리거 출력을 생성합니다.
Definition AutoFileCleaner.h:17