# scenic::FakeFlatland

## Summary

### Inheritance

Inherits from: Allocator_TestBase, Flatland_TestBase

| ### Constructors and Destructors ||
|---|---|
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1aa8d6e03bd1bb3eb0b6a3e049382d226c()` ||
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1ab89e14cbec5d31142db8f3ba139b7a6c(const https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland &)` ||
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a67d411cca7f1f3f7d007f832e863dcc5()` ||

| ### Public types ||
|---|---|
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1ab9d336945d156bb1a27e93c8301a863f` | using `std::function< void(fuchsia::ui::composition::PresentArgs)>` |

| ### Public functions ||
|---|---|
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1aac41f2d0ff93ea9ec7e1b844559941f9(fuchsia::ui::composition::TransformId parent_transform_id, fuchsia::ui::composition::TransformId child_transform_id) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a7345f313471f45bc7808b52cdac350c6() override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a9563f956c4432e2c2e40586b0075d9c6(async_dispatcher_t *dispatcher)` | `fuchsia::ui::composition::AllocatorHandle` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a22193ef4f19ad7ceada67aac9b42a8b3(async_dispatcher_t *dispatcher)` | `fuchsia::ui::composition::FlatlandHandle` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1abf4ff8bb61236f082af8dc24042ae3f5(fuchsia::ui::composition::ContentId image_id, fuchsia::ui::composition::BufferCollectionImportToken import_token, uint32_t vmo_index, fuchsia::ui::composition::ImageProperties properties) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a3d093544bb49e223009d753dd7418938(fuchsia::ui::composition::TransformId transform_id) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a2158e29ebc9f2a4b9a36b4b379f7cf5d(fuchsia::ui::views::ViewCreationToken token, https://fuchsia.dev/reference/cpp/class/fidl/interface-request#classfidl_1_1_interface_request< fuchsia::ui::composition::ParentViewportWatcher > parent_viewport_watcher) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a0b933d149f488f0ef641a48ac723360d(fuchsia::ui::views::ViewCreationToken token, fuchsia::ui::views::ViewIdentityOnCreation view_identity, fuchsia::ui::composition::ViewBoundProtocols view_protocols, https://fuchsia.dev/reference/cpp/class/fidl/interface-request#classfidl_1_1_interface_request< fuchsia::ui::composition::ParentViewportWatcher > parent_viewport_watcher) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a24defb0a16debcdad83ae708a154ddda(fuchsia::ui::composition::ContentId viewport_id, fuchsia::ui::views::ViewportCreationToken token, fuchsia::ui::composition::ViewportProperties properties, https://fuchsia.dev/reference/cpp/class/fidl/interface-request#classfidl_1_1_interface_request< fuchsia::ui::composition::ChildViewWatcher > child_view_watcher) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1afb65bfaeb8c73443a992cecb026a6287(fuchsia::ui::composition::FlatlandError error)` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1adf08be1e561039698a73e4a6df9207f1(fuchsia::scenic::scheduling::FramePresentedInfo frame_presented_info)` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1aca4df4d4b3679ebc4c6f2e967a83463f(fuchsia::ui::composition::OnNextFrameBeginValues on_next_frame_begin_values)` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a04ebc9b83eea944a6a2ed60085a98df7(async_dispatcher_t *dispatcher)` | `https://fuchsia.dev/reference/cpp/class/fit/function-impl#classfit_1_1function__impl< fuchsia::ui::composition::Allocator >` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a8af4e087252ec485042aa4e6dba8f19c(async_dispatcher_t *dispatcher)` | `https://fuchsia.dev/reference/cpp/class/fit/function-impl#classfit_1_1function__impl< fuchsia::ui::composition::Flatland >` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a3886adcef83b0feba9c084f44d414484(const std::string & name) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a1243d6d2deb8d6602985bb4495747877(fuchsia::ui::composition::PresentArgs args) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a2941ad3127978b84fad6dd21eefb929c(fuchsia::ui::composition::RegisterBufferCollectionArgs args, RegisterBufferCollectionCallback callback) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a3e07320f3006431b080230c994ffa874(fuchsia::ui::composition::ContentId image_id) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1ab949b004529a65a362db99aa3288a289(fuchsia::ui::composition::TransformId transform_id) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1ac2a71dcbc18c51424e0a066138de0534(fuchsia::ui::composition::ContentId viewport_id, ReleaseViewportCallback callback) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1aa7f6adf5476bb7a6bfd1e0bf98dfe018(fuchsia::ui::composition::TransformId parent_transform_id, fuchsia::ui::composition::TransformId child_transform_id) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a0b6bb65d9b152e3ca233eaa87b86ffd0(fuchsia::ui::composition::TransformId transform_id, std::unique_ptr< fuchsia::math::Rect > bounds) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1ad4092a9d7f872d99c73e917596155aef(fuchsia::ui::composition::TransformId transform_id, fuchsia::ui::composition::ContentId content_id) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a57bfc5ae5d87a529eea50888edca1444(std::string debug_name) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a99ce6130df7b378c147bb28c31e3ea02(fuchsia::ui::composition::TransformId transform_id, std::vector< fuchsia::ui::composition::HitRegion > regions) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a6558c919eeaecdcf082925efd765e446(fuchsia::ui::composition::ContentId image_id, fuchsia::ui::composition::BlendMode blend_mode) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a60e4648d81aad6236c7949ab01694d5f(fuchsia::ui::composition::ContentId image_id, fuchsia::math::SizeU size) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a03329f81432d4c13cb0ea071c3324461(fuchsia::ui::composition::ContentId image_id, fuchsia::ui::composition::ImageFlip flip) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a015aaaf2a67741fd2612749a7975b0a8(fuchsia::ui::composition::ContentId image_id, float opacity) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a3b8c222a832fc0535e6bee1a1dcfd09b(fuchsia::ui::composition::ContentId image_id, fuchsia::math::RectF rect) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a3d710b0e49ff0a19c6adf3ca69bce6f2(fuchsia::ui::composition::TransformId transform_id, fuchsia::ui::composition::HitTestInteraction hit_test) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1aaef064e310793241b111cf6ea6d80413(fuchsia::ui::composition::TransformId transform_id, float value) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a9d21490415a88a739a59b8cdb1f8c118(fuchsia::ui::composition::TransformId transform_id, fuchsia::ui::composition::Orientation orientation) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a41c2b44ec6e291cfdf6d78ebe982836a(PresentHandler present_handler)` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a3069ddb11d91a6706da60eb5b52bbf9b(fuchsia::ui::composition::TransformId transform_id) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a6877cdea0181864d240b9de7756d77ce(fuchsia::ui::composition::TransformId transform_id, fuchsia::math::VecF scale) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a3c724bdb62f73969d383edd8d30229fc(fuchsia::ui::composition::TransformId transform_id, fuchsia::math::Vec translation) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1ad35d7b5c25d1747564995c803270c3a7(fuchsia::ui::composition::ContentId viewport_id, fuchsia::ui::composition::ViewportProperties properties) override` | `void` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1af04379c42bc6b162d0f6136ac91c6090() const ` | `const std::string &` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a34b2fa8f9f689adb4ccfaad1f2cc939a()` | `const https://fuchsia.dev/reference/cpp/struct/scenic/fake-graph#structscenic_1_1_fake_graph &` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1ab7ede30ca98e2b7b590d61fd8aa4443b()` | `https://fuchsia.dev/reference/cpp/struct/scenic/fake-flatland/graph-bindings#structscenic_1_1_fake_flatland_1_1_graph_bindings &` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1aaab7c400f4f6f6dd31507385e20fc88c() const ` | `bool` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1a81c25988a5f910136a448837d9fb09ba() const ` | `bool` |
| `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland_1abf086c38700069868ed7d65243b2e5b7(const https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland &)=delete` | `https://fuchsia.dev/reference/cpp/class/scenic/fake-flatland#classscenic_1_1_fake_flatland &` |

| ### Structs ||
|---|---|
| [scenic::FakeFlatland::BufferCollectionBinding](https://fuchsia.dev/reference/cpp/struct/scenic/fake-flatland/buffer-collection-binding) |   |
| [scenic::FakeFlatland::ChildViewWatcher](https://fuchsia.dev/reference/cpp/struct/scenic/fake-flatland/child-view-watcher) |   |
| [scenic::FakeFlatland::GraphBindings](https://fuchsia.dev/reference/cpp/struct/scenic/fake-flatland/graph-bindings) |   |
| [scenic::FakeFlatland::ParentViewportWatcher](https://fuchsia.dev/reference/cpp/struct/scenic/fake-flatland/parent-viewport-watcher) |   |

## Public types

### PresentHandler

```c++
std::function< void(fuchsia::ui::composition::PresentArgs)> PresentHandler
```

## Public functions

### AddChild

```c++
void AddChild(
  fuchsia::ui::composition::TransformId parent_transform_id,
  fuchsia::ui::composition::TransformId child_transform_id
) override
```

### Clear

```c++
void Clear() override
```

### ConnectAllocator

```c++
fuchsia::ui::composition::AllocatorHandle ConnectAllocator(
  async_dispatcher_t *dispatcher
)
```

### ConnectFlatland

```c++
fuchsia::ui::composition::FlatlandHandle ConnectFlatland(
  async_dispatcher_t *dispatcher
)
```

### CreateImage

```c++
void CreateImage(
  fuchsia::ui::composition::ContentId image_id,
  fuchsia::ui::composition::BufferCollectionImportToken import_token,
  uint32_t vmo_index,
  fuchsia::ui::composition::ImageProperties properties
) override
```

### CreateTransform

```c++
void CreateTransform(
  fuchsia::ui::composition::TransformId transform_id
) override
```

### CreateView

```c++
void CreateView(
  fuchsia::ui::views::ViewCreationToken token,
  fidl::InterfaceRequest< fuchsia::ui::composition::ParentViewportWatcher > parent_viewport_watcher
) override
```

### CreateView2

```c++
void CreateView2(
  fuchsia::ui::views::ViewCreationToken token,
  fuchsia::ui::views::ViewIdentityOnCreation view_identity,
  fuchsia::ui::composition::ViewBoundProtocols view_protocols,
  fidl::InterfaceRequest< fuchsia::ui::composition::ParentViewportWatcher > parent_viewport_watcher
) override
```

### CreateViewport

```c++
void CreateViewport(
  fuchsia::ui::composition::ContentId viewport_id,
  fuchsia::ui::views::ViewportCreationToken token,
  fuchsia::ui::composition::ViewportProperties properties,
  fidl::InterfaceRequest< fuchsia::ui::composition::ChildViewWatcher > child_view_watcher
) override
```

### Disconnect

```c++
void Disconnect(
  fuchsia::ui::composition::FlatlandError error
)
```

### FakeFlatland

```c++
 FakeFlatland()
```

### FakeFlatland

```c++
 FakeFlatland(
  const FakeFlatland &
)=delete
```

### FireOnFramePresentedEvent

```c++
void FireOnFramePresentedEvent(
  fuchsia::scenic::scheduling::FramePresentedInfo frame_presented_info
)
```

### FireOnNextFrameBeginEvent

```c++
void FireOnNextFrameBeginEvent(
  fuchsia::ui::composition::OnNextFrameBeginValues on_next_frame_begin_values
)
```

### GetAllocatorRequestHandler

```c++
fidl::InterfaceRequestHandler< fuchsia::ui::composition::Allocator > GetAllocatorRequestHandler(
  async_dispatcher_t *dispatcher
)
```

### GetFlatlandRequestHandler

```c++
fidl::InterfaceRequestHandler< fuchsia::ui::composition::Flatland > GetFlatlandRequestHandler(
  async_dispatcher_t *dispatcher
)
```

### NotImplemented_

```c++
void NotImplemented_(
  const std::string & name
) override
```

### Present

```c++
void Present(
  fuchsia::ui::composition::PresentArgs args
) override
```

### RegisterBufferCollection

```c++
void RegisterBufferCollection(
  fuchsia::ui::composition::RegisterBufferCollectionArgs args,
  RegisterBufferCollectionCallback callback
) override
```

### ReleaseImage

```c++
void ReleaseImage(
  fuchsia::ui::composition::ContentId image_id
) override
```

### ReleaseTransform

```c++
void ReleaseTransform(
  fuchsia::ui::composition::TransformId transform_id
) override
```

### ReleaseViewport

```c++
void ReleaseViewport(
  fuchsia::ui::composition::ContentId viewport_id,
  ReleaseViewportCallback callback
) override
```

### RemoveChild

```c++
void RemoveChild(
  fuchsia::ui::composition::TransformId parent_transform_id,
  fuchsia::ui::composition::TransformId child_transform_id
) override
```

### SetClipBoundary

```c++
void SetClipBoundary(
  fuchsia::ui::composition::TransformId transform_id,
  std::unique_ptr< fuchsia::math::Rect > bounds
) override
```

### SetContent

```c++
void SetContent(
  fuchsia::ui::composition::TransformId transform_id,
  fuchsia::ui::composition::ContentId content_id
) override
```

### SetDebugName

```c++
void SetDebugName(
  std::string debug_name
) override
```

### SetHitRegions

```c++
void SetHitRegions(
  fuchsia::ui::composition::TransformId transform_id,
  std::vector< fuchsia::ui::composition::HitRegion > regions
) override
```

### SetImageBlendingFunction

```c++
void SetImageBlendingFunction(
  fuchsia::ui::composition::ContentId image_id,
  fuchsia::ui::composition::BlendMode blend_mode
) override
```

### SetImageDestinationSize

```c++
void SetImageDestinationSize(
  fuchsia::ui::composition::ContentId image_id,
  fuchsia::math::SizeU size
) override
```

### SetImageFlip

```c++
void SetImageFlip(
  fuchsia::ui::composition::ContentId image_id,
  fuchsia::ui::composition::ImageFlip flip
) override
```

### SetImageOpacity

```c++
void SetImageOpacity(
  fuchsia::ui::composition::ContentId image_id,
  float opacity
) override
```

### SetImageSampleRegion

```c++
void SetImageSampleRegion(
  fuchsia::ui::composition::ContentId image_id,
  fuchsia::math::RectF rect
) override
```

### SetInfiniteHitRegion

```c++
void SetInfiniteHitRegion(
  fuchsia::ui::composition::TransformId transform_id,
  fuchsia::ui::composition::HitTestInteraction hit_test
) override
```

### SetOpacity

```c++
void SetOpacity(
  fuchsia::ui::composition::TransformId transform_id,
  float value
) override
```

### SetOrientation

```c++
void SetOrientation(
  fuchsia::ui::composition::TransformId transform_id,
  fuchsia::ui::composition::Orientation orientation
) override
```

### SetPresentHandler

```c++
void SetPresentHandler(
  PresentHandler present_handler
)
```

### SetRootTransform

```c++
void SetRootTransform(
  fuchsia::ui::composition::TransformId transform_id
) override
```

### SetScale

```c++
void SetScale(
  fuchsia::ui::composition::TransformId transform_id,
  fuchsia::math::VecF scale
) override
```

### SetTranslation

```c++
void SetTranslation(
  fuchsia::ui::composition::TransformId transform_id,
  fuchsia::math::Vec translation
) override
```

### SetViewportProperties

```c++
void SetViewportProperties(
  fuchsia::ui::composition::ContentId viewport_id,
  fuchsia::ui::composition::ViewportProperties properties
) override
```

### debug_name

```c++
const std::string & debug_name() const 
```

### graph

```c++
const FakeGraph & graph()
```

### graph_bindings

```c++
GraphBindings & graph_bindings()
```

### is_allocator_connected

```c++
bool is_allocator_connected() const 
```

### is_flatland_connected

```c++
bool is_flatland_connected() const 
```

### operator=

```c++
FakeFlatland & operator=(
  const FakeFlatland &
)=delete
```

### \~FakeFlatland

```c++
 ~FakeFlatland() override
```