powermon.ports.usbport module¶
powermon / ports / usbport.py
- class powermon.ports.usbport.USBPort(path, protocol)¶
Bases:
AbstractPort
usb port object
- async connect() bool ¶
default port connect function
- async disconnect() None ¶
default port disconnect function
- async classmethod from_config(config=None)¶
build port object from config dict
- is_connected() bool ¶
default is_connected function
- async resolve_path(path, serial_number)¶
Async method to resolve a valid path by testing each one.
- async send_and_receive(command: Command) Result ¶
main worker function for port objects, specific to each port type
- to_dto()¶
convert port object to data transfer object
- class powermon.ports.usbport.UsbPortDTO(*, port_type: str, protocol: AbstractProtocolDTO, path: str, serial_number: None | int | str)¶
Bases:
_AbstractPortDTO
data transfer model for SerialPort class
- model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[Dict[str, FieldInfo]] = {'path': FieldInfo(annotation=str, required=True), 'port_type': FieldInfo(annotation=str, required=True), 'protocol': FieldInfo(annotation=AbstractProtocolDTO, required=True), 'serial_number': FieldInfo(annotation=Union[NoneType, int, str], required=True)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.
This replaces Model.__fields__ from Pydantic V1.