libgpiod
Namespaces | Classes | Functions
gpiod Namespace Reference

Namespaces

 line
 Namespace containing various type definitions for GPIO lines.
 

Classes

class  bad_mapping
 Exception thrown when the core C library returns an invalid value for any of the line_info properties. More...
 
class  chip
 Represents a GPIO chip. More...
 
class  chip_closed
 Exception thrown when an already closed chip is used. More...
 
class  chip_info
 Represents an immutable snapshot of GPIO chip information. More...
 
class  edge_event
 Immutable object containing data about a single edge event. More...
 
class  edge_event_buffer
 Object into which edge events are read for better performance. More...
 
class  info_event
 Immutable object containing data about a single line info event. More...
 
class  line_config
 Contains a set of line config options used in line requests and reconfiguration. More...
 
class  line_info
 Contains an immutable snapshot of the line's state at the time when the object of this class was instantiated. More...
 
class  line_request
 Stores the context of a set of requested GPIO lines. More...
 
class  line_settings
 Stores GPIO line settings. More...
 
class  request_builder
 Intermediate object storing the configuration for a line request. More...
 
class  request_config
 Stores a set of options passed to the kernel when making a line request. More...
 
class  request_released
 Exception thrown when an already released line request is used. More...
 
class  timestamp
 Stores the edge and info event timestamps as returned by the kernel and allows to convert them to std::chrono::time_point. More...
 

Functions

::std::ostream & operator<< (::std::ostream &out, const chip_info &chip)
 Stream insertion operator for GPIO chip objects. More...
 
::std::ostream & operator<< (::std::ostream &out, const chip &chip)
 Stream insertion operator for GPIO chip objects. More...
 
::std::ostream & operator<< (::std::ostream &out, const edge_event_buffer &buf)
 Stream insertion operator for GPIO edge event buffer objects. More...
 
::std::ostream & operator<< (::std::ostream &out, const edge_event &event)
 Stream insertion operator for edge events. More...
 
::std::ostream & operator<< (::std::ostream &out, const info_event &event)
 Stream insertion operator for info events. More...
 
::std::ostream & operator<< (::std::ostream &out, const line_config &config)
 Stream insertion operator for GPIO line config objects. More...
 
::std::ostream & operator<< (::std::ostream &out, const line_info &info)
 Stream insertion operator for GPIO line info objects. More...
 
::std::ostream & operator<< (::std::ostream &out, const line_request &request)
 Stream insertion operator for line requests. More...
 
::std::ostream & operator<< (::std::ostream &out, const line_settings &settings)
 Stream insertion operator for line settings. More...
 
bool is_gpiochip_device (const ::std::filesystem::path &path)
 Check if the file pointed to by path is a GPIO chip character device. More...
 
const ::std::string & api_version ()
 Get the human readable version string for libgpiod API. More...
 
::std::ostream & operator<< (::std::ostream &out, const request_builder &builder)
 Stream insertion operator for GPIO request builder objects. More...
 
::std::ostream & operator<< (::std::ostream &out, const request_config &config)
 Stream insertion operator for request_config objects. More...
 

Function Documentation

const ::std::string& gpiod::api_version ( )

Get the human readable version string for libgpiod API.

Returns
String containing the library version.
bool gpiod::is_gpiochip_device ( const ::std::filesystem::path &  path)

Check if the file pointed to by path is a GPIO chip character device.

Parameters
pathPath to check.
Returns
True if the file exists and is a GPIO chip character device or a symbolic link to it.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const chip_info chip 
)

Stream insertion operator for GPIO chip objects.

Parameters
outOutput stream to write to.
chipGPIO chip to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const request_config config 
)

Stream insertion operator for request_config objects.

Parameters
outOutput stream to write to.
configrequest_config to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const line_config config 
)

Stream insertion operator for GPIO line config objects.

Parameters
outOutput stream to write to.
configLine config object to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const info_event event 
)

Stream insertion operator for info events.

Parameters
outOutput stream to write to.
eventGPIO line info event to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const edge_event_buffer buf 
)

Stream insertion operator for GPIO edge event buffer objects.

Parameters
outOutput stream to write to.
bufGPIO edge event buffer object to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const edge_event event 
)

Stream insertion operator for edge events.

Parameters
outOutput stream to write to.
eventEdge event to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const request_builder builder 
)

Stream insertion operator for GPIO request builder objects.

Parameters
outOutput stream to write to.
builderRequest builder object to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const line_info info 
)

Stream insertion operator for GPIO line info objects.

Parameters
outOutput stream to write to.
infoGPIO line info object to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const chip chip 
)

Stream insertion operator for GPIO chip objects.

Parameters
outOutput stream to write to.
chipGPIO chip to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const line_settings settings 
)

Stream insertion operator for line settings.

Parameters
outOutput stream to write to.
settingsLine settings object to insert into the output stream.
Returns
Reference to out.
::std::ostream& gpiod::operator<< ( ::std::ostream &  out,
const line_request request 
)

Stream insertion operator for line requests.

Parameters
outOutput stream to write to.
requestLine request object to insert into the output stream.
Returns
Reference to out.