libgpiod
Namespaces | Classes | Functions
gpiod Namespace Reference

Namespaces

 line
 Namespace containing various type definitions for GPIO lines.
 

Classes

class  chip_info
 Represents an immutable snapshot of GPIO chip information. More...
 
class  chip
 Represents a GPIO chip. More...
 
class  edge_event_buffer
 Object into which edge events are read for better performance. More...
 
class  edge_event
 Immutable object containing data about a single edge event. More...
 
class  chip_closed
 Exception thrown when an already closed chip is used. More...
 
class  request_released
 Exception thrown when an already released line request is used. More...
 
class  bad_mapping
 Exception thrown when the core C library returns an invalid value for any of the line_info properties. 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  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

◆ api_version()

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

Get the human readable version string for libgpiod API.

Returns
String containing the library version.

◆ is_gpiochip_device()

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.

◆ operator<<() [1/11]

::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.

◆ operator<<() [2/11]

::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.

◆ operator<<() [3/11]

::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.

◆ operator<<() [4/11]

::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.

◆ operator<<() [5/11]

::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.

◆ operator<<() [6/11]

::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.

◆ operator<<() [7/11]

::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.

◆ operator<<() [8/11]

::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.

◆ operator<<() [9/11]

::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.

◆ operator<<() [10/11]

::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.

◆ operator<<() [11/11]

::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.