DUDS
Distributed Update of Data from Something
duds::hardware::interface::PinConfiguration::Port Struct Reference

Holds configuration data for a single digital port. More...

#include <PinConfiguration.hpp>

Collaboration diagram for duds::hardware::interface::PinConfiguration::Port:

Public Member Functions

 Port ()
 
const PinConfiguration::Pins::index< index_gid >::type & gidIndex () const
 Convenience function that provides the pin global ID index for the port's pins. More...
 
void parse (const std::pair< const std::string, boost::property_tree::ptree > &item)
 
const PinConfiguration::Pins::index< index_pid >::type & pidIndex () const
 Convenience function that provides the pin local ID index for the port's pins. More...
 
const PinConfiguration::Pins::index< index_seq >::type & seqIndex () const
 Convenience function that provides the sequential index for the port's pins. More...
 

Public Attributes

std::shared_ptr< DigitalPortdport
 The attached DigitalPort. More...
 
unsigned int idOffset
 The pin ID offset for the port; used to translate between global and port pin IDs. More...
 
Pins pins
 The pins described by the configuration file. More...
 
std::string typeval
 A hint as to what DigitalPort implementation should be used. More...
 

Detailed Description

Holds configuration data for a single digital port.

Definition at line 289 of file PinConfiguration.hpp.

Constructor & Destructor Documentation

◆ Port()

duds::hardware::interface::PinConfiguration::Port::Port ( )

Definition at line 67 of file PinConfiguration.cpp.

Member Function Documentation

◆ gidIndex()

const PinConfiguration::Pins::index<index_gid>::type& duds::hardware::interface::PinConfiguration::Port::gidIndex ( ) const
inline

Convenience function that provides the pin global ID index for the port's pins.

Definition at line 323 of file PinConfiguration.hpp.

Referenced by duds::hardware::interface::test::VirtualPort::makeConfiguredPort(), duds::hardware::interface::linux::SysFsPort::makeConfiguredPort(), and parse().

◆ parse()

void duds::hardware::interface::PinConfiguration::Port::parse ( const std::pair< const std::string, boost::property_tree::ptree > &  item)

◆ pidIndex()

const PinConfiguration::Pins::index<index_pid>::type& duds::hardware::interface::PinConfiguration::Port::pidIndex ( ) const
inline

Convenience function that provides the pin local ID index for the port's pins.

Definition at line 330 of file PinConfiguration.hpp.

Referenced by duds::hardware::interface::linux::GpioDevPort::makeConfiguredPort().

◆ seqIndex()

const PinConfiguration::Pins::index<index_seq>::type& duds::hardware::interface::PinConfiguration::Port::seqIndex ( ) const
inline

Convenience function that provides the sequential index for the port's pins.

Definition at line 337 of file PinConfiguration.hpp.

Member Data Documentation

◆ dport

std::shared_ptr<DigitalPort> duds::hardware::interface::PinConfiguration::Port::dport

The attached DigitalPort.

This will be empty after parsing and prior to attachment.

Definition at line 294 of file PinConfiguration.hpp.

Referenced by duds::hardware::interface::PinConfiguration::attachPort().

◆ idOffset

unsigned int duds::hardware::interface::PinConfiguration::Port::idOffset

◆ pins

Pins duds::hardware::interface::PinConfiguration::Port::pins

The pins described by the configuration file.

The Pin objects map global pin IDs to port specific IDs, and can request some pins be unavailable. If any mapping cannot be honored, the configuration should be rejected.

Definition at line 301 of file PinConfiguration.hpp.

Referenced by duds::hardware::interface::PinConfiguration::attachPort(), duds::hardware::interface::test::VirtualPort::makeConfiguredPort(), duds::hardware::interface::linux::SysFsPort::makeConfiguredPort(), duds::hardware::interface::linux::GpioDevPort::makeConfiguredPort(), parse(), and duds::hardware::interface::PinConfiguration::parse().

◆ typeval

std::string duds::hardware::interface::PinConfiguration::Port::typeval

A hint as to what DigitalPort implementation should be used.

It can be ignored.

Todo:
Used for device file path in duds::hardware::interface::linux::GpioDevPort::makeConfiguredPort(), so maybe change the name.

Definition at line 309 of file PinConfiguration.hpp.

Referenced by duds::hardware::interface::linux::GpioDevPort::makeConfiguredPort(), and parse().


The documentation for this struct was generated from the following files: