| Flutter Impeller |

Public Member Functions | List of all members
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) {
1175 case Contents::ClipCoverage::Type::kNoChange:
1176 return;
1177 case Contents::ClipCoverage::Type::kAppend:
1178 rendered_clip_entities_.push_back(entity.Clone());
1179 break;
1180 case Contents::ClipCoverage::Type::kRestore:
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/entity/entity_pass.h
- impeller/entity/entity_pass.cc

impeller::Contents::ClipCoverage::Type::kRestore
@ kRestore
impeller::Contents::ClipCoverage::Type::kAppend
@ kAppend
impeller::Contents::ClipCoverage::Type::kNoChange
@ kNoChange