Flutter Impeller
impeller::EntityPassClipRecorder Class Reference

A class that tracks all clips that have been recorded in the current entity pass stencil. More...

#include <entity_pass.h>

Public Member Functions

 EntityPassClipRecorder ()
 
 ~EntityPassClipRecorder ()=default
 
void RecordEntity (const Entity &entity, Contents::ClipCoverage::Type type)
 Record the entity based on the provided coverage [type]. More...
 
const std::vector< Entity > & GetReplayEntities () const
 

Detailed Description

A class that tracks all clips that have been recorded in the current entity pass stencil.

These clips are replayed when restoring the backdrop so that the stencil buffer is left in an identical state.

Definition at line 329 of file entity_pass.h.

Constructor & Destructor Documentation

◆ EntityPassClipRecorder()

impeller::EntityPassClipRecorder::EntityPassClipRecorder ( )

Definition at line 1170 of file entity_pass.cc.

1170 {}

◆ ~EntityPassClipRecorder()

impeller::EntityPassClipRecorder::~EntityPassClipRecorder ( )
default

Member Function Documentation

◆ GetReplayEntities()

const std::vector< Entity > & impeller::EntityPassClipRecorder::GetReplayEntities ( ) const

Definition at line 1186 of file entity_pass.cc.

1186  {
1187  return rendered_clip_entities_;
1188 }

◆ RecordEntity()

void impeller::EntityPassClipRecorder::RecordEntity ( const Entity entity,
Contents::ClipCoverage::Type  type 
)

Record the entity based on the provided coverage [type].

Definition at line 1172 of file entity_pass.cc.

1173  {
1174  switch (type) {
1176  return;
1178  rendered_clip_entities_.push_back(entity.Clone());
1179  break;
1181  rendered_clip_entities_.pop_back();
1182  break;
1183  }
1184 }

References impeller::Entity::Clone(), and impeller::kRestore.


The documentation for this class was generated from the following files:
impeller::Contents::ClipCoverage::Type::kRestore
@ kRestore
impeller::Contents::ClipCoverage::Type::kAppend
@ kAppend
impeller::Contents::ClipCoverage::Type::kNoChange
@ kNoChange