class
sprite_affine_second_attributes_hbe_ptrstd::shared_ptr like smart pointer that retains shared ownership of a H-Blank effect which changes the attributes to commit to the second GBA register of an affine sprite (with an attached sprite_
Base classes
- class hbe_ptr
- std::shared_ptr like smart pointer that retains shared ownership of a H-Blank effect.
Public static functions
-
static auto create(sprite_
ptr sprite, const span<const sprite_ affine_ second_ attributes>& attributes_ref) -> sprite_ affine_ second_ attributes_ hbe_ ptr - Creates a sprite_
affine_ second_ attributes_ hbe_ ptr which changes the attributes to commit to the second GBA register of an affine sprite in each screen horizontal line. -
static auto create_optional(sprite_
ptr sprite, const span<const sprite_ affine_ second_ attributes>& attributes_ref) -> optional<sprite_ affine_ second_ attributes_ hbe_ ptr> - Creates a sprite_
affine_ second_ attributes_ hbe_ ptr which changes the attributes to commit to the second GBA register of an affine sprite in each screen horizontal line.
Public functions
-
auto sprite() const -> const sprite_
ptr& - Returns the affine sprite modified by this H-Blank effect.
-
auto attributes_ref() const -> span<const sprite_
affine_ second_ attributes> - Returns the referenced array of 160 sprite_
affine_ second_ attributes objects with the attributes to commit to the second GBA register of the given affine sprite in each screen horizontal line. -
void set_attributes_ref(const span<const sprite_
affine_ second_ attributes>& attributes_ref) - Sets the reference to an array of 160 sprite_
affine_ second_ attributes objects with the attributes to commit to the second GBA register of the given affine sprite in each screen horizontal line. - void reload_attributes_ref()
- Rereads the content of the referenced attributes to commit to the second GBA register of the given affine sprite in each screen horizontal line.
-
void swap(sprite_
affine_ second_ attributes_ hbe_ ptr& other) - Exchanges the contents of this sprite_
affine_ second_ attributes_ hbe_ ptr with those of the other one.
Friends
-
void swap(sprite_
affine_ second_ attributes_ hbe_ ptr& a, sprite_ affine_ second_ attributes_ hbe_ ptr& b) - Exchanges the contents of a sprite_
affine_ second_ attributes_ hbe_ ptr with those of another one.
Function documentation
static sprite_ affine_ second_ attributes_ hbe_ ptr bn:: sprite_affine_second_attributes_hbe_ptr:: create(sprite_ ptr sprite,
const span<const sprite_ affine_ second_ attributes>& attributes_ref)
Creates a sprite_
Parameters | |
---|---|
sprite | Affine sprite (with an attached sprite_ |
attributes_ref | Reference to an array of 160 sprite_ |
Returns | The requested sprite_ |
The horizontal position of the attributes are added as a delta to the horizontal position of the sprite. In other words, they are relative instead of absolute.
The attributes are not copied but referenced, so they should outlive sprite_
static optional<sprite_ affine_ second_ attributes_ hbe_ ptr> bn:: sprite_affine_second_attributes_hbe_ptr:: create_optional(sprite_ ptr sprite,
const span<const sprite_ affine_ second_ attributes>& attributes_ref)
Creates a sprite_
Parameters | |
---|---|
sprite | Affine sprite (with an attached sprite_ |
attributes_ref | Reference to an array of 160 sprite_ |
Returns | The requested sprite_ |
The horizontal position of the attributes are added as a delta to the horizontal position of the sprite. In other words, they are relative instead of absolute.
The attributes are not copied but referenced, so they should outlive sprite_
span<const sprite_ affine_ second_ attributes> bn:: sprite_affine_second_attributes_hbe_ptr:: attributes_ref() const
Returns the referenced array of 160 sprite_
The horizontal position of the attributes are added as a delta to the horizontal position of the sprite. In other words, they are relative instead of absolute.
The attributes are not copied but referenced, so they should outlive sprite_
void bn:: sprite_affine_second_attributes_hbe_ptr:: set_attributes_ref(const span<const sprite_ affine_ second_ attributes>& attributes_ref)
Sets the reference to an array of 160 sprite_
The horizontal position of the attributes are added as a delta to the horizontal position of the sprite. In other words, they are relative instead of absolute.
The attributes are not copied but referenced, so they should outlive sprite_
void bn:: sprite_affine_second_attributes_hbe_ptr:: reload_attributes_ref()
Rereads the content of the referenced attributes to commit to the second GBA register of the given affine sprite in each screen horizontal line.
The horizontal position of the attributes are added as a delta to the horizontal position of the sprite. In other words, they are relative instead of absolute.
The attributes are not copied but referenced, so they should outlive sprite_
void bn:: sprite_affine_second_attributes_hbe_ptr:: swap(sprite_ affine_ second_ attributes_ hbe_ ptr& other)
Exchanges the contents of this sprite_
Parameters | |
---|---|
other | sprite_ |
void swap(sprite_ affine_ second_ attributes_ hbe_ ptr& a,
sprite_ affine_ second_ attributes_ hbe_ ptr& b)
Exchanges the contents of a sprite_
Parameters | |
---|---|
a | First sprite_ |
b | Second sprite_ |