Source code for pygmc.devices.gmc300

"""GQ Electronics GMC-3XX series Geiger Counter Devices."""

from ..connection import Connection
from .device_rfc1201 import DeviceRFC1201


[docs] class GMC300(DeviceRFC1201): """GMC-300""" def __init__( self, port, baudrate=57600, timeout=5, connection=None, ): """ Represent a GMC-300 device. Parameters ---------- port: None | str Exact port (device dev path / com port) e.g. '/dev/ttyUSB0' If None, a Connection object is required. baudrate: int Device baudrate. Default value is the best-known value for the device. timeout: int Time limit for pyserial to raise timeout. connection: pygmc.Connection An initialized pygmc connection interface to the USB device. Overrides port & baudrate. """ if isinstance(connection, Connection): super().__init__(connection) elif port and isinstance(baudrate, int): conn = Connection(port=port, baudrate=baudrate, timeout=timeout) super().__init__(conn) else: raise ConnectionError(f"Unable to connect port={port} baudrate={baudrate}") self._flash_memory_size_bytes = 2**16 self._baudrate = 57600
[docs] class GMC300S(DeviceRFC1201): """GMC-300S""" def __init__( self, port, baudrate=57600, timeout=5, connection=None, ): """ Represent a GMC-300S device. Parameters ---------- port: None | str Exact port (device dev path / com port) e.g. '/dev/ttyUSB0' If None, a Connection object is required. baudrate: int Device baudrate. Default value is the best-known value for the device. timeout: int Time limit for pyserial to raise timeout. connection : pygmc.Connection An initialized pygmc connection interface to the USB device. Overrides port & baudrate. """ if isinstance(connection, Connection): super().__init__(connection) elif port and isinstance(baudrate, int): conn = Connection(port=port, baudrate=baudrate, timeout=timeout) super().__init__(conn) else: raise ConnectionError(f"Unable to connect port={port} baudrate={baudrate}") self._baudrate = 57600
[docs] class GMC300EPlus(DeviceRFC1201): """GMC-300E+""" def __init__( self, port, baudrate=57600, timeout=5, connection=None, ): """ Represent a GMC-300E+ device. Parameters ---------- port: None | str Exact port (device dev path / com port) e.g. '/dev/ttyUSB0' If None, a Connection object is required. baudrate: int Device baudrate. Default value is the best-known value for the device. timeout: int Time limit for pyserial to raise timeout. connection : pygmc.Connection An initialized pygmc connection interface to the USB device. Overrides port & baudrate. """ if isinstance(connection, Connection): super().__init__(connection) elif port and isinstance(baudrate, int): conn = Connection(port=port, baudrate=baudrate, timeout=timeout) super().__init__(conn) else: raise ConnectionError(f"Unable to connect port={port} baudrate={baudrate}") self._baudrate = 57600