libpromeki main
PROfessional MEdia toolKIt
 
Loading...
Searching...
No Matches
frame.h
Go to the documentation of this file.
1
9#pragma once
10
13#include <promeki/proav/image.h>
14#include <promeki/proav/audio.h>
16#include <promeki/core/list.h>
17
19
36class Frame {
38 public:
45
47 Frame() = default;
48
53 const Image::PtrList &imageList() const { return _imageList; }
54
59 Image::PtrList &imageList() { return _imageList; }
60
65 const Audio::PtrList &audioList() const { return _audioList; }
66
71 Audio::PtrList &audioList() { return _audioList; }
72
77 const Metadata &metadata() const { return _metadata; }
78
83 Metadata &metadata() { return _metadata; }
84
85 private:
86 Image::PtrList _imageList;
87 Audio::PtrList _audioList;
88 Metadata _metadata;
89};
90
promeki::List< Ptr > PtrList
List of shared Audio pointers.
Definition audio.h:45
A media frame containing images, audio, and metadata.
Definition frame.h:36
SharedPtr< Frame > Ptr
Shared pointer type for Frame.
Definition frame.h:40
const Metadata & metadata() const
Returns a const reference to the frame metadata.
Definition frame.h:77
promeki::List< Frame > List
Plain value list of Frame objects.
Definition frame.h:42
Audio::PtrList & audioList()
Returns a mutable reference to the list of audio tracks.
Definition frame.h:71
Metadata & metadata()
Returns a mutable reference to the frame metadata.
Definition frame.h:83
promeki::List< Ptr > PtrList
List of shared pointers to Frame objects.
Definition frame.h:44
const Image::PtrList & imageList() const
Returns a const reference to the list of image planes.
Definition frame.h:53
Image::PtrList & imageList()
Returns a mutable reference to the list of image planes.
Definition frame.h:59
const Audio::PtrList & audioList() const
Returns a const reference to the list of audio tracks.
Definition frame.h:65
Frame()=default
Constructs an empty frame with no images, audio, or metadata.
promeki::List< Ptr > PtrList
List of shared Image pointers.
Definition image.h:58
Dynamic array container wrapping std::vector.
Definition list.h:40
List()=default
Default constructor. Creates an empty list.
Key-value metadata container using typed Variant values.
Definition metadata.h:68
#define PROMEKI_NAMESPACE_BEGIN
Starts a promeki namespace block.
Definition namespace.h:14
#define PROMEKI_NAMESPACE_END
Ends a promeki namespace block.
Definition namespace.h:19
#define PROMEKI_SHARED_FINAL(TYPE)
Macro for non-polymorphic native shared objects.
Definition sharedptr.h:88