|
StormByte C++ Library: Multimedia module 0.0.9999
StormByte-Multimedia is a StormByte library module for parsing configuration files
|
One source stream that enters the tube. More...
#include <StormByte/multimedia/pipeline/track.hxx>


Public Member Functions | |
| PointerType | Clone () const override |
| Deep copy. | |
| PointerType | Move () override |
| Move into a new pointer. | |
Lifecycle | |
| Track (int in, enum StormByte::Multimedia::Type type) noexcept | |
| Track without a config leaf. | |
| Track (int in, const Config::Base &config) noexcept | |
Builds a track; clones config and copies its type. | |
| Track (int in, Config::Base &&config) noexcept | |
Builds a track; moves config and copies its type. | |
| Track (const Track &other) | |
| Copy constructor. | |
| Track (Track &&other) noexcept=default | |
| Move constructor. | |
| virtual | ~Track () noexcept override=default |
| Destructor. | |
| Track & | operator= (const Track &other) |
| Copy assignment. | |
| Track & | operator= (Track &&other) noexcept=default |
| Move assignment. | |
Intention | |
| enum StormByte::Multimedia::Type | Type () const noexcept |
| Media stamped at construction. | |
| int | In () const noexcept |
| Origin stream index. | |
| const Config::Base * | Config () const noexcept |
| Track config leaf, if any. | |
One source stream that enters the tube.
Intention only. Does not check that In exists on the origin File, nor that Type matches that stream. Consumers of Plan validate.
Mux slot is the index of this track in Tracks, not a field. Type is always stored. When a config is passed, Type is copied from the leaf. A null Config is an attachment (or no leaf). A non-null config with codec nullptr means Remux.
|
noexcept |
Track without a config leaf.
| in | Origin stream index. |
| type | Media type (typically StormByte::Multimedia::Type::Attachment). |
|
noexcept |
Builds a track; clones config and copies its type.
| in | Origin stream index. |
| config | Leaf config. |
|
noexcept |
Builds a track; moves config and copies its type.
| in | Origin stream index. |
| config | Leaf config. |
| StormByte::Multimedia::Pipeline::Track::Track | ( | const Track & | other | ) |
|
defaultnoexcept |
Move constructor.
| other | Track to take. |
|
overridevirtualdefaultnoexcept |
Destructor.
|
inlineoverride |
Deep copy.
|
inlinenoexcept |
Track config leaf, if any.
nullptr for attachments / no config.
|
inlinenoexcept |
|
inlineoverride |
Move into a new pointer.
|
inlinenoexcept |
Media stamped at construction.