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

Semi-safe reference for Animation.

Inheritance diagram for SDL::AnimationRef:
Inheritance graph
[legend]
Collaboration diagram for SDL::AnimationRef:
Collaboration graph
[legend]

Public Member Functions

 AnimationRef (AnimationParam resource) noexcept
 Constructs from AnimationParam. More...
 
 AnimationRef (AnimationRaw resource) noexcept
 Constructs from AnimationParam. More...
 
constexpr AnimationRef (const AnimationRef &other) noexcept=default
 Copy constructor.
 
 ~AnimationRef ()
 Destructor.
 
constexpr Animation (std::nullptr_t=nullptr) noexcept
 Default ctor.
 
constexpr Animation (const AnimationRaw resource) noexcept
 Constructs from AnimationParam. More...
 
constexpr Animation (const Animation &other) noexcept=default
 Copy constructor.
 
constexpr Animation (Animation &&other) noexcept
 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...
 
- Public Member Functions inherited from SDL::Animation
constexpr Animation (std::nullptr_t=nullptr) noexcept
 Default ctor.
 
constexpr Animation (const AnimationRaw resource) noexcept
 Constructs from AnimationParam. More...
 
constexpr Animation (Animation &&other) noexcept
 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...
 
constexpr const AnimationRaw operator-> () const noexcept
 member access to underlying AnimationRaw.
 
constexpr AnimationRaw operator-> () noexcept
 member access to underlying AnimationRaw.
 
 ~Animation ()
 Destructor.
 
constexpr Animationoperator= (Animation &&other) noexcept
 Assignment operator.
 
constexpr AnimationRaw get () const noexcept
 Retrieves underlying AnimationRaw.
 
constexpr AnimationRaw release () noexcept
 Retrieves underlying AnimationRaw and clear this.
 
constexpr auto operator<=> (const Animation &other) const noexcept=default
 Comparison.
 
constexpr operator bool () const noexcept
 Converts to bool.
 
constexpr operator AnimationParam () const noexcept
 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.
 
Surface 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...
 

Additional Inherited Members

- Protected Member Functions inherited from SDL::Animation
constexpr Animation (const Animation &other) noexcept=default
 Copy constructor.
 
constexpr Animationoperator= (const Animation &other) noexcept=default
 Assignment operator.
 

Constructor & Destructor Documentation

◆ AnimationRef() [1/2]

SDL::AnimationRef::AnimationRef ( AnimationParam  resource)
inlinenoexcept
Parameters
resourcea AnimationRaw or Animation.

This does not takes ownership!

◆ AnimationRef() [2/2]

SDL::AnimationRef::AnimationRef ( AnimationRaw  resource)
inlinenoexcept
Parameters
resourcea AnimationRaw or Animation.

This does not takes ownership!

Member Function Documentation

◆ Animation() [1/3]

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

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

◆ Animation() [2/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

◆ Animation() [3/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

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