803 StaticInstanceMediator* _mediator;
814 static inline constexpr uint32_t NetworkStartTimeoutMillisecondsDefault = 30000;
817 static inline constexpr uint32_t AxisCountMaximum = 64;
820 static inline constexpr uint32_t MotionCountMaximum = 64;
823 static inline constexpr uint32_t NetworkNodeCountMaximum = 64;
826 static inline constexpr uint32_t RecorderCountMaximum = 64;
829 static inline constexpr uint32_t CompensatorCountMaximum = 64;
832 static inline constexpr uint32_t MathBlockCountMaximum = 64;
835 static inline constexpr uint32_t UserBufferDataCountMaximum = 1024;
838 static inline constexpr double SampleRateDefault = 1000.0;
849 static inline constexpr int32_t AxisFrameBufferSizeDefault = 1024;
871 static inline constexpr int32_t ControllerIndexDefault = 0;
877 static inline constexpr uint32_t PathLengthMaximum = 256;
884 static inline constexpr int32_t CpuAffinityDefault = -1;
890 static inline constexpr int32_t RmpThreadPriorityMaximumDefault = 45;
896 static inline constexpr int32_t RmpThreadPriorityRange = 8;
902 static inline constexpr int32_t RmpThreadPriorityMinimum = RmpThreadPriorityRange + 1;
908 static inline constexpr int32_t RmpThreadPriorityMaximum = 99;
914 static inline constexpr int32_t RmpThreadPriorityNoRealTime = 0;
929 ControllerIndex = ControllerIndexDefault;
930 std::memset(RmpPath,
'\0', PathLengthMaximum);
931 std::memset(NicPrimary,
'\0', PathLengthMaximum);
932 std::memset(NicSecondary,
'\0', PathLengthMaximum);
934 std::memset(NodeName,
'\0', PathLengthMaximum);
935#elif defined(__linux__)
936 CpuAffinity = CpuAffinityDefault;
937 RmpThreadPriorityMax = RmpThreadPriorityMaximumDefault;
957 char RmpPath[PathLengthMaximum];
963 char NicPrimary[PathLengthMaximum];
969 char NicSecondary[PathLengthMaximum];
973#if defined(_WIN32) && defined(__linux__)
974 static_assert(
false,
"_WIN32 and __linux__ defined. Double check preprocessor definitions");
975#elif !defined(_WIN32) && !defined(__linux__) && !defined(DOXYGEN)
976 static_assert(
false,
"Neither _WIN32 nor __linux__ are defined AND this is not a documentation build. Double check preprocessor definitions");
978#if defined(_WIN32) || defined(DOXYGEN)
989 char NodeName[PathLengthMaximum];
993#if defined(__linux__) || defined(DOXYGEN)
1218 virtual IO*
IOGet(int32_t nodeNumber) PURE_VIRTUAL;
1270 virtual
void Refresh() PURE_VIRTUAL;
1279 virtual
void Shutdown() PURE_VIRTUAL;
1289 virtual
void MemoryToFile(const
char* const fileName) PURE_VIRTUAL;
1319 virtual int32_t SampleCounterGet() PURE_VIRTUAL;
1335 virtual
double ProcessorUsageGet() PURE_VIRTUAL;
1347 virtual
void ProcessorUsageClear() PURE_VIRTUAL;
1352 virtual uint32_t FirmwareTimingDeltaGet() PURE_VIRTUAL;
1386 virtual uint32_t SerialNumberGet(
void) PURE_VIRTUAL;
1406 virtual
void SampleWait(uint32_t samples) PURE_VIRTUAL;
1413 virtual const
char* const ServerNameGet() PURE_VIRTUAL;
1416 virtual int32_t ServerPortGet() PURE_VIRTUAL;
1448 virtual
void SampleRateSet(
double sampleRate) PURE_VIRTUAL;
1452 virtual
double SampleRateGet() PURE_VIRTUAL;
1471 virtual int32_t AxisCountGet() PURE_VIRTUAL;
1491 virtual
void AxisCountSet(int32_t axisCount) PURE_VIRTUAL;
1495 virtual
void AxisCountSet(int32_t axisCount,
bool setMotorFilterSupervisor) PURE_VIRTUAL;
1499 virtual
bool IsLicensed() PURE_VIRTUAL;
1502 virtual int32_t PackageVariantGet() PURE_VIRTUAL;
1505 virtual int32_t AxisLicenseCountGet() PURE_VIRTUAL;
1508 virtual
bool MechaWareLicenseGet() PURE_VIRTUAL;
1511 virtual int32_t UnsupportedOptionSet(int32_t option) PURE_VIRTUAL;
1537 virtual int32_t MotionCountGet() PURE_VIRTUAL;
1555 virtual
void MotionCountSet(int32_t motionCount) PURE_VIRTUAL;
1582 virtual int32_t UserVersionGet() PURE_VIRTUAL;
1607 virtual
void UserVersionSet(int32_t version) PURE_VIRTUAL;
1611 virtual int32_t ExternalMemorySizeGet() PURE_VIRTUAL;
1629 virtual
void AxisFrameBufferSizeSet(int32_t axisNumber, int32_t frameBufferSize) PURE_VIRTUAL;
1645 virtual int32_t AxisFrameBufferSizeGet(int32_t axisNumber) PURE_VIRTUAL;
1670 virtual const
char* const FirmwareVersionGet() PURE_VIRTUAL;
1689 virtual int32_t FirmwareOptionGet() PURE_VIRTUAL;
1692 virtual
bool HasMechaWare() PURE_VIRTUAL;
1717 virtual int32_t MemoryGet(uint64_t address) PURE_VIRTUAL;
1737 virtual
double MemoryDoubleGet(uint64_t address) PURE_VIRTUAL;
1764 virtual
void MemoryBlockGet(uint64_t address,
void* dataStart, int32_t size) PURE_VIRTUAL;
1780 virtual
void MemorySet(uint64_t address, int32_t data) PURE_VIRTUAL;
1800 virtual
void MemoryDoubleSet(uint64_t address,
double dataDouble) PURE_VIRTUAL;
1827 virtual
void MemoryBlockSet(uint64_t address, const
void* const dataStart, int32_t size) PURE_VIRTUAL;
1847 virtual uint32_t FirmwareAddressGet(uint64_t hostAddress) PURE_VIRTUAL;
1874 virtual uint64_t HostAddressGet(uint32_t firmwareAddress) PURE_VIRTUAL;
1900 virtual int32_t BackgroundCycleCounterGet() PURE_VIRTUAL;
1913 virtual uint64_t AddressFromStringGet(const
char* const addressName) PURE_VIRTUAL;
1925 virtual const
char* const StringFromAddressGet(uint64_t hostAddress) PURE_VIRTUAL;
1996 virtual
bool MotionHoldGateGet(int32_t gateNumber) PURE_VIRTUAL;
2015 virtual
void MotionHoldGateSet(int32_t gateNumber,
bool hold) PURE_VIRTUAL;
2031 virtual int32_t NetworkNodeCountGet() PURE_VIRTUAL;
2100 virtual const
char* const NetworkEniGenerateOutputGet() PURE_VIRTUAL;
2108 virtual
void NetworkStart() PURE_VIRTUAL;
2131 virtual
void NetworkShutdown() PURE_VIRTUAL;
2138 virtual int32_t NetworkCounterGet() PURE_VIRTUAL;
2141 virtual int32_t NetworkInputCountGet() PURE_VIRTUAL;
2144 virtual int32_t NetworkInputBitSizeGet(int32_t index) PURE_VIRTUAL;
2149 virtual const
char* const NetworkInputDataTypeNameGet(int32_t index) PURE_VIRTUAL;
2153 virtual int32_t NetworkInputBitOffsetGet(int32_t index) PURE_VIRTUAL;
2157 virtual const
char* const NetworkInputNameGet(int32_t index) PURE_VIRTUAL;
2162 virtual uint64_t NetworkInputValueGet(int32_t index) PURE_VIRTUAL;
2169 virtual uint64_t NetworkInputAddressGet(int32_t index) PURE_VIRTUAL;
2174 virtual int32_t NetworkOutputCountGet() PURE_VIRTUAL;
2178 virtual int32_t NetworkOutputBitSizeGet(int32_t index) PURE_VIRTUAL;
2184 virtual const
char* const NetworkOutputDataTypeNameGet(int32_t index) PURE_VIRTUAL;
2187 virtual int32_t NetworkOutputBitOffsetGet(int32_t index) PURE_VIRTUAL;
2190 virtual const
char* const NetworkOutputNameGet(int32_t index) PURE_VIRTUAL;
2207 virtual uint64_t NetworkOutputValueGet(int32_t index) PURE_VIRTUAL;
2225 virtual
void NetworkOutputValueSet(int32_t index, uint64_t outputValue) PURE_VIRTUAL;
2245 virtual uint64_t NetworkOutputAddressGet(int32_t index) PURE_VIRTUAL;
2263 virtual uint64_t NetworkOutputIntendedValueGet(int32_t index) PURE_VIRTUAL;
2276 virtual
void NetworkOutputOverrideSet(int32_t index,
bool outputOverride) PURE_VIRTUAL;
2288 virtual
bool NetworkOutputOverrideGet(int32_t index) PURE_VIRTUAL;
2309 virtual
void NetworkOutputOverrideValueSet(int32_t index, uint64_t outputValue) PURE_VIRTUAL;
2323 virtual uint64_t NetworkOutputOverrideValueGet(int32_t index) PURE_VIRTUAL;
2339 virtual uint64_t NetworkOutputSentValueGet(int32_t index) PURE_VIRTUAL;
2344 virtual int32_t NetworkLogMessageCountGet() PURE_VIRTUAL;
2353 virtual const
char* const NetworkLogMessageGet(int32_t messageIndex) PURE_VIRTUAL;
2356 virtual
void NetworkTimingEnableSet(
bool enable) PURE_VIRTUAL;
2359 virtual
void NetworkTimingClear() PURE_VIRTUAL;
2362 virtual uint32_t NetworkTimingDeltaGet() PURE_VIRTUAL;
2365 virtual uint32_t NetworkTimingMinGet() PURE_VIRTUAL;
2368 virtual uint32_t NetworkTimingMaxGet() PURE_VIRTUAL;
2371 virtual
void NetworkTimingThresholdLowSet(uint32_t microseconds) PURE_VIRTUAL;
2374 virtual
void NetworkTimingThresholdHighSet(uint32_t microseconds) PURE_VIRTUAL;
2377 virtual uint32_t NetworkTimingThresholdLowCountGet() PURE_VIRTUAL;
2380 virtual uint32_t NetworkTimingThresholdHighCountGet() PURE_VIRTUAL;
2383 virtual
bool NetworkSynchronizedGet() PURE_VIRTUAL;
2407 virtual
void InterruptEnableSet(
bool enable) PURE_VIRTUAL;
2427 virtual
void InterruptWake() PURE_VIRTUAL;
2456 virtual
void SyncInterruptEnableSet(
bool enable) PURE_VIRTUAL;
2483 virtual
void SyncInterruptPeriodSet(uint32_t samples) PURE_VIRTUAL;
2504 virtual int32_t SyncInterruptWait() PURE_VIRTUAL;
2507 virtual
bool ServiceThreadStateGet() PURE_VIRTUAL;
2519 virtual int32_t SyncInterruptHostProcessTimeGet() PURE_VIRTUAL;
2522 virtual int32_t SyncInterruptHostProcessFlagGet() PURE_VIRTUAL;
2536 virtual
void SyncInterruptHostProcessFlagSet(
bool hostProcessFlag) PURE_VIRTUAL;
2548 virtual
bool SyncInterruptHostProcessStatusBitGet() PURE_VIRTUAL;
2559 virtual
void SyncInterruptHostProcessStatusClear() PURE_VIRTUAL;
2587 virtual
void ServiceThreadEnableSet(
bool enable) PURE_VIRTUAL;
2615 virtual int32_t RecorderCountGet() PURE_VIRTUAL;
2634 virtual
void RecorderCountSet(int32_t recorderCount) PURE_VIRTUAL;
2652 virtual
void RecorderPeriodSet(uint32_t samples) PURE_VIRTUAL;
2655 virtual
void RecorderPeriodSet(int32_t recorderNumber, uint32_t samples) PURE_VIRTUAL;
2673 virtual
void RecorderCircularBufferSet(
bool enable) PURE_VIRTUAL;
2676 virtual
void RecorderCircularBufferSet(int32_t recorderNumber,
bool enable) PURE_VIRTUAL;
2693 virtual
void RecorderDataCountSet(int32_t count) PURE_VIRTUAL;
2696 virtual
void RecorderDataCountSet(int32_t recorderNumber,int32_t count) PURE_VIRTUAL;
2714 virtual
void RecorderDataAddressSet(int32_t index, uint64_t address) PURE_VIRTUAL;
2717 virtual
void RecorderDataAddressSet(int32_t recorderNumber,int32_t index, uint64_t address) PURE_VIRTUAL;
2725 virtual
void RecorderDataAddressesSet(int32_t recorderNumber, const uint64_t* const addresses, int32_t addressCount) PURE_VIRTUAL;
2746 virtual
void RecorderConfigureToTriggerOnMotion(
Axis *axis,
bool triggerOnMotion) PURE_VIRTUAL;
2754 virtual
void RecorderConfigureToTriggerOnMotion(int32_t recorderNumber,
Axis *axis,
bool triggerOnMotion) PURE_VIRTUAL;
2761 virtual
void RecorderConfigureToTriggerOnMotion(
MultiAxis *multiAxis,
bool triggerOnMotion) PURE_VIRTUAL;
2769 virtual
void RecorderConfigureToTriggerOnMotion(int32_t recorderNumber,
MultiAxis *multiAxis,
bool triggerOnMotion) PURE_VIRTUAL;
2777 virtual
void RecorderConfigureToTriggerOnMotion(int32_t recorderNumber, int32_t motionNumber,
bool triggerOnMotion) PURE_VIRTUAL;
2787 virtual
bool RecorderTriggerOnMotionGet(int32_t recorderNumber) PURE_VIRTUAL;
2804 virtual
bool RecorderEnabledGet() PURE_VIRTUAL;
2807 virtual
bool RecorderEnabledGet(int32_t recorderNumber ) PURE_VIRTUAL;
2825 virtual int32_t RecorderRecordCountGet() PURE_VIRTUAL;
2828 virtual int32_t RecorderRecordCountGet(int32_t recorderNumber ) PURE_VIRTUAL;
2843 virtual int32_t RecorderRecordMaxCountGet() PURE_VIRTUAL;
2846 virtual int32_t RecorderRecordMaxCountGet(int32_t recorderNumber) PURE_VIRTUAL;
2862 virtual
void RecorderStart() PURE_VIRTUAL;
2865 virtual
void RecorderStart(int32_t recorderNumber) PURE_VIRTUAL;
2883 virtual
void RecorderStop() PURE_VIRTUAL;
2886 virtual
void RecorderStop(int32_t recorderNumber) PURE_VIRTUAL;
2905 virtual const int32_t* const RecorderRecordDataGet() PURE_VIRTUAL;
2908 virtual const int32_t* const RecorderRecordDataGet(int32_t recorderNumber) PURE_VIRTUAL;
2924 virtual
void RecorderRecordDataRetrieve() PURE_VIRTUAL;
2945 virtual int32_t RecorderRecordDataRetrieveBulk(int32_t recorderNumber, int32_t recordCount) PURE_VIRTUAL;
2948 virtual
void RecorderRecordDataRetrieve(int32_t recorderNumber) PURE_VIRTUAL;
2966 virtual int32_t RecorderRecordDataValueGet(int32_t index) PURE_VIRTUAL;
2969 virtual int32_t RecorderRecordDataValueGet(int32_t recorderNumber, int32_t index) PURE_VIRTUAL;
2989 virtual int32_t RecorderRecordDataValueGet(int32_t recorderNumber, int32_t recordIndex, int32_t dataIndex) PURE_VIRTUAL;
2992 virtual
double RecorderRecordDataDoubleGet(int32_t index) PURE_VIRTUAL;
2995 virtual
double RecorderRecordDataDoubleGet(int32_t recorderNumber, int32_t index) PURE_VIRTUAL;
3015 virtual
double RecorderRecordDataDoubleGet(int32_t recorderNumber, int32_t recordIndex, int32_t dataIndex) PURE_VIRTUAL;
3034 virtual
void RecorderBufferHighCountSet(int32_t bufferHighCount) PURE_VIRTUAL;
3037 virtual
void RecorderBufferHighCountSet(int32_t recorderNumber, int32_t bufferHighCount) PURE_VIRTUAL;
3053 virtual
void RecorderReset() PURE_VIRTUAL;
3056 virtual
void RecorderReset(int32_t recorderNumber) PURE_VIRTUAL;
3069 virtual int32_t RecorderBufferSizeGet(int32_t recorderNumber) PURE_VIRTUAL;
3087 virtual
void RecorderBufferSizeSet(int32_t recorderNumber, int32_t bufferSize) PURE_VIRTUAL;
3122 virtual int32_t CompensatorCountGet() PURE_VIRTUAL;
3143 virtual
void CompensatorCountSet(int32_t compensatorCount) PURE_VIRTUAL;
3155 virtual int32_t CompensatorPointCountGet(int32_t compensatorNumber) PURE_VIRTUAL;
3176 virtual
void CompensatorPointCountSet(int32_t compensatorNumber, int32_t pointCount) PURE_VIRTUAL;
3191 virtual int32_t CompensatorDimensionGet(int32_t compensatorNumber) PURE_VIRTUAL;
3218 virtual
void CompensatorConfigSet(int32_t compensatorNumber, int32_t firstInputAxisNumber,
RSIAxisMasterType firstInputAxisType,
double firstInputAxisMinimum,
double firstInputAxisMaximum,
double firstInputAxisDelta, int32_t secondInputAxisNumber,
RSIAxisMasterType secondInputAxisType,
double secondInputAxisMinimum,
double secondInputAxisMaximum,
double secondInputAxisDelta, int32_t outputAxisNumber,
RSICompensatorOutputType outputType, const
double* const table) PURE_VIRTUAL;
3249 virtual
void CompensatorConfigSet(int32_t compensatorNumber,
Axis* firstInputAxis,
RSIAxisMasterType firstInputAxisType,
double firstInputAxisMinimum,
double firstInputAxisMaximum,
double firstInputAxisDelta,
Axis* secondInputAxis,
RSIAxisMasterType secondInputAxisType,
double secondInputAxisMinimum,
double secondInputAxisMaximum,
double secondInputAxisDelta,
Axis* outputAxis,
RSICompensatorOutputType outputType, const
double* const table) PURE_VIRTUAL;
3271 virtual
void CompensatorConfigSet(int32_t compensatorNumber, int32_t inputAxisNumber,
RSIAxisMasterType inputAxisType,
double inputAxisMinimum,
double inputAxisMaximum,
double inputAxisDelta, int32_t outputAxisNumber,
RSICompensatorOutputType outputType, const
double* const table) PURE_VIRTUAL;
3293 virtual
void CompensatorConfigSet(int32_t compensatorNumber,
Axis* inputAxis,
RSIAxisMasterType inputAxisType,
double inputAxisMinimum,
double inputAxisMaximum,
double inputAxisDelta,
Axis* outputAxis,
RSICompensatorOutputType outputType, const
double* const table) PURE_VIRTUAL;
3306 virtual
void CompensatorTableSet(int32_t compensatorNumber, const
double* const table) PURE_VIRTUAL;
3319 virtual
void CompensatorTableGet(int32_t compensatorNumber,
double* table) PURE_VIRTUAL;
3340 virtual
double CompensatorPositionGet(int32_t compensatorNumber) PURE_VIRTUAL;
3359 virtual
void CompensatorTableClear(int32_t compensatorNumber) PURE_VIRTUAL;
3369 virtual
void CompensatorDisable(int32_t compensatorNumber) PURE_VIRTUAL;
3375 virtual
void CompensatorDisable(int32_t compensatorNumber,
bool force) PURE_VIRTUAL;
3383 virtual
void CompensatorEnable(int32_t compensatorNumber) PURE_VIRTUAL;
3411 virtual int32_t UserLimitCountGet() PURE_VIRTUAL;
3432 virtual
void UserLimitCountSet(int32_t userLimitCount) PURE_VIRTUAL;
3463 virtual
RSIAction UserLimitActionGet(int32_t number) PURE_VIRTUAL;
3466 virtual int32_t UserLimitAxisNumberGet(int32_t number) PURE_VIRTUAL;
3469 virtual
double UserLimitDurationGet(int32_t number) PURE_VIRTUAL;
3472 virtual
bool UserLimitSingleShotGet(int32_t number) PURE_VIRTUAL;
3498 virtual
void UserLimitConditionSet(int32_t number, int32_t conditionNumber,
RSIUserLimitLogic logic, uint64_t addressOfUInt32, uint32_t userLimitMask, uint32_t limitValueUInt32) PURE_VIRTUAL;
3521 virtual
void UserLimitConditionSet(int32_t number, int32_t conditionNumber,
RSIUserLimitLogic logic, uint64_t addressOfDouble,
double limitValueDouble) PURE_VIRTUAL;
3524 virtual
RSIDataType UserLimitConditionDataTypeGet(int32_t number, int32_t conditionNumber) PURE_VIRTUAL;
3527 virtual
RSIUserLimitLogic UserLimitConditionLogicGet(int32_t number, int32_t conditionNumber) PURE_VIRTUAL;
3530 virtual uint64_t UserLimitConditionAddressGet(int32_t number, int32_t conditionNumber) PURE_VIRTUAL;
3533 virtual uint32_t UserLimitConditionMaskGet(int32_t number, int32_t conditionNumber) PURE_VIRTUAL;
3536 virtual int32_t UserLimitConditionLimitValueGet(int32_t number, int32_t conditionNumber) PURE_VIRTUAL;
3539 virtual
double UserLimitConditionLimitValueDoubleGet(int32_t number, int32_t conditionNumber) PURE_VIRTUAL;
3567 virtual
void UserLimitOutputSet(int32_t number, uint32_t andMask, uint32_t orMask, uint64_t outputPtr,
bool enabled) PURE_VIRTUAL;
3571 virtual
void UserLimitOutputSet(int32_t number, int32_t valueSet, uint64_t outputPtr,
bool enabled) PURE_VIRTUAL;
3575 virtual
void UserLimitOutputSet(int32_t number, uint64_t andMask, uint64_t orMask, uint64_t outputPtr,
bool enabled) PURE_VIRTUAL;
3579 virtual
void UserLimitOutputSet(int32_t number,
double limitValueDouble, uint64_t outputPtr,
bool enabled) PURE_VIRTUAL;
3596 virtual
void UserLimitOutputSet(int32_t number,
RSIDataType dataType, uint64_t inputPtr, uint64_t outputPtr,
bool enabled) PURE_VIRTUAL;
3599 virtual
bool UserLimitOutputEnableGet(int32_t number) PURE_VIRTUAL;
3602 virtual
RSIDataType UserLimitOutputDataTypeGet(int32_t number) PURE_VIRTUAL;
3605 virtual uint64_t UserLimitOutputAddressGet(int32_t number) PURE_VIRTUAL;
3608 virtual uint64_t UserLimitOutputInputAddressGet(int32_t number) PURE_VIRTUAL;
3611 virtual uint32_t UserLimitOutputAndMaskGet(int32_t number) PURE_VIRTUAL;
3614 virtual uint32_t UserLimitOutputOrMaskGet(int32_t number) PURE_VIRTUAL;
3617 virtual int32_t UserLimitOutputValueGet(int32_t number) PURE_VIRTUAL;
3620 virtual uint64_t UserLimitOutputAndMask64Get(int32_t number) PURE_VIRTUAL;
3623 virtual uint64_t UserLimitOutputOrMask64Get(int32_t number) PURE_VIRTUAL;
3627 virtual
double UserLimitOutputDoubleGet(int32_t number) PURE_VIRTUAL;
3649 virtual
bool UserLimitStateGet(int32_t number) PURE_VIRTUAL;
3671 virtual
bool UserLimitEnableGet(int32_t number) PURE_VIRTUAL;
3674 virtual
void UserLimitEnableSet(int32_t number,
bool enable) PURE_VIRTUAL;
3690 virtual
void UserLimitDisable(int32_t number) PURE_VIRTUAL;
3703 virtual
void UserLimitReset(int32_t number) PURE_VIRTUAL;
3714 virtual int32_t UserLimitCountMax() PURE_VIRTUAL;
3733 virtual
void UserLimitInterruptUserDataAddressSet(int32_t number, uint32_t userDataIndex, uint64_t address) PURE_VIRTUAL;
3736 virtual uint64_t UserLimitInterruptUserDataAddressGet(int32_t number, uint32_t userDataIndex) PURE_VIRTUAL;
3754 virtual int32_t MathBlockCountGet() PURE_VIRTUAL;
3766 virtual
void MathBlockCountSet(int32_t mathBlockCount) PURE_VIRTUAL;
3822 static inline constexpr uint32_t SDOTimeoutMillisecondsDefault = 100;
3839 virtual
bool IsEtherCAT() PURE_VIRTUAL;
3842 virtual
bool IsSynqNet() PURE_VIRTUAL;
3852 virtual
bool HasIO() PURE_VIRTUAL;
3855 virtual
bool DigitalInGet(int32_t digitalInNumber) PURE_VIRTUAL;
3858 virtual
bool DigitalOutGet(int32_t digitalOutNumber) PURE_VIRTUAL;
3861 virtual
void DigitalOutSet(int32_t digitalOutNumber,
bool state) PURE_VIRTUAL;
3864 virtual int32_t AnalogInGet(int32_t analogChannel) PURE_VIRTUAL;
3867 virtual int32_t AnalogOutGet(int32_t analogChannel) PURE_VIRTUAL;
3870 virtual
void AnalogOutSet(int32_t analogChannel, int32_t analogValue) PURE_VIRTUAL;
3879 virtual int32_t DigitalInCountGet() PURE_VIRTUAL;
3882 virtual int32_t DigitalOutCountGet() PURE_VIRTUAL;
3885 virtual int32_t AnalogInCountGet() PURE_VIRTUAL;
3888 virtual int32_t AnalogOutCountGet() PURE_VIRTUAL;
3892 virtual int32_t SegmentCountGet() PURE_VIRTUAL;
3895 virtual int32_t SegmentDigitalInCountGet(int32_t segmentNumber) PURE_VIRTUAL;
3898 virtual int32_t SegmentDigitalOutCountGet(int32_t segmentNumber) PURE_VIRTUAL;
3901 virtual int32_t SegmentAnalogInCountGet(int32_t segmentNumber) PURE_VIRTUAL;
3904 virtual int32_t SegmentAnalogOutCountGet(int32_t segmentNumber) PURE_VIRTUAL;
3907 virtual int32_t SegmentIDGet(int32_t segmentNumber) PURE_VIRTUAL;
3921 virtual uint64_t DigitalInAddressGet(int32_t bitNumber) PURE_VIRTUAL;
3935 virtual int32_t DigitalInMaskGet(int32_t bitNumber) PURE_VIRTUAL;
3949 virtual uint64_t DigitalOutAddressGet(int32_t bitNumber) PURE_VIRTUAL;
3963 virtual int32_t DigitalOutMaskGet(int32_t bitNumber) PURE_VIRTUAL;
3976 virtual uint64_t AnalogInAddressGet(int32_t channel) PURE_VIRTUAL;
3989 virtual int32_t AnalogInMaskGet(int32_t channel) PURE_VIRTUAL;
4002 virtual uint64_t AnalogOutAddressGet(int32_t channel) PURE_VIRTUAL;
4015 virtual int32_t AnalogOutMaskGet(int32_t channel) PURE_VIRTUAL;
4030 virtual int32_t ServiceChannelRead(int32_t index, int32_t subIndex, int32_t byteCount) PURE_VIRTUAL;
4035 virtual int32_t ServiceChannelRead(int32_t index, int32_t subIndex, int32_t byteCount, uint32_t timeoutMilliseconds) PURE_VIRTUAL;
4049 virtual const
char* const ServiceChannelReadString(int32_t index, int32_t subIndex, int32_t byteCount) PURE_VIRTUAL;
4054 virtual const
char* const ServiceChannelReadString(int32_t index, int32_t subIndex, int32_t byteCount, uint32_t timeoutMilliseconds) PURE_VIRTUAL;
4066 virtual
RapidVector<uint8_t> ServiceChannelReadBytes(int32_t index, int32_t subIndex, int32_t byteCount, uint32_t timeoutMilliseconds) PURE_VIRTUAL;
4081 virtual
void ServiceChannelWrite(int32_t index, int32_t subIndex, int32_t byteCount, int32_t sdoValue) PURE_VIRTUAL;
4088 virtual
void ServiceChannelWrite(int32_t index, int32_t subIndex, int32_t byteCount, int32_t sdoValue, uint32_t timeoutMilliseconds) PURE_VIRTUAL;
4101 virtual
void ServiceChannelWrite(int32_t index, int32_t subIndex, int32_t byteCount, const
char* const stringValue) PURE_VIRTUAL;
4110 virtual
void ServiceChannelWrite(int32_t index, int32_t subIndex, int32_t byteCount, const
char* const stringValue, uint32_t timeoutMilliseconds) PURE_VIRTUAL;
4120 virtual
void ServiceChannelWrite(int32_t index, int32_t subIndex, int32_t byteCount,
RapidVector<uint8_t> bytes, uint32_t timeoutMilliseconds) PURE_VIRTUAL;
4127 virtual
char* AKDASCIICommand(const
char* const command) PURE_VIRTUAL;
4130 virtual
void ClearFaults(int32_t axisNumber) PURE_VIRTUAL;
4133 virtual uint32_t VendorIdGet() PURE_VIRTUAL;
4147 virtual const
char* const NameGet() PURE_VIRTUAL;
4161 virtual const
char* const ProductNameGet() PURE_VIRTUAL;
4175 virtual const
char* const VendorNameGet() PURE_VIRTUAL;
4178 virtual uint32_t ProductCodeGet() PURE_VIRTUAL;
4181 virtual uint32_t RevisionGet() PURE_VIRTUAL;
4184 virtual uint32_t StationAliasGet() PURE_VIRTUAL;
4187 virtual const
char* const SerialNumberGet() PURE_VIRTUAL;
4190 virtual uint32_t AxisCountGet() PURE_VIRTUAL;
4193 virtual uint16_t StatusWordGet(int32_t axisIndex) PURE_VIRTUAL;
4254 virtual int32_t AxisCountGet() PURE_VIRTUAL;
4284 virtual
void TriggeredModify() PURE_VIRTUAL;
4312 virtual
void Stop() PURE_VIRTUAL;
4338 virtual
void Resume() PURE_VIRTUAL;
4364 virtual
void EStop() PURE_VIRTUAL;
4386 virtual
void EStopAbort() PURE_VIRTUAL;
4404 virtual
void EStopModify() PURE_VIRTUAL;
4408 virtual
void EStopModifyAbort() PURE_VIRTUAL;
4431 virtual
void Abort() PURE_VIRTUAL;
4459 virtual
void ClearFaults() PURE_VIRTUAL;
4487 virtual
void AmpEnableSet(
bool enable) PURE_VIRTUAL;
4518 virtual int32_t AmpEnableSet(
bool enable, int32_t ampActiveTimeoutMilliseconds) PURE_VIRTUAL;
4540 virtual
void Map() PURE_VIRTUAL;
4559 virtual
void Unmap() PURE_VIRTUAL;
4565 virtual
bool IsMapped() PURE_VIRTUAL;
4583 virtual
void FeedRateSet(
double rate) PURE_VIRTUAL;
4603 virtual
double FeedRateGet() PURE_VIRTUAL;
4686 virtual const
char* const SourceNameGet(
RSISource source) PURE_VIRTUAL;
4710 virtual int32_t MotionDoneWait() PURE_VIRTUAL;
4738 virtual int32_t MotionDoneWait(int32_t waitTimeoutMilliseconds) PURE_VIRTUAL;
4760 virtual
bool MotionDoneGet() PURE_VIRTUAL;
4800 virtual uint64_t StatusBitsGet() PURE_VIRTUAL;
4834 virtual
void InterruptEnableSet(
bool enable) PURE_VIRTUAL;
4849 virtual
void InterruptWake() PURE_VIRTUAL;
4870 virtual
double StopTimeGet() PURE_VIRTUAL;
4887 virtual
void StopTimeSet(
double seconds) PURE_VIRTUAL;
4904 virtual
double EStopTimeGet() PURE_VIRTUAL;
4921 virtual
void EStopTimeSet(
double seconds) PURE_VIRTUAL;
4939 virtual
double MotionDelayGet() PURE_VIRTUAL;
4961 virtual
void MotionDelaySet(
double seconds) PURE_VIRTUAL;
4983 virtual uint16_t MotionIdGet() PURE_VIRTUAL;
5002 virtual
void MotionIdSet(uint16_t
id) PURE_VIRTUAL;
5005 virtual uint16_t MotionIdExecutingGet() PURE_VIRTUAL;
5008 virtual uint16_t MotionElementIdExecutingGet() PURE_VIRTUAL;
5024 virtual
double MotionFinalVelocityGet() PURE_VIRTUAL;
5033 virtual
void MotionFinalVelocitySet(
double finalVelocity) PURE_VIRTUAL;
5101 virtual int32_t MotionHoldGateNumberGet() PURE_VIRTUAL;
5122 virtual
void MotionHoldGateNumberSet(int32_t gateNumber) PURE_VIRTUAL;
5140 virtual
double MotionHoldTimeoutGet() PURE_VIRTUAL;
5160 virtual
void MotionHoldTimeoutSet(
double seconds) PURE_VIRTUAL;
5185 virtual
bool MotionHoldGateGet() PURE_VIRTUAL;
5209 virtual
void MotionHoldGateSet(
bool hold) PURE_VIRTUAL;
5227 virtual int32_t MotionHoldAxisNumberGet() PURE_VIRTUAL;
5245 virtual
void MotionHoldAxisNumberSet(int32_t number) PURE_VIRTUAL;
5264 virtual
double MotionHoldAxisPositionGet() PURE_VIRTUAL;
5282 virtual
void MotionHoldAxisPositionSet(
double position) PURE_VIRTUAL;
5306 virtual uint64_t MotionHoldUserAddressGet() PURE_VIRTUAL;
5324 virtual
void MotionHoldUserAddressSet(uint64_t address) PURE_VIRTUAL;
5341 virtual int32_t MotionHoldUserMaskGet() PURE_VIRTUAL;
5358 virtual
void MotionHoldUserMaskSet(int32_t holdMask) PURE_VIRTUAL;
5375 virtual int32_t MotionHoldUserPatternGet() PURE_VIRTUAL;
5392 virtual
void MotionHoldUserPatternSet(int32_t pattern) PURE_VIRTUAL;
5395 virtual
void MotionAttributeMaskDefaultSet() PURE_VIRTUAL;
5504 virtual
void MovePT(
RSIMotionType type, const
double* const position, const
double* const time, int32_t pointCount, int32_t emptyCount,
bool retain,
bool final) PURE_VIRTUAL;
5543 virtual
void MovePVT(const
double* const position, const
double* const velocity, const
double* const time, int32_t pointCount, int32_t emptyCount,
bool retain,
bool final) PURE_VIRTUAL;
5574 virtual
void MovePVAJT(const
double* const position, const
double* const velocity, const
double* const acceleration, const
double* const jerk, const
double* const time, int32_t pointCount, int32_t emptyCount,
bool retain,
bool final) PURE_VIRTUAL;
5580 virtual
void StreamingOutputAdd(int32_t onMask, int32_t offMask, uint64_t address) PURE_VIRTUAL;
5603 virtual
void StreamingOutputAdd(int32_t onMask, int32_t offMask, uint64_t address, int32_t ptPointIndex) PURE_VIRTUAL;
5609 virtual
void StreamingOutputAdd(RapidCode::
IOPoint* point,
bool on) PURE_VIRTUAL;
5629 virtual
void StreamingOutputAdd(RapidCode::
IOPoint* point,
bool on, int32_t ptPointIndex) PURE_VIRTUAL;
5646 virtual
void StreamingOutputsClear() PURE_VIRTUAL;
5667 virtual
void StreamingOutputsEnableSet(
bool enable) PURE_VIRTUAL;
5688 static inline constexpr uint32_t NetworkIndexInvalid = 65535;
5691 static inline constexpr double AmpEnableAmpFaultTimeoutSecondsDefault = 1.0;
5752 virtual void MoveTrapezoidal(
double position,
double vel,
double accel,
double decel) PURE_VIRTUAL;
5775 virtual void MoveTrapezoidal(
double position,
double vel,
double accel,
double decel,
double finalVel) PURE_VIRTUAL;
5840 virtual void MoveSCurve(
double position,
double vel,
double accel,
double decel,
double jerkPct) PURE_VIRTUAL;
5857 virtual void MoveSCurve(
double position,
double vel,
double accel,
double decel,
double jerkPct,
double finalVel) PURE_VIRTUAL;
5976 virtual void MoveRelative(
double relativePosition,
double vel,
double accel,
double decel,
double jerkPct) PURE_VIRTUAL;
5986 virtual void MoveRelative(
double relativePosition,
double vel,
double accel,
double decel,
double jerkPct,
double finalVel) PURE_VIRTUAL;
6061 virtual
void ActualPositionSet(
double position) PURE_VIRTUAL;
6079 virtual
double CompensationPositionGet() PURE_VIRTUAL;
6093 virtual
void CompensationPositionSet(
double position) PURE_VIRTUAL;
6106 virtual
double TargetPositionGet() PURE_VIRTUAL;
6127 virtual
double CommandPositionGet() PURE_VIRTUAL;
6160 virtual
void CommandPositionSet(
double position) PURE_VIRTUAL;
6185 virtual
void CommandPositionDirectSet(
double position) PURE_VIRTUAL;
6203 virtual
double OriginPositionGet() PURE_VIRTUAL;
6227 virtual
void OriginPositionSet(
double position) PURE_VIRTUAL;
6249 virtual
double PositionErrorGet() PURE_VIRTUAL;
6272 virtual
double CommandVelocityGet() PURE_VIRTUAL;
6296 virtual
double ActualVelocityGet() PURE_VIRTUAL;
6318 virtual
double CommandAccelGet() PURE_VIRTUAL;
6321 virtual
double CommandJerkGet() PURE_VIRTUAL;
6366 virtual
double UserUnitsGet() PURE_VIRTUAL;
6390 virtual
void UserUnitsSet(
double countsPerUserUnit) PURE_VIRTUAL;
6393 virtual
double UserUnitsToCounts(
double userUnits) PURE_VIRTUAL;
6396 virtual
double CountsToUserUnits(
double counts) PURE_VIRTUAL;
6417 virtual int32_t FramesToExecuteGet() PURE_VIRTUAL;
6446 virtual
void Home() PURE_VIRTUAL;
6451 virtual
void Home(
bool moveToZero) PURE_VIRTUAL;
6516 virtual
double HomeOffsetGet() PURE_VIRTUAL;
6537 virtual
void HomeOffsetSet(
double offset) PURE_VIRTUAL;
6557 virtual
double HomeVelocityGet() PURE_VIRTUAL;
6583 virtual
void HomeVelocitySet(
double velocity) PURE_VIRTUAL;
6589 virtual
void HomeVelocitySet(
RSIHomeStage homeStage,
double velocity) PURE_VIRTUAL;
6606 virtual
double HomeSlowVelocityGet() PURE_VIRTUAL;
6623 virtual
void HomeSlowVelocitySet(
double velocity) PURE_VIRTUAL;
6643 virtual
double HomeAccelerationGet() PURE_VIRTUAL;
6669 virtual
void HomeAccelerationSet(
double accel) PURE_VIRTUAL;
6674 virtual
void HomeAccelerationSet(
RSIHomeStage homeStage,
double accel) PURE_VIRTUAL;
6693 virtual
double HomeDecelerationGet() PURE_VIRTUAL;
6718 virtual
void HomeDecelerationSet(
double decel) PURE_VIRTUAL;
6723 virtual
void HomeDecelerationSet(
RSIHomeStage homeStage,
double decel) PURE_VIRTUAL;
6743 virtual
double HomeJerkPercentGet() PURE_VIRTUAL;
6768 virtual
void HomeJerkPercentSet(
double percent) PURE_VIRTUAL;
6774 virtual
void HomeJerkPercentSet(
RSIHomeStage homeStage,
double percent) PURE_VIRTUAL;
6795 virtual
void HomeCancelSet(
bool cancel) PURE_VIRTUAL;
6815 virtual
bool HomeStateGet() PURE_VIRTUAL;
6829 virtual
void HomeStateSet(
bool homed) PURE_VIRTUAL;
6835 virtual
void HomeLimitCustomConfigSet(uint64_t address, int32_t bitIndex) PURE_VIRTUAL;
6838 virtual
void HomeLimitCustomConfigReset() PURE_VIRTUAL;
6841 virtual uint64_t HomeLimitCustomConfigAddressGet() PURE_VIRTUAL;
6845 virtual int32_t HomeLimitCustomConfigBitIndexGet() PURE_VIRTUAL;
6869 virtual
void HomeTravelDistanceSet(
RSIHomeStage stage,
double distanceToTravel) PURE_VIRTUAL;
6905 virtual
void HomeBehaviorSet(
RSIAction behavior) PURE_VIRTUAL;
6931 virtual uint16_t StatusWordGet() PURE_VIRTUAL;
6964 virtual
bool NegativeLimitGet() PURE_VIRTUAL;
6989 virtual
bool PositiveLimitGet() PURE_VIRTUAL;
7019 virtual
bool HomeLimitGet() PURE_VIRTUAL;
7048 virtual
bool HomeSwitchGet() PURE_VIRTUAL;
7070 virtual
bool AmpFaultGet() PURE_VIRTUAL;
7095 virtual
bool AmpEnableGet() PURE_VIRTUAL;
7370 virtual
double AnalogInGet(int32_t channel) PURE_VIRTUAL;
7391 virtual
double EStopDecelerationGet() PURE_VIRTUAL;
7407 virtual
void EStopDecelerationSet(
double decel) PURE_VIRTUAL;
7419 virtual
double EStopJerkPercentGet() PURE_VIRTUAL;
7438 virtual
void EStopJerkPercentSet(
double jerkPct) PURE_VIRTUAL;
7449 virtual
double TriggeredModifyDecelerationGet() PURE_VIRTUAL;
7468 virtual
void TriggeredModifyDecelerationSet(
double decel) PURE_VIRTUAL;
7480 virtual
double TriggeredModifyJerkPercentGet() PURE_VIRTUAL;
7499 virtual
void TriggeredModifyJerkPercentSet(
double jerkPct) PURE_VIRTUAL;
7502 virtual int32_t FrameBufferSizeGet() PURE_VIRTUAL;
7505 virtual
void FrameBufferSizeSet(int32_t frameSize) PURE_VIRTUAL;
7526 virtual uint16_t MotionIdExecutingGet() PURE_VIRTUAL;
7548 virtual uint16_t MotionElementIdExecutingGet() PURE_VIRTUAL;
7557 virtual
double MotionFinalVelocityGet() PURE_VIRTUAL;
7560 virtual
void MotionFinalVelocitySet(
double finalVelocity) PURE_VIRTUAL;
7563 virtual
double DefaultVelocityGet() PURE_VIRTUAL;
7566 virtual
void DefaultVelocitySet(
double velocity) PURE_VIRTUAL;
7569 virtual
double DefaultAccelerationGet() PURE_VIRTUAL;
7572 virtual
void DefaultAccelerationSet(
double acceleration) PURE_VIRTUAL;
7575 virtual
double DefaultDecelerationGet() PURE_VIRTUAL;
7578 virtual
void DefaultDecelerationSet(
double deceleration) PURE_VIRTUAL;
7581 virtual
double DefaultJerkPercentGet() PURE_VIRTUAL;
7584 virtual
void DefaultJerkPercentSet(
double jerkPercent) PURE_VIRTUAL;
7587 virtual
double DefaultPosition1Get() PURE_VIRTUAL;
7590 virtual
void DefaultPosition1Set(
double position1) PURE_VIRTUAL;
7593 virtual
double DefaultPosition2Get() PURE_VIRTUAL;
7596 virtual
void DefaultPosition2Set(
double position2) PURE_VIRTUAL;
7599 virtual
double DefaultRelativeIncrementGet() PURE_VIRTUAL;
7602 virtual
void DefaultRelativeIncrementSet(
double relativeIncrement) PURE_VIRTUAL;
7656 virtual
void AmpFaultActionSet(
RSIAction action) PURE_VIRTUAL;
7679 virtual
bool AmpFaultTriggerStateGet() PURE_VIRTUAL;
7702 virtual
void AmpFaultTriggerStateSet(
bool state) PURE_VIRTUAL;
7724 virtual
double AmpFaultDurationGet() PURE_VIRTUAL;
7746 virtual
void AmpFaultDurationSet(
double seconds) PURE_VIRTUAL;
7824 virtual
bool HomeTriggerStateGet() PURE_VIRTUAL;
7846 virtual
void HomeTriggerStateSet(
bool state) PURE_VIRTUAL;
7869 virtual
double HomeDurationGet() PURE_VIRTUAL;
7893 virtual
void HomeDurationSet(
double seconds) PURE_VIRTUAL;
7923 virtual
RSIAction ErrorLimitActionGet() PURE_VIRTUAL;
7951 virtual
void ErrorLimitActionSet(
RSIAction action) PURE_VIRTUAL;
7975 virtual
double ErrorLimitTriggerValueGet() PURE_VIRTUAL;
7998 virtual
void ErrorLimitTriggerValueSet(
double triggerValue) PURE_VIRTUAL;
8021 virtual
double ErrorLimitDurationGet() PURE_VIRTUAL;
8045 virtual
void ErrorLimitDurationSet(
double seconds) PURE_VIRTUAL;
8071 virtual
RSIAction HardwareNegLimitActionGet() PURE_VIRTUAL;
8097 virtual
void HardwareNegLimitActionSet(
RSIAction action) PURE_VIRTUAL;
8122 virtual
bool HardwareNegLimitTriggerStateGet() PURE_VIRTUAL;
8147 virtual
void HardwareNegLimitTriggerStateSet(
bool state) PURE_VIRTUAL;
8171 virtual
double HardwareNegLimitDurationGet() PURE_VIRTUAL;
8196 virtual
void HardwareNegLimitDurationSet(
double seconds) PURE_VIRTUAL;
8222 virtual
RSIAction HardwarePosLimitActionGet() PURE_VIRTUAL;
8248 virtual
void HardwarePosLimitActionSet(
RSIAction action) PURE_VIRTUAL;
8270 virtual
bool HardwarePosLimitTriggerStateGet() PURE_VIRTUAL;
8295 virtual
void HardwarePosLimitTriggerStateSet(
bool state) PURE_VIRTUAL;
8319 virtual
double HardwarePosLimitDurationGet() PURE_VIRTUAL;
8343 virtual
void HardwarePosLimitDurationSet(
double seconds) PURE_VIRTUAL;
8370 virtual
RSIAction SoftwareNegLimitActionGet() PURE_VIRTUAL;
8395 virtual
void SoftwareNegLimitActionSet(
RSIAction action) PURE_VIRTUAL;
8419 virtual
double SoftwareNegLimitTriggerValueGet() PURE_VIRTUAL;
8443 virtual
void SoftwareNegLimitTriggerValueSet(
double triggerValue) PURE_VIRTUAL;
8468 virtual
RSIAction SoftwarePosLimitActionGet() PURE_VIRTUAL;
8493 virtual
void SoftwarePosLimitActionSet(
RSIAction action) PURE_VIRTUAL;
8517 virtual
double SoftwarePosLimitTriggerValueGet() PURE_VIRTUAL;
8541 virtual
void SoftwarePosLimitTriggerValueSet(
double triggerValue) PURE_VIRTUAL;
8568 virtual
RSIAction EncoderFaultActionGet() PURE_VIRTUAL;
8594 virtual
void EncoderFaultActionSet(
RSIAction action) PURE_VIRTUAL;
8665 virtual
double EncoderFaultDurationGet() PURE_VIRTUAL;
8688 virtual
void EncoderFaultDurationSet(
double seconds) PURE_VIRTUAL;
8691 virtual
RSIAction NodeFailureActionGet() PURE_VIRTUAL;
8694 virtual
void NodeFailureActionSet(
RSIAction action) PURE_VIRTUAL;
8737 virtual
bool LimitTriggerStateGet(
RSIEventType limit) PURE_VIRTUAL;
8740 virtual
void LimitTriggerStateSet(
RSIEventType limit,
bool triggerState) PURE_VIRTUAL;
8743 virtual
double LimitTriggerValueGet(
RSIEventType limit) PURE_VIRTUAL;
8746 virtual
void LimitTriggerValueSet(
RSIEventType limit,
double triggerValue) PURE_VIRTUAL;
8749 virtual
double LimitDurationGet(
RSIEventType limit) PURE_VIRTUAL;
8752 virtual
void LimitDurationSet(
RSIEventType limit,
double seconds) PURE_VIRTUAL;
8773 virtual
double PositionToleranceFineGet() PURE_VIRTUAL;
8788 virtual
void PositionToleranceFineSet(
double tolerance) PURE_VIRTUAL;
8803 virtual
double PositionToleranceCoarseGet() PURE_VIRTUAL;
8821 virtual
void PositionToleranceCoarseSet(
double tolerance) PURE_VIRTUAL;
8836 virtual
double VelocityToleranceGet() PURE_VIRTUAL;
8851 virtual
void VelocityToleranceSet(
double tolerance) PURE_VIRTUAL;
8867 virtual
double SettlingTimeGet() PURE_VIRTUAL;
8883 virtual
void SettlingTimeSet(
double time) PURE_VIRTUAL;
8901 virtual
bool SettleOnStopGet() PURE_VIRTUAL;
8920 virtual
void SettleOnStopSet(
bool state) PURE_VIRTUAL;
8938 virtual
bool SettleOnEStopGet() PURE_VIRTUAL;
8955 virtual
void SettleOnEStopSet(
bool state) PURE_VIRTUAL;
8973 virtual
bool SettleOnEStopCmdEqActGet() PURE_VIRTUAL;
8990 virtual
void SettleOnEStopCmdEqActSet(
bool state) PURE_VIRTUAL;
9031 virtual
void MotorTypeSet(
RSIMotorType type) PURE_VIRTUAL;
9120 virtual
double BrakeApplyDelayGet() PURE_VIRTUAL;
9139 virtual
void BrakeApplyDelaySet(
double seconds) PURE_VIRTUAL;
9156 virtual
double BrakeReleaseDelayGet() PURE_VIRTUAL;
9175 virtual
void BrakeReleaseDelaySet(
double seconds) PURE_VIRTUAL;
9178 virtual
void ClosedLoopStepperSet(
bool enable) PURE_VIRTUAL;
9181 virtual int32_t ClosedLoopStepperVersionGet() PURE_VIRTUAL;
9187 virtual
void EncoderPointerSet(
RSIMotorFeedback encoder, uint64_t address) PURE_VIRTUAL;
9194 virtual
void FeedbackDeltaPointerSet(
RSIAxisPositionInput input, uint64_t address) PURE_VIRTUAL;
9219 virtual int32_t EncoderRatioNumeratorGet(
RSIMotorFeedback encoder) PURE_VIRTUAL;
9222 virtual int32_t EncoderRatioDenominatorGet(
RSIMotorFeedback encoder) PURE_VIRTUAL;
9245 virtual
void EncoderRatioSet(
RSIMotorFeedback encoder, int32_t numerator, int32_t denominator) PURE_VIRTUAL;
9248 virtual const
char* const EncoderRatioPrimaryGet() PURE_VIRTUAL;
9251 virtual
void EncoderRatioPrimarySet(
char* numeratorCommaDenominator) PURE_VIRTUAL;
9254 virtual const
char* const EncoderRatioSecondaryGet() PURE_VIRTUAL;
9257 virtual
void EncoderRatioSecondarySet(
char* numeratorCommaDenominator) PURE_VIRTUAL;
9260 virtual int32_t EncoderCountGet() PURE_VIRTUAL;
9264 virtual
void EncoderCountSet(int32_t count) PURE_VIRTUAL;
9321 virtual int32_t MotorFaultMaskGet() PURE_VIRTUAL;
9348 virtual
void MotorFaultMaskSet(int32_t faultMask) PURE_VIRTUAL;
9377 virtual
void GearingEnable(int32_t masterAxisNumber,
RSIAxisMasterType masterFeedbackSource, int32_t numerator, int32_t denominator) PURE_VIRTUAL;
9382 virtual
void GearingEnable(
Axis* masterAxis,
RSIAxisMasterType masterFeedbackSource, int32_t numerator, int32_t denominator) PURE_VIRTUAL;
9402 virtual
void GearingRatioChange(int32_t numerator, int32_t denominator) PURE_VIRTUAL;
9420 virtual
void GearingDisable() PURE_VIRTUAL;
9423 virtual int32_t GearingNumeratorGet() PURE_VIRTUAL;
9426 virtual int32_t GearingDenominatorGet() PURE_VIRTUAL;
9429 virtual
bool GearingEnableGet() PURE_VIRTUAL;
9448 virtual int32_t GearingMasterAxisNumberGet() PURE_VIRTUAL;
9486 virtual
double MotionCamMasterStartGet(
Axis* master) PURE_VIRTUAL;
9502 virtual
void MotionCamMasterStartSet(
Axis* master,
double startPosition) PURE_VIRTUAL;
9520 virtual int32_t MotionCamRepeatFromGet() PURE_VIRTUAL;
9539 virtual
void MotionCamRepeatFromSet(int32_t repeatFrom) PURE_VIRTUAL;
9558 virtual
void MotionCamRepeatStop() PURE_VIRTUAL;
9582 virtual
void MoveCamLinear(int32_t masterAxisNumber,
RSIAxisMasterType masterFeedbackSource, const
double* const masterDistances, const
double* const slavePositions, int32_t pointCount) PURE_VIRTUAL;
9613 virtual
void MoveCamCubic(int32_t masterAxisNumber,
RSIAxisMasterType masterFeedbackSource, const
double* const masterDistances, const
double* const slavePositions, const
double* const gearRatios, int32_t pointCount) PURE_VIRTUAL;
9632 virtual int32_t DriveIndexGet() PURE_VIRTUAL;
9652 virtual
double BacklashWidthGet() PURE_VIRTUAL;
9666 virtual
void BacklashWidthSet(
double width) PURE_VIRTUAL;
9680 virtual
double BacklashRateGet() PURE_VIRTUAL;
9694 virtual
void BacklashRateSet(
double rate) PURE_VIRTUAL;
9707 virtual
double BacklashValueGet() PURE_VIRTUAL;
9828 virtual
void FilterCoeffSet(
RSIFilterGainPIVCoeff coeff, int32_t gainTable,
double coeffValue) PURE_VIRTUAL;
9864 virtual int32_t FilterGainTableGet() PURE_VIRTUAL;
9894 virtual
void FilterGainTableSet(int32_t gainTable) PURE_VIRTUAL;
9912 virtual int32_t FilterGainTableSizeGet() PURE_VIRTUAL;
9915 virtual
double FilterOutputGet(
void) PURE_VIRTUAL;
9929 virtual
double FilterLowPassGet() PURE_VIRTUAL;
9946 virtual
void FilterLowPassSet(
double frequency) PURE_VIRTUAL;
9970 virtual
bool FilterGainSchedulingGet() PURE_VIRTUAL;
9974 virtual
void FilterGainSchedulingSet(
bool enable) PURE_VIRTUAL;
9977 virtual
bool IsTuneable() PURE_VIRTUAL;
9995 virtual
void PostFilterLowPassSet(int32_t sectionNumber,
double frequency) PURE_VIRTUAL;
10012 virtual
void PostFilterUnityGainSet(int32_t sectionNumber) PURE_VIRTUAL;
10032 virtual
void PostFilterSingleOrderSet(int32_t sectionNumber,
double aOne,
double bZero,
double bOne) PURE_VIRTUAL;
10049 virtual
void PostFilterHighPassSet(int32_t sectionNumber,
double cornerFreq) PURE_VIRTUAL;
10068 virtual
void PostFilterNotchSet(int32_t sectionNumber,
double centerFreq,
double bandwidth) PURE_VIRTUAL;
10088 virtual
void PostFilterResonatorSet(int32_t sectionNumber,
double centerFreq,
double bandwidth,
double gain) PURE_VIRTUAL;
10108 virtual
void PostFilterLeadLagSet(int32_t sectionNumber,
double lowGain,
double highGain,
double centerFreq) PURE_VIRTUAL;
10125 virtual
void PostFilterClear(int32_t sectionNumber) PURE_VIRTUAL;
10147 virtual
void PostFilterBiquadSet(int32_t sectionNumber,
double aOne,
double aTwo,
double bZero,
double bOne,
double bTwo) PURE_VIRTUAL;
10150 virtual const
char* const PostFilterInfoGet() PURE_VIRTUAL;
10178 virtual const
char* const UserLabelGet() PURE_VIRTUAL;
10200 virtual
void UserLabelSet(const
char* const userLabel) PURE_VIRTUAL;
10209 virtual
void PostTrajectoryGearingEnableSet(
bool enable) PURE_VIRTUAL;
10212 virtual
bool PostTrajectoryGearingEnableGet() PURE_VIRTUAL;
10215 virtual
void PostTrajectoryGearingMasterAxisSet(int32_t masterAxisNumber) PURE_VIRTUAL;
10218 virtual int32_t PostTrajectoryGearingMasterAxisGet() PURE_VIRTUAL;
10221 virtual
void PostTrajectoryGearingMultiplierSet(
double multiplier) PURE_VIRTUAL;
10224 virtual
double PostTrajectoryGearingMultiplierGet() PURE_VIRTUAL;
10263 virtual
void NetworkIndexSet(
RSINetworkIndexType indexType, uint32_t newIndex) PURE_VIRTUAL;
10275 virtual
double BacklashHysteresisLimitGet() PURE_VIRTUAL;
10283 virtual
void BacklashHysteresisLimitSet(
double hysteresisLimit) PURE_VIRTUAL;
10308 virtual
bool StepperMotorLoopbackGet() PURE_VIRTUAL;
10333 virtual
void StepperMotorLoopbackSet(
bool loopback) PURE_VIRTUAL;
10362 virtual uint64_t GearingMasterAddressGet() PURE_VIRTUAL;