SDL3pp
A slim C++ wrapper for SDL3
Loading...
Searching...
No Matches
Public Member Functions | List of all members

Animated image support. More...

Inheritance diagram for SDL::Animation:
Inheritance graph
[legend]

Public Member Functions

constexpr Animation ()=default
 Default ctor.
 
constexpr Animation (const AnimationRaw resource)
 Constructs from AnimationParam. More...
 
constexpr Animation (const Animation &other)=delete
 Copy constructor.
 
constexpr Animation (Animation &&other)
 Move constructor.
 
constexpr Animation (const AnimationRef &other)=delete
 
constexpr Animation (AnimationRef &&other)=delete
 
 Animation (StringParam file)
 Load an animation from a file. More...
 
 Animation (IOStreamParam src, bool closeio=false)
 Load an animation from an IOStream. More...
 
 ~Animation ()
 Destructor.
 
Animationoperator= (Animation other)
 Assignment operator.
 
constexpr AnimationRaw get () const
 Retrieves underlying AnimationRaw.
 
constexpr AnimationRaw release ()
 Retrieves underlying AnimationRaw and clear this.
 
constexpr auto operator<=> (const Animation &other) const =default
 Comparison.
 
constexpr bool operator== (std::nullptr_t _) const
 Comparison.
 
constexpr operator bool () const
 Converts to bool.
 
constexpr operator AnimationParam () const
 Converts to AnimationParam.
 
void Free ()
 Dispose of an Animation and free its resources. More...
 
int GetWidth () const
 Get the width in pixels.
 
int GetHeight () const
 Get the height in pixels.
 
Point GetSize () const
 Get the size in pixels.
 
int GetCount () const
 Return the number of frames.
 
SurfaceRaw GetFrame (int index) const
 Return the frame image under given index. More...
 
int GetDelay (int index) const
 Return the frame delay under given index. More...
 

Detailed Description

Currently only animated GIFs and WEBP images are supported.

Category:
Resource

Constructor & Destructor Documentation

◆ Animation() [1/3]

constexpr SDL::Animation::Animation ( const AnimationRaw  resource)
inlineexplicitconstexpr
Parameters
resourcea AnimationRaw to be wrapped.

This assumes the ownership, call release() if you need to take back.

◆ Animation() [2/3]

SDL::Animation::Animation ( StringParam  file)
inline

When done with the returned animation, the app should dispose of it with a call to Animation.Free().

Parameters
filepath on the filesystem containing an animated image.
Postcondition
a new Animation, or nullptr on error.
Since
This function is available since SDL_image 3.0.0.
See also
Animation.Free

◆ Animation() [3/3]

SDL::Animation::Animation ( IOStreamParam  src,
bool  closeio = false 
)
inline

If closeio is true, src will be closed before returning, whether this function succeeds or not. SDL_image reads everything it needs from src during this call in any case.

When done with the returned animation, the app should dispose of it with a call to Animation.Free().

Parameters
srcan IOStream that data will be read from.
closeiotrue to close/free the IOStream before returning, false to leave it open.
Postcondition
a new Animation, or nullptr on error.
Since
This function is available since SDL_image 3.0.0.
See also
Animation.Free

Member Function Documentation

◆ GetDelay()

int SDL::Animation::GetDelay ( int  index) const
inline
Parameters
indexthe index to get frame, within [0, GetCount() - 1]

◆ GetFrame()

SurfaceRaw SDL::Animation::GetFrame ( int  index) const
inline
Parameters
indexthe index to get frame, within [0, GetCount() - 1]

The documentation for this class was generated from the following file: