From 31f0ed55c9b84c5ff5b6ce96e54cdfa28dd209dc Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Fri, 18 Aug 2023 21:56:48 +1000 Subject: [PATCH 01/29] Expose Schema on Tileset. --- .../Cesium3DTilesReader/SchemaReader.h | 3 + Cesium3DTilesReader/src/SchemaReader.cpp | 15 ++ Cesium3DTilesSelection/CMakeLists.txt | 2 + .../include/Cesium3DTilesSelection/Tileset.h | 2 + .../TilesetContentLoader.h | 11 ++ Cesium3DTilesSelection/src/Tileset.cpp | 5 + .../src/TilesetContentManager.cpp | 10 ++ .../src/TilesetContentManager.h | 6 + .../src/TilesetJsonLoader.cpp | 14 +- .../test/TestTilesetJsonLoader.cpp | 13 ++ .../test/TestTilesetSelectionAlgorithm.cpp | 49 ++++++ .../test/data/WithMetadata/README.md | 2 + .../test/data/WithMetadata/ll.b3dm | Bin 0 -> 9700 bytes .../test/data/WithMetadata/lr.b3dm | Bin 0 -> 9704 bytes .../test/data/WithMetadata/parent.b3dm | Bin 0 -> 9680 bytes .../test/data/WithMetadata/tileset.json | 144 ++++++++++++++++++ .../test/data/WithMetadata/ul.b3dm | Bin 0 -> 9684 bytes .../test/data/WithMetadata/ur.b3dm | Bin 0 -> 9688 bytes .../include/CesiumJsonReader/JsonReader.h | 32 ++++ CesiumJsonReader/src/JsonReader.cpp | 11 ++ 20 files changed, 318 insertions(+), 1 deletion(-) create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/README.md create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/ll.b3dm create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/lr.b3dm create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/parent.b3dm create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/tileset.json create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/ul.b3dm create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/ur.b3dm diff --git a/Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h b/Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h index 1dd433aa1..c02339414 100644 --- a/Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h +++ b/Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h @@ -6,6 +6,7 @@ #include #include +#include #include #include @@ -65,6 +66,8 @@ class CESIUM3DTILESREADER_API SchemaReader { */ SchemaReaderResult readSchema(const gsl::span& data) const; + SchemaReaderResult readSchema(const rapidjson::Value& value) const; + private: CesiumJsonReader::JsonReaderOptions _context; }; diff --git a/Cesium3DTilesReader/src/SchemaReader.cpp b/Cesium3DTilesReader/src/SchemaReader.cpp index 6d76f9f95..28d726032 100644 --- a/Cesium3DTilesReader/src/SchemaReader.cpp +++ b/Cesium3DTilesReader/src/SchemaReader.cpp @@ -45,4 +45,19 @@ SchemaReader::readSchema(const gsl::span& data) const { return result; } + +SchemaReaderResult +SchemaReader::readSchema(const rapidjson::Value& value) const { + CESIUM_TRACE("Cesium3DTilesReader::SchemaReader::readSchemaValue"); + const CesiumJsonReader::JsonReaderOptions& context = this->getOptions(); + SchemaJsonHandler schemaHandler(context); + CesiumJsonReader::ReadJsonResult jsonResult = + CesiumJsonReader::JsonReader::readJson(value, schemaHandler); + + return SchemaReaderResult{ + std::move(jsonResult.value), + std::move(jsonResult.errors), + std::move(jsonResult.warnings)}; +} + } // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesSelection/CMakeLists.txt b/Cesium3DTilesSelection/CMakeLists.txt index 793a7da73..e0736a313 100644 --- a/Cesium3DTilesSelection/CMakeLists.txt +++ b/Cesium3DTilesSelection/CMakeLists.txt @@ -43,6 +43,8 @@ target_include_directories( target_link_libraries(Cesium3DTilesSelection PUBLIC + Cesium3DTiles + Cesium3DTilesReader CesiumAsync CesiumGeospatial CesiumGeometry diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h index c0de9c35d..4f0ee26ef 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h @@ -98,6 +98,8 @@ class CESIUM3DTILESSELECTION_API Tileset final { */ const std::vector& getTilesetCredits() const noexcept; + const std::optional& getSchema() const noexcept; + /** * @brief Sets whether or not the tileset's credits should be shown on screen. * @param showCreditsOnScreen Whether the credits should be shown on screen. diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h index 5b767456b..1bfba842f 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h @@ -7,6 +7,7 @@ #include "TileLoadResult.h" #include "TilesetOptions.h" +#include #include #include #include @@ -135,5 +136,15 @@ class CESIUM3DTILESSELECTION_API TilesetContentLoader { * @return The {@link TileChildrenResult} that stores the tile's children */ virtual TileChildrenResult createTileChildren(const Tile& tile) = 0; + + std::optional& getSchema() noexcept { + return this->_schema; + } + const std::optional& getSchema() const noexcept { + return this->_schema; + } + +private: + std::optional _schema; }; } // namespace Cesium3DTilesSelection diff --git a/Cesium3DTilesSelection/src/Tileset.cpp b/Cesium3DTilesSelection/src/Tileset.cpp index b005e2532..91563585e 100644 --- a/Cesium3DTilesSelection/src/Tileset.cpp +++ b/Cesium3DTilesSelection/src/Tileset.cpp @@ -101,6 +101,11 @@ const std::vector& Tileset::getTilesetCredits() const noexcept { return this->_pTilesetContentManager->getTilesetCredits(); } +const std::optional& +Tileset::getSchema() const noexcept { + return this->_pTilesetContentManager->getSchema(); +} + void Tileset::setShowCreditsOnScreen(bool showCreditsOnScreen) noexcept { this->_options.showCreditsOnScreen = showCreditsOnScreen; diff --git a/Cesium3DTilesSelection/src/TilesetContentManager.cpp b/Cesium3DTilesSelection/src/TilesetContentManager.cpp index bf7b7e0c2..eb0b74026 100644 --- a/Cesium3DTilesSelection/src/TilesetContentManager.cpp +++ b/Cesium3DTilesSelection/src/TilesetContentManager.cpp @@ -1169,6 +1169,16 @@ void TilesetContentManager::finishLoading( updateTileContent(tile, 0.0, tilesetOptions); } +const std::optional& +TilesetContentManager::getSchema() const noexcept { + static const std::optional noSchema; + if (this->_pLoader) { + return this->_pLoader->getSchema(); + } else { + return noSchema; + } +} + void TilesetContentManager::setTileContent( Tile& tile, TileLoadResult&& result, diff --git a/Cesium3DTilesSelection/src/TilesetContentManager.h b/Cesium3DTilesSelection/src/TilesetContentManager.h index 355fd82a2..e0548adad 100644 --- a/Cesium3DTilesSelection/src/TilesetContentManager.h +++ b/Cesium3DTilesSelection/src/TilesetContentManager.h @@ -16,6 +16,10 @@ #include +namespace Cesium3DTiles { +struct Schema; +} + namespace Cesium3DTilesSelection { class TilesetContentManager @@ -102,6 +106,8 @@ class TilesetContentManager // Transition the tile from the ContentLoaded to the Done state. void finishLoading(Tile& tile, const TilesetOptions& tilesetOptions); + const std::optional& getSchema() const noexcept; + private: static void setTileContent( Tile& tile, diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index f61d07172..bd388faf7 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -4,6 +4,7 @@ #include "ImplicitQuadtreeLoader.h" #include "logTileLoadResult.h" +#include #include #include #include @@ -594,6 +595,17 @@ TilesetContentLoaderResult parseTilesetJson( std::unique_ptr pRootTile; auto gltfUpAxis = obtainGltfUpAxis(tilesetJson, pLogger); auto pLoader = std::make_unique(baseUrl, gltfUpAxis); + + const auto schemaIt = tilesetJson.FindMember("schema"); + if (schemaIt != tilesetJson.MemberEnd()) { + Cesium3DTilesReader::SchemaReader reader{}; + Cesium3DTilesReader::SchemaReaderResult schemaResult = + reader.readSchema(schemaIt->value); + if (schemaResult.schema) { + pLoader->getSchema() = std::move(*schemaResult.schema); + } + } + const auto rootIt = tilesetJson.FindMember("root"); if (rootIt != tilesetJson.MemberEnd()) { const rapidjson::Value& rootJson = rootIt->value; @@ -697,7 +709,7 @@ TileLoadResult parseExternalTilesetInWorkerThread( TilesetJsonLoader::TilesetJsonLoader( const std::string& baseUrl, CesiumGeometry::Axis upAxis) - : _baseUrl{baseUrl}, _upAxis{upAxis} {} + : _baseUrl{baseUrl}, _upAxis{upAxis}, _children{} {} CesiumAsync::Future> TilesetJsonLoader::createLoader( diff --git a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp index be993bf03..99cba3035 100644 --- a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp @@ -381,6 +381,19 @@ TEST_CASE("Test creating tileset json loader") { std::get(child.getTileID()) == CesiumGeometry::OctreeTileID(0, 0, 0, 0)); } + + SECTION("Tileset with metadata") { + auto loaderResult = + createLoader(testDataPath / "WithMetadata" / "tileset.json"); + + CHECK(!loaderResult.errors.hasErrors()); + REQUIRE(loaderResult.pLoader); + + const std::optional& schema = + loaderResult.pLoader->getSchema(); + REQUIRE(schema); + CHECK(schema->id == "foo"); + } } TEST_CASE("Test loading individual tile of tileset json") { diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index ed11faff2..0c50a2873 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1070,6 +1070,55 @@ TEST_CASE("Can load example tileset.json from 3DTILES_bounding_volume_S2 " REQUIRE(pGreatGrandchild->getChildren().empty()); } +TEST_CASE("Makes metadata available once root tile is loaded") { + Cesium3DTilesSelection::registerAllTileContentTypes(); + + std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; + testDataPath = testDataPath / "WithMetadata"; + std::vector files{ + "tileset.json", + "parent.b3dm", + "ll.b3dm", + "lr.b3dm", + "ul.b3dm", + "ur.b3dm" + }; + + std::map> + mockCompletedRequests; + for (const auto& file : files) { + std::unique_ptr mockCompletedResponse = + std::make_unique( + static_cast(200), + "doesn't matter", + CesiumAsync::HttpHeaders{}, + readFile(testDataPath / file)); + mockCompletedRequests.insert( + {file, + std::make_shared( + "GET", + file, + CesiumAsync::HttpHeaders{}, + std::move(mockCompletedResponse))}); + } + + std::shared_ptr mockAssetAccessor = + std::make_shared(std::move(mockCompletedRequests)); + TilesetExternals tilesetExternals{ + mockAssetAccessor, + std::make_shared(), + AsyncSystem(std::make_shared()), + nullptr}; + + // create tileset and call updateView() to give it a chance to load + Tileset tileset(tilesetExternals, "tileset.json"); + initializeTileset(tileset); + + const std::optional& schema = tileset.getSchema(); + REQUIRE(schema); + CHECK(schema->id == "foo"); +} + namespace { void runUnconditionallyRefinedTestCase(const TilesetOptions& options) { diff --git a/Cesium3DTilesSelection/test/data/WithMetadata/README.md b/Cesium3DTilesSelection/test/data/WithMetadata/README.md new file mode 100644 index 000000000..a57c35345 --- /dev/null +++ b/Cesium3DTilesSelection/test/data/WithMetadata/README.md @@ -0,0 +1,2 @@ +The contents of this directory are from CesiumJS: +https://github.com/CesiumGS/cesium/tree/4f0d17c/Apps/SampleData/Cesium3DTiles/Tilesets/Tileset diff --git a/Cesium3DTilesSelection/test/data/WithMetadata/ll.b3dm b/Cesium3DTilesSelection/test/data/WithMetadata/ll.b3dm new file mode 100644 index 0000000000000000000000000000000000000000..df79fe32f39e95cb641763ba5c6153c75f085b34 GIT binary patch literal 9700 zcmeHNYjjlA75;z#LPb!KR+IvR_?(RQ{fJ8D-T)Ge2_!+WfH;9k7|bLwnScrrN)#d% z5D?`hqNoU3UuZ?eWbQ~YB8U%sLKP7ed|Q^Swotq8O(yIrAuLzZAC}3wdw=)LKHvV% zKKtC86)2F$N813{(;pa3-u+B(+u*18Y%4!w$k?nw*%#*z@ui7^-%XR}K0|W2*X0@kPcH zgWwnal3(^Ke$}t}b-&>^$M}6&r6om?SmpRIMWl)WSu}M)P;^r@OhZs*e{xLL1Wh$m zNl?|MF+!wCQKO2`!gW)U-9?3B$u$W9%`^)jcDyW*ED3W0$=LxdvuGUawDH$aTx+ZF}qKk4e%Fsnc zp-9S-95M}BzCqeVJvmV`O@;JoqS7=`6?KF5&om8p4MW0_q6sl~=f!|7iK@H(CKX&) z6u&41bcz*aZ<9=2()?yX6$H0VR8m@(PWu}W4Uw8fRy9%9b=pf&2#^F(HD%g2Y9v8( znW&(eEQqS0$)ce9wEz`Urv;g`wKDaAUk`|qWC&C?Q#Povy!^5$OSC;Ax1 z=F6I-(L_m-RqDKkPf>CHV7JXb_W|+tz|g#$>?yv`xN+f%iqi55TH+L6L1kfKxcst6 zc(N~zTEF1BSU9J!up&$apxbe!(X!H#a7irxx-x21Rip*eU}Xt?Eh!Wb^TvIb4a$&x zeqS_F;&!uU1|*VW(0LIAk@`oI1B#?-imaJ}L5rkzRKkobD_e~0yS42vwseDpE@KupCuU#8jwzb%8T4{AS?9nX`s)Gl}FqswkRFio1-9Wp#Qmi zrdwlvFzJosR=s(7$`RD*(vR3QZ-leSZsnq(ShzeADsHG-SwZ=w;aI4+I5IA`w6bVI z2|Yr5X>{a572%B1;?nZLp>f`RjuPo@M?b_+o(xQWM`tqHNRk{9Xir1MWfMY|mb!KI zApg5dI)uvZyA;}2)ec@=Nq9QUWoSaN=R{HT;D;lnt5N?!O9*IU` z6xMJXiqW1GRL0!fDZXJjd71f{IoaN(W#{BxYGu)G`h8=)-vTlR(qoMjMM}m;=pjj4 zf2a=LjHstlsq%7`&`m=Qs#ST!eRk1{r|BoP;f4>nRdJPiT#fBpURoNaY#)T{6eby{@?x;_*x(@x&!_CET zex8@}a~`gNYvwUr1Lx;+IX~CNHE{lmJJiJQQFP~>m*N}JpR5nANIBla)yA#Cmxp{+ zw`5NTt6gU+;F->|E>N z(@y%*X=lG_o%#>cetS;O#D$$UdU&~hdg4>OYW07=gS{&Jjq{lKp@%P-b-=kPr=u;* z>T8$P_e~5eJYc!FxfssR^KyR9!!>ZtJceuF{CqCw=i0ai&i~QNkH$N#*yeoLb%S$e zr)6~;p5Nr*FS?u%e|*?#r%iN`v*6@c<3F7HsE6k-+a3R?`(4g}^FDSy>m|k)r`_)1 zfvc~HpEfV*jIOD3dY83vp3Io$;pSpEKhMkgIS<#sHS-v*f%EgZoS$ps8aV&#wkg*B zIisEJd;2@aDGRI~*U28P98_&xuzy;7c}Bdh^QJAqk^NrtaQE65g9CFn#UETg%b8p~ z!|FbKf`=y-6PfqMySCyD)`V%W|8I^co=_C)2mP3ivbFWG~*YCu{y7#9hcC0S)uv0ocQPXW? zV)3r5gkKIPM*Mx4hxffZF_HgST4LK~F|jhEIx#E7_Hc7CoS*0A{G5kt;F@_1*TDJt zT+Yw6aSfdRR&|v#sb;CQF7}lbzN^Yv^xmolyznOHj*Duo3%}@SXMDfLx%QJMJp8Xk z4>>pXsIyXQw^@CK8fR5;y@$8&pX=QB(r)XUeqURUU9rxYS^18Kn~MoEex8@}a~`gN zYvwUr1Lx;+IX~CNHE{l3ofg==x+wN{kF~dBD;}`BtV;Lrh@0=Vw@)5xf4;?U|FD0K zz2}2G4^POOXMdfVX`l7%$5!3m`|MrM=X-eN>v!9$7su?HYkS(618%XOY8&xzb1|Hs z=jHsIhil-Pc?{RU`T1PV&$V$4od2S(3+;7!j{dzA#a@>l_bnU067`p7=<=+LW5!>F*!NNIyzEfa2>YzK-Hs z#79{ZUc(k^!s~XFHQ_aEu_naX6myg{;WccrCcJLP>T~2?`d`&2`pk+|$zEy!d%Zz1 z{gQohB>YS1pL~0EQ+-;%UVSL0sXj--zm)nMdp;ljU6wpkTSok|sef9)UjI-`Q~w+Z zAM2kZzw3|H=l`QV^;ax)&r7=dyJ8F2J6{yzp2rq(Yxj@)+-%*?^mO`H`c}LUB>k;; z1&O;guj$0!n%7F=Z_O)C{H=NIBL3FAU;(XpbtC@PyxO2GEubyhp#$0@1s%z!;5c+b zXR@8~E1ZBXI38WeACHr8BD&#Z^4-uKr=SPf9{4qWgHzFyY)_nq-=Y^zM{n|{qYwJR zN7jdaI1~MG2F@aX2F}GfI2-4YKO26eB0x5P^C3WlL{@?f4Js7q739khLnS7WorKA_7T4i=ve#n@Za@{LVjB6Wn2z6L2H6>?#!TFV8!?OgjhKy_ zQG;8^*WeGBgSlkqVjgbAd@LZl01I(D7U4GBLH;%@#u6+gyA;c?0(W9L?jpY&_uy`< z#47SDaWC$}{bcXQYCM27SW9*-9>l}=BObydb!-oTq=-^5#Z8}HyryUFgxhxiyDVGlkbzXzXUANJxi Q@_X?)zQC7czr=4-7QUi@3uts4#D%R{M65KmFM-fq6@tNp1d@O#o1LUd8k2PFbixvXQ9uw8 z#;}Nj5)@=-G$;aU(p@65iy{aL0xF6dI6C8jIfFB|D(U9Bgm65Q`N5fP>fWzk-}k-m zeeYH!2gnj~3N8bHlU)IZW42xu&FXTQ!_YGml18N@rrwpA&WC(DVFAgMC1FtMT{$b!Tv`cM0v-KWe#5s zGO!HC@QlESjKs){!l;Zkf^nqy3v+$Jk{mBq#Bxr7(_~4Lcvj?CP7`IOeoPTGRaIGq zl|>;kCW{=$iGm=qyc8Le6ir|yUQ;wVI#*I9PShk8zu_WvimEDDgKs`EBy+qX@FK5@ zVw6tdR8>-BPSzwbQYR`Lr>TmhC`zmN~LYMvwLehWNZ=9dX$DS>uD= zw9%uBz32db%=Q-)`3t>;!OZbR*r*c6%hq5?A%4w^SP-3`zSpp8@%G?Hlrz8F4fkK#4ePY@;?0FFYk22b+hOq( zI7#LtRuv^#!fvw15Ge{TV#}d9k`Ud{?@;^>0}lO~;MaTN|L~qN67&>3J$goLRGao2 zE%XLFL4Uvz=MZvYgT8!kacr@tpvcPS zzhoSx-axU>k8S1PovfoArP&Qz*Sv+E0_@8AA>5nQy(!+p++dy~P7y`cTJn5@(}s^W zd!(GlhwN|m9rOfptvf-$9<8@NBN*^m&uorAe>N9ER!9Fw`S3>gr8aytTdp@OPrQIS zh5r?sY>!Yj!E&y^6Z8grp8PuBin0O&yg^TXzAro7Uy_?whz}7*9Nu!CVsC;!-yi7b z$+pjP7(SD%H!=hwg^};@o-C**i43uLrk?zwJkJ2X<*OrYpgw4DA|7Urza%T)n}KfQ z57E&m!^=3l1-{~9U#T}T8Gp9o+itA_Z*iWtUTVNs;0t0|-A7Ll&n&AXXnibm3{1=D zpV>bx)jqV;wDbXb3Z5q87-jz+(7!J}*iezLFvo|FNj&=VKG-t~Y?WfUy=EbPs9OWQ z3izyN7iS5of5+B+phK1`mQtImzI_9Je=yaewM;M0#yi9Q)<$*gk#(${;=?_r9e~k4 z6@D&lqsR6AIdr(it)aCyPSKzI?kyXiO)b*jShl!k$Eo@5UfMbLmCs)pvheajC)_E= z`nk63?-1@eEJx4rc5_>JPeqFU_sSM}RX`4%SoEsf_3ry_3pZ3l`RTfppYl)*R5Pui z8Yn-VOZllbs)6#S>`gSQtMkm=JKCA;hw|pR_1QMgXf2uNy54K1?29oUo|}f}nwqe`=8bUwWC$_*8mMMkLp4x-I+yZOZBzs0AMRb|ZvD4wjpO-g#?;N(`p7?l1I&8co_8Wbr z`v!AG%iGPfT($o7?3-;|cIQg{%$b(v4||51op1kC->?#Fd}jS2eQWly@QOKo&4C-M z^rU8|ZQM`|<)`aXe#%2NP|dW4YM}gdF6F1%s0PYE&$YswQV8Q;d6WDgtjhRWLBM;Y~!4V7n{#aiw(b- za-;i+j_b_sGm>rGPz~j$>r#HoLp4y%w1#S+{B$nmr`o6n%HL}G6`|a%pVSV|dfZ)d z_NY79wT;Wd;?v9Bw@p6f4z5YjpGYbReb8#DjVJUj4Jjv=xo;S|uQtBJa(BhZ?`?dx ze1v=KwWIZS+8%OGnzTNYzRzvrhH5B3U6=Ax9;$(ArZrRp<)?EgKh;JxQ2vsmx#sqX zivF#)hcUE8vN`dl!8YD@B-QLUX}YfM>}{Ob@PK*9Q*7hQy9dl8Cs*s{;+Do2se?^< z!)6-~?sl(Pv*MtBUGrOvz`sjO@5kG1+)xeWr|VLF%0o3!&9sJUp!{?$<)_-H2Fm}o zqtaM&d~W!)RX>KylV3E}auqf{_tNu5R`ZzfhNbJmiPL8p_j@%P@BDJ6F>Y0h@bywV zb8^fQe!4E@r#w^x)l6%s2Fg$8 zQhut9YM}fd&YNXC`0)eAh?(~o+uwf5h_5WN@#1FljbUk%jJ^eV#@hF18nYIRxAAkE zW*E!QPBA_ziZ^C|HOFW@c$$s9-71Ym!Ym^^DAfr5G~JL7K5pZNYA8Qlm-15{s)1^z zHB_|DtH-!Wea4NN*ZCrG zE!Njy{R>#%D86+==bHJ`I=GJhE5UV1Q+o^X#X^VZBMW!+CLY< zmx@1)^o+}TMqO;rM4n4l{iWj10P~Az|1^T_{=u4P|6B-PD*pVxe}4aGedL+U9M~T1 zpGL6VKUfp(p9|qjrGExa-52$z5p4T|HBo;qgfA6;CR9{L{b>Z-{$Neip9|rp_Q!fI zH0`Uxh5u6DgcrC`e-mDA<4#267+|=G2RWy zkO~7J1=295z(5!T=@`=?1BSq0$b@?^XTp7OFARlYn1|y34;ld@F^+^$a6fn;3u6{! z!)WkA4&-9afjscR7>r}!0Vsq5$Ok{>dQh>#=fHIf_ z`pku@dIM ze3%Dw;VH~>VF5f1&tQB87Q%DzEG&Y>m>0qGumq~$1wfY=%v+5nji<5#E3|p$20O)ItctU}7}k zE!YZg!xnf4^A^|!+hGUB9k3Jjz;4(D?_%Bs@56hr7xrP^3m?FKIDqj0dm`E&RhzJinR4d#>ZEqn*3FrI?b@E>X> Bm16(^ literal 0 HcmV?d00001 diff --git a/Cesium3DTilesSelection/test/data/WithMetadata/parent.b3dm b/Cesium3DTilesSelection/test/data/WithMetadata/parent.b3dm new file mode 100644 index 0000000000000000000000000000000000000000..8cb958955234e1ecaac3837ecbf0162b8fd47bf8 GIT binary patch literal 9680 zcmeHNX>e3k7XAbmMsNgm5Hyb3qN2VuZ(pJ&=@){82?>UXEGl-APH4&6>4+FW#0>+8 zpdf;PD66=Pz#w5u`hf^2h>D=Np`ar!NU1egH5Sf!FX?bb4M|y(`C-{z@0>5M&;9Oq zzkBX`RTOzjLCHw~c3leGMA`j}XxEUdeRd!>t?%&6^sMW0`}&e3QSjyDrVUR^&&o~D z@g)tDWJwbx%P&ikq^gD`X+olED7vCpe$_B!%d!krP(@SHWy5c2hA4}cVX8Ney{Ot3 zE+7U`kOWy!1Xa)kT`&Ywux=K7nPsI#;b>Jsh$<2#zam+>Da3&y>!xChU_ml6Bp*MAK?2vlK%z=%Y$aGw7nBl3v4<6gfW9QbkE3 zLP@lm*i1!NiODi8qp3`@L|s%2P13z}1f%g~h<@ENO>(0F=#r+$k}8WT@iqRY=pq?v zijoq)W$KEk%Oj3#UKx%Sy`2 zN<*d5+|lLKkQzyHZ&sDk&$3DdQSZKQPvyHE{dNvpVn;}l6&5?o5u?Oy&~ywFUhAABu2x(_56jUTc+vDo2DGrAERf;V6|g{27eWp5;|V-9M{+1F{EZAK=7^|%__H&Rv>&2nj7(<}4oWO%=NsDV8`kGs;boi70Fj4Zr; z?W@UWPwwcvIbnL>!a+5G4@Z6)o^}3FX!hxTm#q4Yq$o^ z&&P6pu8nKp{2d-Gs9QL9y>rDm=Q+Lij}P2=aHWSAOvwqnbMOggeUDACc}J@1+s#|# z;qDhb7`yxBqp`D(taTD*pRsY@{@or9xVak6&*$a* zoQG@Rnt2V^!1?)D&d;@R4V=F;{c(HoM^j@vYa@Y*?R9pC6$3oHWoxZHsN?dwNh7}s zY)X5?9{$1BdKa%w7-bJ$ccI-eyOVRv*-zQa#wi|N+2sj)S5BT?IdxI&*6t(iyQXG& zxVak6&*$a*oQG@Rnt2V^!1?)D&d;@R4V-_(w!!vg8}Un`xjnt>rogB>qIUVJ)gJ!g;{rRW>)UouNw81v zdxl;A?luoMSHt=Fyqur&a1C5Dui+XvKOf8axi+qW^Y2;Wi%pqyZQ#wfX4zlA(JOGY zSB-~jYQ9W;IQQRyyB=9*k6U$9Z1@+idpKj*w%C|wCfoaN-4U2SdVGC{`yTV~;pyMk z`**IixAYS1xxvq3Pkp!4!_C!jem*bf=R8~k*UW3U2F}mNa(=FjYvBBAUY+KgvFkwW zWoL-31o}JXy)Suq?`=0Z;W_PM&-I#S*WCKJbB;31!yD`uol!;Y?c}fLrp!P0ekX5A zcMn%QJH=VJG}k_<+nm7Ey=$D>3CSLAu7>mTc{xAl;TpJRUc)tTem<7-b8TD$=P&8D z*;YGLJNk=PI++K*vft@m=;6zbd};>{^m0z^wJX-Q#|C@u8@)X|bl771+lt5QmwZ|4 zn3un9AO7?HWEY>MY_)gq8y?s(ZPDQ_f({t4~vAs9G>*3YQPj%|6);kLqe;@0UmG9hh<5mx^&8Ttq z&KuyYKY539@QC3Ic+d3k{Z1bz&3`PG_~0^U(u!%$vVC107dKbK`T4w@pYw1HTr;oX z8aO{6%lWxBu7UH_(l?5BI3rHK#KcU#aUaO#;+5AUvBmiqY~(;0MVSm3kS<6~W3 z$@1{R1E0hq#g+9{gGV}-hd-+K3wu*s?A#&5j(u`ZVB{>H^Wjr)hMppNxVak6&*$a* zoQG@Rnt2V^!1?)D&d;@R4V=GI#s#sv{hlmU`gh z=j|y=UUc5vF)-Q17tPr2%oNh>HE*pAgcmJ!4$sK-@E7f$caBwzv&;5$wikT&y0fH1 ziHDo3;rx7F&d+(c2CkXca1ETFkLCPa8`r@3Q(m)^XYRSS?#C59Qd)^OQhf^5*HL|o z`0gJ@r5ufnOMb89?WbFb>!^Ms)n7vOE#k>5FWES4;)N;dk7+5b#K}}&NA-17-y&|M zC)~ppJ>kB^J#qiVwUyZOq_Mt5+)7Wlhb?--efz_o6Zg{p%b#P@Cc5V(#XV~+V6SJW z#yyWM;@?aE1f$cN{AmGuo={DbKPSS!7k>^tcVCk~Env?ds%i4)MELjO&mYg{Uw_xf zpE-Z{b7Fr=@0rkazFNTE`J$Sp^K~NpdpTc2JM``m@1+*7=MU8^jK9B5gxlI5x9{8b zGd=}q%L}QbzYVWc;%>`pJn^^X^(67P_zSvH?22>I4c&1b#q)4J z{)!8bfD0)n;38ZMA4MN7!DYA^rP4he?u1fBNN$_Gcf?y zBZp!R24WCyKrU{ioQt6tg25O@c`*Gypqp_E#al2Ow<3rzqA-id0A!&r>LU6jXQJnqH>iW6`T z?#F$&7Y|Ur7d3bg6ETVML`=pMJVfy!OvS^PhUpZi;}Oin3_Oa*C_jo>cpS4S&c+#WrlGxE-%zCwAa9 zyiWNwyoook3vW^0h23}?dnoR~Uc7^Mv5(?DyoV3*0p7<)l;6jGe2h;heu4w|44>j4 a{z>^DzQ7@TjxQ;Hj<4`F4pTggZ}1?RY7XFYZE~wxPxUt!SgV?lhUr>{N9m1j^L5QL#OOtex)@*h<$QA@d5eT3N z!>R#9P}~p@K_%(e%BrX=q9Wpg3vSHd!pLF9Gxxou!*z+_cqa2>hUC<}->Y})tFLa| zs+YrIn4DAC1ij$L<)kW$Rg{LO4`qWBz{Fy zMNw7~Q_#9p;uK{eF{@^3rYvfzsmpaEO+!-!T{kpQa#j?KCKe?4G}AB)Q#VY}Tl=6J zf~Zk;R838E396#VG!Jptc99fClng-;g+!Di-!KFU66&~2l~|}LN@AR-DY_G&aR6-O;bgKUh0aX(LQ@c!AE>l z3mR>YW=f)0_tB1N6eH<|s#40lnom~@MHEd<(Il02%=BrhLQJ|LiUx&7^>rk|c#fX_O>V`czRiG+8ict4NQks3e2ZCn@ySVV0@lh{JR?#SjOT z=M`l2aLW2?4-h*QxVC?0#%ND4J3CZbS{x~*WsUX>E6dFdMQ#j-?(}q{QXe)l8p_Pg zEe+A4=`p*wu%x&sR20n`Swe+LE6|+IvLbp-n!TQ=+wZwCEmih-J%!;Sr+Q7%XDEWM zQdOF|s0&mdIwi~0BuO!8Bk4R)6{#vE$H}K5X_`QY@?97lK?J(yGfam-rzA+GNry%8 zIeTTO8WpN!Qj!$GM=LcYU6!d)rUsRJf4&;=KeQUbXHs5CjwI7Y%Z6lly9y*-R25o> zvn2){Jh#uSK{|wV6b-FzIln>h8{?_#=fi)w9_bISr+=!IZuP6%AE8c}`KzSKCol=c z)Rus(9WQ};Cy`{DhNcXbx>YsWlNTxqMS{`dh^L!J&gmKr7lcZ?mIez;9Dn?!*E2j6 zDGe7>NqHon;3+3*Zn4%BZc(t1DzdhV*5*`hdZ;Kbn(ygGM^td8JYL+q*y{>C5iZen z@~d@6gONPv6v)ml*Szf?jf9>1S(J|N%?Xgz(Em|B)5$SEmMYzAbnxnzr~HmOUHS!^ z=Js$l*~wgCFdB-4g9SBtD;XB)6N&~43c}g_ip%oyi|7LJbfe=IEDfa=7ZgW&1hd`! zyhWsM8~qYPBoUZ+N9VDymL$<7(4GbhO7eq!ik-ZAGW%NB-;hR|nNwUgtRU2%vP~b% zT#^y;dP0Ta($etoP+~BBN9orst-?@geyCPzBwQGdQdrGnFiLwitSst0j`sA;?B6@9 zcV>pWX&IUQ`dI0-n_kZl_nY6lJ6&p|C|r~irYn-R{&*hT5rwWwrQDsfh#qR@pj<`5 z&b>vSqq^U&H4nVY$%>=Y<*F^;NO5sA!=ZJOUYboO!+qYz zK9=)yZCnHAf2i~QftS~{sA|4RtKb#(4fBVAtHA^SC__m>y@dvLS5&wR% z5bu@rT>Sbc#=Cga`Ze**+b6_xe;geDqE%&l?D$bGo_FSw_?)ur`0B?3@jIV>KE7;5 zk&Ek#;rx7F&d+(c2CkXMa1ETFkLCPa8`r@3S9ITE517)^nm=KybMp_ z(!Qu-qIE-;16GSg+wF@p?{M+V$vf@C+oxKaHZ8LXy-V%#RdZatYtrNP2eY2E#uvq` zA3u59?!R)8i|dQw{Cr-{&w028u9?Sh4V<5k<@{V5*TDH>?JDhmT>g^(<26gIrc=k* z-u>^p_`rwb?Z?kK%St--oaK38iQP8*z2Ct*-gwGBytuD*N3&dO=8+1!`Iw-KzkA?* zyK+If^XyF0eF&sHltWv}1C^~G?0J}>9zJX{0U%wxC)&d#h?UhR)GxhQbtwB;_YFNX8;c{xAl;TpJR9>X4@EVM;jN{7sL7ayqur& za1C5DkKr0PKOf8axi+qW^Y5CMY87w3%brms*_A_PTH?N37hibuRLj#!u$v#;AKP4^ zT0_y>#XE<0u>LXkn^@mhXW8vuA7_n@zvyCNMya(SzfJ6d^jv#m_&n>qGsn5Oz8KEW z=jHsIhil-Pc?{RU`T1DR&$V$4oPX2C?J;xXI_u!7mVq|A-mThk{zez~Gv-xa*ZFFNX8;c{xAl;TpJR9>XZb{quYHr7dMG~5kPr~Uq180&w6KCNZoQ>uNKcf{|lWmRjaRDyGMPx6+#b}4NXoL3T+n@t3frqRIm*O&XLPz|Cd`EP_<>-tn z$ajVpUEw3^!<7&qLLw_ch6WW1bn*%enCM2f8?Hh!uEEtvA%8UjlzKl>$@|eAY3M<= z2YR9xdgEHM*Wx;4pbyfKNj@EYaXtEx?T7xj5jP+U1ITA#Aa2G@xP|;p^nZZ{VKCXj z7=ob)Vi?(B$VM(g$Uz?Y9ONU6+sNLA+fjr<6rh-V0V22qB`76df+)%`oa}Jii4hoy zQDjG9G{&MFV{jMwF&KyOm_T*{?#8{i2NN-g{6tK_WZZ|T6n50@c?F$ zorwqWSIovN%ppGub1@I|$!3w*^hAmpW#z{g3rl+f-ms}4&p2F2k|w&!6CAT@HhM$RSM5w literal 0 HcmV?d00001 diff --git a/Cesium3DTilesSelection/test/data/WithMetadata/ur.b3dm b/Cesium3DTilesSelection/test/data/WithMetadata/ur.b3dm new file mode 100644 index 0000000000000000000000000000000000000000..9ae74c7b0534d9e965355d8307a483d7127d5b63 GIT binary patch literal 9688 zcmeHNX>=4-7QSFaVO$U#2apWVY=T8o`x2FORoEvam_%d|v6D1OW6~YFI}iv#1PM#P zQ4B^=c3glA$R_AWk}4cUbOcdA7#9>!7R3=A2A3Jq6ZSXpxmlB{W>BFGBU$96ogxOtING*Q-gMr2h^R%N#&39_oliXx0H>RjmZ zXCed3a174~jL1lg%qWb?Xk!^yVla^9kK||iFrp9V7C23oG>K+zZ@ z;5Ic0+pcp~PTD}by-&CRUcMY)Xlim&q05_*;R}a@p)hW)(3PG)e!MRo_G;;3jZ@U zJc{fZ5;nokT&_3b3;De{)p^TH4-NB0yg51kjFe!0R(1f74_6#MY~HXhA(#^k4fJL> z^&G?D8xB9n5Q+vyzr&|7w}vD-#9~doIeFRMVL>~uuH@nR?RN~oVrB;O({p^Om~DJ* zjz<|j#^uZPhr|AfzUX9po8rf5tz2I?+gBqs!=iqoHYY@Q@sY}D&)6M zEqt5Re)?43&>=f3wo-?yrhP-fU?j<=wUZvsz$e4`))L&w_j)V^h=&3WFtGe>WC-vQv-}KnHz8K0+*QNZFhiagjX$;js`RQEB zPqk4El>gwr`sy*?#8@+PW2}OTjryXG&zd$qVyx0z23|71cwncwrbSzQYUFJP7k+-7 zUXrxO)DFd3ySJ{?+YR3CU?HwlZ@1=tbJVDF=HgQ)JwG0P%)#}=P=2~D<)=JU1Jz7p zs0PYU=Td&EjcTC$on~bi{hB|ow`WJ{@99OxIeCYJR~(ycypVTLUz|K&|E%Xd#*eq` zcJT16V~z6RALvO7Tk5SslZ?z+ryRWR`iQY`TyrD4*-*Xx$k9g5ynpI8t}ll2({(97 z<)Ip=W*S2^P<}d>@>6Y81LfaavDfS_%#S}dvqWcxuQi|j?s|`nx3Ab>uJSMOWPiU} zzpM2DlRtZ}gZJ(F$lS5Bh5l7Cr@KeLXf~hP!ND)Bt1x??P0-Kx%hbnpIBp)-SO?b^ zL;2~tl%MiY4OBCYp&BSZolE(tHmZU0AL%jAID6=3t4C$n`l0wqqwGtUgUdXR8&z2? zt)A&=)|4Z~Mu(I(4(@0a8^!luZB1x3+tOB+8O)*>2fs6>)L7HufO%kBz}oix4CC%E zKXY(>F_fRKOZh1e)j&1V7^;Et)47zNYNHw`|FxqPYiqNuo?RJd^vL*j*6nk?aj;kt zYkiwPR6n}!TH~#0w_58q^>%PxQM@%dW0byrAA}Tl{OZWj_Q~1;5_dO> zOha2;Z0$OIje|eTnrn?H=w|dPf7n@wRpKV-3WpGRAS+B3_l*u$LFbLvtDxA<1DCVaEN)cvtlv)c@^JZ71LcP$%gwR07i$2WE~ z2No;Vy>l`heB;xa_4k4V)9Q7iYDq<+wWQ6R4z4eT^3!!GKjonssAd{NHBf#!m-16> zR0HLIWRKBr!~WYUU)|g-zLB^BD65|`h%=t<2y$h!Gv;VT#NL-2W6*ch<;`Q6Q zR&<)%DSqDf3Gt1@{V=`~<0~<~LEOlk&>S|H6PmY1=7i?3!JHsxZA>F`LUY()PH5i# zXZbn#M%UV0T^v{M{p1^~YV&Xr{C|_5OV8IYK6kY}b16TU@>Bhe`^7xaGnwLO|Mb0T zu6>?3=WqkqIe#$5KCc?Ym(HJyzw0mM=Td&6&s}4GCyYLKc6?L!kG)3I{!EVtXvzyb zsJ{s>4{|r-7kO?g!ze^XvZkiRJ}&;gqAYK{C&c{PLPxPj(y8MJ`QAqK8M z9|KoHOK63*75oOSfve#vxEB3Y&<3u9*3cGxYq%bM3pb#>0e%PVpgnXz+W~Hb-$N{P zgih!?LTBg#F0?M_3O%4Zbc3GgyFqX01vkOX=x+iB`hXj)8~OqZ9Pns)5I_bAL{QL+ zpn?W*Xyf1(=m)pKtq_m?RxmL29!Nm%f&MT62BIAZgJ3WWfuU%J!XF?BhCw1Eqfdn4 za66=+O@UMx0e3(e+=)I7M#Cr=31iTY#Qz5x3wNWv8^*ys;DvOw>5u{A!3UX;g+3Fq z!4DJAPJnwM0J)F@LG(Egg8Lv3!szoL0{Jiz?L?Ra1uz+=pq&DRFb#@eD%_8LDolq5 zUE(LV_DU@pvo67+LmJ}iKT&^`ozgooh~ScrBZJPMD&A}ED2^ri4P zJOPW*E`}#zDJ+4fU>W+SU?r@8<**9ttT1U`mO(0&3(;Zryc$KW&c$KVv4gcEQY{R#LSzJN1m&%l@PA2Yc|XaE2J literal 0 HcmV?d00001 diff --git a/CesiumJsonReader/include/CesiumJsonReader/JsonReader.h b/CesiumJsonReader/include/CesiumJsonReader/JsonReader.h index 3680acaa0..3b6dac31e 100644 --- a/CesiumJsonReader/include/CesiumJsonReader/JsonReader.h +++ b/CesiumJsonReader/include/CesiumJsonReader/JsonReader.h @@ -4,6 +4,7 @@ #include "Library.h" #include +#include #include #include @@ -72,6 +73,30 @@ class CESIUMJSONREADER_API JsonReader { return result; } + template + static ReadJsonResult + readJson(const rapidjson::Value& jsonValue, T& handler) { + ReadJsonResult result; + + result.value.emplace(); + + FinalJsonHandler finalHandler(result.warnings); + handler.reset(&finalHandler, &result.value.value()); + + JsonReader::internalRead( + jsonValue, + handler, + finalHandler, + result.errors, + result.warnings); + + if (!result.errors.empty()) { + result.value.reset(); + } + + return result; + } + private: class FinalJsonHandler : public JsonHandler { public: @@ -92,6 +117,13 @@ class CESIUMJSONREADER_API JsonReader { FinalJsonHandler& finalHandler, std::vector& errors, std::vector& warnings); + + static void internalRead( + const rapidjson::Value& jsonValue, + IJsonHandler& handler, + FinalJsonHandler& finalHandler, + std::vector& errors, + std::vector& warnings); }; } // namespace CesiumJsonReader diff --git a/CesiumJsonReader/src/JsonReader.cpp b/CesiumJsonReader/src/JsonReader.cpp index 2049d940c..9546eb385 100644 --- a/CesiumJsonReader/src/JsonReader.cpp +++ b/CesiumJsonReader/src/JsonReader.cpp @@ -154,4 +154,15 @@ void JsonReader::FinalJsonHandler::setInputStream( errors.emplace_back(std::move(s)); } } + +void CesiumJsonReader::JsonReader::internalRead( + const rapidjson::Value& jsonValue, + IJsonHandler& handler, + FinalJsonHandler&, + std::vector&, + std::vector&) { + Dispatcher dispatcher{&handler}; + jsonValue.Accept(dispatcher); +} + } // namespace CesiumJsonReader From 0dbf93091c8bb9361a925c3e02f1389bd94478fb Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Fri, 18 Aug 2023 23:08:58 +1000 Subject: [PATCH 02/29] Start reading metadata and groups properties. --- .../include/Cesium3DTilesReader/Readers.h | 30 +++++++++++++ Cesium3DTilesReader/src/Readers.cpp | 43 +++++++++++++++++++ .../src/TilesetJsonLoader.cpp | 28 +++++++++--- .../CesiumJsonReader/ArrayJsonHandler.h | 2 + 4 files changed, 97 insertions(+), 6 deletions(-) create mode 100644 Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h create mode 100644 Cesium3DTilesReader/src/Readers.cpp diff --git a/Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h b/Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h new file mode 100644 index 000000000..ee09263eb --- /dev/null +++ b/Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h @@ -0,0 +1,30 @@ +#pragma once + +#include +#include +#include +#include +#include + +namespace Cesium3DTilesReader { + +CesiumJsonReader::ReadJsonResult readSchema( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options = {}); + +CesiumJsonReader::ReadJsonResult +readMetadataEntity( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options = {}); + +CesiumJsonReader::ReadJsonResult +readGroupMetadata( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options = {}); + +CesiumJsonReader::ReadJsonResult> +readGroupMetadataArray( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options = {}); + +} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/src/Readers.cpp b/Cesium3DTilesReader/src/Readers.cpp new file mode 100644 index 000000000..4c0fcb08f --- /dev/null +++ b/Cesium3DTilesReader/src/Readers.cpp @@ -0,0 +1,43 @@ +#include "GroupMetadataJsonHandler.h" +#include "MetadataEntityJsonHandler.h" +#include "SchemaJsonHandler.h" + +#include +#include + +namespace Cesium3DTilesReader { + +CesiumJsonReader::ReadJsonResult readSchema( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options) { + SchemaJsonHandler handler(options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult +readMetadataEntity( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options) { + MetadataEntityJsonHandler handler(options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult +readGroupMetadata( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options) { + GroupMetadataJsonHandler handler(options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +readGroupMetadataArray( + const rapidjson::Value& value, + const CesiumJsonReader::JsonReaderOptions& options) { + CesiumJsonReader:: + ArrayJsonHandler + handler(options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index bd388faf7..028eec6e1 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -4,7 +4,7 @@ #include "ImplicitQuadtreeLoader.h" #include "logTileLoadResult.h" -#include +#include #include #include #include @@ -598,11 +598,27 @@ TilesetContentLoaderResult parseTilesetJson( const auto schemaIt = tilesetJson.FindMember("schema"); if (schemaIt != tilesetJson.MemberEnd()) { - Cesium3DTilesReader::SchemaReader reader{}; - Cesium3DTilesReader::SchemaReaderResult schemaResult = - reader.readSchema(schemaIt->value); - if (schemaResult.schema) { - pLoader->getSchema() = std::move(*schemaResult.schema); + auto schemaResult = Cesium3DTilesReader::readSchema(schemaIt->value); + if (schemaResult.value) { + pLoader->getSchema() = std::move(*schemaResult.value); + } + } + + const auto metadataIt = tilesetJson.FindMember("metadata"); + if (metadataIt != tilesetJson.MemberEnd()) { + auto metadataResult = + Cesium3DTilesReader::readMetadataEntity(metadataIt->value); + if (metadataResult.value) { + // pLoader->getSchema() = std::move(*schemaResult.value); + } + } + + const auto groupsIt = tilesetJson.FindMember("groups"); + if (groupsIt != tilesetJson.MemberEnd()) { + auto groupsResult = + Cesium3DTilesReader::readGroupMetadataArray(groupsIt->value); + if (groupsResult.value) { + // pLoader->getSchema() = std::move(*schemaResult.value); } } diff --git a/CesiumJsonReader/include/CesiumJsonReader/ArrayJsonHandler.h b/CesiumJsonReader/include/CesiumJsonReader/ArrayJsonHandler.h index d2902cc0b..2ab7fdb45 100644 --- a/CesiumJsonReader/include/CesiumJsonReader/ArrayJsonHandler.h +++ b/CesiumJsonReader/include/CesiumJsonReader/ArrayJsonHandler.h @@ -15,6 +15,8 @@ namespace CesiumJsonReader { template class CESIUMJSONREADER_API ArrayJsonHandler : public JsonHandler { public: + using ValueType = std::vector; + template ArrayJsonHandler(Ts&&... args) noexcept : JsonHandler(), From 056eecc6b38bd6f61a045f7de1f11356f24e1e99 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 21 Aug 2023 18:36:49 +1000 Subject: [PATCH 03/29] Give tileset a root "external" tile. --- .../include/Cesium3DTilesSelection/Tile.h | 2 +- .../Cesium3DTilesSelection/TileContent.h | 28 ++- .../include/Cesium3DTilesSelection/Tileset.h | 2 - .../TilesetContentLoader.h | 10 - Cesium3DTilesSelection/src/Tile.cpp | 4 +- Cesium3DTilesSelection/src/TileContent.cpp | 32 ++- Cesium3DTilesSelection/src/Tileset.cpp | 18 +- .../src/TilesetContentManager.cpp | 15 +- .../src/TilesetContentManager.h | 2 - .../src/TilesetJsonLoader.cpp | 116 ++++++++--- .../test/TestTilesetContentManager.cpp | 6 +- .../test/TestTilesetJsonLoader.cpp | 185 ++++++++++-------- .../test/TestTilesetSelectionAlgorithm.cpp | 170 +++++++++------- 13 files changed, 352 insertions(+), 238 deletions(-) diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tile.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tile.h index 7e0a9f25f..3071acb29 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tile.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tile.h @@ -115,7 +115,7 @@ class CESIUM3DTILESSELECTION_API Tile final { */ Tile( TilesetContentLoader* pLoader, - TileExternalContent externalContent) noexcept; + std::unique_ptr&& externalContent) noexcept; /** * @brief Construct a tile with an empty content and a loader that is diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h index 981b1c085..7309f5fd8 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h @@ -47,7 +47,9 @@ struct CESIUM3DTILESSELECTION_API TileEmptyContent {}; * external tileset. When this tile is loaded, all the tiles in the * external tileset will become children of this external content tile */ -struct CESIUM3DTILESSELECTION_API TileExternalContent {}; +class CESIUM3DTILESSELECTION_API TileExternalContent { +public: +}; /** * @brief A content tag that indicates a tile has a glTF model content and @@ -198,7 +200,7 @@ class CESIUM3DTILESSELECTION_API TileContent { using TileContentKindImpl = std::variant< TileUnknownContent, TileEmptyContent, - TileExternalContent, + std::unique_ptr, std::unique_ptr>; public: @@ -218,7 +220,7 @@ class CESIUM3DTILESSELECTION_API TileContent { * @brief Construct an external content for a tile whose content * points to an external tileset */ - TileContent(TileExternalContent content); + TileContent(std::unique_ptr&& content); /** * @brief Set an unknown content tag for a tile. This constructor @@ -236,7 +238,7 @@ class CESIUM3DTILESSELECTION_API TileContent { * @brief Set an external content for a tile whose content * points to an external tileset */ - void setContentKind(TileExternalContent content); + void setContentKind(std::unique_ptr&& content); /** * @brief Set a glTF model content for a tile @@ -267,21 +269,27 @@ class CESIUM3DTILESSELECTION_API TileContent { /** * @brief Get the {@link TileRenderContent} which stores the glTF model * and render resources of the tile - * - * @return The {@link TileRenderContent} which stores the glTF model - * and render resources of the tile */ const TileRenderContent* getRenderContent() const noexcept; /** * @brief Get the {@link TileRenderContent} which stores the glTF model * and render resources of the tile - * - * @return The {@link TileRenderContent} which stores the glTF model - * and render resources of the tile */ TileRenderContent* getRenderContent() noexcept; + /** + * @brief Get the {@link TileExternalContent} which stores the details of + * the external tileset. + */ + const TileExternalContent* getExternalContent() const noexcept; + + /** + * @brief Get the {@link TileExternalContent} which stores the details of + * the external tileset. + */ + TileExternalContent* getExternalContent() noexcept; + private: TileContentKindImpl _contentKind; }; diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h index 4f0ee26ef..c0de9c35d 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h @@ -98,8 +98,6 @@ class CESIUM3DTILESSELECTION_API Tileset final { */ const std::vector& getTilesetCredits() const noexcept; - const std::optional& getSchema() const noexcept; - /** * @brief Sets whether or not the tileset's credits should be shown on screen. * @param showCreditsOnScreen Whether the credits should be shown on screen. diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h index 1bfba842f..ad10786e9 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h @@ -136,15 +136,5 @@ class CESIUM3DTILESSELECTION_API TilesetContentLoader { * @return The {@link TileChildrenResult} that stores the tile's children */ virtual TileChildrenResult createTileChildren(const Tile& tile) = 0; - - std::optional& getSchema() noexcept { - return this->_schema; - } - const std::optional& getSchema() const noexcept { - return this->_schema; - } - -private: - std::optional _schema; }; } // namespace Cesium3DTilesSelection diff --git a/Cesium3DTilesSelection/src/Tile.cpp b/Cesium3DTilesSelection/src/Tile.cpp index 87df7636c..5db390341 100644 --- a/Cesium3DTilesSelection/src/Tile.cpp +++ b/Cesium3DTilesSelection/src/Tile.cpp @@ -21,12 +21,12 @@ Tile::Tile(TilesetContentLoader* pLoader) noexcept Tile::Tile( TilesetContentLoader* pLoader, - TileExternalContent externalContent) noexcept + std::unique_ptr&& externalContent) noexcept : Tile( TileConstructorImpl{}, TileLoadState::ContentLoaded, pLoader, - externalContent) {} + TileContent(std::move(externalContent))) {} Tile::Tile( TilesetContentLoader* pLoader, diff --git a/Cesium3DTilesSelection/src/TileContent.cpp b/Cesium3DTilesSelection/src/TileContent.cpp index e039dd071..59813c2fd 100644 --- a/Cesium3DTilesSelection/src/TileContent.cpp +++ b/Cesium3DTilesSelection/src/TileContent.cpp @@ -78,7 +78,8 @@ TileContent::TileContent() : _contentKind{TileUnknownContent{}} {} TileContent::TileContent(TileEmptyContent content) : _contentKind{content} {} -TileContent::TileContent(TileExternalContent content) : _contentKind{content} {} +TileContent::TileContent(std::unique_ptr&& content) + : _contentKind{std::move(content)} {} void TileContent::setContentKind(TileUnknownContent content) { _contentKind = content; @@ -88,8 +89,9 @@ void TileContent::setContentKind(TileEmptyContent content) { _contentKind = content; } -void TileContent::setContentKind(TileExternalContent content) { - _contentKind = content; +void TileContent::setContentKind( + std::unique_ptr&& content) { + _contentKind = std::move(content); } void TileContent::setContentKind(std::unique_ptr&& content) { @@ -105,7 +107,8 @@ bool TileContent::isEmptyContent() const noexcept { } bool TileContent::isExternalContent() const noexcept { - return std::holds_alternative(this->_contentKind); + return std::holds_alternative>( + this->_contentKind); } bool TileContent::isRenderContent() const noexcept { @@ -132,4 +135,25 @@ TileRenderContent* TileContent::getRenderContent() noexcept { return nullptr; } + +const TileExternalContent* TileContent::getExternalContent() const noexcept { + const std::unique_ptr* pRenderContent = + std::get_if>(&this->_contentKind); + if (pRenderContent) { + return pRenderContent->get(); + } + + return nullptr; +} + +TileExternalContent* TileContent::getExternalContent() noexcept { + std::unique_ptr* pRenderContent = + std::get_if>(&this->_contentKind); + if (pRenderContent) { + return pRenderContent->get(); + } + + return nullptr; +} + } // namespace Cesium3DTilesSelection diff --git a/Cesium3DTilesSelection/src/Tileset.cpp b/Cesium3DTilesSelection/src/Tileset.cpp index 91563585e..4c908201e 100644 --- a/Cesium3DTilesSelection/src/Tileset.cpp +++ b/Cesium3DTilesSelection/src/Tileset.cpp @@ -101,11 +101,6 @@ const std::vector& Tileset::getTilesetCredits() const noexcept { return this->_pTilesetContentManager->getTilesetCredits(); } -const std::optional& -Tileset::getSchema() const noexcept { - return this->_pTilesetContentManager->getSchema(); -} - void Tileset::setShowCreditsOnScreen(bool showCreditsOnScreen) noexcept { this->_options.showCreditsOnScreen = showCreditsOnScreen; @@ -784,13 +779,16 @@ Tileset::TraversalDetails Tileset::_visitTileIfNeeded( this->_frustumCull(tile, frameState, cullWithChildrenBounds, cullResult); this->_fogCull(frameState, distances, cullResult); - if (this->_options.forbidHoles && !cullResult.shouldVisit && - tile.getRefine() == TileRefine::Replace && - tile.getUnconditionallyRefine()) { + if (!cullResult.shouldVisit && tile.getUnconditionallyRefine()) { // Unconditionally refined tiles must always be visited in forbidHoles // mode, because we need to load this tile's descendants before we can - // render any of its siblings. - cullResult.shouldVisit = true; + // render any of its siblings. An unconditionally refined root tile must be + // visited as well, otherwise we won't load anything at all. + if ((this->_options.forbidHoles && + tile.getRefine() == TileRefine::Replace) || + tile.getParent() == nullptr) { + cullResult.shouldVisit = true; + } } if (!cullResult.shouldVisit) { diff --git a/Cesium3DTilesSelection/src/TilesetContentManager.cpp b/Cesium3DTilesSelection/src/TilesetContentManager.cpp index eb0b74026..699aef4eb 100644 --- a/Cesium3DTilesSelection/src/TilesetContentManager.cpp +++ b/Cesium3DTilesSelection/src/TilesetContentManager.cpp @@ -37,8 +37,9 @@ struct ContentKindSetter { tileContent.setContentKind(content); } - void operator()(TileExternalContent content) { - tileContent.setContentKind(content); + void operator()(TileExternalContent&& content) { + tileContent.setContentKind( + std::make_unique(std::move(content))); } void operator()(CesiumGltf::Model&& model) { @@ -1169,16 +1170,6 @@ void TilesetContentManager::finishLoading( updateTileContent(tile, 0.0, tilesetOptions); } -const std::optional& -TilesetContentManager::getSchema() const noexcept { - static const std::optional noSchema; - if (this->_pLoader) { - return this->_pLoader->getSchema(); - } else { - return noSchema; - } -} - void TilesetContentManager::setTileContent( Tile& tile, TileLoadResult&& result, diff --git a/Cesium3DTilesSelection/src/TilesetContentManager.h b/Cesium3DTilesSelection/src/TilesetContentManager.h index e0548adad..6b7d6b7c0 100644 --- a/Cesium3DTilesSelection/src/TilesetContentManager.h +++ b/Cesium3DTilesSelection/src/TilesetContentManager.h @@ -106,8 +106,6 @@ class TilesetContentManager // Transition the tile from the ContentLoaded to the Done state. void finishLoading(Tile& tile, const TilesetOptions& tilesetOptions); - const std::optional& getSchema() const noexcept; - private: static void setTileContent( Tile& tile, diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index 028eec6e1..4f6b050d0 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -512,7 +512,7 @@ std::optional parseTileJsonRecursively( if (implicitTilingJson) { // mark this tile as external - Tile tile{¤tLoader, TileExternalContent{}}; + Tile tile{¤tLoader, std::make_unique()}; tile.setTileID(""); tile.setTransform(tileTransform); tile.setBoundingVolume(tileBoundingVolume); @@ -596,31 +596,17 @@ TilesetContentLoaderResult parseTilesetJson( auto gltfUpAxis = obtainGltfUpAxis(tilesetJson, pLogger); auto pLoader = std::make_unique(baseUrl, gltfUpAxis); - const auto schemaIt = tilesetJson.FindMember("schema"); - if (schemaIt != tilesetJson.MemberEnd()) { - auto schemaResult = Cesium3DTilesReader::readSchema(schemaIt->value); - if (schemaResult.value) { - pLoader->getSchema() = std::move(*schemaResult.value); - } - } - - const auto metadataIt = tilesetJson.FindMember("metadata"); - if (metadataIt != tilesetJson.MemberEnd()) { - auto metadataResult = - Cesium3DTilesReader::readMetadataEntity(metadataIt->value); - if (metadataResult.value) { - // pLoader->getSchema() = std::move(*schemaResult.value); - } - } + pRootTile = std::make_unique( + pLoader.get(), + std::make_unique()); - const auto groupsIt = tilesetJson.FindMember("groups"); - if (groupsIt != tilesetJson.MemberEnd()) { - auto groupsResult = - Cesium3DTilesReader::readGroupMetadataArray(groupsIt->value); - if (groupsResult.value) { - // pLoader->getSchema() = std::move(*schemaResult.value); - } - } + pRootTile->setTileID(""); + pRootTile->setTransform(parentTransform); + pRootTile->setBoundingVolume(CesiumGeometry::BoundingSphere( + glm::dvec3(0.0), + std::numeric_limits::max())); + pRootTile->setGeometricError(10000000.0); + pRootTile->setRefine(parentRefine); const auto rootIt = tilesetJson.FindMember("root"); if (rootIt != tilesetJson.MemberEnd()) { @@ -727,6 +713,42 @@ TilesetJsonLoader::TilesetJsonLoader( CesiumGeometry::Axis upAxis) : _baseUrl{baseUrl}, _upAxis{upAxis}, _children{} {} +namespace { + +void parseTilesetMetadata(const rapidjson::Document& tilesetJson, Tile& tile) { + TileExternalContent* pExternal = tile.getContent().getExternalContent(); + assert(pExternal); + if (!pExternal) + return; + + auto schemaIt = tilesetJson.FindMember("schema"); + if (schemaIt != tilesetJson.MemberEnd()) { + auto schemaResult = Cesium3DTilesReader::readSchema(schemaIt->value); + if (schemaResult.value) { + // pLoader->setSchema(std::move(*schemaResult.value)); + } + } + + const auto metadataIt = tilesetJson.FindMember("metadata"); + if (metadataIt != tilesetJson.MemberEnd()) { + auto metadataResult = + Cesium3DTilesReader::readMetadataEntity(metadataIt->value); + if (metadataResult.value) { + // pLoader->getSchema() = std::move(*schemaResult.value); + } + } + + const auto groupsIt = tilesetJson.FindMember("groups"); + if (groupsIt != tilesetJson.MemberEnd()) { + auto groupsResult = + Cesium3DTilesReader::readGroupMetadataArray(groupsIt->value); + if (groupsResult.value) { + // pLoader->getSchema() = std::move(*schemaResult.value); + } + } +} +} // namespace + CesiumAsync::Future> TilesetJsonLoader::createLoader( const TilesetExternals& externals, @@ -759,12 +781,26 @@ TilesetJsonLoader::createLoader( return result; } - return parseTilesetJson( + gsl::span data = pResponse->data(); + + rapidjson::Document tilesetJson; + tilesetJson.Parse( + reinterpret_cast(data.data()), + data.size()); + if (tilesetJson.HasParseError()) { + TilesetContentLoaderResult result; + result.errors.emplaceError(fmt::format( + "Error when parsing tileset JSON, error code {} at byte offset " + "{}", + tilesetJson.GetParseError(), + tilesetJson.GetErrorOffset())); + return result; + } + + return TilesetJsonLoader::createLoader( pLogger, pCompletedRequest->url(), - pResponse->data(), - glm::dmat4(1.0), - TileRefine::Replace); + tilesetJson); }); } @@ -772,12 +808,32 @@ TilesetContentLoaderResult TilesetJsonLoader::createLoader( const std::shared_ptr& pLogger, const std::string& tilesetJsonUrl, const rapidjson::Document& tilesetJson) { - return parseTilesetJson( + TilesetContentLoaderResult result = parseTilesetJson( pLogger, tilesetJsonUrl, tilesetJson, glm::dmat4(1.0), TileRefine::Replace); + + // Create a root tile to represent the tileset.json itself. + std::vector children; + children.emplace_back(std::move(*result.pRootTile)); + + result.pRootTile = std::make_unique( + children[0].getLoader(), + std::make_unique()); + + result.pRootTile->setTileID(""); + result.pRootTile->setTransform(children[0].getTransform()); + result.pRootTile->setBoundingVolume(children[0].getBoundingVolume()); + result.pRootTile->setUnconditionallyRefine(); + result.pRootTile->setRefine(children[0].getRefine()); + result.pRootTile->createChildTiles(std::move(children)); + + // Populate the root tile with metadata + parseTilesetMetadata(tilesetJson, *result.pRootTile); + + return result; } CesiumAsync::Future diff --git a/Cesium3DTilesSelection/test/TestTilesetContentManager.cpp b/Cesium3DTilesSelection/test/TestTilesetContentManager.cpp index 925abb554..9755229ea 100644 --- a/Cesium3DTilesSelection/test/TestTilesetContentManager.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetContentManager.cpp @@ -219,8 +219,10 @@ TEST_CASE("Test the manager can be initialized with correct loaders") { CHECK(manager.getNumberOfTilesLoaded() == 1); // check root - const Tile* pRootTile = manager.getRootTile(); - CHECK(pRootTile); + const Tile* pTilesetJson = manager.getRootTile(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + const Tile* pRootTile = &pTilesetJson->getChildren()[0]; CHECK(std::get(pRootTile->getTileID()) == "parent.b3dm"); CHECK(pRootTile->getGeometricError() == 70.0); CHECK(pRootTile->getRefine() == TileRefine::Add); diff --git a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp index 99cba3035..d03b7c8da 100644 --- a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp @@ -118,9 +118,12 @@ TEST_CASE("Test creating tileset json loader") { CHECK(!loaderResult.errors.hasErrors()); // check root tile - auto pRootTile = loaderResult.pRootTile.get(); - CHECK(pRootTile != nullptr); - CHECK(pRootTile->getParent() == nullptr); + auto pTilesetJson = loaderResult.pRootTile.get(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + CHECK(pTilesetJson->getParent() == nullptr); + auto pRootTile = &pTilesetJson->getChildren()[0]; + CHECK(pRootTile->getParent() == pTilesetJson); CHECK(pRootTile->getChildren().size() == 4); CHECK(pRootTile->getGeometricError() == 70.0); CHECK(pRootTile->getRefine() == TileRefine::Replace); @@ -182,9 +185,12 @@ TEST_CASE("Test creating tileset json loader") { CHECK(!loaderResult.errors.hasErrors()); // check root tile - auto pRootTile = loaderResult.pRootTile.get(); - CHECK(pRootTile != nullptr); - CHECK(pRootTile->getParent() == nullptr); + auto pTilesetJson = loaderResult.pRootTile.get(); + REQUIRE(pTilesetJson != nullptr); + CHECK(pTilesetJson->getParent() == nullptr); + REQUIRE(pTilesetJson->getChildren().size() == 1); + auto pRootTile = &pTilesetJson->getChildren()[0]; + CHECK(pRootTile->getParent() == pTilesetJson); CHECK(pRootTile->getChildren().size() == 4); CHECK(pRootTile->getGeometricError() == 70.0); CHECK(pRootTile->getRefine() == TileRefine::Add); @@ -225,9 +231,10 @@ TEST_CASE("Test creating tileset json loader") { testDataPath / "MultipleKindsOfTilesets" / "SphereBoundingVolumeTileset.json"); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); - const Tile& rootTile = *loaderResult.pRootTile; + const Tile& rootTile = loaderResult.pRootTile->getChildren()[0]; const CesiumGeometry::BoundingSphere& sphere = std::get(rootTile.getBoundingVolume()); CHECK(sphere.getCenter() == glm::dvec3(0.0, 0.0, 10.0)); @@ -242,9 +249,10 @@ TEST_CASE("Test creating tileset json loader") { testDataPath / "MultipleKindsOfTilesets" / "BoxBoundingVolumeTileset.json"); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); - const Tile& rootTile = *loaderResult.pRootTile; + const Tile& rootTile = loaderResult.pRootTile->getChildren()[0]; const CesiumGeometry::OrientedBoundingBox& box = std::get( rootTile.getBoundingVolume()); @@ -261,8 +269,10 @@ TEST_CASE("Test creating tileset json loader") { "NoBoundingVolumeTileset.json"); CHECK(!loaderResult.errors.hasErrors()); - CHECK(loaderResult.pRootTile); - CHECK(loaderResult.pRootTile->getChildren().empty()); + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + CHECK(pRootTile->getChildren().empty()); // check loader up axis CHECK(loaderResult.pLoader->getUpAxis() == CesiumGeometry::Axis::Y); @@ -274,10 +284,12 @@ TEST_CASE("Test creating tileset json loader") { "NoGeometricErrorTileset.json"); CHECK(!loaderResult.errors.hasErrors()); - CHECK(loaderResult.pRootTile); - CHECK(loaderResult.pRootTile->getGeometricError() == Approx(70.0)); - CHECK(loaderResult.pRootTile->getChildren().size() == 4); - for (const Tile& child : loaderResult.pRootTile->getChildren()) { + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + CHECK(pRootTile->getGeometricError() == Approx(70.0)); + CHECK(pRootTile->getChildren().size() == 4); + for (const Tile& child : pRootTile->getChildren()) { CHECK(child.getGeometricError() == Approx(35.0)); } @@ -291,11 +303,13 @@ TEST_CASE("Test creating tileset json loader") { "NoCapitalizedRefineTileset.json"); CHECK(!loaderResult.errors.hasErrors()); - CHECK(loaderResult.pRootTile); - CHECK(loaderResult.pRootTile->getGeometricError() == Approx(70.0)); - CHECK(loaderResult.pRootTile->getRefine() == TileRefine::Add); - CHECK(loaderResult.pRootTile->getChildren().size() == 4); - for (const Tile& child : loaderResult.pRootTile->getChildren()) { + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + CHECK(pRootTile->getGeometricError() == Approx(70.0)); + CHECK(pRootTile->getRefine() == TileRefine::Add); + CHECK(pRootTile->getChildren().size() == 4); + for (const Tile& child : pRootTile->getChildren()) { CHECK(child.getGeometricError() == Approx(5.0)); CHECK(child.getRefine() == TileRefine::Replace); } @@ -310,10 +324,12 @@ TEST_CASE("Test creating tileset json loader") { "ScaleGeometricErrorTileset.json"); CHECK(!loaderResult.errors.hasErrors()); - CHECK(loaderResult.pRootTile); - CHECK(loaderResult.pRootTile->getGeometricError() == Approx(210.0)); - CHECK(loaderResult.pRootTile->getChildren().size() == 4); - for (const Tile& child : loaderResult.pRootTile->getChildren()) { + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + CHECK(pRootTile->getGeometricError() == Approx(210.0)); + CHECK(pRootTile->getChildren().size() == 4); + for (const Tile& child : pRootTile->getChildren()) { CHECK(child.getGeometricError() == Approx(15.0)); } @@ -325,11 +341,13 @@ TEST_CASE("Test creating tileset json loader") { auto loaderResult = createLoader( testDataPath / "MultipleKindsOfTilesets" / "EmptyTileTileset.json"); CHECK(!loaderResult.errors.hasErrors()); - CHECK(loaderResult.pRootTile); - CHECK(loaderResult.pRootTile->getGeometricError() == Approx(70.0)); - CHECK(loaderResult.pRootTile->getChildren().size() == 1); + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + CHECK(pRootTile->getGeometricError() == Approx(70.0)); + CHECK(pRootTile->getChildren().size() == 1); - const Tile& child = loaderResult.pRootTile->getChildren().front(); + const Tile& child = pRootTile->getChildren().front(); CHECK(child.isEmptyContent()); // check loader up axis @@ -341,19 +359,19 @@ TEST_CASE("Test creating tileset json loader") { testDataPath / "MultipleKindsOfTilesets" / "QuadtreeImplicitTileset.json"); CHECK(!loaderResult.errors.hasErrors()); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); CHECK(loaderResult.pRootTile->isExternalContent()); - CHECK(loaderResult.pRootTile->getChildren().size() == 1); - CHECK( - loaderResult.pRootTile->getTransform() == glm::dmat4(glm::dmat3(2.0))); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + CHECK(pRootTile->isExternalContent()); + CHECK(pRootTile->getChildren().size() == 1); + CHECK(pRootTile->getTransform() == glm::dmat4(glm::dmat3(2.0))); - const Tile& child = loaderResult.pRootTile->getChildren().front(); + const Tile& child = pRootTile->getChildren().front(); CHECK(child.getLoader() != loaderResult.pLoader.get()); - CHECK( - child.getGeometricError() == - loaderResult.pRootTile->getGeometricError()); - CHECK(child.getRefine() == loaderResult.pRootTile->getRefine()); - CHECK(child.getTransform() == loaderResult.pRootTile->getTransform()); + CHECK(child.getGeometricError() == pRootTile->getGeometricError()); + CHECK(child.getRefine() == pRootTile->getRefine()); + CHECK(child.getTransform() == pRootTile->getTransform()); CHECK( std::get(child.getTileID()) == CesiumGeometry::QuadtreeTileID(0, 0, 0)); @@ -364,36 +382,36 @@ TEST_CASE("Test creating tileset json loader") { testDataPath / "MultipleKindsOfTilesets" / "OctreeImplicitTileset.json"); CHECK(!loaderResult.errors.hasErrors()); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); CHECK(loaderResult.pRootTile->isExternalContent()); - CHECK(loaderResult.pRootTile->getChildren().size() == 1); - CHECK( - loaderResult.pRootTile->getTransform() == glm::dmat4(glm::dmat3(2.0))); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + CHECK(pRootTile->isExternalContent()); + CHECK(pRootTile->getChildren().size() == 1); + CHECK(pRootTile->getTransform() == glm::dmat4(glm::dmat3(2.0))); - const Tile& child = loaderResult.pRootTile->getChildren().front(); + const Tile& child = pRootTile->getChildren().front(); CHECK(child.getLoader() != loaderResult.pLoader.get()); - CHECK( - child.getGeometricError() == - loaderResult.pRootTile->getGeometricError()); - CHECK(child.getRefine() == loaderResult.pRootTile->getRefine()); - CHECK(child.getTransform() == loaderResult.pRootTile->getTransform()); + CHECK(child.getGeometricError() == pRootTile->getGeometricError()); + CHECK(child.getRefine() == pRootTile->getRefine()); + CHECK(child.getTransform() == pRootTile->getTransform()); CHECK( std::get(child.getTileID()) == CesiumGeometry::OctreeTileID(0, 0, 0, 0)); } - SECTION("Tileset with metadata") { - auto loaderResult = - createLoader(testDataPath / "WithMetadata" / "tileset.json"); + // SECTION("Tileset with metadata") { + // auto loaderResult = + // createLoader(testDataPath / "WithMetadata" / "tileset.json"); - CHECK(!loaderResult.errors.hasErrors()); - REQUIRE(loaderResult.pLoader); + // CHECK(!loaderResult.errors.hasErrors()); + // REQUIRE(loaderResult.pLoader); - const std::optional& schema = - loaderResult.pLoader->getSchema(); - REQUIRE(schema); - CHECK(schema->id == "foo"); - } + // const std::optional& schema = + // loaderResult.pLoader->getSchema(); + // REQUIRE(schema); + // CHECK(schema->id == "foo"); + // } } TEST_CASE("Test loading individual tile of tileset json") { @@ -402,17 +420,19 @@ TEST_CASE("Test loading individual tile of tileset json") { SECTION("Load tile that has render content") { auto loaderResult = createLoader(testDataPath / "ReplaceTileset" / "tileset.json"); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); - const auto& tileID = - std::get(loaderResult.pRootTile->getTileID()); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + + const auto& tileID = std::get(pRootTile->getTileID()); CHECK(tileID == "parent.b3dm"); // check tile content auto tileLoadResult = loadTileContent( testDataPath / "ReplaceTileset" / tileID, *loaderResult.pLoader, - *loaderResult.pRootTile); + *pRootTile); CHECK( std::holds_alternative(tileLoadResult.contentKind)); CHECK(tileLoadResult.updatedBoundingVolume == std::nullopt); @@ -425,17 +445,19 @@ TEST_CASE("Test loading individual tile of tileset json") { auto loaderResult = createLoader(testDataPath / "AddTileset" / "tileset.json"); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); - const auto& tileID = - std::get(loaderResult.pRootTile->getTileID()); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + + const auto& tileID = std::get(pRootTile->getTileID()); CHECK(tileID == "tileset2.json"); // check tile content auto tileLoadResult = loadTileContent( testDataPath / "AddTileset" / tileID, *loaderResult.pLoader, - *loaderResult.pRootTile); + *pRootTile); CHECK(tileLoadResult.updatedBoundingVolume == std::nullopt); CHECK(tileLoadResult.updatedContentBoundingVolume == std::nullopt); CHECK(std::holds_alternative( @@ -444,11 +466,12 @@ TEST_CASE("Test loading individual tile of tileset json") { CHECK(tileLoadResult.tileInitializer); // check tile is really an external tile - loaderResult.pRootTile->getContent().setContentKind( - std::get(tileLoadResult.contentKind)); - tileLoadResult.tileInitializer(*loaderResult.pRootTile); - const auto& children = loaderResult.pRootTile->getChildren(); - CHECK(children.size() == 1); + pRootTile->getContent().setContentKind( + std::make_unique( + std::get(tileLoadResult.contentKind))); + tileLoadResult.tileInitializer(*pRootTile); + const auto& children = pRootTile->getChildren(); + REQUIRE(children.size() == 1); const Tile& parentB3dmTile = children[0]; CHECK(std::get(parentB3dmTile.getTileID()) == "parent.b3dm"); @@ -474,11 +497,14 @@ TEST_CASE("Test loading individual tile of tileset json") { auto loaderResult = createLoader(testDataPath / "ImplicitTileset" / "tileset_1.1.json"); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); CHECK(loaderResult.pRootTile->isExternalContent()); - CHECK(loaderResult.pRootTile->getChildren().size() == 1); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); - auto& implicitTile = loaderResult.pRootTile->getChildren().front(); + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + REQUIRE(pRootTile->getChildren().size() == 1); + + auto& implicitTile = pRootTile->getChildren().front(); const auto& tileID = std::get(implicitTile.getTileID()); CHECK(tileID == CesiumGeometry::QuadtreeTileID(0, 0, 0)); @@ -570,11 +596,14 @@ TEST_CASE("Test loading individual tile of tileset json") { auto loaderResult = createLoader(testDataPath / "ImplicitTileset" / "tileset_1.0.json"); - CHECK(loaderResult.pRootTile); + REQUIRE(loaderResult.pRootTile); CHECK(loaderResult.pRootTile->isExternalContent()); - CHECK(loaderResult.pRootTile->getChildren().size() == 1); + REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); + + auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; + REQUIRE(pRootTile->getChildren().size() == 1); - auto& implicitTile = loaderResult.pRootTile->getChildren().front(); + auto& implicitTile = pRootTile->getChildren().front(); const auto& tileID = std::get(implicitTile.getTileID()); CHECK(tileID == CesiumGeometry::QuadtreeTileID(0, 0, 0)); diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 0c50a2873..c527bb3aa 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -169,7 +169,12 @@ TEST_CASE("Test replace refinement for render") { initializeTileset(tileset); // check the tiles status - const Tile* root = tileset.getRootTile(); + const Tile* pTilesetJson = tileset.getRootTile(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + + const Tile* root = &pTilesetJson->getChildren()[0]; + REQUIRE(root->getState() == TileLoadState::ContentLoading); for (const auto& child : root->getChildren()) { REQUIRE(child.getState() == TileLoadState::Unloaded); @@ -208,7 +213,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 1); + REQUIRE(result.tilesVisited == 2); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.mainThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); @@ -269,7 +274,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 5); + REQUIRE(result.tilesVisited == 6); REQUIRE(result.workerThreadTileLoadQueueLength == 4); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -293,7 +298,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 1); - REQUIRE(result.tilesVisited == 5); + REQUIRE(result.tilesVisited == 6); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -342,7 +347,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 6); + REQUIRE(result.tilesVisited == 7); REQUIRE(result.workerThreadTileLoadQueueLength == 5); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -384,7 +389,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 1); - REQUIRE(result.tilesVisited == 6); + REQUIRE(result.tilesVisited == 7); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -437,7 +442,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 1); - REQUIRE(result.tilesVisited == 5); + REQUIRE(result.tilesVisited == 6); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -467,7 +472,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 5); + REQUIRE(result.tilesVisited == 6); REQUIRE(result.workerThreadTileLoadQueueLength == 4); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -496,7 +501,7 @@ TEST_CASE("Test replace refinement for render") { REQUIRE(result.tilesFadingOut.size() == 1); - REQUIRE(result.tilesVisited == 5); + REQUIRE(result.tilesVisited == 6); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -551,7 +556,11 @@ TEST_CASE("Test additive refinement") { // root is external tileset. Since its content is loading, we won't know if it // has children or not - const Tile* root = tileset.getRootTile(); + const Tile* pTilesetJson = tileset.getRootTile(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + + const Tile* root = &pTilesetJson->getChildren()[0]; REQUIRE(root->getState() == TileLoadState::ContentLoading); REQUIRE(root->getChildren().size() == 0); @@ -581,11 +590,11 @@ TEST_CASE("Test additive refinement") { } REQUIRE(result.tilesToRenderThisFrame.size() == 1); - REQUIRE(result.tilesToRenderThisFrame.front() == root); + REQUIRE(result.tilesToRenderThisFrame.front() == pTilesetJson); REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 6); + REQUIRE(result.tilesVisited == 7); REQUIRE(result.workerThreadTileLoadQueueLength == 5); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -627,13 +636,14 @@ TEST_CASE("Test additive refinement") { } } - REQUIRE(result.tilesToRenderThisFrame.size() == 2); - REQUIRE(result.tilesToRenderThisFrame[0] == root); - REQUIRE(result.tilesToRenderThisFrame[1] == &parentB3DM); + REQUIRE(result.tilesToRenderThisFrame.size() == 3); + REQUIRE(result.tilesToRenderThisFrame[0] == pTilesetJson); + REQUIRE(result.tilesToRenderThisFrame[1] == root); + REQUIRE(result.tilesToRenderThisFrame[2] == &parentB3DM); REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 7); + REQUIRE(result.tilesVisited == 8); REQUIRE(result.workerThreadTileLoadQueueLength == 1); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -643,11 +653,11 @@ TEST_CASE("Test additive refinement") { { ViewUpdateResult result = tileset.updateView({viewState}); - REQUIRE(result.tilesToRenderThisFrame.size() == 7); + REQUIRE(result.tilesToRenderThisFrame.size() == 8); REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 7); + REQUIRE(result.tilesVisited == 8); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -700,7 +710,11 @@ TEST_CASE("Render any tiles even when one of children can't be rendered for " initializeTileset(tileset); ViewState viewState = zoomToTileset(tileset); - Tile* root = tileset.getRootTile(); + Tile* pTilesetJson = tileset.getRootTile(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + Tile* root = &pTilesetJson->getChildren()[0]; + REQUIRE(!doesTileMeetSSE(viewState, *root, tileset)); REQUIRE(root->getState() == TileLoadState::ContentLoading); REQUIRE(root->getChildren().size() == 3); @@ -714,9 +728,9 @@ TEST_CASE("Render any tiles even when one of children can't be rendered for " CHECK(child.getState() == TileLoadState::ContentLoading); } - REQUIRE(result.tilesToRenderThisFrame.size() == 1); + REQUIRE(result.tilesToRenderThisFrame.size() == 2); REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 4); + REQUIRE(result.tilesVisited == 5); REQUIRE(result.workerThreadTileLoadQueueLength == 3); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -738,9 +752,9 @@ TEST_CASE("Render any tiles even when one of children can't be rendered for " REQUIRE(child.isRenderable()); } - REQUIRE(result.tilesToRenderThisFrame.size() == 4); + REQUIRE(result.tilesToRenderThisFrame.size() == 5); REQUIRE(result.tilesFadingOut.size() == 0); - REQUIRE(result.tilesVisited == 4); + REQUIRE(result.tilesVisited == 5); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); REQUIRE(result.culledTilesVisited == 0); @@ -793,7 +807,10 @@ TEST_CASE("Test multiple frustums") { initializeTileset(tileset); // check the tiles status - const Tile* root = tileset.getRootTile(); + const Tile* pTilesetJson = tileset.getRootTile(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + const Tile* root = &pTilesetJson->getChildren()[0]; REQUIRE(root->getState() == TileLoadState::ContentLoading); for (const auto& child : root->getChildren()) { REQUIRE(child.getState() == TileLoadState::Unloaded); @@ -856,7 +873,7 @@ TEST_CASE("Test multiple frustums") { REQUIRE(result.tilesFadingOut.size() == 1); REQUIRE(*result.tilesFadingOut.begin() == root); - REQUIRE(result.tilesVisited == 5); + REQUIRE(result.tilesVisited == 6); REQUIRE(result.workerThreadTileLoadQueueLength == 0); REQUIRE(result.tilesCulled == 0); } @@ -905,7 +922,7 @@ TEST_CASE("Test multiple frustums") { // The grand child and the second child are the only ones rendered. // The third and fourth children of the root are culled. REQUIRE(result.tilesToRenderThisFrame.size() == 2); - REQUIRE(result.tilesVisited == 4); + REQUIRE(result.tilesVisited == 5); REQUIRE( std::find( result.tilesToRenderThisFrame.begin(), @@ -1028,7 +1045,11 @@ TEST_CASE("Can load example tileset.json from 3DTILES_bounding_volume_S2 " tilesetExternals.asyncSystem.dispatchMainThreadTasks(); } - const Tile* pRoot = tileset.getRootTile(); + const Tile* pTilesetJson = tileset.getRootTile(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + const Tile* pRoot = &pTilesetJson->getChildren()[0]; + const S2CellBoundingVolume* pS2 = std::get_if(&pRoot->getBoundingVolume()); REQUIRE(pS2); @@ -1070,54 +1091,53 @@ TEST_CASE("Can load example tileset.json from 3DTILES_bounding_volume_S2 " REQUIRE(pGreatGrandchild->getChildren().empty()); } -TEST_CASE("Makes metadata available once root tile is loaded") { - Cesium3DTilesSelection::registerAllTileContentTypes(); - - std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; - testDataPath = testDataPath / "WithMetadata"; - std::vector files{ - "tileset.json", - "parent.b3dm", - "ll.b3dm", - "lr.b3dm", - "ul.b3dm", - "ur.b3dm" - }; - - std::map> - mockCompletedRequests; - for (const auto& file : files) { - std::unique_ptr mockCompletedResponse = - std::make_unique( - static_cast(200), - "doesn't matter", - CesiumAsync::HttpHeaders{}, - readFile(testDataPath / file)); - mockCompletedRequests.insert( - {file, - std::make_shared( - "GET", - file, - CesiumAsync::HttpHeaders{}, - std::move(mockCompletedResponse))}); - } - - std::shared_ptr mockAssetAccessor = - std::make_shared(std::move(mockCompletedRequests)); - TilesetExternals tilesetExternals{ - mockAssetAccessor, - std::make_shared(), - AsyncSystem(std::make_shared()), - nullptr}; - - // create tileset and call updateView() to give it a chance to load - Tileset tileset(tilesetExternals, "tileset.json"); - initializeTileset(tileset); - - const std::optional& schema = tileset.getSchema(); - REQUIRE(schema); - CHECK(schema->id == "foo"); -} +// TEST_CASE("Makes metadata available once root tile is loaded") { +// Cesium3DTilesSelection::registerAllTileContentTypes(); + +// std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; +// testDataPath = testDataPath / "WithMetadata"; +// std::vector files{ +// "tileset.json", +// "parent.b3dm", +// "ll.b3dm", +// "lr.b3dm", +// "ul.b3dm", +// "ur.b3dm"}; + +// std::map> +// mockCompletedRequests; +// for (const auto& file : files) { +// std::unique_ptr mockCompletedResponse = +// std::make_unique( +// static_cast(200), +// "doesn't matter", +// CesiumAsync::HttpHeaders{}, +// readFile(testDataPath / file)); +// mockCompletedRequests.insert( +// {file, +// std::make_shared( +// "GET", +// file, +// CesiumAsync::HttpHeaders{}, +// std::move(mockCompletedResponse))}); +// } + +// std::shared_ptr mockAssetAccessor = +// std::make_shared(std::move(mockCompletedRequests)); +// TilesetExternals tilesetExternals{ +// mockAssetAccessor, +// std::make_shared(), +// AsyncSystem(std::make_shared()), +// nullptr}; + +// // create tileset and call updateView() to give it a chance to load +// Tileset tileset(tilesetExternals, "tileset.json"); +// initializeTileset(tileset); + +// const std::optional& schema = tileset.getSchema(); +// REQUIRE(schema); +// CHECK(schema->id == "foo"); +// } namespace { From 44ad7866d05822ab72a85b7d6634de7d96378e9b Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 21 Aug 2023 18:51:12 +1000 Subject: [PATCH 04/29] Expose metadata on root tile and external tilesets. --- .../Cesium3DTilesSelection/TileContent.h | 29 ++++- .../src/TilesetJsonLoader.cpp | 25 +++-- .../test/TestTilesetJsonLoader.cpp | 28 ++--- .../test/TestTilesetSelectionAlgorithm.cpp | 100 ++++++++++-------- 4 files changed, 110 insertions(+), 72 deletions(-) diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h index 7309f5fd8..6d5c6ab0e 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h @@ -6,9 +6,12 @@ #include #include +#include +#include #include #include +#include namespace Cesium3DTilesSelection { /** @@ -47,8 +50,30 @@ struct CESIUM3DTILESSELECTION_API TileEmptyContent {}; * external tileset. When this tile is loaded, all the tiles in the * external tileset will become children of this external content tile */ -class CESIUM3DTILESSELECTION_API TileExternalContent { -public: +struct CESIUM3DTILESSELECTION_API TileExternalContent { + /** + * @brief An object defining the structure of metadata classes and enums. When + * this is defined, then `schemaUri` shall be undefined. + */ + std::optional schema; + + /** + * @brief The URI (or IRI) of the external schema file. When this is defined, + * then `schema` shall be undefined. + */ + std::optional schemaUri; + + /** + * @brief An array of groups that tile content may belong to. Each element of + * this array is a metadata entity that describes the group. The tile content + * `group` property is an index into this array. + */ + std::vector groups; + + /** + * @brief A metadata entity that is associated with this tileset. + */ + std::optional metadata; }; /** diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index 4f6b050d0..026aac69d 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -706,14 +706,6 @@ TileLoadResult parseExternalTilesetInWorkerThread( std::move(externalContentInitializer), TileLoadResultState::Success}; } -} // namespace - -TilesetJsonLoader::TilesetJsonLoader( - const std::string& baseUrl, - CesiumGeometry::Axis upAxis) - : _baseUrl{baseUrl}, _upAxis{upAxis}, _children{} {} - -namespace { void parseTilesetMetadata(const rapidjson::Document& tilesetJson, Tile& tile) { TileExternalContent* pExternal = tile.getContent().getExternalContent(); @@ -725,16 +717,21 @@ void parseTilesetMetadata(const rapidjson::Document& tilesetJson, Tile& tile) { if (schemaIt != tilesetJson.MemberEnd()) { auto schemaResult = Cesium3DTilesReader::readSchema(schemaIt->value); if (schemaResult.value) { - // pLoader->setSchema(std::move(*schemaResult.value)); + pExternal->schema = std::move(*schemaResult.value); } } + auto schemaUriIt = tilesetJson.FindMember("schemaUri"); + if (schemaUriIt != tilesetJson.MemberEnd() && schemaUriIt->value.IsString()) { + pExternal->schemaUri = schemaUriIt->value.GetString(); + } + const auto metadataIt = tilesetJson.FindMember("metadata"); if (metadataIt != tilesetJson.MemberEnd()) { auto metadataResult = Cesium3DTilesReader::readMetadataEntity(metadataIt->value); if (metadataResult.value) { - // pLoader->getSchema() = std::move(*schemaResult.value); + pExternal->metadata = std::move(*metadataResult.value); } } @@ -743,12 +740,18 @@ void parseTilesetMetadata(const rapidjson::Document& tilesetJson, Tile& tile) { auto groupsResult = Cesium3DTilesReader::readGroupMetadataArray(groupsIt->value); if (groupsResult.value) { - // pLoader->getSchema() = std::move(*schemaResult.value); + pExternal->groups = std::move(*groupsResult.value); } } } + } // namespace +TilesetJsonLoader::TilesetJsonLoader( + const std::string& baseUrl, + CesiumGeometry::Axis upAxis) + : _baseUrl{baseUrl}, _upAxis{upAxis}, _children{} {} + CesiumAsync::Future> TilesetJsonLoader::createLoader( const TilesetExternals& externals, diff --git a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp index d03b7c8da..8d1d778c4 100644 --- a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp @@ -400,18 +400,22 @@ TEST_CASE("Test creating tileset json loader") { CesiumGeometry::OctreeTileID(0, 0, 0, 0)); } - // SECTION("Tileset with metadata") { - // auto loaderResult = - // createLoader(testDataPath / "WithMetadata" / "tileset.json"); - - // CHECK(!loaderResult.errors.hasErrors()); - // REQUIRE(loaderResult.pLoader); - - // const std::optional& schema = - // loaderResult.pLoader->getSchema(); - // REQUIRE(schema); - // CHECK(schema->id == "foo"); - // } + SECTION("Tileset with metadata") { + auto loaderResult = + createLoader(testDataPath / "WithMetadata" / "tileset.json"); + + CHECK(!loaderResult.errors.hasErrors()); + REQUIRE(loaderResult.pLoader); + REQUIRE(loaderResult.pRootTile); + + TileExternalContent* pExternal = + loaderResult.pRootTile->getContent().getExternalContent(); + REQUIRE(pExternal); + + const std::optional& schema = pExternal->schema; + REQUIRE(schema); + CHECK(schema->id == "foo"); + } } TEST_CASE("Test loading individual tile of tileset json") { diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index c527bb3aa..de3d82753 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1091,53 +1091,59 @@ TEST_CASE("Can load example tileset.json from 3DTILES_bounding_volume_S2 " REQUIRE(pGreatGrandchild->getChildren().empty()); } -// TEST_CASE("Makes metadata available once root tile is loaded") { -// Cesium3DTilesSelection::registerAllTileContentTypes(); - -// std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; -// testDataPath = testDataPath / "WithMetadata"; -// std::vector files{ -// "tileset.json", -// "parent.b3dm", -// "ll.b3dm", -// "lr.b3dm", -// "ul.b3dm", -// "ur.b3dm"}; - -// std::map> -// mockCompletedRequests; -// for (const auto& file : files) { -// std::unique_ptr mockCompletedResponse = -// std::make_unique( -// static_cast(200), -// "doesn't matter", -// CesiumAsync::HttpHeaders{}, -// readFile(testDataPath / file)); -// mockCompletedRequests.insert( -// {file, -// std::make_shared( -// "GET", -// file, -// CesiumAsync::HttpHeaders{}, -// std::move(mockCompletedResponse))}); -// } - -// std::shared_ptr mockAssetAccessor = -// std::make_shared(std::move(mockCompletedRequests)); -// TilesetExternals tilesetExternals{ -// mockAssetAccessor, -// std::make_shared(), -// AsyncSystem(std::make_shared()), -// nullptr}; - -// // create tileset and call updateView() to give it a chance to load -// Tileset tileset(tilesetExternals, "tileset.json"); -// initializeTileset(tileset); - -// const std::optional& schema = tileset.getSchema(); -// REQUIRE(schema); -// CHECK(schema->id == "foo"); -// } +TEST_CASE("Makes metadata available once root tile is loaded") { + Cesium3DTilesSelection::registerAllTileContentTypes(); + + std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; + testDataPath = testDataPath / "WithMetadata"; + std::vector files{ + "tileset.json", + "parent.b3dm", + "ll.b3dm", + "lr.b3dm", + "ul.b3dm", + "ur.b3dm"}; + + std::map> + mockCompletedRequests; + for (const auto& file : files) { + std::unique_ptr mockCompletedResponse = + std::make_unique( + static_cast(200), + "doesn't matter", + CesiumAsync::HttpHeaders{}, + readFile(testDataPath / file)); + mockCompletedRequests.insert( + {file, + std::make_shared( + "GET", + file, + CesiumAsync::HttpHeaders{}, + std::move(mockCompletedResponse))}); + } + + std::shared_ptr mockAssetAccessor = + std::make_shared(std::move(mockCompletedRequests)); + TilesetExternals tilesetExternals{ + mockAssetAccessor, + std::make_shared(), + AsyncSystem(std::make_shared()), + nullptr}; + + // create tileset and call updateView() to give it a chance to load + Tileset tileset(tilesetExternals, "tileset.json"); + initializeTileset(tileset); + + Tile* pRoot = tileset.getRootTile(); + REQUIRE(pRoot); + + TileExternalContent* pExternal = pRoot->getContent().getExternalContent(); + REQUIRE(pExternal); + + const std::optional& schema = pExternal->schema; + REQUIRE(schema); + CHECK(schema->id == "foo"); +} namespace { From 789fed81fcc3cf8295d3f7f0d409548278890ad4 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 21 Aug 2023 20:07:01 +1000 Subject: [PATCH 05/29] Support metadata on external tilesets. --- .../src/TilesetJsonLoader.cpp | 137 ++++++++---------- .../test/TestTilesetSelectionAlgorithm.cpp | 69 +++++++++ .../data/WithMetadata/external-tileset.json | 67 +++++++++ .../test/data/WithMetadata/tileset.json | 16 ++ 4 files changed, 211 insertions(+), 78 deletions(-) create mode 100644 Cesium3DTilesSelection/test/data/WithMetadata/external-tileset.json diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index 026aac69d..9b0aaee6e 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -31,10 +31,13 @@ struct ExternalContentInitializer { std::shared_ptr> pExternalTilesetLoaders; TilesetJsonLoader* tilesetJsonLoader; + TileExternalContent externalContent; void operator()(Tile& tile) { - TileContent& content = tile.getContent(); - if (content.isExternalContent()) { + TileExternalContent* pExternalContent = + tile.getContent().getExternalContent(); + if (pExternalContent) { + *pExternalContent = std::move(externalContent); std::unique_ptr& pExternalRoot = pExternalTilesetLoaders->pRootTile; if (pExternalRoot) { // propagate all the external tiles to be the children of this tile @@ -595,19 +598,6 @@ TilesetContentLoaderResult parseTilesetJson( std::unique_ptr pRootTile; auto gltfUpAxis = obtainGltfUpAxis(tilesetJson, pLogger); auto pLoader = std::make_unique(baseUrl, gltfUpAxis); - - pRootTile = std::make_unique( - pLoader.get(), - std::make_unique()); - - pRootTile->setTileID(""); - pRootTile->setTransform(parentTransform); - pRootTile->setBoundingVolume(CesiumGeometry::BoundingSphere( - glm::dvec3(0.0), - std::numeric_limits::max())); - pRootTile->setGeometricError(10000000.0); - pRootTile->setRefine(parentRefine); - const auto rootIt = tilesetJson.FindMember("root"); if (rootIt != tilesetJson.MemberEnd()) { const rapidjson::Value& rootJson = rootIt->value; @@ -632,31 +622,39 @@ TilesetContentLoaderResult parseTilesetJson( ErrorList{}}; } -TilesetContentLoaderResult parseTilesetJson( - const std::shared_ptr& pLogger, - const std::string& baseUrl, - const gsl::span& tilesetJsonBinary, - const glm::dmat4& parentTransform, - TileRefine parentRefine) { - rapidjson::Document tilesetJson; - tilesetJson.Parse( - reinterpret_cast(tilesetJsonBinary.data()), - tilesetJsonBinary.size()); - if (tilesetJson.HasParseError()) { - TilesetContentLoaderResult result; - result.errors.emplaceError(fmt::format( - "Error when parsing tileset JSON, error code {} at byte offset {}", - tilesetJson.GetParseError(), - tilesetJson.GetErrorOffset())); - return result; +void parseTilesetMetadata( + const rapidjson::Document& tilesetJson, + TileExternalContent& externalContent) { + auto schemaIt = tilesetJson.FindMember("schema"); + if (schemaIt != tilesetJson.MemberEnd()) { + auto schemaResult = Cesium3DTilesReader::readSchema(schemaIt->value); + if (schemaResult.value) { + externalContent.schema = std::move(*schemaResult.value); + } } - return parseTilesetJson( - pLogger, - baseUrl, - tilesetJson, - parentTransform, - parentRefine); + auto schemaUriIt = tilesetJson.FindMember("schemaUri"); + if (schemaUriIt != tilesetJson.MemberEnd() && schemaUriIt->value.IsString()) { + externalContent.schemaUri = schemaUriIt->value.GetString(); + } + + const auto metadataIt = tilesetJson.FindMember("metadata"); + if (metadataIt != tilesetJson.MemberEnd()) { + auto metadataResult = + Cesium3DTilesReader::readMetadataEntity(metadataIt->value); + if (metadataResult.value) { + externalContent.metadata = std::move(*metadataResult.value); + } + } + + const auto groupsIt = tilesetJson.FindMember("groups"); + if (groupsIt != tilesetJson.MemberEnd()) { + auto groupsResult = + Cesium3DTilesReader::readGroupMetadataArray(groupsIt->value); + if (groupsResult.value) { + externalContent.groups = std::move(*groupsResult.value); + } + } } TileLoadResult parseExternalTilesetInWorkerThread( @@ -671,6 +669,19 @@ TileLoadResult parseExternalTilesetInWorkerThread( const auto& responseData = pResponse->data(); const auto& tileUrl = pCompletedRequest->url(); + rapidjson::Document tilesetJson; + tilesetJson.Parse( + reinterpret_cast(responseData.data()), + responseData.size()); + if (tilesetJson.HasParseError()) { + SPDLOG_LOGGER_ERROR( + pLogger, + "Error when parsing tileset JSON, error code {} at byte offset {}", + tilesetJson.GetParseError(), + tilesetJson.GetErrorOffset()); + return TileLoadResult::createFailedResult(std::move(pCompletedRequest)); + } + // Save the parsed external tileset into custom data. // We will propagate it back to tile later in the main // thread @@ -678,10 +689,13 @@ TileLoadResult parseExternalTilesetInWorkerThread( parseTilesetJson( pLogger, tileUrl, - responseData, + tilesetJson, tileTransform, tileRefine); + // Populate the root tile with metadata + parseTilesetMetadata(tilesetJson, externalContentInitializer.externalContent); + // check and log any errors const auto& errors = externalTilesetLoader.errors; if (errors) { @@ -707,44 +721,6 @@ TileLoadResult parseExternalTilesetInWorkerThread( TileLoadResultState::Success}; } -void parseTilesetMetadata(const rapidjson::Document& tilesetJson, Tile& tile) { - TileExternalContent* pExternal = tile.getContent().getExternalContent(); - assert(pExternal); - if (!pExternal) - return; - - auto schemaIt = tilesetJson.FindMember("schema"); - if (schemaIt != tilesetJson.MemberEnd()) { - auto schemaResult = Cesium3DTilesReader::readSchema(schemaIt->value); - if (schemaResult.value) { - pExternal->schema = std::move(*schemaResult.value); - } - } - - auto schemaUriIt = tilesetJson.FindMember("schemaUri"); - if (schemaUriIt != tilesetJson.MemberEnd() && schemaUriIt->value.IsString()) { - pExternal->schemaUri = schemaUriIt->value.GetString(); - } - - const auto metadataIt = tilesetJson.FindMember("metadata"); - if (metadataIt != tilesetJson.MemberEnd()) { - auto metadataResult = - Cesium3DTilesReader::readMetadataEntity(metadataIt->value); - if (metadataResult.value) { - pExternal->metadata = std::move(*metadataResult.value); - } - } - - const auto groupsIt = tilesetJson.FindMember("groups"); - if (groupsIt != tilesetJson.MemberEnd()) { - auto groupsResult = - Cesium3DTilesReader::readGroupMetadataArray(groupsIt->value); - if (groupsResult.value) { - pExternal->groups = std::move(*groupsResult.value); - } - } -} - } // namespace TilesetJsonLoader::TilesetJsonLoader( @@ -834,7 +810,12 @@ TilesetContentLoaderResult TilesetJsonLoader::createLoader( result.pRootTile->createChildTiles(std::move(children)); // Populate the root tile with metadata - parseTilesetMetadata(tilesetJson, *result.pRootTile); + TileExternalContent* pExternal = + result.pRootTile->getContent().getExternalContent(); + assert(pExternal); + if (pExternal) { + parseTilesetMetadata(tilesetJson, *pExternal); + } return result; } diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index de3d82753..40d4c9288 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1098,6 +1098,7 @@ TEST_CASE("Makes metadata available once root tile is loaded") { testDataPath = testDataPath / "WithMetadata"; std::vector files{ "tileset.json", + "external-tileset.json", "parent.b3dm", "ll.b3dm", "lr.b3dm", @@ -1145,6 +1146,74 @@ TEST_CASE("Makes metadata available once root tile is loaded") { CHECK(schema->id == "foo"); } +TEST_CASE("Makes metadata available on external tilesets") { + Cesium3DTilesSelection::registerAllTileContentTypes(); + + std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; + testDataPath = testDataPath / "WithMetadata"; + std::vector files{ + "tileset.json", + "external-tileset.json", + "parent.b3dm", + "ll.b3dm", + "lr.b3dm", + "ul.b3dm", + "ur.b3dm"}; + + std::map> + mockCompletedRequests; + for (const auto& file : files) { + std::unique_ptr mockCompletedResponse = + std::make_unique( + static_cast(200), + "doesn't matter", + CesiumAsync::HttpHeaders{}, + readFile(testDataPath / file)); + mockCompletedRequests.insert( + {file, + std::make_shared( + "GET", + file, + CesiumAsync::HttpHeaders{}, + std::move(mockCompletedResponse))}); + } + + std::shared_ptr mockAssetAccessor = + std::make_shared(std::move(mockCompletedRequests)); + TilesetExternals tilesetExternals{ + mockAssetAccessor, + std::make_shared(), + AsyncSystem(std::make_shared()), + nullptr}; + + // create tileset and call updateView() to give it a chance to load + Tileset tileset(tilesetExternals, "tileset.json"); + initializeTileset(tileset); + + Tile* pTilesetJson = tileset.getRootTile(); + REQUIRE(pTilesetJson); + REQUIRE(pTilesetJson->getChildren().size() == 1); + + Tile* pRoot = &pTilesetJson->getChildren()[0]; + REQUIRE(pRoot); + REQUIRE(pRoot->getChildren().size() == 5); + Tile* pExternal = &pRoot->getChildren()[4]; + + TileExternalContent* pExternalContent = nullptr; + + for (int i = 0; i < 10 && pExternalContent == nullptr; ++i) { + ViewState zoomToTileViewState = zoomToTile(*pExternal); + tileset.updateView({zoomToTileViewState}); + pExternalContent = pExternal->getContent().getExternalContent(); + } + + REQUIRE(pExternalContent); + + REQUIRE(pExternalContent->groups.size() == 2); + CHECK(pExternalContent->groups[0].classProperty == "someClass"); + CHECK(pExternalContent->groups[1].classProperty == "someClass"); +} + namespace { void runUnconditionallyRefinedTestCase(const TilesetOptions& options) { diff --git a/Cesium3DTilesSelection/test/data/WithMetadata/external-tileset.json b/Cesium3DTilesSelection/test/data/WithMetadata/external-tileset.json new file mode 100644 index 000000000..4ae1a25f2 --- /dev/null +++ b/Cesium3DTilesSelection/test/data/WithMetadata/external-tileset.json @@ -0,0 +1,67 @@ +{ + "asset": { + "version": "1.0", + "tilesetVersion": "1.2.3" + }, + "extras": { + "name": "Sample Tileset" + }, + "schema": { + "id": "bar", + "name": "Bar", + "description": "A description of Bar.", + "version": "3.2.1", + "classes": { + "someClass": { + "name": "Some Class!", + "description": "A description of Some Class.", + "properties": { + "someProperty": { + "name": "Some Property", + "description": "A description of Some Property.", + "type": "STRING", + "semantic": "GREAT" + } + } + } + } + }, + "groups": [ + { + "class": "someClass", + "properties": { + "someProperty": "test" + } + }, + { + "class": "someClass", + "properties": { + "someProperty": "another" + } + } + ], + "metadata": { + "class": "someClass", + "properties": { + "someProperty": "foo" + } + }, + "geometricError": 35, + "root": { + "boundingVolume": { + "region": [ + -1.3197209591796106, + 0.6988424218, + -1.3196390408203893, + 0.6989055782, + 0, + 88 + ] + }, + "geometricError": 35, + "refine": "REPLACE", + "content": { + "uri": "parent.b3dm" + } + } +} diff --git a/Cesium3DTilesSelection/test/data/WithMetadata/tileset.json b/Cesium3DTilesSelection/test/data/WithMetadata/tileset.json index 4e101d8de..8d5452a90 100644 --- a/Cesium3DTilesSelection/test/data/WithMetadata/tileset.json +++ b/Cesium3DTilesSelection/test/data/WithMetadata/tileset.json @@ -138,6 +138,22 @@ "content": { "uri": "ul.b3dm" } + }, + { + "boundingVolume": { + "region": [ + -1.3197209591796106, + 0.698874, + -1.31968, + 0.6989055782, + 0, + 20 + ] + }, + "geometricError": 35, + "content": { + "uri": "external-tileset.json" + } } ] } From e99b00d2287338698390af1f547fc9cc3c1a2a33 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 21 Aug 2023 21:18:35 +1000 Subject: [PATCH 06/29] Formatting. --- .../include/Cesium3DTilesSelection/TileContent.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h index 6d5c6ab0e..87d112e6b 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h @@ -4,10 +4,10 @@ #include "Library.h" #include "RasterOverlayDetails.h" +#include +#include #include #include -#include -#include #include #include From 79d33e236541c43c623ad950902d3bafe39a28a0 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 21 Aug 2023 21:44:22 +1000 Subject: [PATCH 07/29] Fix Clang/GCC compiler error. --- Cesium3DTilesSelection/src/TilesetJsonLoader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index 9b0aaee6e..282d8e1d7 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -839,7 +839,7 @@ TilesetJsonLoader::loadTileContent(const TileLoadInput& loadInput) { const glm::dmat4& tileTransform = tile.getTransform(); TileRefine tileRefine = tile.getRefine(); - ExternalContentInitializer externalContentInitializer{nullptr, this}; + ExternalContentInitializer externalContentInitializer{nullptr, this, {}}; const auto& asyncSystem = loadInput.asyncSystem; const auto& pAssetAccessor = loadInput.pAssetAccessor; From 8f8cb9bb8cb632fd35d8c356e2f3eb194372e063 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Tue, 22 Aug 2023 22:15:47 +1000 Subject: [PATCH 08/29] Generate Reader classes, remove hand-written versions. --- .../include/Cesium3DTilesReader/AssetReader.h | 69 + .../Cesium3DTilesReader/AvailabilityReader.h | 69 + .../BoundingVolumeReader.h | 70 + .../Cesium3DTilesReader/BufferReader.h | 69 + .../Cesium3DTilesReader/BufferViewReader.h | 69 + .../Cesium3DTilesReader/ClassPropertyReader.h | 70 + .../include/Cesium3DTilesReader/ClassReader.h | 69 + .../ClassStatisticsReader.h | 70 + .../Cesium3DTilesReader/ContentReader.h | 69 + .../include/Cesium3DTilesReader/EnumReader.h | 69 + .../Cesium3DTilesReader/EnumValueReader.h | 69 + .../Extension3dTilesBoundingVolumeS2Reader.h | 75 + .../Cesium3DTilesReader/GroupMetadataReader.h | 70 + .../ImplicitTilingReader.h | 70 + .../MetadataEntityReader.h | 70 + .../Cesium3DTilesReader/PropertiesReader.h | 69 + .../PropertyStatisticsReader.h | 71 + .../PropertyTablePropertyReader.h | 71 + .../Cesium3DTilesReader/PropertyTableReader.h | 70 + .../Cesium3DTilesReader/SchemaReader.h | 69 + .../Cesium3DTilesReader/StatisticsReader.h | 69 + .../Cesium3DTilesReader/SubtreeReader.h | 69 + .../Cesium3DTilesReader/SubtreesReader.h | 69 + .../include/Cesium3DTilesReader/TileReader.h | 69 + .../Cesium3DTilesReader/TilesetReader.h | 69 + ...ension3dTilesBoundingVolumeS2JsonHandler.h | 45 +- .../generated/src/GeneratedJsonHandlers.cpp | 899 +++++ .../include/Cesium3DTilesReader/Readers.h | 30 - .../Cesium3DTilesReader/SchemaReader.h | 75 - .../Cesium3DTilesReader/SubtreeReader.h | 73 - .../Cesium3DTilesReader/TilesetReader.h | 72 - Cesium3DTilesReader/src/Readers.cpp | 43 - Cesium3DTilesReader/src/SchemaReader.cpp | 63 - Cesium3DTilesReader/src/SubtreeReader.cpp | 48 - Cesium3DTilesReader/src/TilesetReader.cpp | 48 - .../test/TestTilesetReader.cpp | 52 +- .../src/TilesetJsonLoader.cpp | 15 +- .../test/TestTilesetWriter.cpp | 11 +- .../include/CesiumGltfReader/AccessorReader.h | 69 + .../AccessorSparseIndicesReader.h | 71 + .../CesiumGltfReader/AccessorSparseReader.h | 70 + .../AccessorSparseValuesReader.h | 71 + .../CesiumGltfReader/AnimationChannelReader.h | 70 + .../AnimationChannelTargetReader.h | 71 + .../CesiumGltfReader/AnimationReader.h | 69 + .../CesiumGltfReader/AnimationSamplerReader.h | 70 + .../include/CesiumGltfReader/AssetReader.h | 69 + .../include/CesiumGltfReader/BufferReader.h | 69 + .../CesiumGltfReader/BufferViewReader.h | 69 + .../CameraOrthographicReader.h | 70 + .../CameraPerspectiveReader.h | 70 + .../include/CesiumGltfReader/CameraReader.h | 69 + .../CesiumGltfReader/ClassPropertyReader.h | 70 + .../include/CesiumGltfReader/ClassReader.h | 69 + .../CesiumGltfReader/ClassStatisticsReader.h | 70 + .../include/CesiumGltfReader/EnumReader.h | 69 + .../CesiumGltfReader/EnumValueReader.h | 69 + ...tensionBufferExtMeshoptCompressionReader.h | 75 + ...ionBufferViewExtMeshoptCompressionReader.h | 75 + .../ExtensionCesiumRTCReader.h | 70 + .../ExtensionCesiumTileEdgesReader.h | 72 + ...ensionExtInstanceFeaturesFeatureIdReader.h | 75 + .../ExtensionExtInstanceFeaturesReader.h | 73 + .../ExtensionExtMeshFeaturesFeatureIdReader.h | 75 + ...ionExtMeshFeaturesFeatureIdTextureReader.h | 75 + .../ExtensionExtMeshFeaturesReader.h | 72 + .../ExtensionExtMeshGpuInstancingReader.h | 73 + ...ExtStructuralMetadataClassPropertyReader.h | 75 + ...xtensionExtStructuralMetadataClassReader.h | 75 + ...ExtensionExtStructuralMetadataEnumReader.h | 75 + ...sionExtStructuralMetadataEnumValueReader.h | 75 + ...lMetadataPropertyAttributePropertyReader.h | 78 + ...tructuralMetadataPropertyAttributeReader.h | 76 + ...turalMetadataPropertyTablePropertyReader.h | 78 + ...ExtStructuralMetadataPropertyTableReader.h | 75 + ...ralMetadataPropertyTexturePropertyReader.h | 78 + ...tStructuralMetadataPropertyTextureReader.h | 75 + ...tensionExtStructuralMetadataSchemaReader.h | 75 + .../ExtensionKhrDracoMeshCompressionReader.h | 73 + .../ExtensionKhrMaterialsUnlitReader.h | 72 + .../ExtensionKhrTextureBasisuReader.h | 72 + .../ExtensionKhrTextureTransformReader.h | 73 + ...ionMeshPrimitiveExtFeatureMetadataReader.h | 75 + ...MeshPrimitiveExtStructuralMetadataReader.h | 75 + ...eKhrMaterialsVariantsMappingsValueReader.h | 78 + ...nMeshPrimitiveKhrMaterialsVariantsReader.h | 75 + .../ExtensionModelExtFeatureMetadataReader.h | 73 + ...xtensionModelExtStructuralMetadataReader.h | 75 + ...ExtensionModelKhrMaterialsVariantsReader.h | 75 + ...sionModelKhrMaterialsVariantsValueReader.h | 75 + .../ExtensionModelMaxarMeshVariantsReader.h | 73 + ...tensionModelMaxarMeshVariantsValueReader.h | 75 + ...NodeMaxarMeshVariantsMappingsValueReader.h | 75 + .../ExtensionNodeMaxarMeshVariantsReader.h | 73 + .../ExtensionTextureWebpReader.h | 71 + .../FeatureIDAttributeReader.h | 70 + .../CesiumGltfReader/FeatureIDTextureReader.h | 70 + .../CesiumGltfReader/FeatureIDsReader.h | 69 + .../FeatureTablePropertyReader.h | 71 + .../CesiumGltfReader/FeatureTableReader.h | 69 + .../CesiumGltfReader/FeatureTextureReader.h | 70 + .../include/CesiumGltfReader/ImageReader.h | 69 + .../MaterialNormalTextureInfoReader.h | 72 + .../MaterialOcclusionTextureInfoReader.h | 73 + .../MaterialPBRMetallicRoughnessReader.h | 73 + .../include/CesiumGltfReader/MaterialReader.h | 69 + .../CesiumGltfReader/MeshPrimitiveReader.h | 70 + .../include/CesiumGltfReader/MeshReader.h | 69 + .../include/CesiumGltfReader/ModelReader.h | 69 + .../include/CesiumGltfReader/NodeReader.h | 69 + .../PropertyStatisticsReader.h | 70 + .../include/CesiumGltfReader/SamplerReader.h | 69 + .../include/CesiumGltfReader/SceneReader.h | 69 + .../include/CesiumGltfReader/SchemaReader.h | 69 + .../include/CesiumGltfReader/SkinReader.h | 69 + .../CesiumGltfReader/StatisticsReader.h | 69 + .../CesiumGltfReader/TextureAccessorReader.h | 70 + .../CesiumGltfReader/TextureInfoReader.h | 69 + .../include/CesiumGltfReader/TextureReader.h | 69 + ...onBufferExtMeshoptCompressionJsonHandler.h | 45 +- ...fferViewExtMeshoptCompressionJsonHandler.h | 45 +- .../src/ExtensionCesiumRTCJsonHandler.h | 45 +- .../src/ExtensionCesiumTileEdgesJsonHandler.h | 45 +- .../ExtensionExtInstanceFeaturesJsonHandler.h | 45 +- .../src/ExtensionExtMeshFeaturesJsonHandler.h | 45 +- ...ExtensionExtMeshGpuInstancingJsonHandler.h | 45 +- ...ensionKhrDracoMeshCompressionJsonHandler.h | 45 +- .../ExtensionKhrMaterialsUnlitJsonHandler.h | 45 +- .../ExtensionKhrTextureBasisuJsonHandler.h | 45 +- .../ExtensionKhrTextureTransformJsonHandler.h | 45 +- ...shPrimitiveExtFeatureMetadataJsonHandler.h | 45 +- ...rimitiveExtStructuralMetadataJsonHandler.h | 45 +- ...PrimitiveKhrMaterialsVariantsJsonHandler.h | 45 +- ...ensionModelExtFeatureMetadataJsonHandler.h | 45 +- ...ionModelExtStructuralMetadataJsonHandler.h | 45 +- ...sionModelKhrMaterialsVariantsJsonHandler.h | 45 +- ...tensionModelMaxarMeshVariantsJsonHandler.h | 45 +- ...xtensionNodeMaxarMeshVariantsJsonHandler.h | 45 +- .../src/ExtensionTextureWebpJsonHandler.h | 45 +- .../generated/src/GeneratedJsonHandlers.cpp | 3300 ++++++++++++++++- .../CesiumJsonReader/IExtensionJsonHandler.h | 4 +- .../src/ExtensionsJsonHandler.cpp | 2 +- CesiumJsonReader/src/JsonReaderOptions.cpp | 2 + tools/generate-classes/NameFormatters.js | 4 +- tools/generate-classes/generate.js | 214 +- tools/generate-classes/resolveProperty.js | 8 +- 146 files changed, 11986 insertions(+), 1491 deletions(-) create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h create mode 100644 Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h delete mode 100644 Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h delete mode 100644 Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h delete mode 100644 Cesium3DTilesReader/include/Cesium3DTilesReader/SubtreeReader.h delete mode 100644 Cesium3DTilesReader/include/Cesium3DTilesReader/TilesetReader.h delete mode 100644 Cesium3DTilesReader/src/Readers.cpp delete mode 100644 Cesium3DTilesReader/src/SchemaReader.cpp delete mode 100644 Cesium3DTilesReader/src/SubtreeReader.cpp delete mode 100644 Cesium3DTilesReader/src/TilesetReader.cpp create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h create mode 100644 CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h new file mode 100644 index 000000000..5e0ad3faa --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Asset; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API AssetReader { +public: + /** + * @brief Constructs a new instance. + */ + AssetReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Asset from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Asset from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Asset from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h new file mode 100644 index 000000000..e746647aa --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Availability; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API AvailabilityReader { +public: + /** + * @brief Constructs a new instance. + */ + AvailabilityReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Availability from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Availability from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Availability from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h new file mode 100644 index 000000000..51266d2d3 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct BoundingVolume; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API BoundingVolumeReader { +public: + /** + * @brief Constructs a new instance. + */ + BoundingVolumeReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of BoundingVolume from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of BoundingVolume from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of BoundingVolume from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h new file mode 100644 index 000000000..70ae16e3b --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Buffer; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API BufferReader { +public: + /** + * @brief Constructs a new instance. + */ + BufferReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Buffer from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Buffer from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Buffer from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h new file mode 100644 index 000000000..b06617adb --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct BufferView; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API BufferViewReader { +public: + /** + * @brief Constructs a new instance. + */ + BufferViewReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of BufferView from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of BufferView from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of BufferView from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h new file mode 100644 index 000000000..632d5ac80 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct ClassProperty; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API ClassPropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + ClassPropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ClassProperty from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ClassProperty from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ClassProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h new file mode 100644 index 000000000..5ee9c0194 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Class; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API ClassReader { +public: + /** + * @brief Constructs a new instance. + */ + ClassReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Class from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Class from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Class from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h new file mode 100644 index 000000000..69714777f --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct ClassStatistics; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API ClassStatisticsReader { +public: + /** + * @brief Constructs a new instance. + */ + ClassStatisticsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ClassStatistics from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ClassStatistics from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ClassStatistics from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h new file mode 100644 index 000000000..519914dcd --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Content; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API ContentReader { +public: + /** + * @brief Constructs a new instance. + */ + ContentReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Content from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Content from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Content from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h new file mode 100644 index 000000000..59be8c989 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Enum; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API EnumReader { +public: + /** + * @brief Constructs a new instance. + */ + EnumReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Enum from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Enum from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Enum from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h new file mode 100644 index 000000000..fb88d8e44 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct EnumValue; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API EnumValueReader { +public: + /** + * @brief Constructs a new instance. + */ + EnumValueReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of EnumValue from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of EnumValue from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of EnumValue from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h new file mode 100644 index 000000000..328f48714 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Extension3dTilesBoundingVolumeS2; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API Extension3dTilesBoundingVolumeS2Reader { +public: + /** + * @brief Constructs a new instance. + */ + Extension3dTilesBoundingVolumeS2Reader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Extension3dTilesBoundingVolumeS2 from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + Cesium3DTiles::Extension3dTilesBoundingVolumeS2> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Extension3dTilesBoundingVolumeS2 from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + Cesium3DTiles::Extension3dTilesBoundingVolumeS2> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Extension3dTilesBoundingVolumeS2 from + * a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h new file mode 100644 index 000000000..0175b2e4a --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct GroupMetadata; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API GroupMetadataReader { +public: + /** + * @brief Constructs a new instance. + */ + GroupMetadataReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of GroupMetadata from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of GroupMetadata from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of GroupMetadata from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h new file mode 100644 index 000000000..7bf251142 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct ImplicitTiling; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API ImplicitTilingReader { +public: + /** + * @brief Constructs a new instance. + */ + ImplicitTilingReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ImplicitTiling from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ImplicitTiling from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ImplicitTiling from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h new file mode 100644 index 000000000..8b2e3001c --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct MetadataEntity; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API MetadataEntityReader { +public: + /** + * @brief Constructs a new instance. + */ + MetadataEntityReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of MetadataEntity from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of MetadataEntity from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of MetadataEntity from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h new file mode 100644 index 000000000..34a9db015 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Properties; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API PropertiesReader { +public: + /** + * @brief Constructs a new instance. + */ + PropertiesReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Properties from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Properties from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Properties from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h new file mode 100644 index 000000000..75268cf23 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h @@ -0,0 +1,71 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct PropertyStatistics; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API PropertyStatisticsReader { +public: + /** + * @brief Constructs a new instance. + */ + PropertyStatisticsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of PropertyStatistics from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of PropertyStatistics from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of PropertyStatistics from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h new file mode 100644 index 000000000..b064b82a2 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h @@ -0,0 +1,71 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct PropertyTableProperty; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API PropertyTablePropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + PropertyTablePropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of PropertyTableProperty from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of PropertyTableProperty from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of PropertyTableProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h new file mode 100644 index 000000000..1610bc9d5 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct PropertyTable; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API PropertyTableReader { +public: + /** + * @brief Constructs a new instance. + */ + PropertyTableReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of PropertyTable from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of PropertyTable from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of PropertyTable from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h new file mode 100644 index 000000000..6680c820a --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Schema; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API SchemaReader { +public: + /** + * @brief Constructs a new instance. + */ + SchemaReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Schema from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Schema from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Schema from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h new file mode 100644 index 000000000..03c4c8ae6 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Statistics; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API StatisticsReader { +public: + /** + * @brief Constructs a new instance. + */ + StatisticsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Statistics from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Statistics from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Statistics from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h new file mode 100644 index 000000000..285096a69 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Subtree; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API SubtreeReader { +public: + /** + * @brief Constructs a new instance. + */ + SubtreeReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Subtree from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Subtree from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Subtree from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h new file mode 100644 index 000000000..29da3eb2a --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Subtrees; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API SubtreesReader { +public: + /** + * @brief Constructs a new instance. + */ + SubtreesReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Subtrees from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Subtrees from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Subtrees from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h new file mode 100644 index 000000000..370c7971d --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Tile; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API TileReader { +public: + /** + * @brief Constructs a new instance. + */ + TileReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Tile from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Tile from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Tile from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h new file mode 100644 index 000000000..56dc53bd2 --- /dev/null +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace Cesium3DTiles { +struct Tileset; +} + +namespace Cesium3DTilesReader { + +class CESIUM3DTILESREADER_API TilesetReader { +public: + /** + * @brief Constructs a new instance. + */ + TilesetReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Tileset from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Tileset from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Tileset from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace Cesium3DTilesReader \ No newline at end of file diff --git a/Cesium3DTilesReader/generated/src/Extension3dTilesBoundingVolumeS2JsonHandler.h b/Cesium3DTilesReader/generated/src/Extension3dTilesBoundingVolumeS2JsonHandler.h index dcfee86c0..d8f237521 100644 --- a/Cesium3DTilesReader/generated/src/Extension3dTilesBoundingVolumeS2JsonHandler.h +++ b/Cesium3DTilesReader/generated/src/Extension3dTilesBoundingVolumeS2JsonHandler.h @@ -34,50 +34,7 @@ class Extension3dTilesBoundingVolumeS2JsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtension3dTilesBoundingVolumeS2( diff --git a/Cesium3DTilesReader/generated/src/GeneratedJsonHandlers.cpp b/Cesium3DTilesReader/generated/src/GeneratedJsonHandlers.cpp index 9fec23d8c..f4c59b3f5 100644 --- a/Cesium3DTilesReader/generated/src/GeneratedJsonHandlers.cpp +++ b/Cesium3DTilesReader/generated/src/GeneratedJsonHandlers.cpp @@ -1,8 +1,12 @@ // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "Extension3dTilesBoundingVolumeS2JsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -65,12 +69,58 @@ CesiumJsonReader::IJsonHandler* Extension3dTilesBoundingVolumeS2JsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +Extension3dTilesBoundingVolumeS2Reader:: + Extension3dTilesBoundingVolumeS2Reader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +Extension3dTilesBoundingVolumeS2Reader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +Extension3dTilesBoundingVolumeS2Reader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + Cesium3DTiles::Extension3dTilesBoundingVolumeS2> +Extension3dTilesBoundingVolumeS2Reader::readFromJson( + const gsl::span& data) const { + Extension3dTilesBoundingVolumeS2JsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + Cesium3DTiles::Extension3dTilesBoundingVolumeS2> +Extension3dTilesBoundingVolumeS2Reader::readFromJson( + const rapidjson::Value& value) const { + Extension3dTilesBoundingVolumeS2JsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +Extension3dTilesBoundingVolumeS2Reader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + Cesium3DTiles::Extension3dTilesBoundingVolumeS2, + Extension3dTilesBoundingVolumeS2JsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "StatisticsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -110,12 +160,47 @@ CesiumJsonReader::IJsonHandler* StatisticsJsonHandler::readObjectKeyStatistics( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +StatisticsReader::StatisticsReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& StatisticsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +StatisticsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +StatisticsReader::readFromJson(const gsl::span& data) const { + StatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +StatisticsReader::readFromJson(const rapidjson::Value& value) const { + StatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +StatisticsReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ClassStatisticsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -159,12 +244,51 @@ ClassStatisticsJsonHandler::readObjectKeyClassStatistics( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ClassStatisticsReader::ClassStatisticsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& ClassStatisticsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ClassStatisticsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ClassStatisticsReader::readFromJson( + const gsl::span& data) const { + ClassStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ClassStatisticsReader::readFromJson(const rapidjson::Value& value) const { + ClassStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ClassStatisticsReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + Cesium3DTiles::ClassStatistics, + ClassStatisticsJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "PropertyStatisticsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -229,12 +353,52 @@ PropertyStatisticsJsonHandler::readObjectKeyPropertyStatistics( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +PropertyStatisticsReader::PropertyStatisticsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& PropertyStatisticsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +PropertyStatisticsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +PropertyStatisticsReader::readFromJson( + const gsl::span& data) const { + PropertyStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +PropertyStatisticsReader::readFromJson(const rapidjson::Value& value) const { + PropertyStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +PropertyStatisticsReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + Cesium3DTiles::PropertyStatistics, + PropertyStatisticsJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "SchemaJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -289,12 +453,45 @@ CesiumJsonReader::IJsonHandler* SchemaJsonHandler::readObjectKeySchema( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +SchemaReader::SchemaReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& SchemaReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& SchemaReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +SchemaReader::readFromJson(const gsl::span& data) const { + SchemaJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +SchemaReader::readFromJson(const rapidjson::Value& value) const { + SchemaJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +SchemaReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "EnumJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -343,12 +540,45 @@ CesiumJsonReader::IJsonHandler* EnumJsonHandler::readObjectKeyEnum( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +EnumReader::EnumReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& EnumReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& EnumReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +EnumReader::readFromJson(const gsl::span& data) const { + EnumJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +EnumReader::readFromJson(const rapidjson::Value& value) const { + EnumJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +EnumReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "EnumValueJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -394,12 +624,46 @@ CesiumJsonReader::IJsonHandler* EnumValueJsonHandler::readObjectKeyEnumValue( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +EnumValueReader::EnumValueReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& EnumValueReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& EnumValueReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +EnumValueReader::readFromJson(const gsl::span& data) const { + EnumValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +EnumValueReader::readFromJson(const rapidjson::Value& value) const { + EnumValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +EnumValueReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ClassJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -445,12 +709,45 @@ CesiumJsonReader::IJsonHandler* ClassJsonHandler::readObjectKeyClass( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ClassReader::ClassReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& ClassReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& ClassReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ClassReader::readFromJson(const gsl::span& data) const { + ClassJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ClassReader::readFromJson(const rapidjson::Value& value) const { + ClassJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ClassReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ClassPropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -536,12 +833,50 @@ ClassPropertyJsonHandler::readObjectKeyClassProperty( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ClassPropertyReader::ClassPropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& ClassPropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ClassPropertyReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ClassPropertyReader::readFromJson( + const gsl::span& data) const { + ClassPropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ClassPropertyReader::readFromJson(const rapidjson::Value& value) const { + ClassPropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ClassPropertyReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "SubtreeJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -620,12 +955,45 @@ CesiumJsonReader::IJsonHandler* SubtreeJsonHandler::readObjectKeySubtree( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +SubtreeReader::SubtreeReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& SubtreeReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& SubtreeReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +SubtreeReader::readFromJson(const gsl::span& data) const { + SubtreeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +SubtreeReader::readFromJson(const rapidjson::Value& value) const { + SubtreeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +SubtreeReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "MetadataEntityJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -669,12 +1037,50 @@ MetadataEntityJsonHandler::readObjectKeyMetadataEntity( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +MetadataEntityReader::MetadataEntityReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& MetadataEntityReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +MetadataEntityReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +MetadataEntityReader::readFromJson( + const gsl::span& data) const { + MetadataEntityJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +MetadataEntityReader::readFromJson(const rapidjson::Value& value) const { + MetadataEntityJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +MetadataEntityReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AvailabilityJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -721,12 +1127,47 @@ AvailabilityJsonHandler::readObjectKeyAvailability( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AvailabilityReader::AvailabilityReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& AvailabilityReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +AvailabilityReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AvailabilityReader::readFromJson(const gsl::span& data) const { + AvailabilityJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AvailabilityReader::readFromJson(const rapidjson::Value& value) const { + AvailabilityJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AvailabilityReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "PropertyTableJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -776,12 +1217,50 @@ PropertyTableJsonHandler::readObjectKeyPropertyTable( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +PropertyTableReader::PropertyTableReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& PropertyTableReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +PropertyTableReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +PropertyTableReader::readFromJson( + const gsl::span& data) const { + PropertyTableJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +PropertyTableReader::readFromJson(const rapidjson::Value& value) const { + PropertyTableJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +PropertyTableReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "PropertyTablePropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -852,12 +1331,53 @@ PropertyTablePropertyJsonHandler::readObjectKeyPropertyTableProperty( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +PropertyTablePropertyReader::PropertyTablePropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& PropertyTablePropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +PropertyTablePropertyReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +PropertyTablePropertyReader::readFromJson( + const gsl::span& data) const { + PropertyTablePropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +PropertyTablePropertyReader::readFromJson(const rapidjson::Value& value) const { + PropertyTablePropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +PropertyTablePropertyReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + Cesium3DTiles::PropertyTableProperty, + PropertyTablePropertyJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "BufferViewJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -906,12 +1426,47 @@ CesiumJsonReader::IJsonHandler* BufferViewJsonHandler::readObjectKeyBufferView( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +BufferViewReader::BufferViewReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& BufferViewReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +BufferViewReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +BufferViewReader::readFromJson(const gsl::span& data) const { + BufferViewJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +BufferViewReader::readFromJson(const rapidjson::Value& value) const { + BufferViewJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +BufferViewReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "BufferJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -957,12 +1512,45 @@ CesiumJsonReader::IJsonHandler* BufferJsonHandler::readObjectKeyBuffer( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +BufferReader::BufferReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& BufferReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& BufferReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +BufferReader::readFromJson(const gsl::span& data) const { + BufferJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +BufferReader::readFromJson(const rapidjson::Value& value) const { + BufferJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +BufferReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "TilesetJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1035,12 +1623,45 @@ CesiumJsonReader::IJsonHandler* TilesetJsonHandler::readObjectKeyTileset( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +TilesetReader::TilesetReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& TilesetReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& TilesetReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +TilesetReader::readFromJson(const gsl::span& data) const { + TilesetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +TilesetReader::readFromJson(const rapidjson::Value& value) const { + TilesetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +TilesetReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "TileJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1110,12 +1731,45 @@ CesiumJsonReader::IJsonHandler* TileJsonHandler::readObjectKeyTile( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +TileReader::TileReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& TileReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& TileReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +TileReader::readFromJson(const gsl::span& data) const { + TileJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +TileReader::readFromJson(const rapidjson::Value& value) const { + TileJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +TileReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ImplicitTilingJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1171,12 +1825,50 @@ ImplicitTilingJsonHandler::readObjectKeyImplicitTiling( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ImplicitTilingReader::ImplicitTilingReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& ImplicitTilingReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ImplicitTilingReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ImplicitTilingReader::readFromJson( + const gsl::span& data) const { + ImplicitTilingJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ImplicitTilingReader::readFromJson(const rapidjson::Value& value) const { + ImplicitTilingJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ImplicitTilingReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "SubtreesJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1215,12 +1907,46 @@ CesiumJsonReader::IJsonHandler* SubtreesJsonHandler::readObjectKeySubtrees( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +SubtreesReader::SubtreesReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& SubtreesReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& SubtreesReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +SubtreesReader::readFromJson(const gsl::span& data) const { + SubtreesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +SubtreesReader::readFromJson(const rapidjson::Value& value) const { + SubtreesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +SubtreesReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ContentJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1269,12 +1995,45 @@ CesiumJsonReader::IJsonHandler* ContentJsonHandler::readObjectKeyContent( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ContentReader::ContentReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& ContentReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& ContentReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ContentReader::readFromJson(const gsl::span& data) const { + ContentJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ContentReader::readFromJson(const rapidjson::Value& value) const { + ContentJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ContentReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "BoundingVolumeJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1321,12 +2080,50 @@ BoundingVolumeJsonHandler::readObjectKeyBoundingVolume( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +BoundingVolumeReader::BoundingVolumeReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& BoundingVolumeReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +BoundingVolumeReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +BoundingVolumeReader::readFromJson( + const gsl::span& data) const { + BoundingVolumeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +BoundingVolumeReader::readFromJson(const rapidjson::Value& value) const { + BoundingVolumeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +BoundingVolumeReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "GroupMetadataJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1365,12 +2162,50 @@ GroupMetadataJsonHandler::readObjectKeyGroupMetadata( return this->readObjectKeyMetadataEntity(objectType, str, *this->_pObject); } +GroupMetadataReader::GroupMetadataReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& GroupMetadataReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +GroupMetadataReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +GroupMetadataReader::readFromJson( + const gsl::span& data) const { + GroupMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +GroupMetadataReader::readFromJson(const rapidjson::Value& value) const { + GroupMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +GroupMetadataReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "PropertiesJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1413,12 +2248,47 @@ CesiumJsonReader::IJsonHandler* PropertiesJsonHandler::readObjectKeyProperties( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +PropertiesReader::PropertiesReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& PropertiesReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +PropertiesReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +PropertiesReader::readFromJson(const gsl::span& data) const { + PropertiesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +PropertiesReader::readFromJson(const rapidjson::Value& value) const { + PropertiesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +PropertiesReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AssetJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1461,4 +2331,33 @@ CesiumJsonReader::IJsonHandler* AssetJsonHandler::readObjectKeyAsset( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AssetReader::AssetReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& AssetReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& AssetReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AssetReader::readFromJson(const gsl::span& data) const { + AssetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AssetReader::readFromJson(const rapidjson::Value& value) const { + AssetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AssetReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h b/Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h deleted file mode 100644 index ee09263eb..000000000 --- a/Cesium3DTilesReader/include/Cesium3DTilesReader/Readers.h +++ /dev/null @@ -1,30 +0,0 @@ -#pragma once - -#include -#include -#include -#include -#include - -namespace Cesium3DTilesReader { - -CesiumJsonReader::ReadJsonResult readSchema( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options = {}); - -CesiumJsonReader::ReadJsonResult -readMetadataEntity( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options = {}); - -CesiumJsonReader::ReadJsonResult -readGroupMetadata( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options = {}); - -CesiumJsonReader::ReadJsonResult> -readGroupMetadataArray( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options = {}); - -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h b/Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h deleted file mode 100644 index c02339414..000000000 --- a/Cesium3DTilesReader/include/Cesium3DTilesReader/SchemaReader.h +++ /dev/null @@ -1,75 +0,0 @@ -#pragma once - -#include "Cesium3DTilesReader/Library.h" - -#include -#include - -#include -#include - -#include -#include -#include -#include -#include -#include - -namespace Cesium3DTilesReader { - -/** - * @brief The result of reading a schema with - * {@link SchemaReader::readSchema}. - */ -struct CESIUM3DTILESREADER_API SchemaReaderResult { - /** - * @brief The read schema, or std::nullopt if the schema could not be read. - */ - std::optional schema; - - /** - * @brief Errors, if any, that occurred during the load process. - */ - std::vector errors; - - /** - * @brief Warnings, if any, that occurred during the load process. - */ - std::vector warnings; -}; - -/** - * @brief Reads schemas. - */ -class CESIUM3DTILESREADER_API SchemaReader { -public: - /** - * @brief Constructs a new instance. - */ - SchemaReader(); - - /** - * @brief Gets the options controlling how the JSON is read. - */ - CesiumJsonReader::JsonReaderOptions& getOptions(); - - /** - * @brief Gets the options controlling how the JSON is read. - */ - const CesiumJsonReader::JsonReaderOptions& getOptions() const; - - /** - * @brief Reads a schema. - * - * @param data The buffer from which to read the schema. - * @return The result of reading the schame. - */ - SchemaReaderResult readSchema(const gsl::span& data) const; - - SchemaReaderResult readSchema(const rapidjson::Value& value) const; - -private: - CesiumJsonReader::JsonReaderOptions _context; -}; - -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/include/Cesium3DTilesReader/SubtreeReader.h b/Cesium3DTilesReader/include/Cesium3DTilesReader/SubtreeReader.h deleted file mode 100644 index 05f3c35bd..000000000 --- a/Cesium3DTilesReader/include/Cesium3DTilesReader/SubtreeReader.h +++ /dev/null @@ -1,73 +0,0 @@ -#pragma once - -#include "Cesium3DTilesReader/Library.h" - -#include -#include - -#include - -#include -#include -#include -#include -#include -#include - -namespace Cesium3DTilesReader { - -/** - * @brief The result of reading a subtree with - * {@link SubtreeReader::readSubtree}. - */ -struct CESIUM3DTILESREADER_API SubtreeReaderResult { - /** - * @brief The read subtree, or std::nullopt if the subtree could not be read. - */ - std::optional subtree; - - /** - * @brief Errors, if any, that occurred during the load process. - */ - std::vector errors; - - /** - * @brief Warnings, if any, that occurred during the load process. - */ - std::vector warnings; -}; - -/** - * @brief Reads subtrees. - */ -class CESIUM3DTILESREADER_API SubtreeReader { -public: - /** - * @brief Constructs a new instance. - */ - SubtreeReader(); - - /** - * @brief Gets the options controlling how the JSON is read. - */ - CesiumJsonReader::JsonReaderOptions& getOptions(); - - /** - * @brief Gets the options controlling how the JSON is read. - */ - const CesiumJsonReader::JsonReaderOptions& getOptions() const; - - /** - * @brief Reads a subtree. - * - * @param data The buffer from which to read the subtree. - * @param options Options for how to read the subtree. - * @return The result of reading the subtree. - */ - SubtreeReaderResult readSubtree(const gsl::span& data) const; - -private: - CesiumJsonReader::JsonReaderOptions _context; -}; - -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/include/Cesium3DTilesReader/TilesetReader.h b/Cesium3DTilesReader/include/Cesium3DTilesReader/TilesetReader.h deleted file mode 100644 index ba2741cd7..000000000 --- a/Cesium3DTilesReader/include/Cesium3DTilesReader/TilesetReader.h +++ /dev/null @@ -1,72 +0,0 @@ -#pragma once - -#include "Cesium3DTilesReader/Library.h" - -#include -#include - -#include - -#include -#include -#include -#include -#include -#include - -namespace Cesium3DTilesReader { - -/** - * @brief The result of reading a tileset with - * {@link TilesetReader::readTileset}. - */ -struct CESIUM3DTILESREADER_API TilesetReaderResult { - /** - * @brief The read tileset, or std::nullopt if the tileset could not be read. - */ - std::optional tileset; - - /** - * @brief Errors, if any, that occurred during the load process. - */ - std::vector errors; - - /** - * @brief Warnings, if any, that occurred during the load process. - */ - std::vector warnings; -}; - -/** - * @brief Reads tilesets. - */ -class CESIUM3DTILESREADER_API TilesetReader { -public: - /** - * @brief Constructs a new instance. - */ - TilesetReader(); - - /** - * @brief Gets the options controlling how the JSON is read. - */ - CesiumJsonReader::JsonReaderOptions& getOptions(); - - /** - * @brief Gets the options controlling how the JSON is read. - */ - const CesiumJsonReader::JsonReaderOptions& getOptions() const; - - /** - * @brief Reads a tileset. - * - * @param data The buffer from which to read the tileset. - * @return The result of reading the tileset. - */ - TilesetReaderResult readTileset(const gsl::span& data) const; - -private: - CesiumJsonReader::JsonReaderOptions _context; -}; - -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/src/Readers.cpp b/Cesium3DTilesReader/src/Readers.cpp deleted file mode 100644 index 4c0fcb08f..000000000 --- a/Cesium3DTilesReader/src/Readers.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#include "GroupMetadataJsonHandler.h" -#include "MetadataEntityJsonHandler.h" -#include "SchemaJsonHandler.h" - -#include -#include - -namespace Cesium3DTilesReader { - -CesiumJsonReader::ReadJsonResult readSchema( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options) { - SchemaJsonHandler handler(options); - return CesiumJsonReader::JsonReader::readJson(value, handler); -} - -CesiumJsonReader::ReadJsonResult -readMetadataEntity( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options) { - MetadataEntityJsonHandler handler(options); - return CesiumJsonReader::JsonReader::readJson(value, handler); -} - -CesiumJsonReader::ReadJsonResult -readGroupMetadata( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options) { - GroupMetadataJsonHandler handler(options); - return CesiumJsonReader::JsonReader::readJson(value, handler); -} - -CesiumJsonReader::ReadJsonResult> -readGroupMetadataArray( - const rapidjson::Value& value, - const CesiumJsonReader::JsonReaderOptions& options) { - CesiumJsonReader:: - ArrayJsonHandler - handler(options); - return CesiumJsonReader::JsonReader::readJson(value, handler); -} - -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/src/SchemaReader.cpp b/Cesium3DTilesReader/src/SchemaReader.cpp deleted file mode 100644 index 28d726032..000000000 --- a/Cesium3DTilesReader/src/SchemaReader.cpp +++ /dev/null @@ -1,63 +0,0 @@ -#include "Cesium3DTilesReader/SchemaReader.h" - -#include "SchemaJsonHandler.h" -#include "registerExtensions.h" - -#include -#include - -namespace Cesium3DTilesReader { - -namespace { - -SchemaReaderResult readSchemaJson( - const CesiumJsonReader::JsonReaderOptions& context, - const gsl::span& data) { - - CESIUM_TRACE("Cesium3DTilesReader::SchemaReader::readSchemaJson"); - - SchemaJsonHandler schemaHandler(context); - CesiumJsonReader::ReadJsonResult jsonResult = - CesiumJsonReader::JsonReader::readJson(data, schemaHandler); - - return SchemaReaderResult{ - std::move(jsonResult.value), - std::move(jsonResult.errors), - std::move(jsonResult.warnings)}; -} - -} // namespace - -SchemaReader::SchemaReader() { registerExtensions(this->_context); } - -CesiumJsonReader::JsonReaderOptions& SchemaReader::getOptions() { - return this->_context; -} - -const CesiumJsonReader::JsonReaderOptions& SchemaReader::getOptions() const { - return this->_context; -} - -SchemaReaderResult -SchemaReader::readSchema(const gsl::span& data) const { - const CesiumJsonReader::JsonReaderOptions& context = this->getOptions(); - SchemaReaderResult result = readSchemaJson(context, data); - - return result; -} - -SchemaReaderResult -SchemaReader::readSchema(const rapidjson::Value& value) const { - CESIUM_TRACE("Cesium3DTilesReader::SchemaReader::readSchemaValue"); - const CesiumJsonReader::JsonReaderOptions& context = this->getOptions(); - SchemaJsonHandler schemaHandler(context); - CesiumJsonReader::ReadJsonResult jsonResult = - CesiumJsonReader::JsonReader::readJson(value, schemaHandler); - - return SchemaReaderResult{ - std::move(jsonResult.value), - std::move(jsonResult.errors), - std::move(jsonResult.warnings)}; -} - -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/src/SubtreeReader.cpp b/Cesium3DTilesReader/src/SubtreeReader.cpp deleted file mode 100644 index c121abf22..000000000 --- a/Cesium3DTilesReader/src/SubtreeReader.cpp +++ /dev/null @@ -1,48 +0,0 @@ -#include "Cesium3DTilesReader/SubtreeReader.h" - -#include "SubtreeJsonHandler.h" -#include "registerExtensions.h" - -#include -#include - -namespace Cesium3DTilesReader { - -namespace { - -SubtreeReaderResult readSubtreeJson( - const CesiumJsonReader::JsonReaderOptions& context, - const gsl::span& data) { - - CESIUM_TRACE("Cesium3DTilesReader::SubtreeReader::readSubtreeJson"); - - SubtreeJsonHandler subtreeHandler(context); - CesiumJsonReader::ReadJsonResult jsonResult = - CesiumJsonReader::JsonReader::readJson(data, subtreeHandler); - - return SubtreeReaderResult{ - std::move(jsonResult.value), - std::move(jsonResult.errors), - std::move(jsonResult.warnings)}; -} - -} // namespace - -SubtreeReader::SubtreeReader() { registerExtensions(this->_context); } - -CesiumJsonReader::JsonReaderOptions& SubtreeReader::getOptions() { - return this->_context; -} - -const CesiumJsonReader::JsonReaderOptions& SubtreeReader::getOptions() const { - return this->_context; -} - -SubtreeReaderResult -SubtreeReader::readSubtree(const gsl::span& data) const { - const CesiumJsonReader::JsonReaderOptions& context = this->getOptions(); - SubtreeReaderResult result = readSubtreeJson(context, data); - - return result; -} -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/src/TilesetReader.cpp b/Cesium3DTilesReader/src/TilesetReader.cpp deleted file mode 100644 index ba6ab2942..000000000 --- a/Cesium3DTilesReader/src/TilesetReader.cpp +++ /dev/null @@ -1,48 +0,0 @@ -#include "Cesium3DTilesReader/TilesetReader.h" - -#include "TilesetJsonHandler.h" -#include "registerExtensions.h" - -#include -#include - -namespace Cesium3DTilesReader { - -namespace { - -TilesetReaderResult readTilesetJson( - const CesiumJsonReader::JsonReaderOptions& context, - const gsl::span& data) { - - CESIUM_TRACE("Cesium3DTilesReader::TilesetReader::readTilesetJson"); - - TilesetJsonHandler tilesetHandler(context); - CesiumJsonReader::ReadJsonResult jsonResult = - CesiumJsonReader::JsonReader::readJson(data, tilesetHandler); - - return TilesetReaderResult{ - std::move(jsonResult.value), - std::move(jsonResult.errors), - std::move(jsonResult.warnings)}; -} - -} // namespace - -TilesetReader::TilesetReader() { registerExtensions(this->_context); } - -CesiumJsonReader::JsonReaderOptions& TilesetReader::getOptions() { - return this->_context; -} - -const CesiumJsonReader::JsonReaderOptions& TilesetReader::getOptions() const { - return this->_context; -} - -TilesetReaderResult -TilesetReader::readTileset(const gsl::span& data) const { - const CesiumJsonReader::JsonReaderOptions& context = this->getOptions(); - TilesetReaderResult result = readTilesetJson(context, data); - - return result; -} -} // namespace Cesium3DTilesReader diff --git a/Cesium3DTilesReader/test/TestTilesetReader.cpp b/Cesium3DTilesReader/test/TestTilesetReader.cpp index 83a9c7acf..aca84cdd1 100644 --- a/Cesium3DTilesReader/test/TestTilesetReader.cpp +++ b/Cesium3DTilesReader/test/TestTilesetReader.cpp @@ -1,6 +1,5 @@ -#include "Cesium3DTilesReader/TilesetReader.h" - #include +#include #include #include @@ -34,10 +33,10 @@ TEST_CASE("Reads tileset JSON") { tilesetFile /= "tileset.json"; std::vector data = readFile(tilesetFile); Cesium3DTilesReader::TilesetReader reader; - Cesium3DTilesReader::TilesetReaderResult result = reader.readTileset(data); - REQUIRE(result.tileset); + auto result = reader.readFromJson(data); + REQUIRE(result.value); - const Cesium3DTiles::Tileset& tileset = result.tileset.value(); + const Cesium3DTiles::Tileset& tileset = result.value.value(); REQUIRE(tileset.asset.version == "1.0"); REQUIRE(tileset.geometricError == 494.50961650991815); @@ -146,13 +145,13 @@ TEST_CASE("Reads extras") { )"; Cesium3DTilesReader::TilesetReader reader; - Cesium3DTilesReader::TilesetReaderResult result = reader.readTileset( + auto result = reader.readFromJson( gsl::span(reinterpret_cast(s.c_str()), s.size())); REQUIRE(result.errors.empty()); REQUIRE(result.warnings.empty()); - REQUIRE(result.tileset.has_value()); + REQUIRE(result.value.has_value()); - Cesium3DTiles::Tileset& tileset = result.tileset.value(); + Cesium3DTiles::Tileset& tileset = result.value.value(); auto ait = tileset.extras.find("A"); REQUIRE(ait != tileset.extras.end()); @@ -224,13 +223,13 @@ TEST_CASE("Reads 3DTILES_content_gltf") { )"; Cesium3DTilesReader::TilesetReader reader; - Cesium3DTilesReader::TilesetReaderResult result = reader.readTileset( + auto result = reader.readFromJson( gsl::span(reinterpret_cast(s.c_str()), s.size())); REQUIRE(result.errors.empty()); REQUIRE(result.warnings.empty()); - REQUIRE(result.tileset.has_value()); + REQUIRE(result.value.has_value()); - Cesium3DTiles::Tileset& tileset = result.tileset.value(); + Cesium3DTiles::Tileset& tileset = result.value.value(); CHECK(tileset.asset.version == "1.0"); const std::vector tilesetExtensionUsed{ @@ -274,17 +273,15 @@ TEST_CASE("Reads custom extension") { )"; Cesium3DTilesReader::TilesetReader reader; - Cesium3DTilesReader::TilesetReaderResult withCustomExt = reader.readTileset( + auto withCustomExt = reader.readFromJson( gsl::span(reinterpret_cast(s.c_str()), s.size())); REQUIRE(withCustomExt.errors.empty()); - REQUIRE(withCustomExt.tileset.has_value()); + REQUIRE(withCustomExt.value.has_value()); - REQUIRE(withCustomExt.tileset->extensions.size() == 2); + REQUIRE(withCustomExt.value->extensions.size() == 2); - CesiumUtility::JsonValue* pA = - withCustomExt.tileset->getGenericExtension("A"); - CesiumUtility::JsonValue* pB = - withCustomExt.tileset->getGenericExtension("B"); + CesiumUtility::JsonValue* pA = withCustomExt.value->getGenericExtension("A"); + CesiumUtility::JsonValue* pB = withCustomExt.value->getGenericExtension("B"); REQUIRE(pA != nullptr); REQUIRE(pB != nullptr); @@ -303,11 +300,10 @@ TEST_CASE("Reads custom extension") { "B", CesiumJsonReader::ExtensionState::Disabled); - Cesium3DTilesReader::TilesetReaderResult withoutCustomExt = - reader.readTileset( - gsl::span(reinterpret_cast(s.c_str()), s.size())); + auto withoutCustomExt = reader.readFromJson( + gsl::span(reinterpret_cast(s.c_str()), s.size())); - auto& zeroExtensions = withoutCustomExt.tileset->extensions; + auto& zeroExtensions = withoutCustomExt.value->extensions; REQUIRE(zeroExtensions.empty()); } @@ -318,13 +314,13 @@ TEST_CASE("Reads tileset JSON with unknown properties") { tilesetFile /= "tileset-with-unsupported-properties.json"; std::vector data = readFile(tilesetFile); Cesium3DTilesReader::TilesetReader reader; - Cesium3DTilesReader::TilesetReaderResult result = reader.readTileset(data); + auto result = reader.readFromJson(data); CHECK(result.errors.empty()); CHECK(result.warnings.empty()); - REQUIRE(result.tileset); + REQUIRE(result.value); const CesiumUtility::JsonValue::Object& unknownProperties = - result.tileset->asset.unknownProperties; + result.value->asset.unknownProperties; auto itString = unknownProperties.find("someString"); REQUIRE(itString != unknownProperties.end()); @@ -383,12 +379,12 @@ TEST_CASE("Reads tileset JSON with unknown properties and ignores them when " std::vector data = readFile(tilesetFile); Cesium3DTilesReader::TilesetReader reader; reader.getOptions().setCaptureUnknownProperties(false); - Cesium3DTilesReader::TilesetReaderResult result = reader.readTileset(data); + auto result = reader.readFromJson(data); CHECK(result.errors.empty()); CHECK(result.warnings.empty()); - REQUIRE(result.tileset); + REQUIRE(result.value); const CesiumUtility::JsonValue::Object& unknownProperties = - result.tileset->asset.unknownProperties; + result.value->asset.unknownProperties; CHECK(unknownProperties.empty()); } diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index 282d8e1d7..6113bdda0 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -4,7 +4,9 @@ #include "ImplicitQuadtreeLoader.h" #include "logTileLoadResult.h" -#include +#include +#include +#include #include #include #include @@ -627,7 +629,8 @@ void parseTilesetMetadata( TileExternalContent& externalContent) { auto schemaIt = tilesetJson.FindMember("schema"); if (schemaIt != tilesetJson.MemberEnd()) { - auto schemaResult = Cesium3DTilesReader::readSchema(schemaIt->value); + Cesium3DTilesReader::SchemaReader schemaReader; + auto schemaResult = schemaReader.readFromJson(schemaIt->value); if (schemaResult.value) { externalContent.schema = std::move(*schemaResult.value); } @@ -640,8 +643,8 @@ void parseTilesetMetadata( const auto metadataIt = tilesetJson.FindMember("metadata"); if (metadataIt != tilesetJson.MemberEnd()) { - auto metadataResult = - Cesium3DTilesReader::readMetadataEntity(metadataIt->value); + Cesium3DTilesReader::MetadataEntityReader metadataReader; + auto metadataResult = metadataReader.readFromJson(metadataIt->value); if (metadataResult.value) { externalContent.metadata = std::move(*metadataResult.value); } @@ -649,8 +652,8 @@ void parseTilesetMetadata( const auto groupsIt = tilesetJson.FindMember("groups"); if (groupsIt != tilesetJson.MemberEnd()) { - auto groupsResult = - Cesium3DTilesReader::readGroupMetadataArray(groupsIt->value); + Cesium3DTilesReader::GroupMetadataReader groupMetadataReader; + auto groupsResult = groupMetadataReader.readArrayFromJson(groupsIt->value); if (groupsResult.value) { externalContent.groups = std::move(*groupsResult.value); } diff --git a/Cesium3DTilesWriter/test/TestTilesetWriter.cpp b/Cesium3DTilesWriter/test/TestTilesetWriter.cpp index f2213d3e8..5aa913f6f 100644 --- a/Cesium3DTilesWriter/test/TestTilesetWriter.cpp +++ b/Cesium3DTilesWriter/test/TestTilesetWriter.cpp @@ -11,15 +11,14 @@ namespace { void check(const std::string& input, const std::string& expectedOutput) { Cesium3DTilesReader::TilesetReader reader; - Cesium3DTilesReader::TilesetReaderResult readResult = - reader.readTileset(gsl::span( - reinterpret_cast(input.c_str()), - input.size())); + auto readResult = reader.readFromJson(gsl::span( + reinterpret_cast(input.c_str()), + input.size())); REQUIRE(readResult.errors.empty()); REQUIRE(readResult.warnings.empty()); - REQUIRE(readResult.tileset.has_value()); + REQUIRE(readResult.value.has_value()); - Cesium3DTiles::Tileset& tileset = readResult.tileset.value(); + Cesium3DTiles::Tileset& tileset = readResult.value.value(); Cesium3DTilesWriter::TilesetWriter writer; Cesium3DTilesWriter::TilesetWriterResult writeResult = diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h new file mode 100644 index 000000000..03e48111d --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Accessor; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AccessorReader { +public: + /** + * @brief Constructs a new instance. + */ + AccessorReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Accessor from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Accessor from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Accessor from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h new file mode 100644 index 000000000..f7cda6278 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h @@ -0,0 +1,71 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct AccessorSparseIndices; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AccessorSparseIndicesReader { +public: + /** + * @brief Constructs a new instance. + */ + AccessorSparseIndicesReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of AccessorSparseIndices from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of AccessorSparseIndices from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of AccessorSparseIndices from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h new file mode 100644 index 000000000..3c80ae661 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct AccessorSparse; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AccessorSparseReader { +public: + /** + * @brief Constructs a new instance. + */ + AccessorSparseReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of AccessorSparse from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of AccessorSparse from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of AccessorSparse from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h new file mode 100644 index 000000000..5fa6060a4 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h @@ -0,0 +1,71 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct AccessorSparseValues; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AccessorSparseValuesReader { +public: + /** + * @brief Constructs a new instance. + */ + AccessorSparseValuesReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of AccessorSparseValues from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of AccessorSparseValues from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of AccessorSparseValues from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h new file mode 100644 index 000000000..7a7eba6c9 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct AnimationChannel; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AnimationChannelReader { +public: + /** + * @brief Constructs a new instance. + */ + AnimationChannelReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of AnimationChannel from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of AnimationChannel from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of AnimationChannel from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h new file mode 100644 index 000000000..71a7e60f6 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h @@ -0,0 +1,71 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct AnimationChannelTarget; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AnimationChannelTargetReader { +public: + /** + * @brief Constructs a new instance. + */ + AnimationChannelTargetReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of AnimationChannelTarget from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of AnimationChannelTarget from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of AnimationChannelTarget from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h new file mode 100644 index 000000000..2079961e3 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Animation; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AnimationReader { +public: + /** + * @brief Constructs a new instance. + */ + AnimationReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Animation from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Animation from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Animation from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h new file mode 100644 index 000000000..0be957233 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct AnimationSampler; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AnimationSamplerReader { +public: + /** + * @brief Constructs a new instance. + */ + AnimationSamplerReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of AnimationSampler from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of AnimationSampler from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of AnimationSampler from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h new file mode 100644 index 000000000..b44103a8d --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Asset; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API AssetReader { +public: + /** + * @brief Constructs a new instance. + */ + AssetReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Asset from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Asset from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Asset from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h new file mode 100644 index 000000000..226c3b582 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Buffer; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API BufferReader { +public: + /** + * @brief Constructs a new instance. + */ + BufferReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Buffer from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Buffer from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Buffer from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h new file mode 100644 index 000000000..494e1cd8f --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct BufferView; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API BufferViewReader { +public: + /** + * @brief Constructs a new instance. + */ + BufferViewReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of BufferView from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of BufferView from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of BufferView from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h new file mode 100644 index 000000000..f7fb6c42f --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct CameraOrthographic; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API CameraOrthographicReader { +public: + /** + * @brief Constructs a new instance. + */ + CameraOrthographicReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of CameraOrthographic from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of CameraOrthographic from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of CameraOrthographic from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h new file mode 100644 index 000000000..384a8fa2d --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct CameraPerspective; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API CameraPerspectiveReader { +public: + /** + * @brief Constructs a new instance. + */ + CameraPerspectiveReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of CameraPerspective from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of CameraPerspective from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of CameraPerspective from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h new file mode 100644 index 000000000..a98f5d62c --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Camera; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API CameraReader { +public: + /** + * @brief Constructs a new instance. + */ + CameraReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Camera from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Camera from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Camera from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h new file mode 100644 index 000000000..7e7b8eb1b --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ClassProperty; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ClassPropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + ClassPropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ClassProperty from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ClassProperty from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ClassProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h new file mode 100644 index 000000000..06063a254 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Class; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ClassReader { +public: + /** + * @brief Constructs a new instance. + */ + ClassReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Class from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Class from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Class from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h new file mode 100644 index 000000000..c28d44c67 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ClassStatistics; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ClassStatisticsReader { +public: + /** + * @brief Constructs a new instance. + */ + ClassStatisticsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ClassStatistics from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ClassStatistics from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ClassStatistics from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h new file mode 100644 index 000000000..f2b7c1b02 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Enum; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API EnumReader { +public: + /** + * @brief Constructs a new instance. + */ + EnumReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Enum from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Enum from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Enum from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h new file mode 100644 index 000000000..e8d587abe --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct EnumValue; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API EnumValueReader { +public: + /** + * @brief Constructs a new instance. + */ + EnumValueReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of EnumValue from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of EnumValue from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of EnumValue from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h new file mode 100644 index 000000000..c1078ed5e --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionBufferExtMeshoptCompression; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionBufferExtMeshoptCompressionReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionBufferExtMeshoptCompressionReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionBufferExtMeshoptCompression from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferExtMeshoptCompression> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionBufferExtMeshoptCompression from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferExtMeshoptCompression> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionBufferExtMeshoptCompression + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h new file mode 100644 index 000000000..9e8592426 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionBufferViewExtMeshoptCompression; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionBufferViewExtMeshoptCompressionReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionBufferViewExtMeshoptCompressionReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionBufferViewExtMeshoptCompression from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferViewExtMeshoptCompression> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionBufferViewExtMeshoptCompression from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferViewExtMeshoptCompression> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionBufferViewExtMeshoptCompression from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h new file mode 100644 index 000000000..369bba9cb --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionCesiumRTC; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionCesiumRTCReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionCesiumRTCReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionCesiumRTC from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionCesiumRTC from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionCesiumRTC from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h new file mode 100644 index 000000000..089890b00 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h @@ -0,0 +1,72 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionCesiumTileEdges; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionCesiumTileEdgesReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionCesiumTileEdgesReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionCesiumTileEdges from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionCesiumTileEdges from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionCesiumTileEdges from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h new file mode 100644 index 000000000..96beedab1 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtInstanceFeaturesFeatureId; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtInstanceFeaturesFeatureIdReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtInstanceFeaturesFeatureIdReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtInstanceFeaturesFeatureId from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtInstanceFeaturesFeatureId> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtInstanceFeaturesFeatureId from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtInstanceFeaturesFeatureId> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtInstanceFeaturesFeatureId + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h new file mode 100644 index 000000000..43763102c --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtInstanceFeatures; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtInstanceFeaturesReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtInstanceFeaturesReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtInstanceFeatures from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtInstanceFeatures from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtInstanceFeatures from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h new file mode 100644 index 000000000..5bc9b0443 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtMeshFeaturesFeatureId; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtMeshFeaturesFeatureIdReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtMeshFeaturesFeatureIdReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtMeshFeaturesFeatureId from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtMeshFeaturesFeatureId> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtMeshFeaturesFeatureId from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtMeshFeaturesFeatureId> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtMeshFeaturesFeatureId + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h new file mode 100644 index 000000000..273ae1a0a --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtMeshFeaturesFeatureIdTexture; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtMeshFeaturesFeatureIdTextureReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtMeshFeaturesFeatureIdTextureReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtMeshFeaturesFeatureIdTexture from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtMeshFeaturesFeatureIdTexture> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtMeshFeaturesFeatureIdTexture from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtMeshFeaturesFeatureIdTexture> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtMeshFeaturesFeatureIdTexture from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h new file mode 100644 index 000000000..55dd544d2 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h @@ -0,0 +1,72 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtMeshFeatures; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtMeshFeaturesReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtMeshFeaturesReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtMeshFeatures from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtMeshFeatures from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtMeshFeatures from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h new file mode 100644 index 000000000..f7d26c075 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtMeshGpuInstancing; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtMeshGpuInstancingReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtMeshGpuInstancingReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtMeshGpuInstancing from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtMeshGpuInstancing from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtMeshGpuInstancing from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h new file mode 100644 index 000000000..dacf03a40 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataClassProperty; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataClassPropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataClassPropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataClassProperty + * from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClassProperty> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataClassProperty + * from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClassProperty> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataClassProperty from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h new file mode 100644 index 000000000..75c1a2dc2 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataClass; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataClassReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataClassReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataClass from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClass> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataClass from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClass> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtStructuralMetadataClass + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h new file mode 100644 index 000000000..4eb19c05a --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataEnum; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataEnumReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataEnumReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataEnum from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataEnum> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataEnum from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataEnum> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtStructuralMetadataEnum + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h new file mode 100644 index 000000000..cb261c358 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataEnumValue; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataEnumValueReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataEnumValueReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataEnumValue from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataEnumValue> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataEnumValue from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataEnumValue> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataEnumValue from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h new file mode 100644 index 000000000..9c339b405 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h @@ -0,0 +1,78 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataPropertyAttributeProperty; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API + ExtensionExtStructuralMetadataPropertyAttributePropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataPropertyAttributePropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of + * ExtensionExtStructuralMetadataPropertyAttributeProperty from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttributeProperty> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of + * ExtensionExtStructuralMetadataPropertyAttributeProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttributeProperty> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataPropertyAttributeProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h new file mode 100644 index 000000000..4bc012c7b --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h @@ -0,0 +1,76 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataPropertyAttribute; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API + ExtensionExtStructuralMetadataPropertyAttributeReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataPropertyAttributeReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataPropertyAttribute + * from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttribute> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataPropertyAttribute + * from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttribute> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataPropertyAttribute from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h new file mode 100644 index 000000000..fb3a8dec9 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h @@ -0,0 +1,78 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataPropertyTableProperty; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API + ExtensionExtStructuralMetadataPropertyTablePropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataPropertyTablePropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of + * ExtensionExtStructuralMetadataPropertyTableProperty from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTableProperty> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of + * ExtensionExtStructuralMetadataPropertyTableProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTableProperty> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataPropertyTableProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h new file mode 100644 index 000000000..0f013603d --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataPropertyTable; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyTableReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataPropertyTableReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataPropertyTable + * from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTable> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataPropertyTable + * from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTable> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataPropertyTable from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h new file mode 100644 index 000000000..49d864d3f --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h @@ -0,0 +1,78 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataPropertyTextureProperty; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API + ExtensionExtStructuralMetadataPropertyTexturePropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataPropertyTexturePropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of + * ExtensionExtStructuralMetadataPropertyTextureProperty from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTextureProperty> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of + * ExtensionExtStructuralMetadataPropertyTextureProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTextureProperty> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataPropertyTextureProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h new file mode 100644 index 000000000..0fb2e4a06 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataPropertyTexture; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyTextureReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataPropertyTextureReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataPropertyTexture + * from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTexture> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataPropertyTexture + * from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTexture> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionExtStructuralMetadataPropertyTexture from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h new file mode 100644 index 000000000..54d022826 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionExtStructuralMetadataSchema; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataSchemaReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionExtStructuralMetadataSchemaReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataSchema from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataSchema> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionExtStructuralMetadataSchema from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataSchema> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionExtStructuralMetadataSchema + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h new file mode 100644 index 000000000..d798d8154 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionKhrDracoMeshCompression; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionKhrDracoMeshCompressionReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionKhrDracoMeshCompressionReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionKhrDracoMeshCompression from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionKhrDracoMeshCompression from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionKhrDracoMeshCompression from + * a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h new file mode 100644 index 000000000..643c529d8 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h @@ -0,0 +1,72 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionKhrMaterialsUnlit; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionKhrMaterialsUnlitReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionKhrMaterialsUnlitReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionKhrMaterialsUnlit from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionKhrMaterialsUnlit from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionKhrMaterialsUnlit from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h new file mode 100644 index 000000000..c5dcb9ac2 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h @@ -0,0 +1,72 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionKhrTextureBasisu; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionKhrTextureBasisuReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionKhrTextureBasisuReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionKhrTextureBasisu from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionKhrTextureBasisu from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionKhrTextureBasisu from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h new file mode 100644 index 000000000..90ba7cdf0 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionKhrTextureTransform; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionKhrTextureTransformReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionKhrTextureTransformReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionKhrTextureTransform from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionKhrTextureTransform from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionKhrTextureTransform from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h new file mode 100644 index 000000000..465f37e5c --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionMeshPrimitiveExtFeatureMetadata; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionMeshPrimitiveExtFeatureMetadataReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionMeshPrimitiveExtFeatureMetadataReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionMeshPrimitiveExtFeatureMetadata from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtFeatureMetadata> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionMeshPrimitiveExtFeatureMetadata from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtFeatureMetadata> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionMeshPrimitiveExtFeatureMetadata from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h new file mode 100644 index 000000000..328005207 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionMeshPrimitiveExtStructuralMetadata; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionMeshPrimitiveExtStructuralMetadataReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionMeshPrimitiveExtStructuralMetadataReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionMeshPrimitiveExtStructuralMetadata + * from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtStructuralMetadata> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionMeshPrimitiveExtStructuralMetadata + * from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtStructuralMetadata> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionMeshPrimitiveExtStructuralMetadata from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h new file mode 100644 index 000000000..9ebfc2493 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h @@ -0,0 +1,78 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API + ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of + * ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of + * ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h new file mode 100644 index 000000000..817f9d444 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionMeshPrimitiveKhrMaterialsVariants; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionMeshPrimitiveKhrMaterialsVariantsReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionMeshPrimitiveKhrMaterialsVariantsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionMeshPrimitiveKhrMaterialsVariants from + * a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariants> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionMeshPrimitiveKhrMaterialsVariants from + * a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariants> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionMeshPrimitiveKhrMaterialsVariants from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h new file mode 100644 index 000000000..cfdda0e1c --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionModelExtFeatureMetadata; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionModelExtFeatureMetadataReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionModelExtFeatureMetadataReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionModelExtFeatureMetadata from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionModelExtFeatureMetadata from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionModelExtFeatureMetadata from + * a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h new file mode 100644 index 000000000..8cb1c1d85 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionModelExtStructuralMetadata; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionModelExtStructuralMetadataReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionModelExtStructuralMetadataReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionModelExtStructuralMetadata from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelExtStructuralMetadata> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionModelExtStructuralMetadata from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelExtStructuralMetadata> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionModelExtStructuralMetadata + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h new file mode 100644 index 000000000..3d04a7e16 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionModelKhrMaterialsVariants; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionModelKhrMaterialsVariantsReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionModelKhrMaterialsVariantsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionModelKhrMaterialsVariants from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelKhrMaterialsVariants> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionModelKhrMaterialsVariants from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelKhrMaterialsVariants> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionModelKhrMaterialsVariants + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h new file mode 100644 index 000000000..bd13a86da --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionModelKhrMaterialsVariantsValue; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionModelKhrMaterialsVariantsValueReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionModelKhrMaterialsVariantsValueReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionModelKhrMaterialsVariantsValue from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelKhrMaterialsVariantsValue> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionModelKhrMaterialsVariantsValue from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelKhrMaterialsVariantsValue> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionModelKhrMaterialsVariantsValue from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h new file mode 100644 index 000000000..5872bb206 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionModelMaxarMeshVariants; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionModelMaxarMeshVariantsReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionModelMaxarMeshVariantsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionModelMaxarMeshVariants from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionModelMaxarMeshVariants from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionModelMaxarMeshVariants from + * a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h new file mode 100644 index 000000000..2baa15b55 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionModelMaxarMeshVariantsValue; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionModelMaxarMeshVariantsValueReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionModelMaxarMeshVariantsValueReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionModelMaxarMeshVariantsValue from a + * byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelMaxarMeshVariantsValue> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionModelMaxarMeshVariantsValue from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelMaxarMeshVariantsValue> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionModelMaxarMeshVariantsValue + * from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h new file mode 100644 index 000000000..14d3aac22 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h @@ -0,0 +1,75 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionNodeMaxarMeshVariantsMappingsValue; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionNodeMaxarMeshVariantsMappingsValueReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionNodeMaxarMeshVariantsMappingsValueReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionNodeMaxarMeshVariantsMappingsValue + * from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionNodeMaxarMeshVariantsMappingsValue> + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionNodeMaxarMeshVariantsMappingsValue + * from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionNodeMaxarMeshVariantsMappingsValue> + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of + * ExtensionNodeMaxarMeshVariantsMappingsValue from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h new file mode 100644 index 000000000..dbe3a8b5b --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionNodeMaxarMeshVariants; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionNodeMaxarMeshVariantsReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionNodeMaxarMeshVariantsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionNodeMaxarMeshVariants from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionNodeMaxarMeshVariants from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionNodeMaxarMeshVariants from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h new file mode 100644 index 000000000..0a3abc8b4 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h @@ -0,0 +1,71 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct ExtensionTextureWebp; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ExtensionTextureWebpReader { +public: + /** + * @brief Constructs a new instance. + */ + ExtensionTextureWebpReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ExtensionTextureWebp from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ExtensionTextureWebp from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ExtensionTextureWebp from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h new file mode 100644 index 000000000..0cb2ba4f9 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct FeatureIDAttribute; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API FeatureIDAttributeReader { +public: + /** + * @brief Constructs a new instance. + */ + FeatureIDAttributeReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of FeatureIDAttribute from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of FeatureIDAttribute from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of FeatureIDAttribute from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h new file mode 100644 index 000000000..fdea6446c --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct FeatureIDTexture; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API FeatureIDTextureReader { +public: + /** + * @brief Constructs a new instance. + */ + FeatureIDTextureReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of FeatureIDTexture from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of FeatureIDTexture from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of FeatureIDTexture from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h new file mode 100644 index 000000000..0d14eb1bd --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct FeatureIDs; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API FeatureIDsReader { +public: + /** + * @brief Constructs a new instance. + */ + FeatureIDsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of FeatureIDs from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of FeatureIDs from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of FeatureIDs from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h new file mode 100644 index 000000000..1ec56faf0 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h @@ -0,0 +1,71 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct FeatureTableProperty; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API FeatureTablePropertyReader { +public: + /** + * @brief Constructs a new instance. + */ + FeatureTablePropertyReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of FeatureTableProperty from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of FeatureTableProperty from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of FeatureTableProperty from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h new file mode 100644 index 000000000..5773ae465 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct FeatureTable; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API FeatureTableReader { +public: + /** + * @brief Constructs a new instance. + */ + FeatureTableReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of FeatureTable from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of FeatureTable from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of FeatureTable from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h new file mode 100644 index 000000000..5d36807d4 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct FeatureTexture; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API FeatureTextureReader { +public: + /** + * @brief Constructs a new instance. + */ + FeatureTextureReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of FeatureTexture from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of FeatureTexture from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of FeatureTexture from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h new file mode 100644 index 000000000..8772a1f15 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Image; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ImageReader { +public: + /** + * @brief Constructs a new instance. + */ + ImageReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Image from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Image from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Image from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h new file mode 100644 index 000000000..199facc46 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h @@ -0,0 +1,72 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct MaterialNormalTextureInfo; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API MaterialNormalTextureInfoReader { +public: + /** + * @brief Constructs a new instance. + */ + MaterialNormalTextureInfoReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of MaterialNormalTextureInfo from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of MaterialNormalTextureInfo from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of MaterialNormalTextureInfo from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h new file mode 100644 index 000000000..26bf4786a --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct MaterialOcclusionTextureInfo; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API MaterialOcclusionTextureInfoReader { +public: + /** + * @brief Constructs a new instance. + */ + MaterialOcclusionTextureInfoReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of MaterialOcclusionTextureInfo from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of MaterialOcclusionTextureInfo from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of MaterialOcclusionTextureInfo from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h new file mode 100644 index 000000000..33226b68f --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h @@ -0,0 +1,73 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct MaterialPBRMetallicRoughness; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API MaterialPBRMetallicRoughnessReader { +public: + /** + * @brief Constructs a new instance. + */ + MaterialPBRMetallicRoughnessReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of MaterialPBRMetallicRoughness from a byte + * buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of MaterialPBRMetallicRoughness from a + * rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of MaterialPBRMetallicRoughness from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult< + std::vector> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h new file mode 100644 index 000000000..9f4b896f0 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Material; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API MaterialReader { +public: + /** + * @brief Constructs a new instance. + */ + MaterialReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Material from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Material from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Material from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h new file mode 100644 index 000000000..84298f0e6 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct MeshPrimitive; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API MeshPrimitiveReader { +public: + /** + * @brief Constructs a new instance. + */ + MeshPrimitiveReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of MeshPrimitive from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of MeshPrimitive from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of MeshPrimitive from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h new file mode 100644 index 000000000..a70941373 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Mesh; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API MeshReader { +public: + /** + * @brief Constructs a new instance. + */ + MeshReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Mesh from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Mesh from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Mesh from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h new file mode 100644 index 000000000..385afea2d --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Model; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API ModelReader { +public: + /** + * @brief Constructs a new instance. + */ + ModelReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Model from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Model from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Model from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h new file mode 100644 index 000000000..6091f0ec4 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Node; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API NodeReader { +public: + /** + * @brief Constructs a new instance. + */ + NodeReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Node from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Node from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Node from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h new file mode 100644 index 000000000..ced8713f2 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct PropertyStatistics; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API PropertyStatisticsReader { +public: + /** + * @brief Constructs a new instance. + */ + PropertyStatisticsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of PropertyStatistics from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of PropertyStatistics from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of PropertyStatistics from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h new file mode 100644 index 000000000..b551ffd7d --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Sampler; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API SamplerReader { +public: + /** + * @brief Constructs a new instance. + */ + SamplerReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Sampler from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Sampler from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Sampler from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h new file mode 100644 index 000000000..fe65364d2 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Scene; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API SceneReader { +public: + /** + * @brief Constructs a new instance. + */ + SceneReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Scene from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Scene from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Scene from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h new file mode 100644 index 000000000..1e3daec0d --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Schema; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API SchemaReader { +public: + /** + * @brief Constructs a new instance. + */ + SchemaReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Schema from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Schema from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Schema from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h new file mode 100644 index 000000000..2fd1ce417 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Skin; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API SkinReader { +public: + /** + * @brief Constructs a new instance. + */ + SkinReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Skin from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Skin from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Skin from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h new file mode 100644 index 000000000..a410d4763 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Statistics; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API StatisticsReader { +public: + /** + * @brief Constructs a new instance. + */ + StatisticsReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Statistics from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Statistics from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Statistics from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h new file mode 100644 index 000000000..0026b9b33 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h @@ -0,0 +1,70 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct TextureAccessor; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API TextureAccessorReader { +public: + /** + * @brief Constructs a new instance. + */ + TextureAccessorReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of TextureAccessor from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of TextureAccessor from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of TextureAccessor from a + * rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h new file mode 100644 index 000000000..5ac9e133e --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct TextureInfo; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API TextureInfoReader { +public: + /** + * @brief Constructs a new instance. + */ + TextureInfoReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of TextureInfo from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of TextureInfo from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of TextureInfo from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h new file mode 100644 index 000000000..e625b3c60 --- /dev/null +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h @@ -0,0 +1,69 @@ +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#pragma once + +#include +#include +#include +#include + +#include +#include + +#include + +namespace CesiumGltf { +struct Texture; +} + +namespace CesiumGltfReader { + +class CESIUMGLTFREADER_API TextureReader { +public: + /** + * @brief Constructs a new instance. + */ + TextureReader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of Texture from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of Texture from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult + readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of Texture from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> + readArrayFromJson(const rapidjson::Value& value) const; + +private: + CesiumJsonReader::JsonReaderOptions _options; +}; + +} // namespace CesiumGltfReader \ No newline at end of file diff --git a/CesiumGltfReader/generated/src/ExtensionBufferExtMeshoptCompressionJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionBufferExtMeshoptCompressionJsonHandler.h index 7c4871195..5bed9a46e 100644 --- a/CesiumGltfReader/generated/src/ExtensionBufferExtMeshoptCompressionJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionBufferExtMeshoptCompressionJsonHandler.h @@ -32,50 +32,7 @@ class ExtensionBufferExtMeshoptCompressionJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionBufferExtMeshoptCompression( diff --git a/CesiumGltfReader/generated/src/ExtensionBufferViewExtMeshoptCompressionJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionBufferViewExtMeshoptCompressionJsonHandler.h index c8783361e..775513949 100644 --- a/CesiumGltfReader/generated/src/ExtensionBufferViewExtMeshoptCompressionJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionBufferViewExtMeshoptCompressionJsonHandler.h @@ -33,50 +33,7 @@ class ExtensionBufferViewExtMeshoptCompressionJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionBufferViewExtMeshoptCompression( diff --git a/CesiumGltfReader/generated/src/ExtensionCesiumRTCJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionCesiumRTCJsonHandler.h index 84ffc1482..2626df960 100644 --- a/CesiumGltfReader/generated/src/ExtensionCesiumRTCJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionCesiumRTCJsonHandler.h @@ -32,50 +32,7 @@ class ExtensionCesiumRTCJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionCesiumRTC( diff --git a/CesiumGltfReader/generated/src/ExtensionCesiumTileEdgesJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionCesiumTileEdgesJsonHandler.h index d08365fdc..c3588e144 100644 --- a/CesiumGltfReader/generated/src/ExtensionCesiumTileEdgesJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionCesiumTileEdgesJsonHandler.h @@ -32,50 +32,7 @@ class ExtensionCesiumTileEdgesJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionCesiumTileEdges( diff --git a/CesiumGltfReader/generated/src/ExtensionExtInstanceFeaturesJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionExtInstanceFeaturesJsonHandler.h index c03c4fada..4d59d63a3 100644 --- a/CesiumGltfReader/generated/src/ExtensionExtInstanceFeaturesJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionExtInstanceFeaturesJsonHandler.h @@ -34,50 +34,7 @@ class ExtensionExtInstanceFeaturesJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionExtInstanceFeatures( diff --git a/CesiumGltfReader/generated/src/ExtensionExtMeshFeaturesJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionExtMeshFeaturesJsonHandler.h index e39bf64f5..cc2ede28d 100644 --- a/CesiumGltfReader/generated/src/ExtensionExtMeshFeaturesJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionExtMeshFeaturesJsonHandler.h @@ -34,50 +34,7 @@ class ExtensionExtMeshFeaturesJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionExtMeshFeatures( diff --git a/CesiumGltfReader/generated/src/ExtensionExtMeshGpuInstancingJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionExtMeshGpuInstancingJsonHandler.h index 5c0414671..afc99ea04 100644 --- a/CesiumGltfReader/generated/src/ExtensionExtMeshGpuInstancingJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionExtMeshGpuInstancingJsonHandler.h @@ -33,50 +33,7 @@ class ExtensionExtMeshGpuInstancingJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionExtMeshGpuInstancing( diff --git a/CesiumGltfReader/generated/src/ExtensionKhrDracoMeshCompressionJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionKhrDracoMeshCompressionJsonHandler.h index e3835e421..a6f3cb67a 100644 --- a/CesiumGltfReader/generated/src/ExtensionKhrDracoMeshCompressionJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionKhrDracoMeshCompressionJsonHandler.h @@ -34,50 +34,7 @@ class ExtensionKhrDracoMeshCompressionJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionKhrDracoMeshCompression( diff --git a/CesiumGltfReader/generated/src/ExtensionKhrMaterialsUnlitJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionKhrMaterialsUnlitJsonHandler.h index c143b4169..5125caf45 100644 --- a/CesiumGltfReader/generated/src/ExtensionKhrMaterialsUnlitJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionKhrMaterialsUnlitJsonHandler.h @@ -31,50 +31,7 @@ class ExtensionKhrMaterialsUnlitJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionKhrMaterialsUnlit( diff --git a/CesiumGltfReader/generated/src/ExtensionKhrTextureBasisuJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionKhrTextureBasisuJsonHandler.h index fe66ed324..0b3cd768c 100644 --- a/CesiumGltfReader/generated/src/ExtensionKhrTextureBasisuJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionKhrTextureBasisuJsonHandler.h @@ -32,50 +32,7 @@ class ExtensionKhrTextureBasisuJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionKhrTextureBasisu( diff --git a/CesiumGltfReader/generated/src/ExtensionKhrTextureTransformJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionKhrTextureTransformJsonHandler.h index 11585ed94..6741affa9 100644 --- a/CesiumGltfReader/generated/src/ExtensionKhrTextureTransformJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionKhrTextureTransformJsonHandler.h @@ -34,50 +34,7 @@ class ExtensionKhrTextureTransformJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionKhrTextureTransform( diff --git a/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler.h index 93ec30a16..b4da79e6e 100644 --- a/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler.h @@ -36,50 +36,7 @@ class ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionMeshPrimitiveExtFeatureMetadata( diff --git a/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler.h index cc3da651e..e2ab51dbb 100644 --- a/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler.h @@ -33,50 +33,7 @@ class ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionMeshPrimitiveExtStructuralMetadata( diff --git a/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler.h index 28c93e0e3..2f9ee7e52 100644 --- a/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler.h @@ -34,50 +34,7 @@ class ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionMeshPrimitiveKhrMaterialsVariants( diff --git a/CesiumGltfReader/generated/src/ExtensionModelExtFeatureMetadataJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionModelExtFeatureMetadataJsonHandler.h index 1fc825848..6dc96fa48 100644 --- a/CesiumGltfReader/generated/src/ExtensionModelExtFeatureMetadataJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionModelExtFeatureMetadataJsonHandler.h @@ -38,50 +38,7 @@ class ExtensionModelExtFeatureMetadataJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionModelExtFeatureMetadata( diff --git a/CesiumGltfReader/generated/src/ExtensionModelExtStructuralMetadataJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionModelExtStructuralMetadataJsonHandler.h index bce764b8f..0176d6421 100644 --- a/CesiumGltfReader/generated/src/ExtensionModelExtStructuralMetadataJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionModelExtStructuralMetadataJsonHandler.h @@ -38,50 +38,7 @@ class ExtensionModelExtStructuralMetadataJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionModelExtStructuralMetadata( diff --git a/CesiumGltfReader/generated/src/ExtensionModelKhrMaterialsVariantsJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionModelKhrMaterialsVariantsJsonHandler.h index 4c967b4b5..e1c5cac88 100644 --- a/CesiumGltfReader/generated/src/ExtensionModelKhrMaterialsVariantsJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionModelKhrMaterialsVariantsJsonHandler.h @@ -34,50 +34,7 @@ class ExtensionModelKhrMaterialsVariantsJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionModelKhrMaterialsVariants( diff --git a/CesiumGltfReader/generated/src/ExtensionModelMaxarMeshVariantsJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionModelMaxarMeshVariantsJsonHandler.h index c98b19818..303da2a86 100644 --- a/CesiumGltfReader/generated/src/ExtensionModelMaxarMeshVariantsJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionModelMaxarMeshVariantsJsonHandler.h @@ -35,50 +35,7 @@ class ExtensionModelMaxarMeshVariantsJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionModelMaxarMeshVariants( diff --git a/CesiumGltfReader/generated/src/ExtensionNodeMaxarMeshVariantsJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionNodeMaxarMeshVariantsJsonHandler.h index 16bb452ce..9f73a30e8 100644 --- a/CesiumGltfReader/generated/src/ExtensionNodeMaxarMeshVariantsJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionNodeMaxarMeshVariantsJsonHandler.h @@ -34,50 +34,7 @@ class ExtensionNodeMaxarMeshVariantsJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionNodeMaxarMeshVariants( diff --git a/CesiumGltfReader/generated/src/ExtensionTextureWebpJsonHandler.h b/CesiumGltfReader/generated/src/ExtensionTextureWebpJsonHandler.h index 04ed382e3..8ffe0739f 100644 --- a/CesiumGltfReader/generated/src/ExtensionTextureWebpJsonHandler.h +++ b/CesiumGltfReader/generated/src/ExtensionTextureWebpJsonHandler.h @@ -32,50 +32,7 @@ class ExtensionTextureWebpJsonHandler CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return CesiumJsonReader::ExtensibleObjectJsonHandler::readArrayEnd(); - } - virtual void reportWarning( - const std::string& warning, - std::vector&& context = - std::vector()) override { - CesiumJsonReader::ExtensibleObjectJsonHandler::reportWarning( - warning, - std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } protected: IJsonHandler* readObjectKeyExtensionTextureWebp( diff --git a/CesiumGltfReader/generated/src/GeneratedJsonHandlers.cpp b/CesiumGltfReader/generated/src/GeneratedJsonHandlers.cpp index 660088e7a..832291018 100644 --- a/CesiumGltfReader/generated/src/GeneratedJsonHandlers.cpp +++ b/CesiumGltfReader/generated/src/GeneratedJsonHandlers.cpp @@ -1,8 +1,12 @@ // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionCesiumRTCJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -54,12 +58,52 @@ ExtensionCesiumRTCJsonHandler::readObjectKeyExtensionCesiumRTC( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionCesiumRTCReader::ExtensionCesiumRTCReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& ExtensionCesiumRTCReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionCesiumRTCReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionCesiumRTCReader::readFromJson( + const gsl::span& data) const { + ExtensionCesiumRTCJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionCesiumRTCReader::readFromJson(const rapidjson::Value& value) const { + ExtensionCesiumRTCJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ExtensionCesiumRTCReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionCesiumRTC, + ExtensionCesiumRTCJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionCesiumTileEdgesJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -123,12 +167,55 @@ ExtensionCesiumTileEdgesJsonHandler::readObjectKeyExtensionCesiumTileEdges( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionCesiumTileEdgesReader::ExtensionCesiumTileEdgesReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionCesiumTileEdgesReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionCesiumTileEdgesReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionCesiumTileEdgesReader::readFromJson( + const gsl::span& data) const { + ExtensionCesiumTileEdgesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionCesiumTileEdgesReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionCesiumTileEdgesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionCesiumTileEdgesReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionCesiumTileEdges, + ExtensionCesiumTileEdgesJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionModelExtFeatureMetadataJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -200,12 +287,56 @@ CesiumJsonReader::IJsonHandler* ExtensionModelExtFeatureMetadataJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionModelExtFeatureMetadataReader:: + ExtensionModelExtFeatureMetadataReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionModelExtFeatureMetadataReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionModelExtFeatureMetadataReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionModelExtFeatureMetadataReader::readFromJson( + const gsl::span& data) const { + ExtensionModelExtFeatureMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionModelExtFeatureMetadataReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionModelExtFeatureMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionModelExtFeatureMetadataReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionModelExtFeatureMetadata, + ExtensionModelExtFeatureMetadataJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -280,12 +411,58 @@ ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionMeshPrimitiveExtFeatureMetadataReader:: + ExtensionMeshPrimitiveExtFeatureMetadataReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveExtFeatureMetadataReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveExtFeatureMetadataReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtFeatureMetadata> +ExtensionMeshPrimitiveExtFeatureMetadataReader::readFromJson( + const gsl::span& data) const { + ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtFeatureMetadata> +ExtensionMeshPrimitiveExtFeatureMetadataReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionMeshPrimitiveExtFeatureMetadataReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionMeshPrimitiveExtFeatureMetadata, + ExtensionMeshPrimitiveExtFeatureMetadataJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtInstanceFeaturesJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -341,12 +518,55 @@ CesiumJsonReader::IJsonHandler* ExtensionExtInstanceFeaturesJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtInstanceFeaturesReader::ExtensionExtInstanceFeaturesReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtInstanceFeaturesReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtInstanceFeaturesReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtInstanceFeaturesReader::readFromJson( + const gsl::span& data) const { + ExtensionExtInstanceFeaturesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtInstanceFeaturesReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtInstanceFeaturesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtInstanceFeaturesReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtInstanceFeatures, + ExtensionExtInstanceFeaturesJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtMeshFeaturesJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -401,12 +621,55 @@ ExtensionExtMeshFeaturesJsonHandler::readObjectKeyExtensionExtMeshFeatures( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtMeshFeaturesReader::ExtensionExtMeshFeaturesReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshFeaturesReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshFeaturesReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtMeshFeaturesReader::readFromJson( + const gsl::span& data) const { + ExtensionExtMeshFeaturesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtMeshFeaturesReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtMeshFeaturesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtMeshFeaturesReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtMeshFeatures, + ExtensionExtMeshFeaturesJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtMeshGpuInstancingJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -461,12 +724,55 @@ CesiumJsonReader::IJsonHandler* ExtensionExtMeshGpuInstancingJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtMeshGpuInstancingReader::ExtensionExtMeshGpuInstancingReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshGpuInstancingReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshGpuInstancingReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtMeshGpuInstancingReader::readFromJson( + const gsl::span& data) const { + ExtensionExtMeshGpuInstancingJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtMeshGpuInstancingReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtMeshGpuInstancingJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtMeshGpuInstancingReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtMeshGpuInstancing, + ExtensionExtMeshGpuInstancingJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionBufferExtMeshoptCompressionJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -523,12 +829,58 @@ ExtensionBufferExtMeshoptCompressionJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionBufferExtMeshoptCompressionReader:: + ExtensionBufferExtMeshoptCompressionReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionBufferExtMeshoptCompressionReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionBufferExtMeshoptCompressionReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferExtMeshoptCompression> +ExtensionBufferExtMeshoptCompressionReader::readFromJson( + const gsl::span& data) const { + ExtensionBufferExtMeshoptCompressionJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferExtMeshoptCompression> +ExtensionBufferExtMeshoptCompressionReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionBufferExtMeshoptCompressionJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionBufferExtMeshoptCompressionReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionBufferExtMeshoptCompression, + ExtensionBufferExtMeshoptCompressionJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionBufferViewExtMeshoptCompressionJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -606,12 +958,58 @@ ExtensionBufferViewExtMeshoptCompressionJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionBufferViewExtMeshoptCompressionReader:: + ExtensionBufferViewExtMeshoptCompressionReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionBufferViewExtMeshoptCompressionReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionBufferViewExtMeshoptCompressionReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferViewExtMeshoptCompression> +ExtensionBufferViewExtMeshoptCompressionReader::readFromJson( + const gsl::span& data) const { + ExtensionBufferViewExtMeshoptCompressionJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionBufferViewExtMeshoptCompression> +ExtensionBufferViewExtMeshoptCompressionReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionBufferViewExtMeshoptCompressionJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionBufferViewExtMeshoptCompressionReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionBufferViewExtMeshoptCompression, + ExtensionBufferViewExtMeshoptCompressionJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionModelExtStructuralMetadataJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -686,12 +1084,58 @@ CesiumJsonReader::IJsonHandler* ExtensionModelExtStructuralMetadataJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionModelExtStructuralMetadataReader:: + ExtensionModelExtStructuralMetadataReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionModelExtStructuralMetadataReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionModelExtStructuralMetadataReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelExtStructuralMetadata> +ExtensionModelExtStructuralMetadataReader::readFromJson( + const gsl::span& data) const { + ExtensionModelExtStructuralMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelExtStructuralMetadata> +ExtensionModelExtStructuralMetadataReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionModelExtStructuralMetadataJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionModelExtStructuralMetadataReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionModelExtStructuralMetadata, + ExtensionModelExtStructuralMetadataJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -760,12 +1204,60 @@ ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionMeshPrimitiveExtStructuralMetadataReader:: + ExtensionMeshPrimitiveExtStructuralMetadataReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveExtStructuralMetadataReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveExtStructuralMetadataReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtStructuralMetadata> +ExtensionMeshPrimitiveExtStructuralMetadataReader::readFromJson( + const gsl::span& data) const { + ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveExtStructuralMetadata> +ExtensionMeshPrimitiveExtStructuralMetadataReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionMeshPrimitiveExtStructuralMetadataReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionMeshPrimitiveExtStructuralMetadata, + ExtensionMeshPrimitiveExtStructuralMetadataJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionKhrDracoMeshCompressionJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -825,12 +1317,56 @@ CesiumJsonReader::IJsonHandler* ExtensionKhrDracoMeshCompressionJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionKhrDracoMeshCompressionReader:: + ExtensionKhrDracoMeshCompressionReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionKhrDracoMeshCompressionReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionKhrDracoMeshCompressionReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrDracoMeshCompressionReader::readFromJson( + const gsl::span& data) const { + ExtensionKhrDracoMeshCompressionJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrDracoMeshCompressionReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionKhrDracoMeshCompressionJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionKhrDracoMeshCompressionReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionKhrDracoMeshCompression, + ExtensionKhrDracoMeshCompressionJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionKhrMaterialsUnlitJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -883,12 +1419,55 @@ ExtensionKhrMaterialsUnlitJsonHandler::readObjectKeyExtensionKhrMaterialsUnlit( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionKhrMaterialsUnlitReader::ExtensionKhrMaterialsUnlitReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionKhrMaterialsUnlitReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionKhrMaterialsUnlitReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrMaterialsUnlitReader::readFromJson( + const gsl::span& data) const { + ExtensionKhrMaterialsUnlitJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrMaterialsUnlitReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionKhrMaterialsUnlitJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionKhrMaterialsUnlitReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionKhrMaterialsUnlit, + ExtensionKhrMaterialsUnlitJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionModelKhrMaterialsVariantsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -945,12 +1524,56 @@ CesiumJsonReader::IJsonHandler* ExtensionModelKhrMaterialsVariantsJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionModelKhrMaterialsVariantsReader:: + ExtensionModelKhrMaterialsVariantsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionModelKhrMaterialsVariantsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionModelKhrMaterialsVariantsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionModelKhrMaterialsVariantsReader::readFromJson( + const gsl::span& data) const { + ExtensionModelKhrMaterialsVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionModelKhrMaterialsVariantsReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionModelKhrMaterialsVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionModelKhrMaterialsVariantsReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionModelKhrMaterialsVariants, + ExtensionModelKhrMaterialsVariantsJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1010,12 +1633,58 @@ ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionMeshPrimitiveKhrMaterialsVariantsReader:: + ExtensionMeshPrimitiveKhrMaterialsVariantsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveKhrMaterialsVariantsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveKhrMaterialsVariantsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariants> +ExtensionMeshPrimitiveKhrMaterialsVariantsReader::readFromJson( + const gsl::span& data) const { + ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariants> +ExtensionMeshPrimitiveKhrMaterialsVariantsReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionMeshPrimitiveKhrMaterialsVariantsReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariants, + ExtensionMeshPrimitiveKhrMaterialsVariantsJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionKhrTextureBasisuJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1069,12 +1738,55 @@ ExtensionKhrTextureBasisuJsonHandler::readObjectKeyExtensionKhrTextureBasisu( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionKhrTextureBasisuReader::ExtensionKhrTextureBasisuReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionKhrTextureBasisuReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionKhrTextureBasisuReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrTextureBasisuReader::readFromJson( + const gsl::span& data) const { + ExtensionKhrTextureBasisuJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrTextureBasisuReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionKhrTextureBasisuJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionKhrTextureBasisuReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionKhrTextureBasisu, + ExtensionKhrTextureBasisuJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionModelMaxarMeshVariantsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1133,12 +1845,55 @@ CesiumJsonReader::IJsonHandler* ExtensionModelMaxarMeshVariantsJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionModelMaxarMeshVariantsReader::ExtensionModelMaxarMeshVariantsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionModelMaxarMeshVariantsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionModelMaxarMeshVariantsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionModelMaxarMeshVariantsReader::readFromJson( + const gsl::span& data) const { + ExtensionModelMaxarMeshVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionModelMaxarMeshVariantsReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionModelMaxarMeshVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionModelMaxarMeshVariantsReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionModelMaxarMeshVariants, + ExtensionModelMaxarMeshVariantsJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionNodeMaxarMeshVariantsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1194,12 +1949,55 @@ CesiumJsonReader::IJsonHandler* ExtensionNodeMaxarMeshVariantsJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionNodeMaxarMeshVariantsReader::ExtensionNodeMaxarMeshVariantsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionNodeMaxarMeshVariantsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionNodeMaxarMeshVariantsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionNodeMaxarMeshVariantsReader::readFromJson( + const gsl::span& data) const { + ExtensionNodeMaxarMeshVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionNodeMaxarMeshVariantsReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionNodeMaxarMeshVariantsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionNodeMaxarMeshVariantsReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionNodeMaxarMeshVariants, + ExtensionNodeMaxarMeshVariantsJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionKhrTextureTransformJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1264,12 +2062,55 @@ CesiumJsonReader::IJsonHandler* ExtensionKhrTextureTransformJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionKhrTextureTransformReader::ExtensionKhrTextureTransformReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionKhrTextureTransformReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionKhrTextureTransformReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrTextureTransformReader::readFromJson( + const gsl::span& data) const { + ExtensionKhrTextureTransformJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionKhrTextureTransformReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionKhrTextureTransformJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionKhrTextureTransformReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionKhrTextureTransform, + ExtensionKhrTextureTransformJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionTextureWebpJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1321,12 +2162,52 @@ ExtensionTextureWebpJsonHandler::readObjectKeyExtensionTextureWebp( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionTextureWebpReader::ExtensionTextureWebpReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& ExtensionTextureWebpReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionTextureWebpReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionTextureWebpReader::readFromJson( + const gsl::span& data) const { + ExtensionTextureWebpJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionTextureWebpReader::readFromJson(const rapidjson::Value& value) const { + ExtensionTextureWebpJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ExtensionTextureWebpReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionTextureWebp, + ExtensionTextureWebpJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionNodeMaxarMeshVariantsMappingsValueJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1376,12 +2257,60 @@ ExtensionNodeMaxarMeshVariantsMappingsValueJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionNodeMaxarMeshVariantsMappingsValueReader:: + ExtensionNodeMaxarMeshVariantsMappingsValueReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionNodeMaxarMeshVariantsMappingsValueReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionNodeMaxarMeshVariantsMappingsValueReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionNodeMaxarMeshVariantsMappingsValue> +ExtensionNodeMaxarMeshVariantsMappingsValueReader::readFromJson( + const gsl::span& data) const { + ExtensionNodeMaxarMeshVariantsMappingsValueJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionNodeMaxarMeshVariantsMappingsValue> +ExtensionNodeMaxarMeshVariantsMappingsValueReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionNodeMaxarMeshVariantsMappingsValueJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionNodeMaxarMeshVariantsMappingsValueReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionNodeMaxarMeshVariantsMappingsValue, + ExtensionNodeMaxarMeshVariantsMappingsValueJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionModelMaxarMeshVariantsValueJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1424,12 +2353,58 @@ ExtensionModelMaxarMeshVariantsValueJsonHandler:: return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } -} // namespace CesiumGltfReader -// This file was generated by generate-classes. -// DO NOT EDIT THIS FILE! -#include "ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueJsonHandler.h" +ExtensionModelMaxarMeshVariantsValueReader:: + ExtensionModelMaxarMeshVariantsValueReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionModelMaxarMeshVariantsValueReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionModelMaxarMeshVariantsValueReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelMaxarMeshVariantsValue> +ExtensionModelMaxarMeshVariantsValueReader::readFromJson( + const gsl::span& data) const { + ExtensionModelMaxarMeshVariantsValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelMaxarMeshVariantsValue> +ExtensionModelMaxarMeshVariantsValueReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionModelMaxarMeshVariantsValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionModelMaxarMeshVariantsValueReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionModelMaxarMeshVariantsValue, + ExtensionModelMaxarMeshVariantsValueJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +} // namespace CesiumGltfReader +// This file was generated by generate-classes. +// DO NOT EDIT THIS FILE! +#include "ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1483,12 +2458,61 @@ ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader:: + ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader::getOptions() + const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue> +ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader::readFromJson( + const gsl::span& data) const { + ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue> +ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader:: + readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue, + ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionModelKhrMaterialsVariantsValueJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1531,12 +2555,58 @@ ExtensionModelKhrMaterialsVariantsValueJsonHandler:: return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +ExtensionModelKhrMaterialsVariantsValueReader:: + ExtensionModelKhrMaterialsVariantsValueReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionModelKhrMaterialsVariantsValueReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionModelKhrMaterialsVariantsValueReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelKhrMaterialsVariantsValue> +ExtensionModelKhrMaterialsVariantsValueReader::readFromJson( + const gsl::span& data) const { + ExtensionModelKhrMaterialsVariantsValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionModelKhrMaterialsVariantsValue> +ExtensionModelKhrMaterialsVariantsValueReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionModelKhrMaterialsVariantsValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionModelKhrMaterialsVariantsValueReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionModelKhrMaterialsVariantsValue, + ExtensionModelKhrMaterialsVariantsValueJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataPropertyAttributeJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1586,12 +2656,60 @@ ExtensionExtStructuralMetadataPropertyAttributeJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataPropertyAttributeReader:: + ExtensionExtStructuralMetadataPropertyAttributeReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyAttributeReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyAttributeReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttribute> +ExtensionExtStructuralMetadataPropertyAttributeReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataPropertyAttributeJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttribute> +ExtensionExtStructuralMetadataPropertyAttributeReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataPropertyAttributeJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataPropertyAttributeReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttribute, + ExtensionExtStructuralMetadataPropertyAttributeJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataPropertyAttributePropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1651,12 +2769,61 @@ ExtensionExtStructuralMetadataPropertyAttributePropertyJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataPropertyAttributePropertyReader:: + ExtensionExtStructuralMetadataPropertyAttributePropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyAttributePropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyAttributePropertyReader::getOptions() + const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttributeProperty> +ExtensionExtStructuralMetadataPropertyAttributePropertyReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataPropertyAttributePropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttributeProperty> +ExtensionExtStructuralMetadataPropertyAttributePropertyReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataPropertyAttributePropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ExtensionExtStructuralMetadataPropertyAttributePropertyReader:: + readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataPropertyAttributeProperty, + ExtensionExtStructuralMetadataPropertyAttributePropertyJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataPropertyTextureJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1706,12 +2873,60 @@ ExtensionExtStructuralMetadataPropertyTextureJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataPropertyTextureReader:: + ExtensionExtStructuralMetadataPropertyTextureReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTextureReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTextureReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTexture> +ExtensionExtStructuralMetadataPropertyTextureReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataPropertyTextureJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTexture> +ExtensionExtStructuralMetadataPropertyTextureReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataPropertyTextureJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataPropertyTextureReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTexture, + ExtensionExtStructuralMetadataPropertyTextureJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataPropertyTexturePropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1770,12 +2985,61 @@ ExtensionExtStructuralMetadataPropertyTexturePropertyJsonHandler:: return this->readObjectKeyTextureInfo(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataPropertyTexturePropertyReader:: + ExtensionExtStructuralMetadataPropertyTexturePropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTexturePropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTexturePropertyReader::getOptions() + const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTextureProperty> +ExtensionExtStructuralMetadataPropertyTexturePropertyReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataPropertyTexturePropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTextureProperty> +ExtensionExtStructuralMetadataPropertyTexturePropertyReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataPropertyTexturePropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ExtensionExtStructuralMetadataPropertyTexturePropertyReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTextureProperty, + ExtensionExtStructuralMetadataPropertyTexturePropertyJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "TextureInfoJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1819,12 +3083,47 @@ TextureInfoJsonHandler::readObjectKeyTextureInfo( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +TextureInfoReader::TextureInfoReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& TextureInfoReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +TextureInfoReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +TextureInfoReader::readFromJson(const gsl::span& data) const { + TextureInfoJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +TextureInfoReader::readFromJson(const rapidjson::Value& value) const { + TextureInfoJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +TextureInfoReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataPropertyTableJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1877,12 +3176,60 @@ ExtensionExtStructuralMetadataPropertyTableJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataPropertyTableReader:: + ExtensionExtStructuralMetadataPropertyTableReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTableReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTableReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTable> +ExtensionExtStructuralMetadataPropertyTableReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataPropertyTableJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTable> +ExtensionExtStructuralMetadataPropertyTableReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataPropertyTableJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataPropertyTableReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTable, + ExtensionExtStructuralMetadataPropertyTableJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataPropertyTablePropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -1956,12 +3303,60 @@ ExtensionExtStructuralMetadataPropertyTablePropertyJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataPropertyTablePropertyReader:: + ExtensionExtStructuralMetadataPropertyTablePropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTablePropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataPropertyTablePropertyReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTableProperty> +ExtensionExtStructuralMetadataPropertyTablePropertyReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataPropertyTablePropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTableProperty> +ExtensionExtStructuralMetadataPropertyTablePropertyReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataPropertyTablePropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ExtensionExtStructuralMetadataPropertyTablePropertyReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataPropertyTableProperty, + ExtensionExtStructuralMetadataPropertyTablePropertyJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataSchemaJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2020,12 +3415,58 @@ ExtensionExtStructuralMetadataSchemaJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataSchemaReader:: + ExtensionExtStructuralMetadataSchemaReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataSchemaReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataSchemaReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataSchema> +ExtensionExtStructuralMetadataSchemaReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataSchemaJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataSchema> +ExtensionExtStructuralMetadataSchemaReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataSchemaJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataSchemaReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataSchema, + ExtensionExtStructuralMetadataSchemaJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataEnumJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2077,12 +3518,56 @@ CesiumJsonReader::IJsonHandler* ExtensionExtStructuralMetadataEnumJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataEnumReader:: + ExtensionExtStructuralMetadataEnumReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataEnumReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataEnumReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtStructuralMetadataEnumReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataEnumJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtStructuralMetadataEnumReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataEnumJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataEnumReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataEnum, + ExtensionExtStructuralMetadataEnumJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataEnumValueJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2132,12 +3617,58 @@ ExtensionExtStructuralMetadataEnumValueJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataEnumValueReader:: + ExtensionExtStructuralMetadataEnumValueReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataEnumValueReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataEnumValueReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataEnumValue> +ExtensionExtStructuralMetadataEnumValueReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataEnumValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataEnumValue> +ExtensionExtStructuralMetadataEnumValueReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataEnumValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataEnumValueReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataEnumValue, + ExtensionExtStructuralMetadataEnumValueJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataClassJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2186,12 +3717,58 @@ CesiumJsonReader::IJsonHandler* ExtensionExtStructuralMetadataClassJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataClassReader:: + ExtensionExtStructuralMetadataClassReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataClassReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataClassReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClass> +ExtensionExtStructuralMetadataClassReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataClassJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClass> +ExtensionExtStructuralMetadataClassReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataClassJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataClassReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataClass, + ExtensionExtStructuralMetadataClassJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtStructuralMetadataClassPropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2280,12 +3857,60 @@ ExtensionExtStructuralMetadataClassPropertyJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtStructuralMetadataClassPropertyReader:: + ExtensionExtStructuralMetadataClassPropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataClassPropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtStructuralMetadataClassPropertyReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClassProperty> +ExtensionExtStructuralMetadataClassPropertyReader::readFromJson( + const gsl::span& data) const { + ExtensionExtStructuralMetadataClassPropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtStructuralMetadataClassProperty> +ExtensionExtStructuralMetadataClassPropertyReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtStructuralMetadataClassPropertyJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtStructuralMetadataClassPropertyReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtStructuralMetadataClassProperty, + ExtensionExtStructuralMetadataClassPropertyJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtMeshFeaturesFeatureIdJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2343,12 +3968,56 @@ CesiumJsonReader::IJsonHandler* ExtensionExtMeshFeaturesFeatureIdJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtMeshFeaturesFeatureIdReader:: + ExtensionExtMeshFeaturesFeatureIdReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshFeaturesFeatureIdReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshFeaturesFeatureIdReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtMeshFeaturesFeatureIdReader::readFromJson( + const gsl::span& data) const { + ExtensionExtMeshFeaturesFeatureIdJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ExtensionExtMeshFeaturesFeatureIdReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtMeshFeaturesFeatureIdJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtMeshFeaturesFeatureIdReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtMeshFeaturesFeatureId, + ExtensionExtMeshFeaturesFeatureIdJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtMeshFeaturesFeatureIdTextureJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2391,12 +4060,58 @@ ExtensionExtMeshFeaturesFeatureIdTextureJsonHandler:: return this->readObjectKeyTextureInfo(objectType, str, *this->_pObject); } +ExtensionExtMeshFeaturesFeatureIdTextureReader:: + ExtensionExtMeshFeaturesFeatureIdTextureReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshFeaturesFeatureIdTextureReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtMeshFeaturesFeatureIdTextureReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtMeshFeaturesFeatureIdTexture> +ExtensionExtMeshFeaturesFeatureIdTextureReader::readFromJson( + const gsl::span& data) const { + ExtensionExtMeshFeaturesFeatureIdTextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtMeshFeaturesFeatureIdTexture> +ExtensionExtMeshFeaturesFeatureIdTextureReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtMeshFeaturesFeatureIdTextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtMeshFeaturesFeatureIdTextureReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtMeshFeaturesFeatureIdTexture, + ExtensionExtMeshFeaturesFeatureIdTextureJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ExtensionExtInstanceFeaturesFeatureIdJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2452,12 +4167,58 @@ ExtensionExtInstanceFeaturesFeatureIdJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ExtensionExtInstanceFeaturesFeatureIdReader:: + ExtensionExtInstanceFeaturesFeatureIdReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +ExtensionExtInstanceFeaturesFeatureIdReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ExtensionExtInstanceFeaturesFeatureIdReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtInstanceFeaturesFeatureId> +ExtensionExtInstanceFeaturesFeatureIdReader::readFromJson( + const gsl::span& data) const { + ExtensionExtInstanceFeaturesFeatureIdJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult< + CesiumGltf::ExtensionExtInstanceFeaturesFeatureId> +ExtensionExtInstanceFeaturesFeatureIdReader::readFromJson( + const rapidjson::Value& value) const { + ExtensionExtInstanceFeaturesFeatureIdJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +ExtensionExtInstanceFeaturesFeatureIdReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::ExtensionExtInstanceFeaturesFeatureId, + ExtensionExtInstanceFeaturesFeatureIdJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "FeatureIDTextureJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2501,12 +4262,51 @@ FeatureIDTextureJsonHandler::readObjectKeyFeatureIDTexture( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +FeatureIDTextureReader::FeatureIDTextureReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& FeatureIDTextureReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +FeatureIDTextureReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +FeatureIDTextureReader::readFromJson( + const gsl::span& data) const { + FeatureIDTextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +FeatureIDTextureReader::readFromJson(const rapidjson::Value& value) const { + FeatureIDTextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +FeatureIDTextureReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::FeatureIDTexture, + FeatureIDTextureJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "TextureAccessorJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2550,12 +4350,50 @@ TextureAccessorJsonHandler::readObjectKeyTextureAccessor( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +TextureAccessorReader::TextureAccessorReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& TextureAccessorReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +TextureAccessorReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +TextureAccessorReader::readFromJson( + const gsl::span& data) const { + TextureAccessorJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +TextureAccessorReader::readFromJson(const rapidjson::Value& value) const { + TextureAccessorJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +TextureAccessorReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "FeatureIDAttributeJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2599,12 +4437,52 @@ FeatureIDAttributeJsonHandler::readObjectKeyFeatureIDAttribute( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +FeatureIDAttributeReader::FeatureIDAttributeReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& FeatureIDAttributeReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +FeatureIDAttributeReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +FeatureIDAttributeReader::readFromJson( + const gsl::span& data) const { + FeatureIDAttributeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +FeatureIDAttributeReader::readFromJson(const rapidjson::Value& value) const { + FeatureIDAttributeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +FeatureIDAttributeReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::FeatureIDAttribute, + FeatureIDAttributeJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "FeatureIDsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2650,12 +4528,47 @@ CesiumJsonReader::IJsonHandler* FeatureIDsJsonHandler::readObjectKeyFeatureIDs( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } -} // namespace CesiumGltfReader +FeatureIDsReader::FeatureIDsReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& FeatureIDsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +FeatureIDsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +FeatureIDsReader::readFromJson(const gsl::span& data) const { + FeatureIDsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +FeatureIDsReader::readFromJson(const rapidjson::Value& value) const { + FeatureIDsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +FeatureIDsReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +} // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "FeatureTextureJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2699,12 +4612,50 @@ FeatureTextureJsonHandler::readObjectKeyFeatureTexture( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +FeatureTextureReader::FeatureTextureReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& FeatureTextureReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +FeatureTextureReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +FeatureTextureReader::readFromJson( + const gsl::span& data) const { + FeatureTextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +FeatureTextureReader::readFromJson(const rapidjson::Value& value) const { + FeatureTextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +FeatureTextureReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "FeatureTableJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2751,12 +4702,47 @@ FeatureTableJsonHandler::readObjectKeyFeatureTable( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +FeatureTableReader::FeatureTableReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& FeatureTableReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +FeatureTableReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +FeatureTableReader::readFromJson(const gsl::span& data) const { + FeatureTableJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +FeatureTableReader::readFromJson(const rapidjson::Value& value) const { + FeatureTableJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +FeatureTableReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "FeatureTablePropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2812,12 +4798,52 @@ FeatureTablePropertyJsonHandler::readObjectKeyFeatureTableProperty( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +FeatureTablePropertyReader::FeatureTablePropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& FeatureTablePropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +FeatureTablePropertyReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +FeatureTablePropertyReader::readFromJson( + const gsl::span& data) const { + FeatureTablePropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +FeatureTablePropertyReader::readFromJson(const rapidjson::Value& value) const { + FeatureTablePropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +FeatureTablePropertyReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::FeatureTableProperty, + FeatureTablePropertyJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "StatisticsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2857,12 +4883,47 @@ CesiumJsonReader::IJsonHandler* StatisticsJsonHandler::readObjectKeyStatistics( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +StatisticsReader::StatisticsReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& StatisticsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +StatisticsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +StatisticsReader::readFromJson(const gsl::span& data) const { + StatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +StatisticsReader::readFromJson(const rapidjson::Value& value) const { + StatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +StatisticsReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ClassStatisticsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2906,12 +4967,50 @@ ClassStatisticsJsonHandler::readObjectKeyClassStatistics( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ClassStatisticsReader::ClassStatisticsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& ClassStatisticsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ClassStatisticsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ClassStatisticsReader::readFromJson( + const gsl::span& data) const { + ClassStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ClassStatisticsReader::readFromJson(const rapidjson::Value& value) const { + ClassStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ClassStatisticsReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "PropertyStatisticsJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -2976,12 +5075,52 @@ PropertyStatisticsJsonHandler::readObjectKeyPropertyStatistics( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +PropertyStatisticsReader::PropertyStatisticsReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& PropertyStatisticsReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +PropertyStatisticsReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +PropertyStatisticsReader::readFromJson( + const gsl::span& data) const { + PropertyStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +PropertyStatisticsReader::readFromJson(const rapidjson::Value& value) const { + PropertyStatisticsJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +PropertyStatisticsReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::PropertyStatistics, + PropertyStatisticsJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "SchemaJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3033,12 +5172,45 @@ CesiumJsonReader::IJsonHandler* SchemaJsonHandler::readObjectKeySchema( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +SchemaReader::SchemaReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& SchemaReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& SchemaReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +SchemaReader::readFromJson(const gsl::span& data) const { + SchemaJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +SchemaReader::readFromJson(const rapidjson::Value& value) const { + SchemaJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +SchemaReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "EnumJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3087,12 +5259,45 @@ CesiumJsonReader::IJsonHandler* EnumJsonHandler::readObjectKeyEnum( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +EnumReader::EnumReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& EnumReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& EnumReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +EnumReader::readFromJson(const gsl::span& data) const { + EnumJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +EnumReader::readFromJson(const rapidjson::Value& value) const { + EnumJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +EnumReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "EnumValueJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3138,12 +5343,46 @@ CesiumJsonReader::IJsonHandler* EnumValueJsonHandler::readObjectKeyEnumValue( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +EnumValueReader::EnumValueReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& EnumValueReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& EnumValueReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +EnumValueReader::readFromJson(const gsl::span& data) const { + EnumValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +EnumValueReader::readFromJson(const rapidjson::Value& value) const { + EnumValueJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +EnumValueReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ClassJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3189,12 +5428,45 @@ CesiumJsonReader::IJsonHandler* ClassJsonHandler::readObjectKeyClass( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ClassReader::ClassReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& ClassReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& ClassReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ClassReader::readFromJson(const gsl::span& data) const { + ClassJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ClassReader::readFromJson(const rapidjson::Value& value) const { + ClassJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ClassReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ClassPropertyJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3268,12 +5540,50 @@ ClassPropertyJsonHandler::readObjectKeyClassProperty( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ClassPropertyReader::ClassPropertyReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& ClassPropertyReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +ClassPropertyReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ClassPropertyReader::readFromJson( + const gsl::span& data) const { + ClassPropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ClassPropertyReader::readFromJson(const rapidjson::Value& value) const { + ClassPropertyJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ClassPropertyReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ModelJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3364,12 +5674,45 @@ CesiumJsonReader::IJsonHandler* ModelJsonHandler::readObjectKeyModel( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +ModelReader::ModelReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& ModelReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& ModelReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ModelReader::readFromJson(const gsl::span& data) const { + ModelJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ModelReader::readFromJson(const rapidjson::Value& value) const { + ModelJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ModelReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "TextureJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3412,12 +5755,45 @@ CesiumJsonReader::IJsonHandler* TextureJsonHandler::readObjectKeyTexture( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +TextureReader::TextureReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& TextureReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& TextureReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +TextureReader::readFromJson(const gsl::span& data) const { + TextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +TextureReader::readFromJson(const rapidjson::Value& value) const { + TextureJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +TextureReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "SkinJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3466,12 +5842,45 @@ CesiumJsonReader::IJsonHandler* SkinJsonHandler::readObjectKeySkin( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +SkinReader::SkinReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& SkinReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& SkinReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +SkinReader::readFromJson(const gsl::span& data) const { + SkinJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +SkinReader::readFromJson(const rapidjson::Value& value) const { + SkinJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +SkinReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "SceneJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3510,12 +5919,45 @@ CesiumJsonReader::IJsonHandler* SceneJsonHandler::readObjectKeyScene( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +SceneReader::SceneReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& SceneReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& SceneReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +SceneReader::readFromJson(const gsl::span& data) const { + SceneJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +SceneReader::readFromJson(const rapidjson::Value& value) const { + SceneJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +SceneReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "SamplerJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3564,12 +6006,45 @@ CesiumJsonReader::IJsonHandler* SamplerJsonHandler::readObjectKeySampler( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +SamplerReader::SamplerReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& SamplerReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& SamplerReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +SamplerReader::readFromJson(const gsl::span& data) const { + SamplerJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +SamplerReader::readFromJson(const rapidjson::Value& value) const { + SamplerJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +SamplerReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "NodeJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3633,12 +6108,45 @@ CesiumJsonReader::IJsonHandler* NodeJsonHandler::readObjectKeyNode( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +NodeReader::NodeReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& NodeReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& NodeReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +NodeReader::readFromJson(const gsl::span& data) const { + NodeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +NodeReader::readFromJson(const rapidjson::Value& value) const { + NodeJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +NodeReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "MeshJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3681,12 +6189,45 @@ CesiumJsonReader::IJsonHandler* MeshJsonHandler::readObjectKeyMesh( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +MeshReader::MeshReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& MeshReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& MeshReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +MeshReader::readFromJson(const gsl::span& data) const { + MeshJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +MeshReader::readFromJson(const rapidjson::Value& value) const { + MeshJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +MeshReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler handler( + this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "MeshPrimitiveJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3739,12 +6280,50 @@ MeshPrimitiveJsonHandler::readObjectKeyMeshPrimitive( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +MeshPrimitiveReader::MeshPrimitiveReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& MeshPrimitiveReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +MeshPrimitiveReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +MeshPrimitiveReader::readFromJson( + const gsl::span& data) const { + MeshPrimitiveJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +MeshPrimitiveReader::readFromJson(const rapidjson::Value& value) const { + MeshPrimitiveJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +MeshPrimitiveReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "MaterialJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3814,12 +6393,45 @@ CesiumJsonReader::IJsonHandler* MaterialJsonHandler::readObjectKeyMaterial( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +MaterialReader::MaterialReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& MaterialReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& MaterialReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +MaterialReader::readFromJson(const gsl::span& data) const { + MaterialJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +MaterialReader::readFromJson(const rapidjson::Value& value) const { + MaterialJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +MaterialReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "MaterialOcclusionTextureInfoJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3861,12 +6473,55 @@ CesiumJsonReader::IJsonHandler* MaterialOcclusionTextureInfoJsonHandler:: return this->readObjectKeyTextureInfo(objectType, str, *this->_pObject); } +MaterialOcclusionTextureInfoReader::MaterialOcclusionTextureInfoReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +MaterialOcclusionTextureInfoReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +MaterialOcclusionTextureInfoReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +MaterialOcclusionTextureInfoReader::readFromJson( + const gsl::span& data) const { + MaterialOcclusionTextureInfoJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +MaterialOcclusionTextureInfoReader::readFromJson( + const rapidjson::Value& value) const { + MaterialOcclusionTextureInfoJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +MaterialOcclusionTextureInfoReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::MaterialOcclusionTextureInfo, + MaterialOcclusionTextureInfoJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "MaterialNormalTextureInfoJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3907,12 +6562,55 @@ MaterialNormalTextureInfoJsonHandler::readObjectKeyMaterialNormalTextureInfo( return this->readObjectKeyTextureInfo(objectType, str, *this->_pObject); } +MaterialNormalTextureInfoReader::MaterialNormalTextureInfoReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +MaterialNormalTextureInfoReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +MaterialNormalTextureInfoReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +MaterialNormalTextureInfoReader::readFromJson( + const gsl::span& data) const { + MaterialNormalTextureInfoJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +MaterialNormalTextureInfoReader::readFromJson( + const rapidjson::Value& value) const { + MaterialNormalTextureInfoJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +MaterialNormalTextureInfoReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::MaterialNormalTextureInfo, + MaterialNormalTextureInfoJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "MaterialPBRMetallicRoughnessJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -3979,12 +6677,55 @@ CesiumJsonReader::IJsonHandler* MaterialPBRMetallicRoughnessJsonHandler:: return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +MaterialPBRMetallicRoughnessReader::MaterialPBRMetallicRoughnessReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +MaterialPBRMetallicRoughnessReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +MaterialPBRMetallicRoughnessReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +MaterialPBRMetallicRoughnessReader::readFromJson( + const gsl::span& data) const { + MaterialPBRMetallicRoughnessJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +MaterialPBRMetallicRoughnessReader::readFromJson( + const rapidjson::Value& value) const { + MaterialPBRMetallicRoughnessJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +MaterialPBRMetallicRoughnessReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::MaterialPBRMetallicRoughness, + MaterialPBRMetallicRoughnessJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "ImageJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4030,12 +6771,45 @@ CesiumJsonReader::IJsonHandler* ImageJsonHandler::readObjectKeyImage( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +ImageReader::ImageReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& ImageReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& ImageReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +ImageReader::readFromJson(const gsl::span& data) const { + ImageJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +ImageReader::readFromJson(const rapidjson::Value& value) const { + ImageJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +ImageReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "CameraJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4081,12 +6855,45 @@ CesiumJsonReader::IJsonHandler* CameraJsonHandler::readObjectKeyCamera( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +CameraReader::CameraReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& CameraReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& CameraReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +CameraReader::readFromJson(const gsl::span& data) const { + CameraJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +CameraReader::readFromJson(const rapidjson::Value& value) const { + CameraJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +CameraReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "CameraPerspectiveJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4136,12 +6943,52 @@ CameraPerspectiveJsonHandler::readObjectKeyCameraPerspective( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +CameraPerspectiveReader::CameraPerspectiveReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& CameraPerspectiveReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +CameraPerspectiveReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +CameraPerspectiveReader::readFromJson( + const gsl::span& data) const { + CameraPerspectiveJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +CameraPerspectiveReader::readFromJson(const rapidjson::Value& value) const { + CameraPerspectiveJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +CameraPerspectiveReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::CameraPerspective, + CameraPerspectiveJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "CameraOrthographicJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4191,12 +7038,52 @@ CameraOrthographicJsonHandler::readObjectKeyCameraOrthographic( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +CameraOrthographicReader::CameraOrthographicReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& CameraOrthographicReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +CameraOrthographicReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +CameraOrthographicReader::readFromJson( + const gsl::span& data) const { + CameraOrthographicJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +CameraOrthographicReader::readFromJson(const rapidjson::Value& value) const { + CameraOrthographicJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +CameraOrthographicReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::CameraOrthographic, + CameraOrthographicJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "BufferViewJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4248,12 +7135,47 @@ CesiumJsonReader::IJsonHandler* BufferViewJsonHandler::readObjectKeyBufferView( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +BufferViewReader::BufferViewReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& BufferViewReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +BufferViewReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +BufferViewReader::readFromJson(const gsl::span& data) const { + BufferViewJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +BufferViewReader::readFromJson(const rapidjson::Value& value) const { + BufferViewJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +BufferViewReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "BufferJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4296,12 +7218,45 @@ CesiumJsonReader::IJsonHandler* BufferJsonHandler::readObjectKeyBuffer( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +BufferReader::BufferReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& BufferReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& BufferReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +BufferReader::readFromJson(const gsl::span& data) const { + BufferJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +BufferReader::readFromJson(const rapidjson::Value& value) const { + BufferJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +BufferReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AssetJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4350,12 +7305,45 @@ CesiumJsonReader::IJsonHandler* AssetJsonHandler::readObjectKeyAsset( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AssetReader::AssetReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& AssetReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& AssetReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AssetReader::readFromJson(const gsl::span& data) const { + AssetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AssetReader::readFromJson(const rapidjson::Value& value) const { + AssetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AssetReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AnimationJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4398,12 +7386,46 @@ CesiumJsonReader::IJsonHandler* AnimationJsonHandler::readObjectKeyAnimation( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +AnimationReader::AnimationReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& AnimationReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& AnimationReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AnimationReader::readFromJson(const gsl::span& data) const { + AnimationJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AnimationReader::readFromJson(const rapidjson::Value& value) const { + AnimationJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AnimationReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AnimationSamplerJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4450,12 +7472,51 @@ AnimationSamplerJsonHandler::readObjectKeyAnimationSampler( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AnimationSamplerReader::AnimationSamplerReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& AnimationSamplerReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +AnimationSamplerReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AnimationSamplerReader::readFromJson( + const gsl::span& data) const { + AnimationSamplerJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AnimationSamplerReader::readFromJson(const rapidjson::Value& value) const { + AnimationSamplerJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AnimationSamplerReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::AnimationSampler, + AnimationSamplerJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AnimationChannelJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4499,12 +7560,51 @@ AnimationChannelJsonHandler::readObjectKeyAnimationChannel( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AnimationChannelReader::AnimationChannelReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& AnimationChannelReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +AnimationChannelReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AnimationChannelReader::readFromJson( + const gsl::span& data) const { + AnimationChannelJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AnimationChannelReader::readFromJson(const rapidjson::Value& value) const { + AnimationChannelJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AnimationChannelReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::AnimationChannel, + AnimationChannelJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AnimationChannelTargetJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4548,12 +7648,55 @@ AnimationChannelTargetJsonHandler::readObjectKeyAnimationChannelTarget( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AnimationChannelTargetReader::AnimationChannelTargetReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& +AnimationChannelTargetReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +AnimationChannelTargetReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AnimationChannelTargetReader::readFromJson( + const gsl::span& data) const { + AnimationChannelTargetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AnimationChannelTargetReader::readFromJson( + const rapidjson::Value& value) const { + AnimationChannelTargetJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult< + std::vector> +AnimationChannelTargetReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::AnimationChannelTarget, + AnimationChannelTargetJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AccessorJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4617,12 +7760,45 @@ CesiumJsonReader::IJsonHandler* AccessorJsonHandler::readObjectKeyAccessor( return this->readObjectKeyNamedObject(objectType, str, *this->_pObject); } +AccessorReader::AccessorReader() { registerExtensions(this->_options); } + +CesiumJsonReader::JsonReaderOptions& AccessorReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& AccessorReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AccessorReader::readFromJson(const gsl::span& data) const { + AccessorJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AccessorReader::readFromJson(const rapidjson::Value& value) const { + AccessorJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AccessorReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AccessorSparseJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4669,12 +7845,50 @@ AccessorSparseJsonHandler::readObjectKeyAccessorSparse( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AccessorSparseReader::AccessorSparseReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& AccessorSparseReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +AccessorSparseReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AccessorSparseReader::readFromJson( + const gsl::span& data) const { + AccessorSparseJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AccessorSparseReader::readFromJson(const rapidjson::Value& value) const { + AccessorSparseJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AccessorSparseReader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader:: + ArrayJsonHandler + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AccessorSparseValuesJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4718,12 +7932,52 @@ AccessorSparseValuesJsonHandler::readObjectKeyAccessorSparseValues( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AccessorSparseValuesReader::AccessorSparseValuesReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& AccessorSparseValuesReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +AccessorSparseValuesReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AccessorSparseValuesReader::readFromJson( + const gsl::span& data) const { + AccessorSparseValuesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AccessorSparseValuesReader::readFromJson(const rapidjson::Value& value) const { + AccessorSparseValuesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AccessorSparseValuesReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::AccessorSparseValues, + AccessorSparseValuesJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "AccessorSparseIndicesJsonHandler.h" +#include "registerExtensions.h" #include +#include +#include +#include #include #include @@ -4770,4 +8024,40 @@ AccessorSparseIndicesJsonHandler::readObjectKeyAccessorSparseIndices( return this->readObjectKeyExtensibleObject(objectType, str, *this->_pObject); } +AccessorSparseIndicesReader::AccessorSparseIndicesReader() { + registerExtensions(this->_options); +} + +CesiumJsonReader::JsonReaderOptions& AccessorSparseIndicesReader::getOptions() { + return this->_options; +} + +const CesiumJsonReader::JsonReaderOptions& +AccessorSparseIndicesReader::getOptions() const { + return this->_options; +} + +CesiumJsonReader::ReadJsonResult +AccessorSparseIndicesReader::readFromJson( + const gsl::span& data) const { + AccessorSparseIndicesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); +} + +CesiumJsonReader::ReadJsonResult +AccessorSparseIndicesReader::readFromJson(const rapidjson::Value& value) const { + AccessorSparseIndicesJsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + +CesiumJsonReader::ReadJsonResult> +AccessorSparseIndicesReader::readArrayFromJson( + const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler< + CesiumGltf::AccessorSparseIndices, + AccessorSparseIndicesJsonHandler> + handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); +} + } // namespace CesiumGltfReader diff --git a/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h b/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h index c640ff1c6..1e193eb6c 100644 --- a/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h +++ b/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h @@ -9,12 +9,14 @@ namespace CesiumJsonReader { -class IExtensionJsonHandler : public IJsonHandler { +class IExtensionJsonHandler { public: + virtual ~IExtensionJsonHandler() noexcept = 0 {} virtual void reset( IJsonHandler* pParentHandler, CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) = 0; + virtual IJsonHandler& getHandler() = 0; }; } // namespace CesiumJsonReader diff --git a/CesiumJsonReader/src/ExtensionsJsonHandler.cpp b/CesiumJsonReader/src/ExtensionsJsonHandler.cpp index 2b3ef0e28..18535961a 100644 --- a/CesiumJsonReader/src/ExtensionsJsonHandler.cpp +++ b/CesiumJsonReader/src/ExtensionsJsonHandler.cpp @@ -21,7 +21,7 @@ ExtensionsJsonHandler::readObjectKey(const std::string_view& str) { this->_context.createExtensionHandler(str, this->_objectType); if (this->_currentExtensionHandler) { this->_currentExtensionHandler->reset(this, *this->_pObject, str); - return this->_currentExtensionHandler.get(); + return &this->_currentExtensionHandler->getHandler(); } else { return this->ignoreAndContinue(); } diff --git a/CesiumJsonReader/src/JsonReaderOptions.cpp b/CesiumJsonReader/src/JsonReaderOptions.cpp index ad894ba0c..ead57754d 100644 --- a/CesiumJsonReader/src/JsonReaderOptions.cpp +++ b/CesiumJsonReader/src/JsonReaderOptions.cpp @@ -25,6 +25,8 @@ class AnyExtensionJsonHandler : public JsonObjectJsonHandler, &std::any_cast(value)); } + virtual IJsonHandler& getHandler() override { return *this; } + virtual IJsonHandler* readNull() override { return JsonObjectJsonHandler::readNull(); }; diff --git a/tools/generate-classes/NameFormatters.js b/tools/generate-classes/NameFormatters.js index 5cafe07d5..4a2a49516 100644 --- a/tools/generate-classes/NameFormatters.js +++ b/tools/generate-classes/NameFormatters.js @@ -34,7 +34,7 @@ const NameFormatters = { } }, - getReaderIncludeFromName: function getReaderIncludeFromName( + getJsonHandlerIncludeFromName: function getJsonHandlerIncludeFromName( name, readerNamespace ) { @@ -54,7 +54,7 @@ const NameFormatters = { } }, - getReaderName: function getReaderName(name, readerNamespace) { + getJsonHandlerName: function getJsonHandlerName(name, readerNamespace) { const pieces = name.match(qualifiedTypeNameRegex); if (pieces && pieces.groups && pieces.groups.namespace) { const namespace = NameFormatters.getReaderNamespace( diff --git a/tools/generate-classes/generate.js b/tools/generate-classes/generate.js index cce3b7720..9037a4b1e 100644 --- a/tools/generate-classes/generate.js +++ b/tools/generate-classes/generate.js @@ -122,39 +122,42 @@ function generate(options, schema, writers) { ); fs.writeFileSync(headerOutputPath, unindent(header), "utf-8"); - let readerHeaders = lodash.uniq([ - NameFormatters.getReaderIncludeFromName(base, readerNamespace), + let jsonHandlerHeaders = lodash.uniq([ + NameFormatters.getJsonHandlerIncludeFromName(base, readerNamespace), `<${namespace}/${name}.h>`, ...lodash.flatten(properties.map((property) => property.readerHeaders)), ]); // Prevent header from including itself for recursive types like Tile - readerHeaders = readerHeaders.filter((readerHeader) => { + jsonHandlerHeaders = jsonHandlerHeaders.filter((readerHeader) => { return readerHeader !== `"${name}JsonHandler.h"`; }); - readerHeaders.sort(); + jsonHandlerHeaders.sort(); const readerLocalTypes = lodash.uniq( lodash.flatten(properties.map((property) => property.readerLocalTypes)) ); - const baseReader = NameFormatters.getReaderName(base, readerNamespace); + const baseJsonHandler = NameFormatters.getJsonHandlerName( + base, + readerNamespace + ); // prettier-ignore - const readerHeader = ` + const jsonHandlerHeader = ` // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #pragma once - ${readerHeaders.map((header) => `#include ${header}`).join("\n")} + ${jsonHandlerHeaders.map((header) => `#include ${header}`).join("\n")} namespace CesiumJsonReader { class JsonReaderOptions; } namespace ${readerNamespace} { - class ${name}JsonHandler : public ${baseReader}${thisConfig.extensionName ? `, public CesiumJsonReader::IExtensionJsonHandler` : ""} { + class ${name}JsonHandler : public ${baseJsonHandler}${thisConfig.extensionName ? `, public CesiumJsonReader::IExtensionJsonHandler` : ""} { public: using ValueType = ${namespace}::${name}; @@ -168,45 +171,7 @@ function generate(options, schema, writers) { ${thisConfig.extensionName ? ` virtual void reset(IJsonHandler* pParentHandler, CesiumUtility::ExtensibleObject& o, const std::string_view& extensionName) override; - virtual IJsonHandler* readNull() override { - return ${baseReader}::readNull(); - }; - virtual IJsonHandler* readBool(bool b) override { - return ${baseReader}::readBool(b); - } - virtual IJsonHandler* readInt32(int32_t i) override { - return ${baseReader}::readInt32(i); - } - virtual IJsonHandler* readUint32(uint32_t i) override { - return ${baseReader}::readUint32(i); - } - virtual IJsonHandler* readInt64(int64_t i) override { - return ${baseReader}::readInt64(i); - } - virtual IJsonHandler* readUint64(uint64_t i) override { - return ${baseReader}::readUint64(i); - } - virtual IJsonHandler* readDouble(double d) override { - return ${baseReader}::readDouble(d); - } - virtual IJsonHandler* readString(const std::string_view& str) override { - return ${baseReader}::readString(str); - } - virtual IJsonHandler* readObjectStart() override { - return ${baseReader}::readObjectStart(); - } - virtual IJsonHandler* readObjectEnd() override { - return ${baseReader}::readObjectEnd(); - } - virtual IJsonHandler* readArrayStart() override { - return ${baseReader}::readArrayStart(); - } - virtual IJsonHandler* readArrayEnd() override { - return ${baseReader}::readArrayEnd(); - } - virtual void reportWarning(const std::string& warning, std::vector&& context = std::vector()) override { - ${baseReader}::reportWarning(warning, std::move(context)); - } + virtual IJsonHandler& getHandler() override { return *this; } ` : ""} protected: @@ -225,25 +190,113 @@ function generate(options, schema, writers) { } `; - const readerHeaderOutputDir = path.join(readerOutputDir, "generated", "src"); + const jsonHandlerHeaderOutputDir = path.join( + readerOutputDir, + "generated", + "src" + ); + fs.mkdirSync(jsonHandlerHeaderOutputDir, { recursive: true }); + + const jsonHandlerHeaderOutputPath = path.join( + jsonHandlerHeaderOutputDir, + name + "JsonHandler.h" + ); + fs.writeFileSync( + jsonHandlerHeaderOutputPath, + unindent(jsonHandlerHeader), + "utf-8" + ); + + const readerHeader = ` + // This file was generated by generate-classes. + // DO NOT EDIT THIS FILE! + #pragma once + + #include <${readerNamespace}/Library.h> + #include + #include + #include <${namespace}/${name}.h> + #include + #include + #include + + namespace ${namespace} { + struct ${name}; + } + + namespace ${readerNamespace} { + + class ${readerNamespace.toUpperCase()}_API ${name}Reader { + public: + /** + * @brief Constructs a new instance. + */ + ${name}Reader(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + CesiumJsonReader::JsonReaderOptions& getOptions(); + + /** + * @brief Gets the options controlling how the JSON is read. + */ + const CesiumJsonReader::JsonReaderOptions& getOptions() const; + + /** + * @brief Reads an instance of ${name} from a byte buffer. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult<${namespace}::${name}> readFromJson(const gsl::span& data) const; + + /** + * @brief Reads an instance of ${name} from a rapidJson::Value. + * + * @param data The buffer from which to read the instance. + * @return The result of reading the instance. + */ + CesiumJsonReader::ReadJsonResult<${namespace}::${name}> readFromJson(const rapidjson::Value& value) const; + + /** + * @brief Reads an array of instances of ${name} from a rapidJson::Value. + * + * @param data The buffer from which to read the array of instances. + * @return The result of reading the array of instances. + */ + CesiumJsonReader::ReadJsonResult> readArrayFromJson(const rapidjson::Value& value) const; + + private: + CesiumJsonReader::JsonReaderOptions _options; + }; + + } // namespace ${readerNamespace}`; + + const readerHeaderOutputDir = path.join( + readerOutputDir, + "generated", + "include", + readerNamespace + ); fs.mkdirSync(readerHeaderOutputDir, { recursive: true }); const readerHeaderOutputPath = path.join( readerHeaderOutputDir, - name + "JsonHandler.h" + name + "Reader.h" ); fs.writeFileSync(readerHeaderOutputPath, unindent(readerHeader), "utf-8"); - const readerLocalTypesImpl = lodash.uniq( + const jsonHandlerLocalTypesImpl = lodash.uniq( lodash.flatten(properties.map((property) => property.readerLocalTypesImpl)) ); - const readerHeadersImpl = lodash.uniq([ + const jsonHandlerHeadersImpl = lodash.uniq([ ...lodash.flatten(properties.map((property) => property.readerHeadersImpl)), ]); - readerHeadersImpl.sort(); + jsonHandlerHeadersImpl.sort(); - function generateReaderOptionsInitializerList(properties, varName) { + function generateJsonHandlerOptionsInitializerList(properties, varName) { const initializerList = properties .filter((p) => p.readerType.toLowerCase().indexOf("jsonhandler") != -1) .map( @@ -256,22 +309,26 @@ function generate(options, schema, writers) { return initializerList == "" ? "" : ", " + initializerList; } // prettier-ignore - const readerImpl = ` + const jsonHandlerImpl = ` // This file was generated by generate-classes. // DO NOT EDIT THIS FILE! #include "${name}JsonHandler.h" #include <${namespace}/${name}.h> - ${readerHeadersImpl.map((header) => `#include ${header}`).join("\n")} + ${jsonHandlerHeadersImpl.map((header) => `#include ${header}`).join("\n")} + #include <${readerNamespace}/${name}Reader.h> + #include + #include + #include "registerExtensions.h" #include #include namespace ${readerNamespace} { - ${name}JsonHandler::${name}JsonHandler(const CesiumJsonReader::JsonReaderOptions& options) noexcept : ${baseReader}(options)${generateReaderOptionsInitializerList(properties, 'options')} {} + ${name}JsonHandler::${name}JsonHandler(const CesiumJsonReader::JsonReaderOptions& options) noexcept : ${baseJsonHandler}(options)${generateJsonHandlerOptionsInitializerList(properties, 'options')} {} void ${name}JsonHandler::reset(CesiumJsonReader::IJsonHandler* pParentHandler, ${namespace}::${name}* pObject) { - ${baseReader}::reset(pParentHandler, pObject); + ${baseJsonHandler}::reset(pParentHandler, pObject); this->_pObject = pObject; } @@ -305,7 +362,32 @@ function generate(options, schema, writers) { return this->readObjectKey${NameFormatters.removeNamespace(base)}(objectType, str, *this->_pObject); } - ${indent(readerLocalTypesImpl.join("\n\n"), 8)} + ${name}Reader::${name}Reader() { registerExtensions(this->_options); } + + CesiumJsonReader::JsonReaderOptions& ${name}Reader::getOptions() { + return this->_options; + } + + const CesiumJsonReader::JsonReaderOptions& ${name}Reader::getOptions() const { + return this->_options; + } + + CesiumJsonReader::ReadJsonResult<${namespace}::${name}> ${name}Reader::readFromJson(const gsl::span& data) const { + ${name}JsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(data, handler); + } + + CesiumJsonReader::ReadJsonResult<${namespace}::${name}> ${name}Reader::readFromJson(const rapidjson::Value& value) const { + ${name}JsonHandler handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); + } + + CesiumJsonReader::ReadJsonResult> ${name}Reader::readArrayFromJson(const rapidjson::Value& value) const { + CesiumJsonReader::ArrayJsonHandler<${namespace}::${name}, ${name}JsonHandler> handler(this->_options); + return CesiumJsonReader::JsonReader::readJson(value, handler); + } + + ${indent(jsonHandlerLocalTypesImpl.join("\n\n"), 8)} } // namespace ${readerNamespace} `; @@ -427,16 +509,24 @@ function generate(options, schema, writers) { if (options.oneHandlerFile) { const readerSourceOutputPath = path.join( - readerHeaderOutputDir, + jsonHandlerHeaderOutputDir, "GeneratedJsonHandlers.cpp" ); - fs.appendFileSync(readerSourceOutputPath, unindent(readerImpl), "utf-8"); + fs.appendFileSync( + readerSourceOutputPath, + unindent(jsonHandlerImpl), + "utf-8" + ); } else { const readerSourceOutputPath = path.join( - readerHeaderOutputDir, + jsonHandlerHeaderOutputDir, name + "JsonHandler.cpp" ); - fs.writeFileSync(readerSourceOutputPath, unindent(readerImpl), "utf-8"); + fs.writeFileSync( + readerSourceOutputPath, + unindent(jsonHandlerImpl), + "utf-8" + ); } const schemas = lodash.flatten( diff --git a/tools/generate-classes/resolveProperty.js b/tools/generate-classes/resolveProperty.js index f39f817e2..66e70f776 100644 --- a/tools/generate-classes/resolveProperty.js +++ b/tools/generate-classes/resolveProperty.js @@ -115,9 +115,9 @@ function resolveProperty( NameFormatters.getIncludeFromName(type, namespace), ...(makeOptional ? [""] : []), ], - readerType: NameFormatters.getReaderName(type, readerNamespace), + readerType: NameFormatters.getJsonHandlerName(type, readerNamespace), readerHeaders: [ - NameFormatters.getReaderIncludeFromName(type, readerNamespace), + NameFormatters.getJsonHandlerIncludeFromName(type, readerNamespace), ], schemas: [schema], }; @@ -198,9 +198,9 @@ function resolveProperty( NameFormatters.getIncludeFromName(type, namespace), ...(makeOptional ? [""] : []), ], - readerType: NameFormatters.getReaderName(type, readerNamespace), + readerType: NameFormatters.getJsonHandlerName(type, readerNamespace), readerHeaders: [ - NameFormatters.getReaderIncludeFromName(type, readerNamespace), + NameFormatters.getJsonHandlerIncludeFromName(type, readerNamespace), ], schemas: [itemSchema], }; From cfaaf4d737fc9d3bd62b2f0fb35201d418822e8f Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Tue, 22 Aug 2023 22:23:04 +1000 Subject: [PATCH 09/29] Add doc for readers. --- .../generated/include/Cesium3DTilesReader/AssetReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/AvailabilityReader.h | 3 +++ .../include/Cesium3DTilesReader/BoundingVolumeReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/BufferReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/BufferViewReader.h | 3 +++ .../include/Cesium3DTilesReader/ClassPropertyReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/ClassReader.h | 3 +++ .../include/Cesium3DTilesReader/ClassStatisticsReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/ContentReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/EnumReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/EnumValueReader.h | 3 +++ .../Extension3dTilesBoundingVolumeS2Reader.h | 3 +++ .../include/Cesium3DTilesReader/GroupMetadataReader.h | 3 +++ .../include/Cesium3DTilesReader/ImplicitTilingReader.h | 3 +++ .../include/Cesium3DTilesReader/MetadataEntityReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/PropertiesReader.h | 3 +++ .../include/Cesium3DTilesReader/PropertyStatisticsReader.h | 3 +++ .../include/Cesium3DTilesReader/PropertyTablePropertyReader.h | 3 +++ .../include/Cesium3DTilesReader/PropertyTableReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/SchemaReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/StatisticsReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/SubtreeReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/SubtreesReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/TileReader.h | 3 +++ .../generated/include/Cesium3DTilesReader/TilesetReader.h | 3 +++ .../generated/include/CesiumGltfReader/AccessorReader.h | 3 +++ .../include/CesiumGltfReader/AccessorSparseIndicesReader.h | 3 +++ .../generated/include/CesiumGltfReader/AccessorSparseReader.h | 3 +++ .../include/CesiumGltfReader/AccessorSparseValuesReader.h | 3 +++ .../include/CesiumGltfReader/AnimationChannelReader.h | 3 +++ .../include/CesiumGltfReader/AnimationChannelTargetReader.h | 3 +++ .../generated/include/CesiumGltfReader/AnimationReader.h | 3 +++ .../include/CesiumGltfReader/AnimationSamplerReader.h | 3 +++ .../generated/include/CesiumGltfReader/AssetReader.h | 3 +++ .../generated/include/CesiumGltfReader/BufferReader.h | 3 +++ .../generated/include/CesiumGltfReader/BufferViewReader.h | 3 +++ .../include/CesiumGltfReader/CameraOrthographicReader.h | 3 +++ .../include/CesiumGltfReader/CameraPerspectiveReader.h | 3 +++ .../generated/include/CesiumGltfReader/CameraReader.h | 3 +++ .../generated/include/CesiumGltfReader/ClassPropertyReader.h | 3 +++ .../generated/include/CesiumGltfReader/ClassReader.h | 3 +++ .../generated/include/CesiumGltfReader/ClassStatisticsReader.h | 3 +++ .../generated/include/CesiumGltfReader/EnumReader.h | 3 +++ .../generated/include/CesiumGltfReader/EnumValueReader.h | 3 +++ .../ExtensionBufferExtMeshoptCompressionReader.h | 3 +++ .../ExtensionBufferViewExtMeshoptCompressionReader.h | 3 +++ .../include/CesiumGltfReader/ExtensionCesiumRTCReader.h | 3 +++ .../include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h | 3 +++ .../ExtensionExtInstanceFeaturesFeatureIdReader.h | 3 +++ .../CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h | 3 +++ .../CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h | 3 +++ .../ExtensionExtMeshFeaturesFeatureIdTextureReader.h | 3 +++ .../include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h | 3 +++ .../CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h | 3 +++ .../ExtensionExtStructuralMetadataClassPropertyReader.h | 3 +++ .../ExtensionExtStructuralMetadataClassReader.h | 3 +++ .../ExtensionExtStructuralMetadataEnumReader.h | 3 +++ .../ExtensionExtStructuralMetadataEnumValueReader.h | 3 +++ ...nsionExtStructuralMetadataPropertyAttributePropertyReader.h | 3 +++ .../ExtensionExtStructuralMetadataPropertyAttributeReader.h | 3 +++ ...ExtensionExtStructuralMetadataPropertyTablePropertyReader.h | 3 +++ .../ExtensionExtStructuralMetadataPropertyTableReader.h | 3 +++ ...tensionExtStructuralMetadataPropertyTexturePropertyReader.h | 3 +++ .../ExtensionExtStructuralMetadataPropertyTextureReader.h | 3 +++ .../ExtensionExtStructuralMetadataSchemaReader.h | 3 +++ .../CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h | 3 +++ .../CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h | 3 +++ .../include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h | 3 +++ .../CesiumGltfReader/ExtensionKhrTextureTransformReader.h | 3 +++ .../ExtensionMeshPrimitiveExtFeatureMetadataReader.h | 3 +++ .../ExtensionMeshPrimitiveExtStructuralMetadataReader.h | 3 +++ ...nsionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h | 3 +++ .../ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h | 3 +++ .../CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h | 3 +++ .../ExtensionModelExtStructuralMetadataReader.h | 3 +++ .../ExtensionModelKhrMaterialsVariantsReader.h | 3 +++ .../ExtensionModelKhrMaterialsVariantsValueReader.h | 3 +++ .../CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h | 3 +++ .../ExtensionModelMaxarMeshVariantsValueReader.h | 3 +++ .../ExtensionNodeMaxarMeshVariantsMappingsValueReader.h | 3 +++ .../CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h | 3 +++ .../include/CesiumGltfReader/ExtensionTextureWebpReader.h | 3 +++ .../include/CesiumGltfReader/FeatureIDAttributeReader.h | 3 +++ .../include/CesiumGltfReader/FeatureIDTextureReader.h | 3 +++ .../generated/include/CesiumGltfReader/FeatureIDsReader.h | 3 +++ .../include/CesiumGltfReader/FeatureTablePropertyReader.h | 3 +++ .../generated/include/CesiumGltfReader/FeatureTableReader.h | 3 +++ .../generated/include/CesiumGltfReader/FeatureTextureReader.h | 3 +++ .../generated/include/CesiumGltfReader/ImageReader.h | 3 +++ .../include/CesiumGltfReader/MaterialNormalTextureInfoReader.h | 3 +++ .../CesiumGltfReader/MaterialOcclusionTextureInfoReader.h | 3 +++ .../CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h | 3 +++ .../generated/include/CesiumGltfReader/MaterialReader.h | 3 +++ .../generated/include/CesiumGltfReader/MeshPrimitiveReader.h | 3 +++ .../generated/include/CesiumGltfReader/MeshReader.h | 3 +++ .../generated/include/CesiumGltfReader/ModelReader.h | 3 +++ .../generated/include/CesiumGltfReader/NodeReader.h | 3 +++ .../include/CesiumGltfReader/PropertyStatisticsReader.h | 3 +++ .../generated/include/CesiumGltfReader/SamplerReader.h | 3 +++ .../generated/include/CesiumGltfReader/SceneReader.h | 3 +++ .../generated/include/CesiumGltfReader/SchemaReader.h | 3 +++ .../generated/include/CesiumGltfReader/SkinReader.h | 3 +++ .../generated/include/CesiumGltfReader/StatisticsReader.h | 3 +++ .../generated/include/CesiumGltfReader/TextureAccessorReader.h | 3 +++ .../generated/include/CesiumGltfReader/TextureInfoReader.h | 3 +++ .../generated/include/CesiumGltfReader/TextureReader.h | 3 +++ tools/generate-classes/generate.js | 3 +++ 107 files changed, 321 insertions(+) diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h index 5e0ad3faa..9abdcd5d5 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AssetReader.h @@ -18,6 +18,9 @@ struct Asset; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Asset} instances from JSON. + */ class CESIUM3DTILESREADER_API AssetReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h index e746647aa..e3cd4845f 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/AvailabilityReader.h @@ -18,6 +18,9 @@ struct Availability; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Availability} instances from JSON. + */ class CESIUM3DTILESREADER_API AvailabilityReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h index 51266d2d3..7de46c70e 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BoundingVolumeReader.h @@ -18,6 +18,9 @@ struct BoundingVolume; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link BoundingVolume} instances from JSON. + */ class CESIUM3DTILESREADER_API BoundingVolumeReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h index 70ae16e3b..7a735cca7 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferReader.h @@ -18,6 +18,9 @@ struct Buffer; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Buffer} instances from JSON. + */ class CESIUM3DTILESREADER_API BufferReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h index b06617adb..3813e1a97 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/BufferViewReader.h @@ -18,6 +18,9 @@ struct BufferView; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link BufferView} instances from JSON. + */ class CESIUM3DTILESREADER_API BufferViewReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h index 632d5ac80..20d68bfcf 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassPropertyReader.h @@ -18,6 +18,9 @@ struct ClassProperty; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link ClassProperty} instances from JSON. + */ class CESIUM3DTILESREADER_API ClassPropertyReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h index 5ee9c0194..c3020b056 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassReader.h @@ -18,6 +18,9 @@ struct Class; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Class} instances from JSON. + */ class CESIUM3DTILESREADER_API ClassReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h index 69714777f..dd11e3a32 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ClassStatisticsReader.h @@ -18,6 +18,9 @@ struct ClassStatistics; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link ClassStatistics} instances from JSON. + */ class CESIUM3DTILESREADER_API ClassStatisticsReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h index 519914dcd..deddd1921 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ContentReader.h @@ -18,6 +18,9 @@ struct Content; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Content} instances from JSON. + */ class CESIUM3DTILESREADER_API ContentReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h index 59be8c989..7ea040745 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumReader.h @@ -18,6 +18,9 @@ struct Enum; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Enum} instances from JSON. + */ class CESIUM3DTILESREADER_API EnumReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h index fb88d8e44..96ef662d0 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/EnumValueReader.h @@ -18,6 +18,9 @@ struct EnumValue; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link EnumValue} instances from JSON. + */ class CESIUM3DTILESREADER_API EnumValueReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h index 328f48714..e5dcb3560 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/Extension3dTilesBoundingVolumeS2Reader.h @@ -18,6 +18,9 @@ struct Extension3dTilesBoundingVolumeS2; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Extension3dTilesBoundingVolumeS2} instances from JSON. + */ class CESIUM3DTILESREADER_API Extension3dTilesBoundingVolumeS2Reader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h index 0175b2e4a..60163eb62 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/GroupMetadataReader.h @@ -18,6 +18,9 @@ struct GroupMetadata; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link GroupMetadata} instances from JSON. + */ class CESIUM3DTILESREADER_API GroupMetadataReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h index 7bf251142..416c6442e 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/ImplicitTilingReader.h @@ -18,6 +18,9 @@ struct ImplicitTiling; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link ImplicitTiling} instances from JSON. + */ class CESIUM3DTILESREADER_API ImplicitTilingReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h index 8b2e3001c..d203c2795 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/MetadataEntityReader.h @@ -18,6 +18,9 @@ struct MetadataEntity; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link MetadataEntity} instances from JSON. + */ class CESIUM3DTILESREADER_API MetadataEntityReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h index 34a9db015..7e60dadc3 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertiesReader.h @@ -18,6 +18,9 @@ struct Properties; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Properties} instances from JSON. + */ class CESIUM3DTILESREADER_API PropertiesReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h index 75268cf23..dd1fc3737 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyStatisticsReader.h @@ -18,6 +18,9 @@ struct PropertyStatistics; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link PropertyStatistics} instances from JSON. + */ class CESIUM3DTILESREADER_API PropertyStatisticsReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h index b064b82a2..c67ed85d6 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTablePropertyReader.h @@ -18,6 +18,9 @@ struct PropertyTableProperty; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link PropertyTableProperty} instances from JSON. + */ class CESIUM3DTILESREADER_API PropertyTablePropertyReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h index 1610bc9d5..13ee8ab76 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/PropertyTableReader.h @@ -18,6 +18,9 @@ struct PropertyTable; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link PropertyTable} instances from JSON. + */ class CESIUM3DTILESREADER_API PropertyTableReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h index 6680c820a..b99ae26c2 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SchemaReader.h @@ -18,6 +18,9 @@ struct Schema; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Schema} instances from JSON. + */ class CESIUM3DTILESREADER_API SchemaReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h index 03c4c8ae6..808b52f03 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/StatisticsReader.h @@ -18,6 +18,9 @@ struct Statistics; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Statistics} instances from JSON. + */ class CESIUM3DTILESREADER_API StatisticsReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h index 285096a69..4d3d5c808 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreeReader.h @@ -18,6 +18,9 @@ struct Subtree; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Subtree} instances from JSON. + */ class CESIUM3DTILESREADER_API SubtreeReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h index 29da3eb2a..21a2bda57 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/SubtreesReader.h @@ -18,6 +18,9 @@ struct Subtrees; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Subtrees} instances from JSON. + */ class CESIUM3DTILESREADER_API SubtreesReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h index 370c7971d..96b083a27 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TileReader.h @@ -18,6 +18,9 @@ struct Tile; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Tile} instances from JSON. + */ class CESIUM3DTILESREADER_API TileReader { public: /** diff --git a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h index 56dc53bd2..aa066c793 100644 --- a/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h +++ b/Cesium3DTilesReader/generated/include/Cesium3DTilesReader/TilesetReader.h @@ -18,6 +18,9 @@ struct Tileset; namespace Cesium3DTilesReader { +/** + * @brief Reads {@link Tileset} instances from JSON. + */ class CESIUM3DTILESREADER_API TilesetReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h index 03e48111d..804f1d620 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorReader.h @@ -18,6 +18,9 @@ struct Accessor; namespace CesiumGltfReader { +/** + * @brief Reads {@link Accessor} instances from JSON. + */ class CESIUMGLTFREADER_API AccessorReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h index f7cda6278..64381e2a3 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseIndicesReader.h @@ -18,6 +18,9 @@ struct AccessorSparseIndices; namespace CesiumGltfReader { +/** + * @brief Reads {@link AccessorSparseIndices} instances from JSON. + */ class CESIUMGLTFREADER_API AccessorSparseIndicesReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h index 3c80ae661..d52c8261c 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseReader.h @@ -18,6 +18,9 @@ struct AccessorSparse; namespace CesiumGltfReader { +/** + * @brief Reads {@link AccessorSparse} instances from JSON. + */ class CESIUMGLTFREADER_API AccessorSparseReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h index 5fa6060a4..59f524297 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AccessorSparseValuesReader.h @@ -18,6 +18,9 @@ struct AccessorSparseValues; namespace CesiumGltfReader { +/** + * @brief Reads {@link AccessorSparseValues} instances from JSON. + */ class CESIUMGLTFREADER_API AccessorSparseValuesReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h index 7a7eba6c9..f1bc4e980 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelReader.h @@ -18,6 +18,9 @@ struct AnimationChannel; namespace CesiumGltfReader { +/** + * @brief Reads {@link AnimationChannel} instances from JSON. + */ class CESIUMGLTFREADER_API AnimationChannelReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h index 71a7e60f6..23b1ea78b 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationChannelTargetReader.h @@ -18,6 +18,9 @@ struct AnimationChannelTarget; namespace CesiumGltfReader { +/** + * @brief Reads {@link AnimationChannelTarget} instances from JSON. + */ class CESIUMGLTFREADER_API AnimationChannelTargetReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h index 2079961e3..db5c3c9c0 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationReader.h @@ -18,6 +18,9 @@ struct Animation; namespace CesiumGltfReader { +/** + * @brief Reads {@link Animation} instances from JSON. + */ class CESIUMGLTFREADER_API AnimationReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h index 0be957233..0ebf280a6 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AnimationSamplerReader.h @@ -18,6 +18,9 @@ struct AnimationSampler; namespace CesiumGltfReader { +/** + * @brief Reads {@link AnimationSampler} instances from JSON. + */ class CESIUMGLTFREADER_API AnimationSamplerReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h index b44103a8d..9df7561a8 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/AssetReader.h @@ -18,6 +18,9 @@ struct Asset; namespace CesiumGltfReader { +/** + * @brief Reads {@link Asset} instances from JSON. + */ class CESIUMGLTFREADER_API AssetReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h index 226c3b582..eb4998d01 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferReader.h @@ -18,6 +18,9 @@ struct Buffer; namespace CesiumGltfReader { +/** + * @brief Reads {@link Buffer} instances from JSON. + */ class CESIUMGLTFREADER_API BufferReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h index 494e1cd8f..af00165cb 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/BufferViewReader.h @@ -18,6 +18,9 @@ struct BufferView; namespace CesiumGltfReader { +/** + * @brief Reads {@link BufferView} instances from JSON. + */ class CESIUMGLTFREADER_API BufferViewReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h index f7fb6c42f..9c8527379 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraOrthographicReader.h @@ -18,6 +18,9 @@ struct CameraOrthographic; namespace CesiumGltfReader { +/** + * @brief Reads {@link CameraOrthographic} instances from JSON. + */ class CESIUMGLTFREADER_API CameraOrthographicReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h index 384a8fa2d..0c17d7113 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraPerspectiveReader.h @@ -18,6 +18,9 @@ struct CameraPerspective; namespace CesiumGltfReader { +/** + * @brief Reads {@link CameraPerspective} instances from JSON. + */ class CESIUMGLTFREADER_API CameraPerspectiveReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h index a98f5d62c..39a2facd2 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/CameraReader.h @@ -18,6 +18,9 @@ struct Camera; namespace CesiumGltfReader { +/** + * @brief Reads {@link Camera} instances from JSON. + */ class CESIUMGLTFREADER_API CameraReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h index 7e7b8eb1b..162c5ff96 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassPropertyReader.h @@ -18,6 +18,9 @@ struct ClassProperty; namespace CesiumGltfReader { +/** + * @brief Reads {@link ClassProperty} instances from JSON. + */ class CESIUMGLTFREADER_API ClassPropertyReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h index 06063a254..852ce802a 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassReader.h @@ -18,6 +18,9 @@ struct Class; namespace CesiumGltfReader { +/** + * @brief Reads {@link Class} instances from JSON. + */ class CESIUMGLTFREADER_API ClassReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h index c28d44c67..746b16067 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ClassStatisticsReader.h @@ -18,6 +18,9 @@ struct ClassStatistics; namespace CesiumGltfReader { +/** + * @brief Reads {@link ClassStatistics} instances from JSON. + */ class CESIUMGLTFREADER_API ClassStatisticsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h index f2b7c1b02..388273a98 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumReader.h @@ -18,6 +18,9 @@ struct Enum; namespace CesiumGltfReader { +/** + * @brief Reads {@link Enum} instances from JSON. + */ class CESIUMGLTFREADER_API EnumReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h index e8d587abe..149c8cf47 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/EnumValueReader.h @@ -18,6 +18,9 @@ struct EnumValue; namespace CesiumGltfReader { +/** + * @brief Reads {@link EnumValue} instances from JSON. + */ class CESIUMGLTFREADER_API EnumValueReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h index c1078ed5e..32d905978 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferExtMeshoptCompressionReader.h @@ -18,6 +18,9 @@ struct ExtensionBufferExtMeshoptCompression; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionBufferExtMeshoptCompression} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionBufferExtMeshoptCompressionReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h index 9e8592426..da7ff77c8 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionBufferViewExtMeshoptCompressionReader.h @@ -18,6 +18,9 @@ struct ExtensionBufferViewExtMeshoptCompression; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionBufferViewExtMeshoptCompression} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionBufferViewExtMeshoptCompressionReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h index 369bba9cb..f524c7906 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumRTCReader.h @@ -18,6 +18,9 @@ struct ExtensionCesiumRTC; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionCesiumRTC} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionCesiumRTCReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h index 089890b00..b9df268d2 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionCesiumTileEdgesReader.h @@ -18,6 +18,9 @@ struct ExtensionCesiumTileEdges; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionCesiumTileEdges} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionCesiumTileEdgesReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h index 96beedab1..a3fa2919b 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesFeatureIdReader.h @@ -18,6 +18,9 @@ struct ExtensionExtInstanceFeaturesFeatureId; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtInstanceFeaturesFeatureId} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtInstanceFeaturesFeatureIdReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h index 43763102c..88cae65fa 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtInstanceFeaturesReader.h @@ -18,6 +18,9 @@ struct ExtensionExtInstanceFeatures; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtInstanceFeatures} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtInstanceFeaturesReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h index 5bc9b0443..e3f51fd79 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdReader.h @@ -18,6 +18,9 @@ struct ExtensionExtMeshFeaturesFeatureId; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtMeshFeaturesFeatureId} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtMeshFeaturesFeatureIdReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h index 273ae1a0a..36b324965 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesFeatureIdTextureReader.h @@ -18,6 +18,9 @@ struct ExtensionExtMeshFeaturesFeatureIdTexture; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtMeshFeaturesFeatureIdTexture} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtMeshFeaturesFeatureIdTextureReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h index 55dd544d2..8d369d631 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshFeaturesReader.h @@ -18,6 +18,9 @@ struct ExtensionExtMeshFeatures; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtMeshFeatures} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtMeshFeaturesReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h index f7d26c075..507301ac9 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtMeshGpuInstancingReader.h @@ -18,6 +18,9 @@ struct ExtensionExtMeshGpuInstancing; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtMeshGpuInstancing} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtMeshGpuInstancingReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h index dacf03a40..f1ba1e071 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassPropertyReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataClassProperty; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataClassProperty} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataClassPropertyReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h index 75c1a2dc2..cbdac90cd 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataClassReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataClass; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataClass} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataClassReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h index 4eb19c05a..e64155cf9 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataEnum; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataEnum} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataEnumReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h index cb261c358..4b960a26c 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataEnumValueReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataEnumValue; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataEnumValue} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataEnumValueReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h index 9c339b405..bcbc21953 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributePropertyReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataPropertyAttributeProperty; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataPropertyAttributeProperty} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyAttributePropertyReader { public: diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h index 4bc012c7b..ae043c249 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyAttributeReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataPropertyAttribute; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataPropertyAttribute} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyAttributeReader { public: diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h index fb3a8dec9..7a9d09c39 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTablePropertyReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataPropertyTableProperty; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataPropertyTableProperty} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyTablePropertyReader { public: diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h index 0f013603d..7c0407433 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTableReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataPropertyTable; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataPropertyTable} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyTableReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h index 49d864d3f..33d2db6d5 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTexturePropertyReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataPropertyTextureProperty; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataPropertyTextureProperty} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyTexturePropertyReader { public: diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h index 0fb2e4a06..24e512639 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataPropertyTextureReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataPropertyTexture; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataPropertyTexture} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataPropertyTextureReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h index 54d022826..1ee96e3d8 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionExtStructuralMetadataSchemaReader.h @@ -18,6 +18,9 @@ struct ExtensionExtStructuralMetadataSchema; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionExtStructuralMetadataSchema} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionExtStructuralMetadataSchemaReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h index d798d8154..51ac2ee70 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrDracoMeshCompressionReader.h @@ -18,6 +18,9 @@ struct ExtensionKhrDracoMeshCompression; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionKhrDracoMeshCompression} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionKhrDracoMeshCompressionReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h index 643c529d8..43307034d 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrMaterialsUnlitReader.h @@ -18,6 +18,9 @@ struct ExtensionKhrMaterialsUnlit; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionKhrMaterialsUnlit} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionKhrMaterialsUnlitReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h index c5dcb9ac2..dcf213fe8 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureBasisuReader.h @@ -18,6 +18,9 @@ struct ExtensionKhrTextureBasisu; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionKhrTextureBasisu} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionKhrTextureBasisuReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h index 90ba7cdf0..7559901b5 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionKhrTextureTransformReader.h @@ -18,6 +18,9 @@ struct ExtensionKhrTextureTransform; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionKhrTextureTransform} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionKhrTextureTransformReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h index 465f37e5c..03d8de9ab 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtFeatureMetadataReader.h @@ -18,6 +18,9 @@ struct ExtensionMeshPrimitiveExtFeatureMetadata; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionMeshPrimitiveExtFeatureMetadata} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionMeshPrimitiveExtFeatureMetadataReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h index 328005207..09c94d295 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveExtStructuralMetadataReader.h @@ -18,6 +18,9 @@ struct ExtensionMeshPrimitiveExtStructuralMetadata; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionMeshPrimitiveExtStructuralMetadata} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionMeshPrimitiveExtStructuralMetadataReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h index 9ebfc2493..321da8d86 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader.h @@ -18,6 +18,9 @@ struct ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValueReader { public: diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h index 817f9d444..4bdfa1a06 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionMeshPrimitiveKhrMaterialsVariantsReader.h @@ -18,6 +18,9 @@ struct ExtensionMeshPrimitiveKhrMaterialsVariants; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionMeshPrimitiveKhrMaterialsVariants} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionMeshPrimitiveKhrMaterialsVariantsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h index cfdda0e1c..1ffdfe190 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtFeatureMetadataReader.h @@ -18,6 +18,9 @@ struct ExtensionModelExtFeatureMetadata; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionModelExtFeatureMetadata} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionModelExtFeatureMetadataReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h index 8cb1c1d85..b3aa0e002 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelExtStructuralMetadataReader.h @@ -18,6 +18,9 @@ struct ExtensionModelExtStructuralMetadata; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionModelExtStructuralMetadata} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionModelExtStructuralMetadataReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h index 3d04a7e16..72320b8db 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsReader.h @@ -18,6 +18,9 @@ struct ExtensionModelKhrMaterialsVariants; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionModelKhrMaterialsVariants} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionModelKhrMaterialsVariantsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h index bd13a86da..6f6e83962 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelKhrMaterialsVariantsValueReader.h @@ -18,6 +18,9 @@ struct ExtensionModelKhrMaterialsVariantsValue; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionModelKhrMaterialsVariantsValue} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionModelKhrMaterialsVariantsValueReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h index 5872bb206..89b5af2da 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsReader.h @@ -18,6 +18,9 @@ struct ExtensionModelMaxarMeshVariants; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionModelMaxarMeshVariants} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionModelMaxarMeshVariantsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h index 2baa15b55..d89c5206c 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionModelMaxarMeshVariantsValueReader.h @@ -18,6 +18,9 @@ struct ExtensionModelMaxarMeshVariantsValue; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionModelMaxarMeshVariantsValue} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionModelMaxarMeshVariantsValueReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h index 14d3aac22..071bd32dd 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsMappingsValueReader.h @@ -18,6 +18,9 @@ struct ExtensionNodeMaxarMeshVariantsMappingsValue; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionNodeMaxarMeshVariantsMappingsValue} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionNodeMaxarMeshVariantsMappingsValueReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h index dbe3a8b5b..28558d042 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionNodeMaxarMeshVariantsReader.h @@ -18,6 +18,9 @@ struct ExtensionNodeMaxarMeshVariants; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionNodeMaxarMeshVariants} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionNodeMaxarMeshVariantsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h index 0a3abc8b4..a97af321a 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ExtensionTextureWebpReader.h @@ -18,6 +18,9 @@ struct ExtensionTextureWebp; namespace CesiumGltfReader { +/** + * @brief Reads {@link ExtensionTextureWebp} instances from JSON. + */ class CESIUMGLTFREADER_API ExtensionTextureWebpReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h index 0cb2ba4f9..bc31b3743 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDAttributeReader.h @@ -18,6 +18,9 @@ struct FeatureIDAttribute; namespace CesiumGltfReader { +/** + * @brief Reads {@link FeatureIDAttribute} instances from JSON. + */ class CESIUMGLTFREADER_API FeatureIDAttributeReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h index fdea6446c..b8fda0b54 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDTextureReader.h @@ -18,6 +18,9 @@ struct FeatureIDTexture; namespace CesiumGltfReader { +/** + * @brief Reads {@link FeatureIDTexture} instances from JSON. + */ class CESIUMGLTFREADER_API FeatureIDTextureReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h index 0d14eb1bd..caf4779ff 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureIDsReader.h @@ -18,6 +18,9 @@ struct FeatureIDs; namespace CesiumGltfReader { +/** + * @brief Reads {@link FeatureIDs} instances from JSON. + */ class CESIUMGLTFREADER_API FeatureIDsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h index 1ec56faf0..4183569ff 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTablePropertyReader.h @@ -18,6 +18,9 @@ struct FeatureTableProperty; namespace CesiumGltfReader { +/** + * @brief Reads {@link FeatureTableProperty} instances from JSON. + */ class CESIUMGLTFREADER_API FeatureTablePropertyReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h index 5773ae465..764a98583 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTableReader.h @@ -18,6 +18,9 @@ struct FeatureTable; namespace CesiumGltfReader { +/** + * @brief Reads {@link FeatureTable} instances from JSON. + */ class CESIUMGLTFREADER_API FeatureTableReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h index 5d36807d4..1504abef4 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/FeatureTextureReader.h @@ -18,6 +18,9 @@ struct FeatureTexture; namespace CesiumGltfReader { +/** + * @brief Reads {@link FeatureTexture} instances from JSON. + */ class CESIUMGLTFREADER_API FeatureTextureReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h index 8772a1f15..8dc8a4fcc 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ImageReader.h @@ -18,6 +18,9 @@ struct Image; namespace CesiumGltfReader { +/** + * @brief Reads {@link Image} instances from JSON. + */ class CESIUMGLTFREADER_API ImageReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h index 199facc46..a51503dcc 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialNormalTextureInfoReader.h @@ -18,6 +18,9 @@ struct MaterialNormalTextureInfo; namespace CesiumGltfReader { +/** + * @brief Reads {@link MaterialNormalTextureInfo} instances from JSON. + */ class CESIUMGLTFREADER_API MaterialNormalTextureInfoReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h index 26bf4786a..a39dd089c 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialOcclusionTextureInfoReader.h @@ -18,6 +18,9 @@ struct MaterialOcclusionTextureInfo; namespace CesiumGltfReader { +/** + * @brief Reads {@link MaterialOcclusionTextureInfo} instances from JSON. + */ class CESIUMGLTFREADER_API MaterialOcclusionTextureInfoReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h index 33226b68f..7eda8c603 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialPBRMetallicRoughnessReader.h @@ -18,6 +18,9 @@ struct MaterialPBRMetallicRoughness; namespace CesiumGltfReader { +/** + * @brief Reads {@link MaterialPBRMetallicRoughness} instances from JSON. + */ class CESIUMGLTFREADER_API MaterialPBRMetallicRoughnessReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h index 9f4b896f0..133cc0a53 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MaterialReader.h @@ -18,6 +18,9 @@ struct Material; namespace CesiumGltfReader { +/** + * @brief Reads {@link Material} instances from JSON. + */ class CESIUMGLTFREADER_API MaterialReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h index 84298f0e6..db5c35b6b 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshPrimitiveReader.h @@ -18,6 +18,9 @@ struct MeshPrimitive; namespace CesiumGltfReader { +/** + * @brief Reads {@link MeshPrimitive} instances from JSON. + */ class CESIUMGLTFREADER_API MeshPrimitiveReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h index a70941373..05587f7ae 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/MeshReader.h @@ -18,6 +18,9 @@ struct Mesh; namespace CesiumGltfReader { +/** + * @brief Reads {@link Mesh} instances from JSON. + */ class CESIUMGLTFREADER_API MeshReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h index 385afea2d..637a21481 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/ModelReader.h @@ -18,6 +18,9 @@ struct Model; namespace CesiumGltfReader { +/** + * @brief Reads {@link Model} instances from JSON. + */ class CESIUMGLTFREADER_API ModelReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h index 6091f0ec4..c2c55438d 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/NodeReader.h @@ -18,6 +18,9 @@ struct Node; namespace CesiumGltfReader { +/** + * @brief Reads {@link Node} instances from JSON. + */ class CESIUMGLTFREADER_API NodeReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h index ced8713f2..2e9374d15 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/PropertyStatisticsReader.h @@ -18,6 +18,9 @@ struct PropertyStatistics; namespace CesiumGltfReader { +/** + * @brief Reads {@link PropertyStatistics} instances from JSON. + */ class CESIUMGLTFREADER_API PropertyStatisticsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h index b551ffd7d..99f6e8815 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SamplerReader.h @@ -18,6 +18,9 @@ struct Sampler; namespace CesiumGltfReader { +/** + * @brief Reads {@link Sampler} instances from JSON. + */ class CESIUMGLTFREADER_API SamplerReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h index fe65364d2..162d5e201 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SceneReader.h @@ -18,6 +18,9 @@ struct Scene; namespace CesiumGltfReader { +/** + * @brief Reads {@link Scene} instances from JSON. + */ class CESIUMGLTFREADER_API SceneReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h index 1e3daec0d..3cda72932 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SchemaReader.h @@ -18,6 +18,9 @@ struct Schema; namespace CesiumGltfReader { +/** + * @brief Reads {@link Schema} instances from JSON. + */ class CESIUMGLTFREADER_API SchemaReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h index 2fd1ce417..1402f486a 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/SkinReader.h @@ -18,6 +18,9 @@ struct Skin; namespace CesiumGltfReader { +/** + * @brief Reads {@link Skin} instances from JSON. + */ class CESIUMGLTFREADER_API SkinReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h index a410d4763..e8f42bf53 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/StatisticsReader.h @@ -18,6 +18,9 @@ struct Statistics; namespace CesiumGltfReader { +/** + * @brief Reads {@link Statistics} instances from JSON. + */ class CESIUMGLTFREADER_API StatisticsReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h index 0026b9b33..ced1e7ef9 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureAccessorReader.h @@ -18,6 +18,9 @@ struct TextureAccessor; namespace CesiumGltfReader { +/** + * @brief Reads {@link TextureAccessor} instances from JSON. + */ class CESIUMGLTFREADER_API TextureAccessorReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h index 5ac9e133e..313d48dc8 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureInfoReader.h @@ -18,6 +18,9 @@ struct TextureInfo; namespace CesiumGltfReader { +/** + * @brief Reads {@link TextureInfo} instances from JSON. + */ class CESIUMGLTFREADER_API TextureInfoReader { public: /** diff --git a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h index e625b3c60..b1832c762 100644 --- a/CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h +++ b/CesiumGltfReader/generated/include/CesiumGltfReader/TextureReader.h @@ -18,6 +18,9 @@ struct Texture; namespace CesiumGltfReader { +/** + * @brief Reads {@link Texture} instances from JSON. + */ class CESIUMGLTFREADER_API TextureReader { public: /** diff --git a/tools/generate-classes/generate.js b/tools/generate-classes/generate.js index 9037a4b1e..4cd3dd03d 100644 --- a/tools/generate-classes/generate.js +++ b/tools/generate-classes/generate.js @@ -226,6 +226,9 @@ function generate(options, schema, writers) { namespace ${readerNamespace} { + /** + * @brief Reads {@link ${name}} instances from JSON. + */ class ${readerNamespace.toUpperCase()}_API ${name}Reader { public: /** From c0fc8b67959d20ba3a45d3e1257c0a622beb8ae9 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Wed, 23 Aug 2023 09:07:35 +1000 Subject: [PATCH 10/29] More tileset metadata to a separate struct. --- .../Cesium3DTilesSelection/TileContent.h | 26 +++---------------- .../src/TilesetJsonLoader.cpp | 8 +++--- .../test/TestTilesetJsonLoader.cpp | 3 ++- .../test/TestTilesetSelectionAlgorithm.cpp | 9 ++++--- 4 files changed, 14 insertions(+), 32 deletions(-) diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h index 87d112e6b..c7d1c487c 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TileContent.h @@ -3,9 +3,8 @@ #include "CreditSystem.h" #include "Library.h" #include "RasterOverlayDetails.h" +#include "TilesetMetadata.h" -#include -#include #include #include @@ -52,28 +51,9 @@ struct CESIUM3DTILESSELECTION_API TileEmptyContent {}; */ struct CESIUM3DTILESSELECTION_API TileExternalContent { /** - * @brief An object defining the structure of metadata classes and enums. When - * this is defined, then `schemaUri` shall be undefined. + * @brief The metadata associated with this tileset. */ - std::optional schema; - - /** - * @brief The URI (or IRI) of the external schema file. When this is defined, - * then `schema` shall be undefined. - */ - std::optional schemaUri; - - /** - * @brief An array of groups that tile content may belong to. Each element of - * this array is a metadata entity that describes the group. The tile content - * `group` property is an index into this array. - */ - std::vector groups; - - /** - * @brief A metadata entity that is associated with this tileset. - */ - std::optional metadata; + TilesetMetadata metadata; }; /** diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index 6113bdda0..ddc563455 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -632,13 +632,13 @@ void parseTilesetMetadata( Cesium3DTilesReader::SchemaReader schemaReader; auto schemaResult = schemaReader.readFromJson(schemaIt->value); if (schemaResult.value) { - externalContent.schema = std::move(*schemaResult.value); + externalContent.metadata.schema = std::move(*schemaResult.value); } } auto schemaUriIt = tilesetJson.FindMember("schemaUri"); if (schemaUriIt != tilesetJson.MemberEnd() && schemaUriIt->value.IsString()) { - externalContent.schemaUri = schemaUriIt->value.GetString(); + externalContent.metadata.schemaUri = schemaUriIt->value.GetString(); } const auto metadataIt = tilesetJson.FindMember("metadata"); @@ -646,7 +646,7 @@ void parseTilesetMetadata( Cesium3DTilesReader::MetadataEntityReader metadataReader; auto metadataResult = metadataReader.readFromJson(metadataIt->value); if (metadataResult.value) { - externalContent.metadata = std::move(*metadataResult.value); + externalContent.metadata.metadata = std::move(*metadataResult.value); } } @@ -655,7 +655,7 @@ void parseTilesetMetadata( Cesium3DTilesReader::GroupMetadataReader groupMetadataReader; auto groupsResult = groupMetadataReader.readArrayFromJson(groupsIt->value); if (groupsResult.value) { - externalContent.groups = std::move(*groupsResult.value); + externalContent.metadata.groups = std::move(*groupsResult.value); } } } diff --git a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp index 8d1d778c4..4559e583d 100644 --- a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp @@ -412,7 +412,8 @@ TEST_CASE("Test creating tileset json loader") { loaderResult.pRootTile->getContent().getExternalContent(); REQUIRE(pExternal); - const std::optional& schema = pExternal->schema; + const TilesetMetadata& metadata = pExternal->metadata; + const std::optional& schema = metadata.schema; REQUIRE(schema); CHECK(schema->id == "foo"); } diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 40d4c9288..fd8d635b6 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1141,7 +1141,8 @@ TEST_CASE("Makes metadata available once root tile is loaded") { TileExternalContent* pExternal = pRoot->getContent().getExternalContent(); REQUIRE(pExternal); - const std::optional& schema = pExternal->schema; + const TilesetMetadata& metadata = pExternal->metadata; + const std::optional& schema = metadata.schema; REQUIRE(schema); CHECK(schema->id == "foo"); } @@ -1209,9 +1210,9 @@ TEST_CASE("Makes metadata available on external tilesets") { REQUIRE(pExternalContent); - REQUIRE(pExternalContent->groups.size() == 2); - CHECK(pExternalContent->groups[0].classProperty == "someClass"); - CHECK(pExternalContent->groups[1].classProperty == "someClass"); + REQUIRE(pExternalContent->metadata.groups.size() == 2); + CHECK(pExternalContent->metadata.groups[0].classProperty == "someClass"); + CHECK(pExternalContent->metadata.groups[1].classProperty == "someClass"); } namespace { From ef2ac5d1dba9993e74c6264868c5b58c5d4f952e Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Wed, 23 Aug 2023 09:07:53 +1000 Subject: [PATCH 11/29] Add missing file. --- .../Cesium3DTilesSelection/TilesetMetadata.h | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h new file mode 100644 index 000000000..e73a963bf --- /dev/null +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h @@ -0,0 +1,36 @@ +#pragma once + +#include "Library.h" + +#include +#include + +#include +#include +#include + +struct CESIUM3DTILESSELECTION_API TilesetMetadata { + /** + * @brief An object defining the structure of metadata classes and enums. When + * this is defined, then `schemaUri` shall be undefined. + */ + std::optional schema; + + /** + * @brief The URI (or IRI) of the external schema file. When this is defined, + * then `schema` shall be undefined. + */ + std::optional schemaUri; + + /** + * @brief An array of groups that tile content may belong to. Each element of + * this array is a metadata entity that describes the group. The tile content + * `group` property is an index into this array. + */ + std::vector groups; + + /** + * @brief A metadata entity that is associated with this tileset. + */ + std::optional metadata; +}; From c68207a6a4684229ebed85748b336bc065879482 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Wed, 23 Aug 2023 11:30:06 +1000 Subject: [PATCH 12/29] Add MetadataQuery class. --- .../include/Cesium3DTiles/MetadataQuery.h | 74 +++++++++++++++++++ Cesium3DTiles/src/MetadataQuery.cpp | 38 ++++++++++ Cesium3DTiles/test/TestMetadataQuery.cpp | 55 ++++++++++++++ .../include/Cesium3DTilesSelection/Tileset.h | 19 +++++ .../Cesium3DTilesSelection/TilesetMetadata.h | 4 + Cesium3DTilesSelection/src/Tileset.cpp | 17 +++++ CesiumNativeTests/CMakeLists.txt | 1 + 7 files changed, 208 insertions(+) create mode 100644 Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h create mode 100644 Cesium3DTiles/src/MetadataQuery.cpp create mode 100644 Cesium3DTiles/test/TestMetadataQuery.cpp diff --git a/Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h b/Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h new file mode 100644 index 000000000..e4caab50e --- /dev/null +++ b/Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h @@ -0,0 +1,74 @@ +#pragma once + +#include +#include +#include + +#include +#include + +namespace Cesium3DTiles { + +/** + * @brief Holds the details of a found property in a {@link MetadataEntity}. + * + * Because this structure holds _references_ to the original {@link Schema} and + * {@link MetadataEntity} instances, it will be invalided if either are + * destroyed or modified. Continuing to access this result in that scenario will + * result in undefined behavior. + */ +struct FoundMetadataProperty { + /** + * @brief A reference to the identifier of the class that contains the found + * property within the {@link Schema}. + */ + const std::string& classIdentifier; + + /** + * @brief A reference to the {@link Class} that contains the found property + * within the {@link Schema}. + */ + const Class& classDefinition; + + /** + * @brief A reference to the identifier of the found property within the + * {@link Schema}. + */ + const std::string& propertyIdentifier; + + /** + * @brief A reference to the {@link ClassProperty} describing the found + * property within the {@lnik Schema}. + */ + const ClassProperty& propertyDefinition; + + /** + * @brief A reference to the value of the found property within the + * {@link MetadataEntity}. + */ + const CesiumUtility::JsonValue& propertyValue; +}; + +/** + * @brief Convenience functions for querying {@link MetadataEntity} instances. + */ +class CESIUM3DTILES_API MetadataQuery { +public: + /** + * @brief Gets the first property with a given + * {@link ClassProperty::semantic}. + * + * @param schema The schema to use to look up semantics. + * @param entity The metadata entity to search for a property with the + * semantic. + * @param semantic The semantic to find. + * @return The details of the found property, or `std::nullopt` if a property + * with the given semantic does not exist. + */ + static std::optional findFirstPropertyWithSemantic( + const Schema& schema, + const MetadataEntity& entity, + const std::string& semantic); +}; + +} // namespace Cesium3DTiles diff --git a/Cesium3DTiles/src/MetadataQuery.cpp b/Cesium3DTiles/src/MetadataQuery.cpp new file mode 100644 index 000000000..5705dd845 --- /dev/null +++ b/Cesium3DTiles/src/MetadataQuery.cpp @@ -0,0 +1,38 @@ +#include + +namespace Cesium3DTiles { + +std::optional +MetadataQuery::findFirstPropertyWithSemantic( + const Schema& schema, + const MetadataEntity& entity, + const std::string& semantic) { + auto classIt = schema.classes.find(entity.classProperty); + if (classIt == schema.classes.end()) { + return std::nullopt; + } + + const Cesium3DTiles::Class& klass = classIt->second; + + for (auto it = entity.properties.begin(); it != entity.properties.end(); + ++it) { + const std::pair& property = *it; + auto propertyIt = klass.properties.find(property.first); + if (propertyIt == klass.properties.end()) + continue; + + const ClassProperty& classProperty = propertyIt->second; + if (classProperty.semantic == semantic) { + return FoundMetadataProperty{ + classIt->first, + classIt->second, + it->first, + propertyIt->second, + it->second}; + } + } + + return std::nullopt; +} + +} // namespace Cesium3DTiles diff --git a/Cesium3DTiles/test/TestMetadataQuery.cpp b/Cesium3DTiles/test/TestMetadataQuery.cpp new file mode 100644 index 000000000..6c6b8c839 --- /dev/null +++ b/Cesium3DTiles/test/TestMetadataQuery.cpp @@ -0,0 +1,55 @@ +#include + +#include + +using namespace Cesium3DTiles; +using namespace CesiumUtility; + +TEST_CASE("MetadataQuery") { + SECTION("findFirstPropertyWithSemantic") { + Schema schema{}; + Class& classDefinition = + schema.classes.emplace("someClass", Class()).first->second; + + ClassProperty& classProperty1 = + classDefinition.properties.emplace("someProperty", ClassProperty()) + .first->second; + classProperty1.type = ClassProperty::Type::SCALAR; + classProperty1.componentType = ClassProperty::ComponentType::FLOAT64; + + ClassProperty& classProperty2 = + classDefinition.properties + .emplace("somePropertyWithSemantic", ClassProperty()) + .first->second; + classProperty2.type = ClassProperty::Type::STRING; + classProperty2.semantic = "SOME_SEMANTIC"; + + MetadataEntity withoutSemantic; + withoutSemantic.classProperty = "someClass"; + withoutSemantic.properties.emplace("someProperty", JsonValue(3.0)); + + MetadataEntity withSemantic = withoutSemantic; + withSemantic.properties.emplace( + "somePropertyWithSemantic", + JsonValue("the value")); + + std::optional foundProperty1 = + MetadataQuery::findFirstPropertyWithSemantic( + schema, + withoutSemantic, + "SOME_SEMANTIC"); + CHECK(!foundProperty1); + + std::optional foundProperty2 = + MetadataQuery::findFirstPropertyWithSemantic( + schema, + withSemantic, + "SOME_SEMANTIC"); + REQUIRE(foundProperty2); + CHECK(foundProperty2->classIdentifier == "someClass"); + CHECK(&foundProperty2->classDefinition == &classDefinition); + CHECK(foundProperty2->propertyIdentifier == "somePropertyWithSemantic"); + CHECK(&foundProperty2->propertyDefinition == &classProperty2); + CHECK(foundProperty2->propertyValue.getStringOrDefault("") == "the value"); + } +} diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h index c0de9c35d..3a1aee0c4 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h @@ -22,6 +22,7 @@ namespace Cesium3DTilesSelection { class TilesetContentManager; +struct TilesetMetadata; /** * @brief A #include +namespace Cesium3DTilesSelection { + struct CESIUM3DTILESSELECTION_API TilesetMetadata { /** * @brief An object defining the structure of metadata classes and enums. When @@ -34,3 +36,5 @@ struct CESIUM3DTILESSELECTION_API TilesetMetadata { */ std::optional metadata; }; + +} // namespace Cesium3DTilesSelection diff --git a/Cesium3DTilesSelection/src/Tileset.cpp b/Cesium3DTilesSelection/src/Tileset.cpp index 4c908201e..95814932e 100644 --- a/Cesium3DTilesSelection/src/Tileset.cpp +++ b/Cesium3DTilesSelection/src/Tileset.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -453,6 +454,22 @@ int64_t Tileset::getTotalDataBytes() const noexcept { return this->_pTilesetContentManager->getTotalDataUsed(); } +const TilesetMetadata* Tileset::findMetadata(const Tile* pTile) const { + if (pTile == nullptr) { + pTile = this->getRootTile(); + } + + while (pTile != nullptr) { + const TileExternalContent* pExternal = + pTile->getContent().getExternalContent(); + if (pExternal) + return &pExternal->metadata; + pTile = pTile->getParent(); + } + + return nullptr; +} + static void markTileNonRendered( TileSelectionState::Result lastResult, Tile& tile, diff --git a/CesiumNativeTests/CMakeLists.txt b/CesiumNativeTests/CMakeLists.txt index e9c65c68f..89604034c 100644 --- a/CesiumNativeTests/CMakeLists.txt +++ b/CesiumNativeTests/CMakeLists.txt @@ -4,6 +4,7 @@ configure_cesium_library(cesium-native-tests) # Add tests here, ensure they define the TEST_SOURCES / TEST_HEADERS # properties. set(cesium_native_targets + Cesium3DTiles Cesium3DTilesReader Cesium3DTilesWriter Cesium3DTilesSelection From 056edba5c71f27bf1d45140283e54715908c9dbc Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Wed, 23 Aug 2023 13:41:57 +1000 Subject: [PATCH 13/29] Add a test based on material variants. --- .../test/TestTilesetSelectionAlgorithm.cpp | 98 ++++++++++++++++++ .../test/data/MaterialVariants/parent.b3dm | Bin 0 -> 9680 bytes .../test/data/MaterialVariants/tileset.json | 89 ++++++++++++++++ 3 files changed, 187 insertions(+) create mode 100644 Cesium3DTilesSelection/test/data/MaterialVariants/parent.b3dm create mode 100644 Cesium3DTilesSelection/test/data/MaterialVariants/tileset.json diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index fd8d635b6..012f9a92f 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -7,6 +7,7 @@ #include "SimplePrepareRendererResource.h" #include "SimpleTaskProcessor.h" +#include #include #include @@ -1215,6 +1216,103 @@ TEST_CASE("Makes metadata available on external tilesets") { CHECK(pExternalContent->metadata.groups[1].classProperty == "someClass"); } +TEST_CASE("Allows access to material variants") { + Cesium3DTilesSelection::registerAllTileContentTypes(); + + std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; + testDataPath = testDataPath / "MaterialVariants"; + std::vector files{"tileset.json", "parent.b3dm"}; + + std::map> + mockCompletedRequests; + for (const auto& file : files) { + std::unique_ptr mockCompletedResponse = + std::make_unique( + static_cast(200), + "doesn't matter", + CesiumAsync::HttpHeaders{}, + readFile(testDataPath / file)); + mockCompletedRequests.insert( + {file, + std::make_shared( + "GET", + file, + CesiumAsync::HttpHeaders{}, + std::move(mockCompletedResponse))}); + } + + std::shared_ptr mockAssetAccessor = + std::make_shared(std::move(mockCompletedRequests)); + TilesetExternals tilesetExternals{ + mockAssetAccessor, + std::make_shared(), + AsyncSystem(std::make_shared()), + nullptr}; + + // create tileset and call updateView() to give it a chance to load + Tileset tileset(tilesetExternals, "tileset.json"); + initializeTileset(tileset); + + const TilesetMetadata* pMetadata = tileset.findMetadata(); + REQUIRE(pMetadata); + REQUIRE(pMetadata->schema); + REQUIRE(pMetadata->metadata); + + std::optional found1 = + Cesium3DTiles::MetadataQuery::findFirstPropertyWithSemantic( + *pMetadata->schema, + *pMetadata->metadata, + "MATERIAL_VARIANTS"); + REQUIRE(found1); + CHECK(found1->classIdentifier == "MaterialVariants"); + CHECK(found1->classDefinition.properties.size() == 1); + CHECK(found1->propertyIdentifier == "material_variants"); + CHECK( + found1->propertyDefinition.description == + "Names of material variants to be expected in the glTF assets"); + REQUIRE(found1->propertyValue.isArray()); + + const JsonValue::Array& variantsJson = found1->propertyValue.getArray(); + std::vector variants(variantsJson.size()); + std::transform( + variantsJson.begin(), + variantsJson.end(), + variants.begin(), + [](const JsonValue& value) { return value.getStringOrDefault(""); }); + REQUIRE(variants.size() == 4); + CHECK(variants[0] == "RGB"); + CHECK(variants[1] == "RRR"); + CHECK(variants[2] == "GGG"); + CHECK(variants[3] == "BBB"); + + std::vector> variantsByGroup; + for (const Cesium3DTiles::GroupMetadata& group : pMetadata->groups) { + std::vector& groupVariants = variantsByGroup.emplace_back(); + + std::optional found2 = + Cesium3DTiles::MetadataQuery::findFirstPropertyWithSemantic( + *pMetadata->schema, + group, + "MATERIAL_VARIANTS"); + REQUIRE(found2); + REQUIRE(found2->propertyValue.isArray()); + + const JsonValue::Array& groupVariantsJson = + found2->propertyValue.getArray(); + groupVariants.reserve(groupVariantsJson.size()); + for (int i = 0; i < groupVariantsJson.size(); ++i) { + groupVariants.emplace_back(groupVariantsJson[i].getStringOrDefault("")); + } + } + + std::vector> expected = { + { "RGB", "RRR" }, + { "GGG", "BBB" } + }; + + CHECK(variantsByGroup == expected); +} + namespace { void runUnconditionallyRefinedTestCase(const TilesetOptions& options) { diff --git a/Cesium3DTilesSelection/test/data/MaterialVariants/parent.b3dm b/Cesium3DTilesSelection/test/data/MaterialVariants/parent.b3dm new file mode 100644 index 0000000000000000000000000000000000000000..8cb958955234e1ecaac3837ecbf0162b8fd47bf8 GIT binary patch literal 9680 zcmeHNX>e3k7XAbmMsNgm5Hyb3qN2VuZ(pJ&=@){82?>UXEGl-APH4&6>4+FW#0>+8 zpdf;PD66=Pz#w5u`hf^2h>D=Np`ar!NU1egH5Sf!FX?bb4M|y(`C-{z@0>5M&;9Oq zzkBX`RTOzjLCHw~c3leGMA`j}XxEUdeRd!>t?%&6^sMW0`}&e3QSjyDrVUR^&&o~D z@g)tDWJwbx%P&ikq^gD`X+olED7vCpe$_B!%d!krP(@SHWy5c2hA4}cVX8Ney{Ot3 zE+7U`kOWy!1Xa)kT`&Ywux=K7nPsI#;b>Jsh$<2#zam+>Da3&y>!xChU_ml6Bp*MAK?2vlK%z=%Y$aGw7nBl3v4<6gfW9QbkE3 zLP@lm*i1!NiODi8qp3`@L|s%2P13z}1f%g~h<@ENO>(0F=#r+$k}8WT@iqRY=pq?v zijoq)W$KEk%Oj3#UKx%Sy`2 zN<*d5+|lLKkQzyHZ&sDk&$3DdQSZKQPvyHE{dNvpVn;}l6&5?o5u?Oy&~ywFUhAABu2x(_56jUTc+vDo2DGrAERf;V6|g{27eWp5;|V-9M{+1F{EZAK=7^|%__H&Rv>&2nj7(<}4oWO%=NsDV8`kGs;boi70Fj4Zr; z?W@UWPwwcvIbnL>!a+5G4@Z6)o^}3FX!hxTm#q4Yq$o^ z&&P6pu8nKp{2d-Gs9QL9y>rDm=Q+Lij}P2=aHWSAOvwqnbMOggeUDACc}J@1+s#|# z;qDhb7`yxBqp`D(taTD*pRsY@{@or9xVak6&*$a* zoQG@Rnt2V^!1?)D&d;@R4V=F;{c(HoM^j@vYa@Y*?R9pC6$3oHWoxZHsN?dwNh7}s zY)X5?9{$1BdKa%w7-bJ$ccI-eyOVRv*-zQa#wi|N+2sj)S5BT?IdxI&*6t(iyQXG& zxVak6&*$a*oQG@Rnt2V^!1?)D&d;@R4V-_(w!!vg8}Un`xjnt>rogB>qIUVJ)gJ!g;{rRW>)UouNw81v zdxl;A?luoMSHt=Fyqur&a1C5Dui+XvKOf8axi+qW^Y2;Wi%pqyZQ#wfX4zlA(JOGY zSB-~jYQ9W;IQQRyyB=9*k6U$9Z1@+idpKj*w%C|wCfoaN-4U2SdVGC{`yTV~;pyMk z`**IixAYS1xxvq3Pkp!4!_C!jem*bf=R8~k*UW3U2F}mNa(=FjYvBBAUY+KgvFkwW zWoL-31o}JXy)Suq?`=0Z;W_PM&-I#S*WCKJbB;31!yD`uol!;Y?c}fLrp!P0ekX5A zcMn%QJH=VJG}k_<+nm7Ey=$D>3CSLAu7>mTc{xAl;TpJRUc)tTem<7-b8TD$=P&8D z*;YGLJNk=PI++K*vft@m=;6zbd};>{^m0z^wJX-Q#|C@u8@)X|bl771+lt5QmwZ|4 zn3un9AO7?HWEY>MY_)gq8y?s(ZPDQ_f({t4~vAs9G>*3YQPj%|6);kLqe;@0UmG9hh<5mx^&8Ttq z&KuyYKY539@QC3Ic+d3k{Z1bz&3`PG_~0^U(u!%$vVC107dKbK`T4w@pYw1HTr;oX z8aO{6%lWxBu7UH_(l?5BI3rHK#KcU#aUaO#;+5AUvBmiqY~(;0MVSm3kS<6~W3 z$@1{R1E0hq#g+9{gGV}-hd-+K3wu*s?A#&5j(u`ZVB{>H^Wjr)hMppNxVak6&*$a* zoQG@Rnt2V^!1?)D&d;@R4V=GI#s#sv{hlmU`gh z=j|y=UUc5vF)-Q17tPr2%oNh>HE*pAgcmJ!4$sK-@E7f$caBwzv&;5$wikT&y0fH1 ziHDo3;rx7F&d+(c2CkXca1ETFkLCPa8`r@3Q(m)^XYRSS?#C59Qd)^OQhf^5*HL|o z`0gJ@r5ufnOMb89?WbFb>!^Ms)n7vOE#k>5FWES4;)N;dk7+5b#K}}&NA-17-y&|M zC)~ppJ>kB^J#qiVwUyZOq_Mt5+)7Wlhb?--efz_o6Zg{p%b#P@Cc5V(#XV~+V6SJW z#yyWM;@?aE1f$cN{AmGuo={DbKPSS!7k>^tcVCk~Env?ds%i4)MELjO&mYg{Uw_xf zpE-Z{b7Fr=@0rkazFNTE`J$Sp^K~NpdpTc2JM``m@1+*7=MU8^jK9B5gxlI5x9{8b zGd=}q%L}QbzYVWc;%>`pJn^^X^(67P_zSvH?22>I4c&1b#q)4J z{)!8bfD0)n;38ZMA4MN7!DYA^rP4he?u1fBNN$_Gcf?y zBZp!R24WCyKrU{ioQt6tg25O@c`*Gypqp_E#al2Ow<3rzqA-id0A!&r>LU6jXQJnqH>iW6`T z?#F$&7Y|Ur7d3bg6ETVML`=pMJVfy!OvS^PhUpZi;}Oin3_Oa*C_jo>cpS4S&c+#WrlGxE-%zCwAa9 zyiWNwyoook3vW^0h23}?dnoR~Uc7^Mv5(?DyoV3*0p7<)l;6jGe2h;heu4w|44>j4 a{z>^DzQ7@TjxQ;Hj<4`F4pTggZ}1 Date: Wed, 23 Aug 2023 14:18:47 +1000 Subject: [PATCH 14/29] Formatting. --- .../test/TestTilesetSelectionAlgorithm.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 012f9a92f..8627acabc 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1306,9 +1306,8 @@ TEST_CASE("Allows access to material variants") { } std::vector> expected = { - { "RGB", "RRR" }, - { "GGG", "BBB" } - }; + {"RGB", "RRR"}, + {"GGG", "BBB"}}; CHECK(variantsByGroup == expected); } From d0a3091b12ba9d571c5441f467fd4265171028d5 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Wed, 23 Aug 2023 14:28:04 +1000 Subject: [PATCH 15/29] Fix dodgy destructor declaration. --- .../include/CesiumJsonReader/IExtensionJsonHandler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h b/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h index 1e193eb6c..6e0fec568 100644 --- a/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h +++ b/CesiumJsonReader/include/CesiumJsonReader/IExtensionJsonHandler.h @@ -11,7 +11,7 @@ namespace CesiumJsonReader { class IExtensionJsonHandler { public: - virtual ~IExtensionJsonHandler() noexcept = 0 {} + virtual ~IExtensionJsonHandler() noexcept = default; virtual void reset( IJsonHandler* pParentHandler, CesiumUtility::ExtensibleObject& o, From ea6a74ef3a97b6d17a6a56df0a87572a7077bf0b Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Wed, 23 Aug 2023 14:58:41 +1000 Subject: [PATCH 16/29] Fix another clang warning. --- Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 8627acabc..51138bbea 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1300,7 +1300,7 @@ TEST_CASE("Allows access to material variants") { const JsonValue::Array& groupVariantsJson = found2->propertyValue.getArray(); groupVariants.reserve(groupVariantsJson.size()); - for (int i = 0; i < groupVariantsJson.size(); ++i) { + for (size_t i = 0; i < groupVariantsJson.size(); ++i) { groupVariants.emplace_back(groupVariantsJson[i].getStringOrDefault("")); } } From d24e5f9dfdc21c660ded96b492c8e638c9538459 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Wed, 23 Aug 2023 20:58:14 +1000 Subject: [PATCH 17/29] Update CHANGES.md, remove unnecessary change. --- CHANGES.md | 6 ++++++ .../include/Cesium3DTilesSelection/TilesetContentLoader.h | 1 - 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 3ecc5b4f1..40100dbb4 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -7,6 +7,8 @@ - Renamed `ExtensionReaderContext` to `JsonReaderOptions`, and the `getExtensions` method on various JSON reader classes to `getOptions`. - `IExtensionJsonHandler` no longer derives from `IJsonHandler`. Instead, it has a new pure virtual method, `getHandler`, that must be implemented to allow clients to obtain the `IJsonHandler`. In almost all implementations, this should simply return `*this`. - In `SubtreeReader`, `SchemaReader`, and `TilesetReader`, the `readSubtree`, `readSchema`, and `readTileset` methods (respectively) have been renamed to `readFromJson` and return a templated `ReadJsonResult` instead of a bespoke result class. +- `TileExternalContent` is now heap allocated and stored in `TileContent` with a `std::unique_ptr`. +- The root `Tile` of a `Cesium3DTilesSelection::Tileset` now represents the tileset.json itself, and the `root` tile specified in the tileset.json is its only child. This makes the shape of the tile tree consistent between a standard top-level tileset and an external tileset embedded elsewhere in the tree. In both cases, the "tile" that represents the tileset.json itself has content of type `TileExternalContent`. ##### Additions :tada: @@ -14,6 +16,10 @@ - Added `ValueType` type alias to `ArrayJsonHandler`, for consistency with other JSON handlers. - Added an overload of `JsonReader::readJson` that takes a `rapidjson::Value` instead of a byte buffer. This allows a subtree of a `rapidjson::Document` to be easily and efficiently converted into statically-typed classes via `IJsonHandler`. - Added `*Reader` classes to `CesiumGltfReader` and `Cesium3DTilesReader` to allow each of the classes to be individually read from JSON. +- Added `getExternalContent` method to the `TileContent` class. +- `TileExternalContent` now holds the metadata (`schema`, `schemaUri`, `metadata`, and `groups`) stored in the tileset.json. +- Added `findMetadata` method to `Cesium3DTilesSelection::Tileset`. It returns a `TilesetMetadata` instance representing the metadata associated with a tileset.json. +- Added `MetadataQuery` class to make it easier to find properties with specific semantics in `TilesetMetadata`. ### v0.27.0 - 2023-09-01 diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h index ad10786e9..5b767456b 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetContentLoader.h @@ -7,7 +7,6 @@ #include "TileLoadResult.h" #include "TilesetOptions.h" -#include #include #include #include From fe26c94446139a13b44fce9cca022a0f933ba6e5 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Thu, 24 Aug 2023 07:07:09 +1000 Subject: [PATCH 18/29] Remove unnecessary forward declaration. --- Cesium3DTilesSelection/src/TilesetContentManager.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Cesium3DTilesSelection/src/TilesetContentManager.h b/Cesium3DTilesSelection/src/TilesetContentManager.h index 6b7d6b7c0..355fd82a2 100644 --- a/Cesium3DTilesSelection/src/TilesetContentManager.h +++ b/Cesium3DTilesSelection/src/TilesetContentManager.h @@ -16,10 +16,6 @@ #include -namespace Cesium3DTiles { -struct Schema; -} - namespace Cesium3DTilesSelection { class TilesetContentManager From 9a1abb295d9d13a36d205f3320b9a3d0311270dd Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Thu, 24 Aug 2023 19:13:40 +1000 Subject: [PATCH 19/29] Add missing dll export of FoundMetadataProperty. --- Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h b/Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h index e4caab50e..c0f5b3213 100644 --- a/Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h +++ b/Cesium3DTiles/include/Cesium3DTiles/MetadataQuery.h @@ -17,7 +17,7 @@ namespace Cesium3DTiles { * destroyed or modified. Continuing to access this result in that scenario will * result in undefined behavior. */ -struct FoundMetadataProperty { +struct CESIUM3DTILES_API FoundMetadataProperty { /** * @brief A reference to the identifier of the class that contains the found * property within the {@link Schema}. From 153890dbbfaac2bb483edde69a5074a1d52bd251 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 28 Aug 2023 17:47:48 +1000 Subject: [PATCH 20/29] Add `Tileset::loadMetadata`. --- .../include/Cesium3DTilesSelection/Tileset.h | 55 +++++++++-- .../Cesium3DTilesSelection/TilesetMetadata.h | 39 +++++++- Cesium3DTilesSelection/src/Tileset.cpp | 62 ++++++++++++- .../src/TilesetJsonLoader.cpp | 11 ++- .../src/TilesetMetadata.cpp | 93 +++++++++++++++++++ .../test/TestTilesetSelectionAlgorithm.cpp | 2 +- 6 files changed, 242 insertions(+), 20 deletions(-) create mode 100644 Cesium3DTilesSelection/src/TilesetMetadata.cpp diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h index 3a1aee0c4..335ec1bcc 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h @@ -75,13 +75,6 @@ class CESIUM3DTILESSELECTION_API Tileset final { const TilesetOptions& options = TilesetOptions(), const std::string& ionAssetEndpointUrl = "https://api.cesium.com/"); - /** - * @brief A future that resolves when this Tileset has been destroyed (i.e. - * its destructor has been called) and all async operations that it was - * executing have completed. - */ - CesiumAsync::SharedFuture& getAsyncDestructionCompleteEvent(); - /** * @brief Destroys this tileset. * @@ -94,6 +87,20 @@ class CESIUM3DTILESSELECTION_API Tileset final { */ ~Tileset() noexcept; + /** + * @brief A future that resolves when this Tileset has been destroyed (i.e. + * its destructor has been called) and all async operations that it was + * executing have completed. + */ + CesiumAsync::SharedFuture& getAsyncDestructionCompleteEvent(); + + /** + * @brief A future that resolves when the details of the root tile of this + * tileset are available. The root tile's content (e.g., 3D model), however, + * will not necessarily be loaded yet. + */ + CesiumAsync::SharedFuture& getRootTileAvailableEvent(); + /** * @brief Get tileset credits. */ @@ -209,22 +216,47 @@ class CESIUM3DTILESSELECTION_API Tileset final { int64_t getTotalDataBytes() const noexcept; /** - * @brief Finds the {@link TilesetMetadata} associated with the main or - * external tileset.json that contains a given tile. + * @brief Gets the {@link TilesetMetadata} associated with the main or + * external tileset.json that contains a given tile. If the metadata is not + * yet loaded, this method returns nullptr. * * If this tileset's root tile is not yet available, this method returns * nullptr. * + * If the tileset has a {@link TilesetMetadata::schemaUri}, it will not + * necessarily have been loaded yet. + * * If the provided tile is not the root tile of a tileset.json, this method * walks up the {@link Tile::getParent} chain until it finds the closest * root and then returns the metadata associated with the corresponding * tileset.json. * + * Consider calling {@link loadMetadata} instead, which will return a future + * that only resolves after the root tile is loaded and the `schemaUri`, if + * any, has been resolved. + * * @param pTile The tile. If this parameter is nullptr, the metadata for the * main tileset.json is returned. * @return The found metadata, or nullptr if the root tile is not yet loaded. */ - const TilesetMetadata* findMetadata(const Tile* pTile = nullptr) const; + const TilesetMetadata* getMetadata(const Tile* pTile = nullptr) const; + + /** + * @brief Asynchronously loads the metadata associated with the main + * tileset.json. + * + * Before the returned future resolves, the root tile of this tileset will be + * loaded and the {@link TilesetMetadata::schemaUri} will be loaded if one + * has been specified. + * + * If the tileset or `schemaUri` fail to load, the returned future will + * reject. + * + * @return A shared future that resolves to the loaded metadata. Once this + * future resolves, {@link findMetadata} can be used to synchronously obtain + * the same metadata instance. + */ + CesiumAsync::Future loadMetadata(); private: /** @@ -462,6 +494,9 @@ class CESIUM3DTILESSELECTION_API Tileset final { // scratch variable so that it can allocate only when growing bigger. std::vector _childOcclusionProxies; + CesiumAsync::Promise _rootTileAvailablePromise; + CesiumAsync::SharedFuture _rootTileAvailableFuture; + CesiumUtility::IntrusivePointer _pTilesetContentManager; diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h index ce42940d7..db5b811d7 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/TilesetMetadata.h @@ -4,14 +4,27 @@ #include #include +#include #include #include #include +namespace CesiumAsync { +class AsyncSystem; +class IAssetAccessor; +} // namespace CesiumAsync + namespace Cesium3DTilesSelection { -struct CESIUM3DTILESSELECTION_API TilesetMetadata { +/** + * @brief Holds the metadata associated with a {@link Tileset} or an external + * tileset. + */ +class CESIUM3DTILESSELECTION_API TilesetMetadata { +public: + ~TilesetMetadata() noexcept; + /** * @brief An object defining the structure of metadata classes and enums. When * this is defined, then `schemaUri` shall be undefined. @@ -35,6 +48,30 @@ struct CESIUM3DTILESSELECTION_API TilesetMetadata { * @brief A metadata entity that is associated with this tileset. */ std::optional metadata; + + /** + * @brief Asynchronously loads the {@link schema} from the {@link schemaUri}. + * If the {@link schemaUri} does not contain a value, this method does + * nothing and returns an already-resolved future. + * + * Calling this method multiple times will return the same shared future each + * time, unless the {@link schemaUri} is changed. In that case, when this + * method is called, the previous load is canceled and the new one begins. + * + * @param asyncSystem The async system used to do work in threads. + * @param pAssetAccessor The asset accessor used to request the schema from + * the schemaUri. + * @return A future that resolves when the schema has been loaded from the + * schemaUri. + */ + CesiumAsync::SharedFuture& loadSchemaUri( + const CesiumAsync::AsyncSystem& asyncSystem, + const std::shared_ptr& pAssetAccessor); + +private: + std::optional> _loadingFuture; + std::optional _loadingSchemaUri; + std::shared_ptr _pLoadingCanceled; }; } // namespace Cesium3DTilesSelection diff --git a/Cesium3DTilesSelection/src/Tileset.cpp b/Cesium3DTilesSelection/src/Tileset.cpp index 95814932e..6666f222d 100644 --- a/Cesium3DTilesSelection/src/Tileset.cpp +++ b/Cesium3DTilesSelection/src/Tileset.cpp @@ -43,6 +43,9 @@ Tileset::Tileset( _previousFrameNumber(0), _distances(), _childOcclusionProxies(), + _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, + _rootTileAvailableFuture{ + this->_rootTileAvailablePromise.getFuture().share()}, _pTilesetContentManager{new TilesetContentManager( _externals, _options, @@ -61,6 +64,9 @@ Tileset::Tileset( _previousFrameNumber(0), _distances(), _childOcclusionProxies(), + _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, + _rootTileAvailableFuture{ + this->_rootTileAvailablePromise.getFuture().share()}, _pTilesetContentManager{new TilesetContentManager( _externals, _options, @@ -79,6 +85,9 @@ Tileset::Tileset( _previousFrameNumber(0), _distances(), _childOcclusionProxies(), + _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, + _rootTileAvailableFuture{ + this->_rootTileAvailablePromise.getFuture().share()}, _pTilesetContentManager{new TilesetContentManager( _externals, _options, @@ -87,10 +96,6 @@ Tileset::Tileset( ionAccessToken, ionAssetEndpointUrl)} {} -CesiumAsync::SharedFuture& Tileset::getAsyncDestructionCompleteEvent() { - return this->_pTilesetContentManager->getAsyncDestructionCompleteEvent(); -} - Tileset::~Tileset() noexcept { this->_pTilesetContentManager->unloadAll(); if (this->_externals.pTileOcclusionProxyPool) { @@ -98,6 +103,14 @@ Tileset::~Tileset() noexcept { } } +CesiumAsync::SharedFuture& Tileset::getAsyncDestructionCompleteEvent() { + return this->_pTilesetContentManager->getAsyncDestructionCompleteEvent(); +} + +CesiumAsync::SharedFuture& Tileset::getRootTileAvailableEvent() { + return this->_rootTileAvailableFuture; +} + const std::vector& Tileset::getTilesetCredits() const noexcept { return this->_pTilesetContentManager->getTilesetCredits(); } @@ -454,7 +467,7 @@ int64_t Tileset::getTotalDataBytes() const noexcept { return this->_pTilesetContentManager->getTotalDataUsed(); } -const TilesetMetadata* Tileset::findMetadata(const Tile* pTile) const { +const TilesetMetadata* Tileset::getMetadata(const Tile* pTile) const { if (pTile == nullptr) { pTile = this->getRootTile(); } @@ -470,6 +483,45 @@ const TilesetMetadata* Tileset::findMetadata(const Tile* pTile) const { return nullptr; } +CesiumAsync::Future Tileset::loadMetadata() { + return this->getRootTileAvailableEvent().thenInMainThread( + [pManager = this->_pTilesetContentManager, + pAssetAccessor = this->_externals.pAssetAccessor, + asyncSystem = + this->getAsyncSystem()]() -> Future { + Tile* pRoot = pManager->getRootTile(); + assert(pRoot); + + TileExternalContent* pExternal = + pRoot->getContent().getExternalContent(); + if (!pExternal) { + return asyncSystem.createResolvedFuture( + nullptr); + } + + TilesetMetadata& metadata = pExternal->metadata; + if (!metadata.schemaUri) { + // No schema URI, so the metadata is ready to go. + return asyncSystem.createResolvedFuture( + &metadata); + } + + return metadata.loadSchemaUri(asyncSystem, pAssetAccessor) + .thenInMainThread( + [pManager, pAssetAccessor]() -> const TilesetMetadata* { + Tile* pRoot = pManager->getRootTile(); + assert(pRoot); + + TileExternalContent* pExternal = + pRoot->getContent().getExternalContent(); + if (!pExternal) { + return nullptr; + } + return &pExternal->metadata; + }); + }); +} + static void markTileNonRendered( TileSelectionState::Result lastResult, Tile& tile, diff --git a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp index ddc563455..e6433575d 100644 --- a/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/src/TilesetJsonLoader.cpp @@ -625,6 +625,7 @@ TilesetContentLoaderResult parseTilesetJson( } void parseTilesetMetadata( + const std::string& baseUrl, const rapidjson::Document& tilesetJson, TileExternalContent& externalContent) { auto schemaIt = tilesetJson.FindMember("schema"); @@ -638,7 +639,8 @@ void parseTilesetMetadata( auto schemaUriIt = tilesetJson.FindMember("schemaUri"); if (schemaUriIt != tilesetJson.MemberEnd() && schemaUriIt->value.IsString()) { - externalContent.metadata.schemaUri = schemaUriIt->value.GetString(); + externalContent.metadata.schemaUri = + CesiumUtility::Uri::resolve(baseUrl, schemaUriIt->value.GetString()); } const auto metadataIt = tilesetJson.FindMember("metadata"); @@ -697,7 +699,10 @@ TileLoadResult parseExternalTilesetInWorkerThread( tileRefine); // Populate the root tile with metadata - parseTilesetMetadata(tilesetJson, externalContentInitializer.externalContent); + parseTilesetMetadata( + tileUrl, + tilesetJson, + externalContentInitializer.externalContent); // check and log any errors const auto& errors = externalTilesetLoader.errors; @@ -817,7 +822,7 @@ TilesetContentLoaderResult TilesetJsonLoader::createLoader( result.pRootTile->getContent().getExternalContent(); assert(pExternal); if (pExternal) { - parseTilesetMetadata(tilesetJson, *pExternal); + parseTilesetMetadata(tilesetJsonUrl, tilesetJson, *pExternal); } return result; diff --git a/Cesium3DTilesSelection/src/TilesetMetadata.cpp b/Cesium3DTilesSelection/src/TilesetMetadata.cpp new file mode 100644 index 000000000..a42c76eea --- /dev/null +++ b/Cesium3DTilesSelection/src/TilesetMetadata.cpp @@ -0,0 +1,93 @@ +#include +#include +#include +#include +#include +#include + +using namespace CesiumAsync; +using namespace Cesium3DTilesReader; +using namespace CesiumUtility; + +namespace Cesium3DTilesSelection { + +TilesetMetadata::~TilesetMetadata() noexcept { + if (this->_pLoadingCanceled) { + *this->_pLoadingCanceled = true; + } +} + +SharedFuture& TilesetMetadata::loadSchemaUri( + const AsyncSystem& asyncSystem, + const std::shared_ptr& pAssetAccessor) { + if (!this->_loadingFuture || this->_loadingSchemaUri != this->schemaUri) { + this->_loadingSchemaUri = this->schemaUri; + + if (this->_pLoadingCanceled) { + *this->_pLoadingCanceled = true; + this->_pLoadingCanceled.reset(); + } + + if (!this->schemaUri) { + this->_loadingFuture = asyncSystem.createResolvedFuture().share(); + } else { + std::shared_ptr pLoadingCanceled = std::make_shared(false); + this->_pLoadingCanceled = pLoadingCanceled; + this->_loadingFuture = + pAssetAccessor->get(asyncSystem, *this->schemaUri) + .thenInMainThread([pLoadingCanceled, this, asyncSystem]( + std::shared_ptr&& pRequest) { + Promise promise = asyncSystem.createPromise(); + + if (*pLoadingCanceled) { + promise.reject(std::runtime_error(fmt::format( + "Loading of schema URI {} was canceled.", + pRequest->url()))); + return promise.getFuture(); + } + + const IAssetResponse* pResponse = pRequest->response(); + if (!pResponse) { + promise.reject(std::runtime_error(fmt::format( + "Did not receive a valid response for schema URI {}", + pRequest->url()))); + return promise.getFuture(); + } + + uint16_t statusCode = pResponse->statusCode(); + if (statusCode != 0 && + (statusCode < 200 || statusCode >= 300)) { + promise.reject(std::runtime_error(fmt::format( + "Received status code {} for schema URI {}.", + statusCode, + pRequest->url()))); + return promise.getFuture(); + } + + SchemaReader reader; + auto result = reader.readFromJson(pResponse->data()); + if (!result.value) { + std::string errors = + CesiumUtility::joinToString(result.errors, "\n - "); + if (!errors.empty()) { + errors = " Errors:\n - " + errors; + } + promise.reject(std::runtime_error(fmt::format( + "Error reading Schema from {}.{}", + pRequest->url(), + errors))); + } + + this->schema = std::move(*result.value); + + promise.resolve(); + return promise.getFuture(); + }) + .share(); + } + } + + return *this->_loadingFuture; +} + +} // namespace Cesium3DTilesSelection diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 51138bbea..5c87495e2 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1253,7 +1253,7 @@ TEST_CASE("Allows access to material variants") { Tileset tileset(tilesetExternals, "tileset.json"); initializeTileset(tileset); - const TilesetMetadata* pMetadata = tileset.findMetadata(); + const TilesetMetadata* pMetadata = tileset.getMetadata(); REQUIRE(pMetadata); REQUIRE(pMetadata->schema); REQUIRE(pMetadata->metadata); From 6145b547a69d37a1d0c4049a1588c47a949a9e77 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 28 Aug 2023 17:48:56 +1000 Subject: [PATCH 21/29] Update CHANGES.md. --- CHANGES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 40100dbb4..c7b71fb7a 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -18,7 +18,7 @@ - Added `*Reader` classes to `CesiumGltfReader` and `Cesium3DTilesReader` to allow each of the classes to be individually read from JSON. - Added `getExternalContent` method to the `TileContent` class. - `TileExternalContent` now holds the metadata (`schema`, `schemaUri`, `metadata`, and `groups`) stored in the tileset.json. -- Added `findMetadata` method to `Cesium3DTilesSelection::Tileset`. It returns a `TilesetMetadata` instance representing the metadata associated with a tileset.json. +- Added `loadMetadata` and `getMetadata` methods to `Cesium3DTilesSelection::Tileset`. They provide access to `TilesetMetadata` instance representing the metadata associated with a tileset.json. - Added `MetadataQuery` class to make it easier to find properties with specific semantics in `TilesetMetadata`. ### v0.27.0 - 2023-09-01 From 51e798e4ea2076507474e6020cdede006ee4416a Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 28 Aug 2023 18:24:08 +1000 Subject: [PATCH 22/29] Add test for async schema loading. --- .../include/Cesium3DTilesSelection/Tileset.h | 3 - Cesium3DTilesSelection/src/Tileset.cpp | 11 +- .../src/TilesetContentManager.cpp | 32 +++- .../src/TilesetContentManager.h | 10 + .../test/TestTilesetSelectionAlgorithm.cpp | 180 ++++++++++++++++++ .../test/data/MaterialVariants/schema.json | 14 ++ .../tileset-external-schema.json | 76 ++++++++ 7 files changed, 308 insertions(+), 18 deletions(-) create mode 100644 Cesium3DTilesSelection/test/data/MaterialVariants/schema.json create mode 100644 Cesium3DTilesSelection/test/data/MaterialVariants/tileset-external-schema.json diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h index 335ec1bcc..0b5573d83 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h @@ -494,9 +494,6 @@ class CESIUM3DTILESSELECTION_API Tileset final { // scratch variable so that it can allocate only when growing bigger. std::vector _childOcclusionProxies; - CesiumAsync::Promise _rootTileAvailablePromise; - CesiumAsync::SharedFuture _rootTileAvailableFuture; - CesiumUtility::IntrusivePointer _pTilesetContentManager; diff --git a/Cesium3DTilesSelection/src/Tileset.cpp b/Cesium3DTilesSelection/src/Tileset.cpp index 6666f222d..138849c6f 100644 --- a/Cesium3DTilesSelection/src/Tileset.cpp +++ b/Cesium3DTilesSelection/src/Tileset.cpp @@ -43,9 +43,6 @@ Tileset::Tileset( _previousFrameNumber(0), _distances(), _childOcclusionProxies(), - _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, - _rootTileAvailableFuture{ - this->_rootTileAvailablePromise.getFuture().share()}, _pTilesetContentManager{new TilesetContentManager( _externals, _options, @@ -64,9 +61,6 @@ Tileset::Tileset( _previousFrameNumber(0), _distances(), _childOcclusionProxies(), - _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, - _rootTileAvailableFuture{ - this->_rootTileAvailablePromise.getFuture().share()}, _pTilesetContentManager{new TilesetContentManager( _externals, _options, @@ -85,9 +79,6 @@ Tileset::Tileset( _previousFrameNumber(0), _distances(), _childOcclusionProxies(), - _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, - _rootTileAvailableFuture{ - this->_rootTileAvailablePromise.getFuture().share()}, _pTilesetContentManager{new TilesetContentManager( _externals, _options, @@ -108,7 +99,7 @@ CesiumAsync::SharedFuture& Tileset::getAsyncDestructionCompleteEvent() { } CesiumAsync::SharedFuture& Tileset::getRootTileAvailableEvent() { - return this->_rootTileAvailableFuture; + return this->_pTilesetContentManager->getRootTileAvailableEvent(); } const std::vector& Tileset::getTilesetCredits() const noexcept { diff --git a/Cesium3DTilesSelection/src/TilesetContentManager.cpp b/Cesium3DTilesSelection/src/TilesetContentManager.cpp index 699aef4eb..ee315ddfe 100644 --- a/Cesium3DTilesSelection/src/TilesetContentManager.cpp +++ b/Cesium3DTilesSelection/src/TilesetContentManager.cpp @@ -599,7 +599,12 @@ TilesetContentManager::TilesetContentManager( _tilesDataUsed{0}, _destructionCompletePromise{externals.asyncSystem.createPromise()}, _destructionCompleteFuture{ - this->_destructionCompletePromise.getFuture().share()} {} + this->_destructionCompletePromise.getFuture().share()}, + _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, + _rootTileAvailableFuture{ + this->_rootTileAvailablePromise.getFuture().share()} { + this->_rootTileAvailablePromise.resolve(); +} TilesetContentManager::TilesetContentManager( const TilesetExternals& externals, @@ -623,7 +628,10 @@ TilesetContentManager::TilesetContentManager( _tilesDataUsed{0}, _destructionCompletePromise{externals.asyncSystem.createPromise()}, _destructionCompleteFuture{ - this->_destructionCompletePromise.getFuture().share()} { + this->_destructionCompletePromise.getFuture().share()}, + _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, + _rootTileAvailableFuture{ + this->_rootTileAvailablePromise.getFuture().share()} { if (!url.empty()) { this->notifyTileStartLoading(nullptr); @@ -721,13 +729,16 @@ TilesetContentManager::TilesetContentManager( TilesetLoadType::TilesetJson, errorCallback, std::move(result)); + thiz->_rootTileAvailablePromise.resolve(); }) .catchInMainThread([thiz](std::exception&& e) { thiz->notifyTileDoneLoading(nullptr); SPDLOG_LOGGER_ERROR( thiz->_externals.pLogger, - "An unexpected error occurs when loading tile: {}", + "An unexpected error occurred when loading tile: {}", e.what()); + thiz->_rootTileAvailablePromise.reject( + std::runtime_error("Root tile failed to load.")); }); } } @@ -756,7 +767,10 @@ TilesetContentManager::TilesetContentManager( _tilesDataUsed{0}, _destructionCompletePromise{externals.asyncSystem.createPromise()}, _destructionCompleteFuture{ - this->_destructionCompletePromise.getFuture().share()} { + this->_destructionCompletePromise.getFuture().share()}, + _rootTileAvailablePromise{externals.asyncSystem.createPromise()}, + _rootTileAvailableFuture{ + this->_rootTileAvailablePromise.getFuture().share()} { if (ionAssetID > 0) { auto authorizationChangeListener = [this]( const std::string& header, @@ -793,13 +807,16 @@ TilesetContentManager::TilesetContentManager( TilesetLoadType::CesiumIon, errorCallback, std::move(result)); + thiz->_rootTileAvailablePromise.resolve(); }) .catchInMainThread([thiz](std::exception&& e) { thiz->notifyTileDoneLoading(nullptr); SPDLOG_LOGGER_ERROR( thiz->_externals.pLogger, - "An unexpected error occurs when loading tile: {}", + "An unexpected error occurred when loading tile: {}", e.what()); + thiz->_rootTileAvailablePromise.reject( + std::runtime_error("Root tile failed to load.")); }); } } @@ -809,6 +826,11 @@ TilesetContentManager::getAsyncDestructionCompleteEvent() { return this->_destructionCompleteFuture; } +CesiumAsync::SharedFuture& +TilesetContentManager::getRootTileAvailableEvent() { + return this->_rootTileAvailableFuture; +} + TilesetContentManager::~TilesetContentManager() noexcept { assert(this->_tileLoadsInProgress == 0); this->unloadAll(); diff --git a/Cesium3DTilesSelection/src/TilesetContentManager.h b/Cesium3DTilesSelection/src/TilesetContentManager.h index 355fd82a2..273db7cb5 100644 --- a/Cesium3DTilesSelection/src/TilesetContentManager.h +++ b/Cesium3DTilesSelection/src/TilesetContentManager.h @@ -51,6 +51,13 @@ class TilesetContentManager */ CesiumAsync::SharedFuture& getAsyncDestructionCompleteEvent(); + /** + * @brief A future that resolves when the details of the root tile of this + * tileset are available. The root tile's content (e.g., 3D model), however, + * will not necessarily be loaded yet. + */ + CesiumAsync::SharedFuture& getRootTileAvailableEvent(); + ~TilesetContentManager() noexcept; void loadTileContent(Tile& tile, const TilesetOptions& tilesetOptions); @@ -146,5 +153,8 @@ class TilesetContentManager CesiumAsync::Promise _destructionCompletePromise; CesiumAsync::SharedFuture _destructionCompleteFuture; + + CesiumAsync::Promise _rootTileAvailablePromise; + CesiumAsync::SharedFuture _rootTileAvailableFuture; }; } // namespace Cesium3DTilesSelection diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 5c87495e2..1f00eef8f 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1312,6 +1312,186 @@ TEST_CASE("Allows access to material variants") { CHECK(variantsByGroup == expected); } +TEST_CASE("Allows access to material variants in an external schema") { + Cesium3DTilesSelection::registerAllTileContentTypes(); + + std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; + testDataPath = testDataPath / "MaterialVariants"; + std::vector files{ + "tileset-external-schema.json", + "schema.json", + "parent.b3dm"}; + + std::map> + mockCompletedRequests; + for (const auto& file : files) { + std::unique_ptr mockCompletedResponse = + std::make_unique( + static_cast(200), + "doesn't matter", + CesiumAsync::HttpHeaders{}, + readFile(testDataPath / file)); + mockCompletedRequests.insert( + {file, + std::make_shared( + "GET", + file, + CesiumAsync::HttpHeaders{}, + std::move(mockCompletedResponse))}); + } + + std::shared_ptr mockAssetAccessor = + std::make_shared(std::move(mockCompletedRequests)); + TilesetExternals tilesetExternals{ + mockAssetAccessor, + std::make_shared(), + AsyncSystem(std::make_shared()), + nullptr}; + + Tileset tileset(tilesetExternals, "tileset-external-schema.json"); + + // getMetadata returns nullptr before the root tile is loaded. + CHECK(tileset.getMetadata() == nullptr); + + bool wasCalled = false; + tileset.loadMetadata().thenInMainThread( + [&wasCalled](const TilesetMetadata* pMetadata) { + wasCalled = true; + REQUIRE(pMetadata); + REQUIRE(pMetadata->schema); + REQUIRE(pMetadata->metadata); + + std::optional found1 = + Cesium3DTiles::MetadataQuery::findFirstPropertyWithSemantic( + *pMetadata->schema, + *pMetadata->metadata, + "MATERIAL_VARIANTS"); + REQUIRE(found1); + CHECK(found1->classIdentifier == "MaterialVariants"); + CHECK(found1->classDefinition.properties.size() == 1); + CHECK(found1->propertyIdentifier == "material_variants"); + CHECK( + found1->propertyDefinition.description == + "Names of material variants to be expected in the glTF assets"); + REQUIRE(found1->propertyValue.isArray()); + + const JsonValue::Array& variantsJson = found1->propertyValue.getArray(); + std::vector variants(variantsJson.size()); + std::transform( + variantsJson.begin(), + variantsJson.end(), + variants.begin(), + [](const JsonValue& value) { + return value.getStringOrDefault(""); + }); + REQUIRE(variants.size() == 4); + CHECK(variants[0] == "RGB"); + CHECK(variants[1] == "RRR"); + CHECK(variants[2] == "GGG"); + CHECK(variants[3] == "BBB"); + + std::vector> variantsByGroup; + for (const Cesium3DTiles::GroupMetadata& group : pMetadata->groups) { + std::vector& groupVariants = + variantsByGroup.emplace_back(); + + std::optional found2 = + Cesium3DTiles::MetadataQuery::findFirstPropertyWithSemantic( + *pMetadata->schema, + group, + "MATERIAL_VARIANTS"); + REQUIRE(found2); + REQUIRE(found2->propertyValue.isArray()); + + const JsonValue::Array& groupVariantsJson = + found2->propertyValue.getArray(); + groupVariants.reserve(groupVariantsJson.size()); + for (size_t i = 0; i < groupVariantsJson.size(); ++i) { + groupVariants.emplace_back( + groupVariantsJson[i].getStringOrDefault("")); + } + } + + std::vector> expected = { + {"RGB", "RRR"}, + {"GGG", "BBB"}}; + + CHECK(variantsByGroup == expected); + }); + + CHECK(!wasCalled); + initializeTileset(tileset); + CHECK(wasCalled); +} + +TEST_CASE("Future from loadSchema rejects if schemaUri can't be loaded") { + Cesium3DTilesSelection::registerAllTileContentTypes(); + + std::filesystem::path testDataPath = Cesium3DTilesSelection_TEST_DATA_DIR; + testDataPath = testDataPath / "MaterialVariants"; + std::vector files{"tileset-external-schema.json", "parent.b3dm"}; + + std::map> + mockCompletedRequests; + for (const auto& file : files) { + std::unique_ptr mockCompletedResponse = + std::make_unique( + static_cast(200), + "doesn't matter", + CesiumAsync::HttpHeaders{}, + readFile(testDataPath / file)); + mockCompletedRequests.insert( + {file, + std::make_shared( + "GET", + file, + CesiumAsync::HttpHeaders{}, + std::move(mockCompletedResponse))}); + } + + mockCompletedRequests.insert( + {"schema.json", + std::make_shared( + "GET", + "schema.json", + CesiumAsync::HttpHeaders{}, + std::make_unique( + 404, + "doesn't matter", + CesiumAsync::HttpHeaders{}, + std::vector()))}); + + std::shared_ptr mockAssetAccessor = + std::make_shared(std::move(mockCompletedRequests)); + TilesetExternals tilesetExternals{ + mockAssetAccessor, + std::make_shared(), + AsyncSystem(std::make_shared()), + nullptr}; + + Tileset tileset(tilesetExternals, "tileset-external-schema.json"); + + // getMetadata returns nullptr before the root tile is loaded. + CHECK(tileset.getMetadata() == nullptr); + + bool wasResolved = false; + bool wasRejected = false; + tileset.loadMetadata() + .thenInMainThread( + [&wasResolved](const TilesetMetadata*) { wasResolved = true; }) + .catchInMainThread([&wasRejected](const std::exception& exception) { + CHECK(std::string(exception.what()).find("") != std::string::npos); + wasRejected = true; + }); + + CHECK(!wasResolved); + CHECK(!wasRejected); + + initializeTileset(tileset); + CHECK(!wasResolved); + CHECK(wasRejected); +} + namespace { void runUnconditionallyRefinedTestCase(const TilesetOptions& options) { diff --git a/Cesium3DTilesSelection/test/data/MaterialVariants/schema.json b/Cesium3DTilesSelection/test/data/MaterialVariants/schema.json new file mode 100644 index 000000000..3a7004d29 --- /dev/null +++ b/Cesium3DTilesSelection/test/data/MaterialVariants/schema.json @@ -0,0 +1,14 @@ +{ + "classes": { + "MaterialVariants": { + "properties": { + "material_variants": { + "type": "STRING", + "array": true, + "description": "Names of material variants to be expected in the glTF assets", + "semantic": "MATERIAL_VARIANTS" + } + } + } + } +} diff --git a/Cesium3DTilesSelection/test/data/MaterialVariants/tileset-external-schema.json b/Cesium3DTilesSelection/test/data/MaterialVariants/tileset-external-schema.json new file mode 100644 index 000000000..6fcbf8ff0 --- /dev/null +++ b/Cesium3DTilesSelection/test/data/MaterialVariants/tileset-external-schema.json @@ -0,0 +1,76 @@ +{ + "asset": { + "version": "1.0", + "tilesetVersion": "1.2.3" + }, + "extras": { + "name": "Sample Tileset" + }, + "properties": { + "id": { + "minimum": 0, + "maximum": 9 + }, + "Longitude": { + "minimum": -1.3197192952275933, + "maximum": -1.319644104024109 + }, + "Latitude": { + "minimum": 0.698848878034009, + "maximum": 0.6989046192460953 + }, + "Height": { + "minimum": 6.161747192963958, + "maximum": 85.41026367992163 + } + }, + "schemaUri": "schema.json", + "metadata": { + "class": "MaterialVariants", + "properties": { + "material_variants": ["RGB", "RRR", "GGG", "BBB"] + } + }, + "groups": [ + { + "class": "MaterialVariants", + "properties": { + "material_variants": ["RGB", "RRR"] + } + }, + { + "class": "MaterialVariants", + "properties": { + "material_variants": ["GGG", "BBB"] + } + } + ], + "geometricError": 240, + "root": { + "boundingVolume": { + "region": [ + -1.3197209591796106, + 0.6988424218, + -1.3196390408203893, + 0.6989055782, + 0, + 88 + ] + }, + "geometricError": 70, + "refine": "ADD", + "content": { + "uri": "parent.b3dm", + "boundingVolume": { + "region": [ + -1.3197004795898053, + 0.6988582109, + -1.3196595204101946, + 0.6988897891, + 0, + 88 + ] + } + } + } +} From 946887abe7dea03f4b0e3fd83b100fd946a19bae Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 28 Aug 2023 18:41:25 +1000 Subject: [PATCH 23/29] Add getArrayOfStrings helper to JsonValue. --- .../test/TestTilesetSelectionAlgorithm.cpp | 42 ++++--------------- .../include/CesiumUtility/JsonValue.h | 11 +++++ CesiumUtility/src/JsonValue.cpp | 18 ++++++++ 3 files changed, 36 insertions(+), 35 deletions(-) diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 1f00eef8f..b15d113ac 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1272,13 +1272,8 @@ TEST_CASE("Allows access to material variants") { "Names of material variants to be expected in the glTF assets"); REQUIRE(found1->propertyValue.isArray()); - const JsonValue::Array& variantsJson = found1->propertyValue.getArray(); - std::vector variants(variantsJson.size()); - std::transform( - variantsJson.begin(), - variantsJson.end(), - variants.begin(), - [](const JsonValue& value) { return value.getStringOrDefault(""); }); + std::vector variants = + found1->propertyValue.getArrayOfStrings(""); REQUIRE(variants.size() == 4); CHECK(variants[0] == "RGB"); CHECK(variants[1] == "RRR"); @@ -1287,8 +1282,6 @@ TEST_CASE("Allows access to material variants") { std::vector> variantsByGroup; for (const Cesium3DTiles::GroupMetadata& group : pMetadata->groups) { - std::vector& groupVariants = variantsByGroup.emplace_back(); - std::optional found2 = Cesium3DTiles::MetadataQuery::findFirstPropertyWithSemantic( *pMetadata->schema, @@ -1297,12 +1290,7 @@ TEST_CASE("Allows access to material variants") { REQUIRE(found2); REQUIRE(found2->propertyValue.isArray()); - const JsonValue::Array& groupVariantsJson = - found2->propertyValue.getArray(); - groupVariants.reserve(groupVariantsJson.size()); - for (size_t i = 0; i < groupVariantsJson.size(); ++i) { - groupVariants.emplace_back(groupVariantsJson[i].getStringOrDefault("")); - } + variantsByGroup.emplace_back(found2->propertyValue.getArrayOfStrings("")); } std::vector> expected = { @@ -1375,15 +1363,8 @@ TEST_CASE("Allows access to material variants in an external schema") { "Names of material variants to be expected in the glTF assets"); REQUIRE(found1->propertyValue.isArray()); - const JsonValue::Array& variantsJson = found1->propertyValue.getArray(); - std::vector variants(variantsJson.size()); - std::transform( - variantsJson.begin(), - variantsJson.end(), - variants.begin(), - [](const JsonValue& value) { - return value.getStringOrDefault(""); - }); + std::vector variants = + found1->propertyValue.getArrayOfStrings(""); REQUIRE(variants.size() == 4); CHECK(variants[0] == "RGB"); CHECK(variants[1] == "RRR"); @@ -1392,9 +1373,6 @@ TEST_CASE("Allows access to material variants in an external schema") { std::vector> variantsByGroup; for (const Cesium3DTiles::GroupMetadata& group : pMetadata->groups) { - std::vector& groupVariants = - variantsByGroup.emplace_back(); - std::optional found2 = Cesium3DTiles::MetadataQuery::findFirstPropertyWithSemantic( *pMetadata->schema, @@ -1402,14 +1380,8 @@ TEST_CASE("Allows access to material variants in an external schema") { "MATERIAL_VARIANTS"); REQUIRE(found2); REQUIRE(found2->propertyValue.isArray()); - - const JsonValue::Array& groupVariantsJson = - found2->propertyValue.getArray(); - groupVariants.reserve(groupVariantsJson.size()); - for (size_t i = 0; i < groupVariantsJson.size(); ++i) { - groupVariants.emplace_back( - groupVariantsJson[i].getStringOrDefault("")); - } + variantsByGroup.emplace_back( + found2->propertyValue.getArrayOfStrings("")); } std::vector> expected = { diff --git a/CesiumUtility/include/CesiumUtility/JsonValue.h b/CesiumUtility/include/CesiumUtility/JsonValue.h index 47773ed14..26c305e51 100644 --- a/CesiumUtility/include/CesiumUtility/JsonValue.h +++ b/CesiumUtility/include/CesiumUtility/JsonValue.h @@ -421,6 +421,17 @@ class CESIUMUTILITY_API JsonValue final { return std::get(this->value); } + /** + * @brief Gets an array of strings from the value. + * + * @param defaultString The default string to include in the array for an + * element that is not a string. + * @return The array of strings, or an empty array if this value is not an + * array at all. + */ + [[nodiscard]] std::vector + getArrayOfStrings(const std::string& defaultString) const; + /** * @brief Gets the bool from the value. * @return The bool. diff --git a/CesiumUtility/src/JsonValue.cpp b/CesiumUtility/src/JsonValue.cpp index 6c0c8515c..96e1f86cd 100644 --- a/CesiumUtility/src/JsonValue.cpp +++ b/CesiumUtility/src/JsonValue.cpp @@ -1,5 +1,7 @@ #include "CesiumUtility/JsonValue.h" +#include + namespace CesiumUtility { const JsonValue* JsonValue::getValuePtrForKey(const std::string& key) const { @@ -31,3 +33,19 @@ JsonValue* JsonValue::getValuePtrForKey(const std::string& key) { } } // namespace CesiumUtility +std::vector CesiumUtility::JsonValue::getArrayOfStrings( + const std::string& defaultString) const { + if (!this->isArray()) + return std::vector(); + + const JsonValue::Array& array = this->getArray(); + std::vector result(array.size()); + std::transform( + array.begin(), + array.end(), + result.begin(), + [&defaultString](const JsonValue& value) { + return value.getStringOrDefault(defaultString); + }); + return result; +} From 5bf8a7b10e4c424eb2bb95cc7afab3a596f20e6f Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 28 Aug 2023 19:13:46 +1000 Subject: [PATCH 24/29] struct -> class --- Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h index 0b5573d83..27fca4d01 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h @@ -22,7 +22,7 @@ namespace Cesium3DTilesSelection { class TilesetContentManager; -struct TilesetMetadata; +class TilesetMetadata; /** * @brief A Date: Mon, 28 Aug 2023 19:22:41 +1000 Subject: [PATCH 25/29] Fix clang warning. --- CesiumUtility/src/JsonValue.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CesiumUtility/src/JsonValue.cpp b/CesiumUtility/src/JsonValue.cpp index 96e1f86cd..2323e632c 100644 --- a/CesiumUtility/src/JsonValue.cpp +++ b/CesiumUtility/src/JsonValue.cpp @@ -44,8 +44,8 @@ std::vector CesiumUtility::JsonValue::getArrayOfStrings( array.begin(), array.end(), result.begin(), - [&defaultString](const JsonValue& value) { - return value.getStringOrDefault(defaultString); + [&defaultString](const JsonValue& arrayValue) { + return arrayValue.getStringOrDefault(defaultString); }); return result; } From 3f4034101baa8ef7f5c9b09a08debd8de97f1fa4 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Mon, 28 Aug 2023 21:07:29 +1000 Subject: [PATCH 26/29] Fix VS2017/2019 warning. --- Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index b15d113ac..b3a67f5e8 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1428,7 +1428,7 @@ TEST_CASE("Future from loadSchema rejects if schemaUri can't be loaded") { "schema.json", CesiumAsync::HttpHeaders{}, std::make_unique( - 404, + static_cast(404), "doesn't matter", CesiumAsync::HttpHeaders{}, std::vector()))}); From 7c8f4b1473c1103baee348ea8fcfe49c01c5f1b8 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Thu, 31 Aug 2023 09:23:30 +1000 Subject: [PATCH 27/29] Fix test failures, change some CHECK to REQUIRE. --- Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp | 6 +++--- .../test/TestTilesetSelectionAlgorithm.cpp | 9 +++++---- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp index 4559e583d..64f370bdf 100644 --- a/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetJsonLoader.cpp @@ -124,7 +124,7 @@ TEST_CASE("Test creating tileset json loader") { CHECK(pTilesetJson->getParent() == nullptr); auto pRootTile = &pTilesetJson->getChildren()[0]; CHECK(pRootTile->getParent() == pTilesetJson); - CHECK(pRootTile->getChildren().size() == 4); + REQUIRE(pRootTile->getChildren().size() == 4); CHECK(pRootTile->getGeometricError() == 70.0); CHECK(pRootTile->getRefine() == TileRefine::Replace); CHECK(std::get(pRootTile->getTileID()) == "parent.b3dm"); @@ -364,7 +364,7 @@ TEST_CASE("Test creating tileset json loader") { REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; CHECK(pRootTile->isExternalContent()); - CHECK(pRootTile->getChildren().size() == 1); + REQUIRE(pRootTile->getChildren().size() == 1); CHECK(pRootTile->getTransform() == glm::dmat4(glm::dmat3(2.0))); const Tile& child = pRootTile->getChildren().front(); @@ -387,7 +387,7 @@ TEST_CASE("Test creating tileset json loader") { REQUIRE(loaderResult.pRootTile->getChildren().size() == 1); auto pRootTile = &loaderResult.pRootTile->getChildren()[0]; CHECK(pRootTile->isExternalContent()); - CHECK(pRootTile->getChildren().size() == 1); + REQUIRE(pRootTile->getChildren().size() == 1); CHECK(pRootTile->getTransform() == glm::dmat4(glm::dmat3(2.0))); const Tile& child = pRootTile->getChildren().front(); diff --git a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp index 45db16e03..f8784addc 100644 --- a/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp +++ b/Cesium3DTilesSelection/test/TestTilesetSelectionAlgorithm.cpp @@ -1655,8 +1655,8 @@ TEST_CASE("Additive-refined tiles are added to the tilesFadingOut array") { updateResult = tileset.updateView({viewState}); } - // All three tiles should be rendered. - CHECK(updateResult.tilesToRenderThisFrame.size() == 3); + // All three tiles (plus the tileset.json) should be rendered. + CHECK(updateResult.tilesToRenderThisFrame.size() == 4); // Zoom way out std::optional position = viewState.getPositionCartographic(); @@ -1672,7 +1672,8 @@ TEST_CASE("Additive-refined tiles are added to the tilesFadingOut array") { viewState.getVerticalFieldOfView()); updateResult = tileset.updateView({zoomedOut}); - // Only the root tile is visible now, and the other two are fading out. - CHECK(updateResult.tilesToRenderThisFrame.size() == 1); + // Only the root tile (plus the tileset.json) is visible now, and the other + // two are fading out. + CHECK(updateResult.tilesToRenderThisFrame.size() == 2); CHECK(updateResult.tilesFadingOut.size() == 2); } From 57476c30340b3f10813eda87e4ea60d883967648 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Thu, 31 Aug 2023 09:27:06 +1000 Subject: [PATCH 28/29] Changes from review. --- .../include/Cesium3DTilesSelection/Tileset.h | 2 +- Cesium3DTilesSelection/src/TileContent.cpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h index 27fca4d01..5d959320f 100644 --- a/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h +++ b/Cesium3DTilesSelection/include/Cesium3DTilesSelection/Tileset.h @@ -253,7 +253,7 @@ class CESIUM3DTILESSELECTION_API Tileset final { * reject. * * @return A shared future that resolves to the loaded metadata. Once this - * future resolves, {@link findMetadata} can be used to synchronously obtain + * future resolves, {@link getMetadata} can be used to synchronously obtain * the same metadata instance. */ CesiumAsync::Future loadMetadata(); diff --git a/Cesium3DTilesSelection/src/TileContent.cpp b/Cesium3DTilesSelection/src/TileContent.cpp index 59813c2fd..8ab531ca3 100644 --- a/Cesium3DTilesSelection/src/TileContent.cpp +++ b/Cesium3DTilesSelection/src/TileContent.cpp @@ -137,10 +137,10 @@ TileRenderContent* TileContent::getRenderContent() noexcept { } const TileExternalContent* TileContent::getExternalContent() const noexcept { - const std::unique_ptr* pRenderContent = + const std::unique_ptr* pExternalContent = std::get_if>(&this->_contentKind); - if (pRenderContent) { - return pRenderContent->get(); + if (pExternalContent) { + return pExternalContent->get(); } return nullptr; From a2d5b92ea8aca8f90fc28c56b7bf702ddbd4f549 Mon Sep 17 00:00:00 2001 From: Kevin Ring Date: Thu, 31 Aug 2023 09:28:36 +1000 Subject: [PATCH 29/29] Fix misnaming. --- Cesium3DTilesSelection/src/TileContent.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Cesium3DTilesSelection/src/TileContent.cpp b/Cesium3DTilesSelection/src/TileContent.cpp index 8ab531ca3..2d357563c 100644 --- a/Cesium3DTilesSelection/src/TileContent.cpp +++ b/Cesium3DTilesSelection/src/TileContent.cpp @@ -147,10 +147,10 @@ const TileExternalContent* TileContent::getExternalContent() const noexcept { } TileExternalContent* TileContent::getExternalContent() noexcept { - std::unique_ptr* pRenderContent = + std::unique_ptr* pExternalContent = std::get_if>(&this->_contentKind); - if (pRenderContent) { - return pRenderContent->get(); + if (pExternalContent) { + return pExternalContent->get(); } return nullptr;