UTILLib 2.0
Common C++ library with utilities.
Loading...
Searching...
No Matches
serialportinfo.h
Go to the documentation of this file.
1/*
2 * Copyright 2023 Ingemar Hedvall
3 * SPDX-License-Identifier: MIT
4 */
9#pragma once
10#include <map>
11#include <string>
12namespace util::serial {
13class SerialPortInfo;
15using SerialPortList = std::map<std::string, SerialPortInfo>;
16
26 public:
28 [[nodiscard]] const std::string& Name() const { return name_; }
30 [[nodiscard]] const std::string& DisplayName() const { return display_name_; }
32 [[nodiscard]] const std::string& Location() const { return location_; }
34 [[nodiscard]] const std::string& Description() const { return description_; }
36 [[nodiscard]] const std::string& Manufacturer() const {
37 return manufacturer_;
38 }
39
40 [[nodiscard]] const std::string& Type() const { return type_; }
41
43 [[nodiscard]] const std::string& ApplicationType() const {
44 return application_type_;
45 }
46
47 [[nodiscard]] static SerialPortList AvailableSerialPorts();
48
50 [[nodiscard]] static SerialPortList AvailableUsbDevices();
51
52 protected:
53 std::string name_;
54 std::string display_name_;
55 std::string location_;
56 std::string description_;
57 std::string manufacturer_;
58 std::string type_;
59 std::string address_;
60 std::string application_type_;
61};
62
63} // namespace util::serial
The serial port information class is an interface against a serial port and CAN devices.
Definition serialportinfo.h:25
std::string display_name_
Friendly name.
Definition serialportinfo.h:54
const std::string & DisplayName() const
Returns the user friendly name of the serial port.
Definition serialportinfo.h:30
std::string location_
Device location/name.
Definition serialportinfo.h:55
const std::string & Description() const
Returns the description of the serial port.
Definition serialportinfo.h:34
static SerialPortList AvailableUsbDevices()
Returns a sorted list of USB ports.
const std::string & Type() const
Type of device ex. USB.
Definition serialportinfo.h:40
std::string manufacturer_
Manufacturer.
Definition serialportinfo.h:57
const std::string & Name() const
Returns the computer friendly name of the serial port.
Definition serialportinfo.h:28
std::string type_
Type of device.
Definition serialportinfo.h:58
std::string address_
Device address.
Definition serialportinfo.h:59
std::string application_type_
Device application type.
Definition serialportinfo.h:60
static SerialPortList AvailableSerialPorts()
Returns a sorted list of serial ports (not USB).
std::string description_
Descriptive text.
Definition serialportinfo.h:56
const std::string & ApplicationType() const
Device application type.
Definition serialportinfo.h:43
const std::string & Location() const
Returns the device location string.
Definition serialportinfo.h:32
std::string name_
Name of port (ex. COM3).
Definition serialportinfo.h:53
const std::string & Manufacturer() const
Returns the manufacturer of the serial device.
Definition serialportinfo.h:36
The serial namespace is used for serial and USB devices .
Definition serialportinfo.h:12
std::map< std::string, SerialPortInfo > SerialPortList
Sorted list of serial ports. Sorted by the name.
Definition serialportinfo.h:15