mrfioc2  2.3.0
drvemPrescaler.h
Go to the documentation of this file.
1 /*************************************************************************\
2 * Copyright (c) 2010 Brookhaven Science Associates, as Operator of
3 * Brookhaven National Laboratory.
4 * mrfioc2 is distributed subject to a Software License Agreement found
5 * in file LICENSE that is included with this distribution.
6 \*************************************************************************/
7 /*
8  * Author: Michael Davidsaver <mdavidsaver@gmail.com>
9  */
10 
11 #ifndef MRMEVRPRESCALER_H_INC
12 #define MRMEVRPRESCALER_H_INC
13 
14 #include <evr/prescaler.h>
15 
16 class epicsShareClass MRMPreScaler : public mrf::ObjectInst<MRMPreScaler,PreScaler>
17 {
19  volatile unsigned char* base;
20 
21 public:
22  MRMPreScaler(const std::string& n, EVR& o,volatile unsigned char* b);
23  virtual ~MRMPreScaler();
24 
25  /* no locking needed */
26  virtual void lock() const OVERRIDE FINAL{};
27  virtual void unlock() const OVERRIDE FINAL{};
28 
29  virtual epicsUInt32 prescaler() const OVERRIDE FINAL;
30  virtual void setPrescaler(epicsUInt32) OVERRIDE FINAL;
31 
32  epicsUInt32 prescalerPhasOffs() const;
33  void setPrescalerPhasOffs(epicsUInt32);
34 };
35 
36 #endif // MRMEVRPRESCALER_H_INC
virtual void unlock() const OVERRIDE FINAL
virtual void lock() const OVERRIDE FINAL
User implementation hook.
Definition: object.h:459
Base interface for EVRs.
Definition: evr.h:45