Skip to content

Commit

Permalink
[Impeller] libImpeller: A C++ wrapper to the Impeller API. (#56682)
Browse files Browse the repository at this point in the history
_`impeller.hpp` is to `impeller.h` what `vulkan.hpp` is to `vulkan.h`_

* A single header C++ 17 library that only depends on impeller.h and standard libc++ utilities.
* The C++ library proc. table is setup at runtime (via dlsym and related methods). Impeller users don't need to link against libimpeller.so as long as they can discover it at runtime.
* RAII wrappers for all opaque objects.
* Namespaces are configurable depending on target.
* Included in the distributed SDK next to impeller.h.
  • Loading branch information
chinmaygarde authored Nov 22, 2024
1 parent bac6c19 commit 03eb3db
Show file tree
Hide file tree
Showing 6 changed files with 1,630 additions and 110 deletions.
4 changes: 4 additions & 0 deletions ci/licenses_golden/licenses_flutter
Original file line number Diff line number Diff line change
Expand Up @@ -43505,7 +43505,9 @@ ORIGIN: ../../../flutter/impeller/toolkit/interop/image_filter.cc + ../../../flu
ORIGIN: ../../../flutter/impeller/toolkit/interop/image_filter.h + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/impeller.cc + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/impeller.h + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/impeller.hpp + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/impeller_c.c + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/impeller_cc.cc + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/mask_filter.cc + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/mask_filter.h + ../../../flutter/LICENSE
ORIGIN: ../../../flutter/impeller/toolkit/interop/object.cc + ../../../flutter/LICENSE
Expand Down Expand Up @@ -46406,7 +46408,9 @@ FILE: ../../../flutter/impeller/toolkit/interop/image_filter.cc
FILE: ../../../flutter/impeller/toolkit/interop/image_filter.h
FILE: ../../../flutter/impeller/toolkit/interop/impeller.cc
FILE: ../../../flutter/impeller/toolkit/interop/impeller.h
FILE: ../../../flutter/impeller/toolkit/interop/impeller.hpp
FILE: ../../../flutter/impeller/toolkit/interop/impeller_c.c
FILE: ../../../flutter/impeller/toolkit/interop/impeller_cc.cc
FILE: ../../../flutter/impeller/toolkit/interop/mask_filter.cc
FILE: ../../../flutter/impeller/toolkit/interop/mask_filter.h
FILE: ../../../flutter/impeller/toolkit/interop/object.cc
Expand Down
10 changes: 8 additions & 2 deletions impeller/toolkit/interop/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,9 @@ impeller_component("interop") {
"image_filter.h",
"impeller.cc",
"impeller.h",
"impeller.hpp",
"impeller_c.c",
"impeller_cc.cc",
"mask_filter.cc",
"mask_filter.h",
"object.cc",
Expand Down Expand Up @@ -119,13 +121,17 @@ zip_bundle("sdk") {
deps = [ ":library" ]

files = [
{
source = "README.md"
destination = "README.md"
},
{
source = "impeller.h"
destination = "include/impeller.h"
},
{
source = "README.md"
destination = "README.md"
source = "impeller.hpp"
destination = "include/impeller.hpp"
},
]

Expand Down
Loading

0 comments on commit 03eb3db

Please sign in to comment.