epicsScaler
index
/usr/local/python/epics/epicsScaler.py

Support for the EPICS "scaler" record.
 
Author:         Mark Rivers 
Created:        Sept. 16, 2002. 
Modifications:

 
Modules
            
epicsPV
 
Classes
            
epicsScaler
 
class epicsScaler
       
   Methods defined here:
__init__(self, name)
Creates a new epicsScaler instance.
 
Inputs:
   name:
      The name of the EPICS scaler record, without the trailing period
      or field name.
      
Example:
   s = epicsScaler('13IDC:scaler1')
get_label(self, scaler=None)
Returns the descriptive strings for the scaler inputs.
The default is to return a list of strings, one for each of the .NMn
fields in the record, i.e. [.NM1, .NM2 ...].  If the scaler keyword is
specified then only the string for that scaler are returned.
 
Keywords:
   scaler:
      The number of the specific scaler channel to return the label for.
 
Example:
   s = epicsScaler('13IDC:scaler1')
   labels = s.get_label()
   label1 = s.get_label(1)
read(self, scaler=None)
Returns the current counts on the scaler.  The default is to return a list
of counts, one for each of the .Sn fields in the record, i.e.
[.S1, .S2 ...].  If the scaler keyword is specified then only the counts
on that scaler are returned.
 
Keywords:
   scaler:
      The number of the specific scaler channel to read and return.
 
Example:
   s = epicsScaler('13IDC:scaler1')
   counts = s.read()
   count1 = s.read(1)
set_label(self, label, scaler)
Writes a new descriptive label strings to the specified scaler channel.
 
Inputs:
   label:
      The label string.
 
   scaler
      The number of the specific scaler channel to write the label to.
 
Example:
   s = epicsScaler('13IDC:scaler1')
   s.set_label('Ion chamber counts', 2)
start(self, time=None)
Starts the scaler.
 
Keywords:
   time:
      The desired count time.  If time is not specified then the current
      counting time is preserved.
stop(self)
Immediately stops the scaler from counting.
wait(self, start=None, stop=None, poll=0.10000000000000001)
Waits for the scaler to start or stop counting.
 
Keywords:
   start:
      Set start=1 to wait for the scaler to start.
      
   stop:
      Set stop=1 to wait for the scaler to stop.
      
   poll:
      Set this keyword to the time to wait between reading the
      .CNT field of the record to see if the scaler is counting.
      The default is 0.1 seconds.
      
Notes:
   If neither the "start" nor "stop" keywords are set then "stop"
   is set to 1, so the routine waits for the scaler to stop counting.
   If only "start" is set to 1 then the routine only waits for the
   scaler to start counting.
   If both "start" and "stop" are set to 1 then the routine first
   waits for the scaler to start counting, and then to stop counting.
   
Example:
   s=epicsScaler('13BMD:scaler1')
   s.start(10.)              # Start counting for 10 seconds
   s.wait(start=1, stop=1)   # Wait for the scaler to start counting
                             # and then to stop counting

Data and non-method functions defined here:
__doc__ = None
__module__ = 'epicsScaler'
str(object) -> string
 
Return a nice string representation of the object.
If the argument is a string, the return value is the same object.
 
Data
             __file__ = './epicsScaler.pyc'
__name__ = 'epicsScaler'