libcamera
v0.3.2+116-83c5ad0f
Supporting cameras in Linux since 2019
|
Provides a class hierarchy that represents the media objects exposed by the Linux kernel Media Controller APIs. More...
Go to the source code of this file.
Classes | |
class | libcamera::MediaObject |
Base class for all media objects. More... | |
class | libcamera::MediaLink |
The MediaLink represents a link between two pads in the media graph. More... | |
class | libcamera::MediaPad |
The MediaPad represents a pad of an entity in the media graph. More... | |
class | libcamera::MediaEntity |
The MediaEntity represents an entity in the media graph. More... | |
Namespaces | |
libcamera | |
Top-level libcamera namespace. | |
Functions | |
std::ostream & | libcamera::operator<< (std::ostream &out, const MediaLink &link) |
Insert a text representation of a Link into an output stream. More... | |
std::ostream & | libcamera::operator<< (std::ostream &out, const MediaPad &pad) |
Insert a text representation of a MediaPad into an output stream. More... | |
Provides a class hierarchy that represents the media objects exposed by the Linux kernel Media Controller APIs.
The abstract MediaObject class represents any Media Controller graph object identified by an id unique in the media device context. It is subclassed by the MediaEntity, MediaPad and MediaLink classes that represent the entities, pads and links respectively. They are populated based on the media graph information exposed by the Linux kernel through the MEDIA_IOC_G_TOPOLOGY ioctl.
As the media objects represent their kernel counterpart, information about the properties they expose can be found in the Linux kernel documentation.
All media objects are meant to be created and destroyed solely by the MediaDevice and thus have private constructors and destructors.