* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#ifndef PULSEVIEW_PV_DEVICES_HARDWAREDEVICE_HPP
std::shared_ptr<sigrok::HardwareDevice> hardware_device() const;
- void create();
+ /**
+ * Builds the full name. It only contains all the fields.
+ */
+ std::string full_name() const;
+
+ /**
+ * Builds the display name. It only contains fields as required.
+ * @param device_manager a reference to the device manager is needed
+ * so that other similarly titled devices can be detected.
+ */
+ std::string display_name(const DeviceManager &device_manager) const;
+
+ void open();
+
+ void close();
private:
const std::shared_ptr<sigrok::Context> context_;
+ bool device_open_;
};
} // namespace devices