Commit Graph

36 Commits

Author SHA1 Message Date
6dc2b131f7 Exempt EPICS libraries from -Weffc++
Some checks failed
Test And Build / Build (push) Failing after 6s
Test And Build / Lint (push) Successful in 26s
2025-09-17 12:33:58 +02:00
902b18d038 Excempt EPICS libraries from -Weffc++
All checks were successful
Test And Build / Lint (push) Successful in 6s
Test And Build / Build (push) Successful in 7s
2025-09-17 12:18:06 +02:00
3ab40a8bf5 Fixed compiler warnings
Some checks failed
Test And Build / Lint (push) Failing after 2s
Test And Build / Build (push) Successful in 7s
2025-09-17 10:52:56 +02:00
cff64f5ecf Added new feature to set deadband
All checks were successful
Test And Build / Lint (push) Successful in 6s
Test And Build / Build (push) Successful in 12s
The field SPDB can now be populated via either the substitutions file or
from inside the driver (using the motorPositionDeadband paramLib entry).
2025-09-09 16:50:26 +02:00
87980e403c Fixed bug regarding the poll period member variables 2025-05-23 11:17:34 +02:00
b95e782ea8 Added accessor for maxSubsequentTimeoutsExceeded flag 2025-05-23 10:10:54 +02:00
83aa437b6b Applied PIMPL by moving members to internal struct sinqAxisImpl
This change makes sinqMotor ready for 1.x releases where ABI stability
and backwards compatibility is guaranteed.
2025-05-22 13:56:44 +02:00
b267200039 Simplified paramLib access and show error messages for one poll cycle
Simplified getting and setting paramLib entries via a macro and created
a mechanism within poll() which makes sure that error messages are shown
for at least one poll cycle. Also moved MAXBUF_ to the SinqController
level.
2025-05-14 16:07:03 +02:00
9bc90cff61 Simplified paramLib access and show error messages for one poll cycle
Simplified getting and setting paramLib entries via a macro and created
a mechanism within poll() which makes sure that error messages are shown
for at least one poll cycle. Also moved MAXBUF_ to the SinqController
level.
2025-05-14 15:59:48 +02:00
4d1c21fd74 Added a license (GPL3) 2025-05-09 11:59:51 +02:00
dbcfebc6de Added function to set the number of forced fast polls. 2025-05-09 08:14:05 +02:00
b89fe41c6e Added macros for adding and retrieving paramlib entries in order to make
the code less cluttered. Also built in a mechanism which makes sure that
forced fast polls are not ignored anymore when adaptive polling is
enabled.
2025-05-08 17:04:23 +02:00
5689402375 Further clarified the error message in checkMaxSubsequentTimeouts. 2025-05-05 09:15:15 +02:00
2a7934b8d6 Fixed bug where arguments were given in the wrong order. 2025-05-05 08:51:34 +02:00
dd0610fd99 Added connection assertion and moved msgPrintControl to key 2025-04-25 15:54:41 +02:00
c7936191d9 Added Connected PV 2025-04-25 13:17:41 +02:00
db03ffea0e Added adaptive polling
See documentation in README.md for parameter ADAPTPOLL
2025-04-16 13:05:48 +02:00
4c3254687d Renamed "ipPortUser_" to "ipPortAsynOctetSyncIO_"
I learned that there might be multiple asynUsers connected to the same
port for different types (asynInt32, asynOctet, ...). Therefore I
renamed "ipPortUser_" to better reflect this.
2025-04-15 17:15:34 +02:00
7729eceb28 Added doReset wrapper around reset and added two functions to set and
retrieve the motor position which handle the conversion via
motorRecResolution.
2025-03-31 10:42:07 +02:00
828e9bc59c Fixed a bug in msgPrintControl 2025-03-19 15:01:20 +01:00
f26d1bb612 Added public accessors for all status library indices and some other
properties. This also enabled the removal of "friend classes".
2025-03-10 16:53:45 +01:00
bed245b010 Added PVs for error reset and status problem reporting and fixed a bug
in msgPrintControl
2025-03-10 14:28:24 +01:00
d3307db987 Added msgPrintControl feature to control the maximum number of IOC shell
message repetitions.
2025-03-04 09:12:11 +01:00
591509bd43 Forgot to save the changes to sinqController.cpp beforehand 2025-02-25 08:59:21 +01:00
e92a867189 Bugfix for movTimeoutWatchdog
Update of README.md
2025-02-14 16:19:17 +01:00
b6e0f03a17 Moved the initialization of some parameters into sinqMotor 2024-12-23 09:30:24 +01:00
a866023957 Various improvements:
- Moved the encoder type PV to sinqMotor
- Unified the PV naming scheme
- Removed the IsEnabled function - this status is read out from the
parameter library (motorEnableRBV_)
2024-12-09 11:14:19 +01:00
86006e408a Prototype for version 0.3 2024-12-04 13:38:13 +01:00
6656841a01 Added some flags for NICOS and refactored some records from pmacv3 to
sinqMotor
2024-11-29 14:54:54 +01:00
682325de7d Substantial rRework of 0.2.0 after the CAMEA test showed multiple
problems. Also improved the documentation.
2024-11-26 16:51:12 +01:00
5502c39219 After reimplementing the pmacV3 driver using the sinqMotor parent class,
quite some changes have accumulated. Besides various code changes, especially the documentation has
been improved.
2024-11-20 11:29:20 +01:00
89bbbedaee Fixed CI pipeline issues. 2024-11-15 16:20:57 +01:00
a4501b4517 Moved shared functionality from the pmacV3 driver into this library. 2024-11-15 12:09:49 +01:00
df698554c0 Adjusted the readme and renamed some bits in sinqController. 2024-11-14 16:14:07 +01:00
74faa1aabf Appease the compiler by changing static to const for string literals 2024-11-13 08:38:32 +01:00
af182bb73b Initial version of sinqMotor 2024-11-12 15:27:24 +01:00