schema_generated.h 390 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543
  1. // automatically generated by the FlatBuffers compiler, do not modify
  2. #ifndef FLATBUFFERS_GENERATED_SCHEMA_OPENCV_TFLITE_H_
  3. #define FLATBUFFERS_GENERATED_SCHEMA_OPENCV_TFLITE_H_
  4. #include "flatbuffers/flatbuffers.h"
  5. // Ensure the included flatbuffers.h is the same version as when this file was
  6. // generated, otherwise it may not be compatible.
  7. static_assert(FLATBUFFERS_VERSION_MAJOR == 23 &&
  8. FLATBUFFERS_VERSION_MINOR == 5 &&
  9. FLATBUFFERS_VERSION_REVISION == 9,
  10. "Non-compatible flatbuffers version included");
  11. namespace opencv_tflite {
  12. struct CustomQuantization;
  13. struct CustomQuantizationBuilder;
  14. struct QuantizationParameters;
  15. struct QuantizationParametersBuilder;
  16. struct Int32Vector;
  17. struct Int32VectorBuilder;
  18. struct Uint16Vector;
  19. struct Uint16VectorBuilder;
  20. struct Uint8Vector;
  21. struct Uint8VectorBuilder;
  22. struct DimensionMetadata;
  23. struct DimensionMetadataBuilder;
  24. struct SparsityParameters;
  25. struct SparsityParametersBuilder;
  26. struct VariantSubType;
  27. struct VariantSubTypeBuilder;
  28. struct Tensor;
  29. struct TensorBuilder;
  30. struct Conv2DOptions;
  31. struct Conv2DOptionsBuilder;
  32. struct Conv3DOptions;
  33. struct Conv3DOptionsBuilder;
  34. struct Pool2DOptions;
  35. struct Pool2DOptionsBuilder;
  36. struct DepthwiseConv2DOptions;
  37. struct DepthwiseConv2DOptionsBuilder;
  38. struct ConcatEmbeddingsOptions;
  39. struct ConcatEmbeddingsOptionsBuilder;
  40. struct LSHProjectionOptions;
  41. struct LSHProjectionOptionsBuilder;
  42. struct SVDFOptions;
  43. struct SVDFOptionsBuilder;
  44. struct RNNOptions;
  45. struct RNNOptionsBuilder;
  46. struct SequenceRNNOptions;
  47. struct SequenceRNNOptionsBuilder;
  48. struct BidirectionalSequenceRNNOptions;
  49. struct BidirectionalSequenceRNNOptionsBuilder;
  50. struct FullyConnectedOptions;
  51. struct FullyConnectedOptionsBuilder;
  52. struct SoftmaxOptions;
  53. struct SoftmaxOptionsBuilder;
  54. struct ConcatenationOptions;
  55. struct ConcatenationOptionsBuilder;
  56. struct AddOptions;
  57. struct AddOptionsBuilder;
  58. struct MulOptions;
  59. struct MulOptionsBuilder;
  60. struct L2NormOptions;
  61. struct L2NormOptionsBuilder;
  62. struct LocalResponseNormalizationOptions;
  63. struct LocalResponseNormalizationOptionsBuilder;
  64. struct LSTMOptions;
  65. struct LSTMOptionsBuilder;
  66. struct UnidirectionalSequenceLSTMOptions;
  67. struct UnidirectionalSequenceLSTMOptionsBuilder;
  68. struct BidirectionalSequenceLSTMOptions;
  69. struct BidirectionalSequenceLSTMOptionsBuilder;
  70. struct ResizeBilinearOptions;
  71. struct ResizeBilinearOptionsBuilder;
  72. struct ResizeNearestNeighborOptions;
  73. struct ResizeNearestNeighborOptionsBuilder;
  74. struct CallOptions;
  75. struct CallOptionsBuilder;
  76. struct PadOptions;
  77. struct PadOptionsBuilder;
  78. struct PadV2Options;
  79. struct PadV2OptionsBuilder;
  80. struct ReshapeOptions;
  81. struct ReshapeOptionsBuilder;
  82. struct SpaceToBatchNDOptions;
  83. struct SpaceToBatchNDOptionsBuilder;
  84. struct BatchToSpaceNDOptions;
  85. struct BatchToSpaceNDOptionsBuilder;
  86. struct SkipGramOptions;
  87. struct SkipGramOptionsBuilder;
  88. struct SpaceToDepthOptions;
  89. struct SpaceToDepthOptionsBuilder;
  90. struct DepthToSpaceOptions;
  91. struct DepthToSpaceOptionsBuilder;
  92. struct SubOptions;
  93. struct SubOptionsBuilder;
  94. struct DivOptions;
  95. struct DivOptionsBuilder;
  96. struct TopKV2Options;
  97. struct TopKV2OptionsBuilder;
  98. struct EmbeddingLookupSparseOptions;
  99. struct EmbeddingLookupSparseOptionsBuilder;
  100. struct GatherOptions;
  101. struct GatherOptionsBuilder;
  102. struct TransposeOptions;
  103. struct TransposeOptionsBuilder;
  104. struct ExpOptions;
  105. struct ExpOptionsBuilder;
  106. struct CosOptions;
  107. struct CosOptionsBuilder;
  108. struct ReducerOptions;
  109. struct ReducerOptionsBuilder;
  110. struct SqueezeOptions;
  111. struct SqueezeOptionsBuilder;
  112. struct SplitOptions;
  113. struct SplitOptionsBuilder;
  114. struct SplitVOptions;
  115. struct SplitVOptionsBuilder;
  116. struct StridedSliceOptions;
  117. struct StridedSliceOptionsBuilder;
  118. struct LogSoftmaxOptions;
  119. struct LogSoftmaxOptionsBuilder;
  120. struct CastOptions;
  121. struct CastOptionsBuilder;
  122. struct DequantizeOptions;
  123. struct DequantizeOptionsBuilder;
  124. struct MaximumMinimumOptions;
  125. struct MaximumMinimumOptionsBuilder;
  126. struct TileOptions;
  127. struct TileOptionsBuilder;
  128. struct ArgMaxOptions;
  129. struct ArgMaxOptionsBuilder;
  130. struct ArgMinOptions;
  131. struct ArgMinOptionsBuilder;
  132. struct GreaterOptions;
  133. struct GreaterOptionsBuilder;
  134. struct GreaterEqualOptions;
  135. struct GreaterEqualOptionsBuilder;
  136. struct LessOptions;
  137. struct LessOptionsBuilder;
  138. struct LessEqualOptions;
  139. struct LessEqualOptionsBuilder;
  140. struct NegOptions;
  141. struct NegOptionsBuilder;
  142. struct SelectOptions;
  143. struct SelectOptionsBuilder;
  144. struct SliceOptions;
  145. struct SliceOptionsBuilder;
  146. struct TransposeConvOptions;
  147. struct TransposeConvOptionsBuilder;
  148. struct ExpandDimsOptions;
  149. struct ExpandDimsOptionsBuilder;
  150. struct SparseToDenseOptions;
  151. struct SparseToDenseOptionsBuilder;
  152. struct EqualOptions;
  153. struct EqualOptionsBuilder;
  154. struct NotEqualOptions;
  155. struct NotEqualOptionsBuilder;
  156. struct ShapeOptions;
  157. struct ShapeOptionsBuilder;
  158. struct RankOptions;
  159. struct RankOptionsBuilder;
  160. struct PowOptions;
  161. struct PowOptionsBuilder;
  162. struct FakeQuantOptions;
  163. struct FakeQuantOptionsBuilder;
  164. struct PackOptions;
  165. struct PackOptionsBuilder;
  166. struct LogicalOrOptions;
  167. struct LogicalOrOptionsBuilder;
  168. struct OneHotOptions;
  169. struct OneHotOptionsBuilder;
  170. struct AbsOptions;
  171. struct AbsOptionsBuilder;
  172. struct HardSwishOptions;
  173. struct HardSwishOptionsBuilder;
  174. struct LogicalAndOptions;
  175. struct LogicalAndOptionsBuilder;
  176. struct LogicalNotOptions;
  177. struct LogicalNotOptionsBuilder;
  178. struct UnpackOptions;
  179. struct UnpackOptionsBuilder;
  180. struct FloorDivOptions;
  181. struct FloorDivOptionsBuilder;
  182. struct SquareOptions;
  183. struct SquareOptionsBuilder;
  184. struct ZerosLikeOptions;
  185. struct ZerosLikeOptionsBuilder;
  186. struct FillOptions;
  187. struct FillOptionsBuilder;
  188. struct FloorModOptions;
  189. struct FloorModOptionsBuilder;
  190. struct RangeOptions;
  191. struct RangeOptionsBuilder;
  192. struct LeakyReluOptions;
  193. struct LeakyReluOptionsBuilder;
  194. struct SquaredDifferenceOptions;
  195. struct SquaredDifferenceOptionsBuilder;
  196. struct MirrorPadOptions;
  197. struct MirrorPadOptionsBuilder;
  198. struct UniqueOptions;
  199. struct UniqueOptionsBuilder;
  200. struct ReverseV2Options;
  201. struct ReverseV2OptionsBuilder;
  202. struct AddNOptions;
  203. struct AddNOptionsBuilder;
  204. struct GatherNdOptions;
  205. struct GatherNdOptionsBuilder;
  206. struct WhereOptions;
  207. struct WhereOptionsBuilder;
  208. struct ReverseSequenceOptions;
  209. struct ReverseSequenceOptionsBuilder;
  210. struct MatrixDiagOptions;
  211. struct MatrixDiagOptionsBuilder;
  212. struct QuantizeOptions;
  213. struct QuantizeOptionsBuilder;
  214. struct MatrixSetDiagOptions;
  215. struct MatrixSetDiagOptionsBuilder;
  216. struct IfOptions;
  217. struct IfOptionsBuilder;
  218. struct CallOnceOptions;
  219. struct CallOnceOptionsBuilder;
  220. struct WhileOptions;
  221. struct WhileOptionsBuilder;
  222. struct NonMaxSuppressionV4Options;
  223. struct NonMaxSuppressionV4OptionsBuilder;
  224. struct NonMaxSuppressionV5Options;
  225. struct NonMaxSuppressionV5OptionsBuilder;
  226. struct ScatterNdOptions;
  227. struct ScatterNdOptionsBuilder;
  228. struct SelectV2Options;
  229. struct SelectV2OptionsBuilder;
  230. struct DensifyOptions;
  231. struct DensifyOptionsBuilder;
  232. struct SegmentSumOptions;
  233. struct SegmentSumOptionsBuilder;
  234. struct BatchMatMulOptions;
  235. struct BatchMatMulOptionsBuilder;
  236. struct CumsumOptions;
  237. struct CumsumOptionsBuilder;
  238. struct BroadcastToOptions;
  239. struct BroadcastToOptionsBuilder;
  240. struct Rfft2dOptions;
  241. struct Rfft2dOptionsBuilder;
  242. struct HashtableOptions;
  243. struct HashtableOptionsBuilder;
  244. struct HashtableFindOptions;
  245. struct HashtableFindOptionsBuilder;
  246. struct HashtableImportOptions;
  247. struct HashtableImportOptionsBuilder;
  248. struct HashtableSizeOptions;
  249. struct HashtableSizeOptionsBuilder;
  250. struct VarHandleOptions;
  251. struct VarHandleOptionsBuilder;
  252. struct ReadVariableOptions;
  253. struct ReadVariableOptionsBuilder;
  254. struct AssignVariableOptions;
  255. struct AssignVariableOptionsBuilder;
  256. struct RandomOptions;
  257. struct RandomOptionsBuilder;
  258. struct BucketizeOptions;
  259. struct BucketizeOptionsBuilder;
  260. struct GeluOptions;
  261. struct GeluOptionsBuilder;
  262. struct DynamicUpdateSliceOptions;
  263. struct DynamicUpdateSliceOptionsBuilder;
  264. struct UnsortedSegmentProdOptions;
  265. struct UnsortedSegmentProdOptionsBuilder;
  266. struct UnsortedSegmentMaxOptions;
  267. struct UnsortedSegmentMaxOptionsBuilder;
  268. struct UnsortedSegmentSumOptions;
  269. struct UnsortedSegmentSumOptionsBuilder;
  270. struct ATan2Options;
  271. struct ATan2OptionsBuilder;
  272. struct UnsortedSegmentMinOptions;
  273. struct UnsortedSegmentMinOptionsBuilder;
  274. struct SignOptions;
  275. struct SignOptionsBuilder;
  276. struct OperatorCode;
  277. struct OperatorCodeBuilder;
  278. struct Operator;
  279. struct OperatorBuilder;
  280. struct SubGraph;
  281. struct SubGraphBuilder;
  282. struct Buffer;
  283. struct BufferBuilder;
  284. struct Metadata;
  285. struct MetadataBuilder;
  286. struct TensorMap;
  287. struct TensorMapBuilder;
  288. struct SignatureDef;
  289. struct SignatureDefBuilder;
  290. struct Model;
  291. struct ModelBuilder;
  292. enum TensorType : int8_t {
  293. TensorType_FLOAT32 = 0,
  294. TensorType_FLOAT16 = 1,
  295. TensorType_INT32 = 2,
  296. TensorType_UINT8 = 3,
  297. TensorType_INT64 = 4,
  298. TensorType_STRING = 5,
  299. TensorType_BOOL = 6,
  300. TensorType_INT16 = 7,
  301. TensorType_COMPLEX64 = 8,
  302. TensorType_INT8 = 9,
  303. TensorType_FLOAT64 = 10,
  304. TensorType_COMPLEX128 = 11,
  305. TensorType_UINT64 = 12,
  306. TensorType_RESOURCE = 13,
  307. TensorType_VARIANT = 14,
  308. TensorType_UINT32 = 15,
  309. TensorType_UINT16 = 16,
  310. TensorType_INT4 = 17,
  311. TensorType_MIN = TensorType_FLOAT32,
  312. TensorType_MAX = TensorType_INT4
  313. };
  314. inline const TensorType (&EnumValuesTensorType())[18] {
  315. static const TensorType values[] = {
  316. TensorType_FLOAT32,
  317. TensorType_FLOAT16,
  318. TensorType_INT32,
  319. TensorType_UINT8,
  320. TensorType_INT64,
  321. TensorType_STRING,
  322. TensorType_BOOL,
  323. TensorType_INT16,
  324. TensorType_COMPLEX64,
  325. TensorType_INT8,
  326. TensorType_FLOAT64,
  327. TensorType_COMPLEX128,
  328. TensorType_UINT64,
  329. TensorType_RESOURCE,
  330. TensorType_VARIANT,
  331. TensorType_UINT32,
  332. TensorType_UINT16,
  333. TensorType_INT4
  334. };
  335. return values;
  336. }
  337. inline const char * const *EnumNamesTensorType() {
  338. static const char * const names[19] = {
  339. "FLOAT32",
  340. "FLOAT16",
  341. "INT32",
  342. "UINT8",
  343. "INT64",
  344. "STRING",
  345. "BOOL",
  346. "INT16",
  347. "COMPLEX64",
  348. "INT8",
  349. "FLOAT64",
  350. "COMPLEX128",
  351. "UINT64",
  352. "RESOURCE",
  353. "VARIANT",
  354. "UINT32",
  355. "UINT16",
  356. "INT4",
  357. nullptr
  358. };
  359. return names;
  360. }
  361. inline const char *EnumNameTensorType(TensorType e) {
  362. if (::flatbuffers::IsOutRange(e, TensorType_FLOAT32, TensorType_INT4)) return "";
  363. const size_t index = static_cast<size_t>(e);
  364. return EnumNamesTensorType()[index];
  365. }
  366. enum QuantizationDetails : uint8_t {
  367. QuantizationDetails_NONE = 0,
  368. QuantizationDetails_CustomQuantization = 1,
  369. QuantizationDetails_MIN = QuantizationDetails_NONE,
  370. QuantizationDetails_MAX = QuantizationDetails_CustomQuantization
  371. };
  372. inline const QuantizationDetails (&EnumValuesQuantizationDetails())[2] {
  373. static const QuantizationDetails values[] = {
  374. QuantizationDetails_NONE,
  375. QuantizationDetails_CustomQuantization
  376. };
  377. return values;
  378. }
  379. inline const char * const *EnumNamesQuantizationDetails() {
  380. static const char * const names[3] = {
  381. "NONE",
  382. "CustomQuantization",
  383. nullptr
  384. };
  385. return names;
  386. }
  387. inline const char *EnumNameQuantizationDetails(QuantizationDetails e) {
  388. if (::flatbuffers::IsOutRange(e, QuantizationDetails_NONE, QuantizationDetails_CustomQuantization)) return "";
  389. const size_t index = static_cast<size_t>(e);
  390. return EnumNamesQuantizationDetails()[index];
  391. }
  392. template<typename T> struct QuantizationDetailsTraits {
  393. static const QuantizationDetails enum_value = QuantizationDetails_NONE;
  394. };
  395. template<> struct QuantizationDetailsTraits<opencv_tflite::CustomQuantization> {
  396. static const QuantizationDetails enum_value = QuantizationDetails_CustomQuantization;
  397. };
  398. bool VerifyQuantizationDetails(::flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type);
  399. bool VerifyQuantizationDetailsVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types);
  400. enum DimensionType : int8_t {
  401. DimensionType_DENSE = 0,
  402. DimensionType_SPARSE_CSR = 1,
  403. DimensionType_MIN = DimensionType_DENSE,
  404. DimensionType_MAX = DimensionType_SPARSE_CSR
  405. };
  406. inline const DimensionType (&EnumValuesDimensionType())[2] {
  407. static const DimensionType values[] = {
  408. DimensionType_DENSE,
  409. DimensionType_SPARSE_CSR
  410. };
  411. return values;
  412. }
  413. inline const char * const *EnumNamesDimensionType() {
  414. static const char * const names[3] = {
  415. "DENSE",
  416. "SPARSE_CSR",
  417. nullptr
  418. };
  419. return names;
  420. }
  421. inline const char *EnumNameDimensionType(DimensionType e) {
  422. if (::flatbuffers::IsOutRange(e, DimensionType_DENSE, DimensionType_SPARSE_CSR)) return "";
  423. const size_t index = static_cast<size_t>(e);
  424. return EnumNamesDimensionType()[index];
  425. }
  426. enum SparseIndexVector : uint8_t {
  427. SparseIndexVector_NONE = 0,
  428. SparseIndexVector_Int32Vector = 1,
  429. SparseIndexVector_Uint16Vector = 2,
  430. SparseIndexVector_Uint8Vector = 3,
  431. SparseIndexVector_MIN = SparseIndexVector_NONE,
  432. SparseIndexVector_MAX = SparseIndexVector_Uint8Vector
  433. };
  434. inline const SparseIndexVector (&EnumValuesSparseIndexVector())[4] {
  435. static const SparseIndexVector values[] = {
  436. SparseIndexVector_NONE,
  437. SparseIndexVector_Int32Vector,
  438. SparseIndexVector_Uint16Vector,
  439. SparseIndexVector_Uint8Vector
  440. };
  441. return values;
  442. }
  443. inline const char * const *EnumNamesSparseIndexVector() {
  444. static const char * const names[5] = {
  445. "NONE",
  446. "Int32Vector",
  447. "Uint16Vector",
  448. "Uint8Vector",
  449. nullptr
  450. };
  451. return names;
  452. }
  453. inline const char *EnumNameSparseIndexVector(SparseIndexVector e) {
  454. if (::flatbuffers::IsOutRange(e, SparseIndexVector_NONE, SparseIndexVector_Uint8Vector)) return "";
  455. const size_t index = static_cast<size_t>(e);
  456. return EnumNamesSparseIndexVector()[index];
  457. }
  458. template<typename T> struct SparseIndexVectorTraits {
  459. static const SparseIndexVector enum_value = SparseIndexVector_NONE;
  460. };
  461. template<> struct SparseIndexVectorTraits<opencv_tflite::Int32Vector> {
  462. static const SparseIndexVector enum_value = SparseIndexVector_Int32Vector;
  463. };
  464. template<> struct SparseIndexVectorTraits<opencv_tflite::Uint16Vector> {
  465. static const SparseIndexVector enum_value = SparseIndexVector_Uint16Vector;
  466. };
  467. template<> struct SparseIndexVectorTraits<opencv_tflite::Uint8Vector> {
  468. static const SparseIndexVector enum_value = SparseIndexVector_Uint8Vector;
  469. };
  470. bool VerifySparseIndexVector(::flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type);
  471. bool VerifySparseIndexVectorVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types);
  472. enum BuiltinOperator : int32_t {
  473. BuiltinOperator_ADD = 0,
  474. BuiltinOperator_AVERAGE_POOL_2D = 1,
  475. BuiltinOperator_CONCATENATION = 2,
  476. BuiltinOperator_CONV_2D = 3,
  477. BuiltinOperator_DEPTHWISE_CONV_2D = 4,
  478. BuiltinOperator_DEPTH_TO_SPACE = 5,
  479. BuiltinOperator_DEQUANTIZE = 6,
  480. BuiltinOperator_EMBEDDING_LOOKUP = 7,
  481. BuiltinOperator_FLOOR = 8,
  482. BuiltinOperator_FULLY_CONNECTED = 9,
  483. BuiltinOperator_HASHTABLE_LOOKUP = 10,
  484. BuiltinOperator_L2_NORMALIZATION = 11,
  485. BuiltinOperator_L2_POOL_2D = 12,
  486. BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION = 13,
  487. BuiltinOperator_LOGISTIC = 14,
  488. BuiltinOperator_LSH_PROJECTION = 15,
  489. BuiltinOperator_LSTM = 16,
  490. BuiltinOperator_MAX_POOL_2D = 17,
  491. BuiltinOperator_MUL = 18,
  492. BuiltinOperator_RELU = 19,
  493. BuiltinOperator_RELU_N1_TO_1 = 20,
  494. BuiltinOperator_RELU6 = 21,
  495. BuiltinOperator_RESHAPE = 22,
  496. BuiltinOperator_RESIZE_BILINEAR = 23,
  497. BuiltinOperator_RNN = 24,
  498. BuiltinOperator_SOFTMAX = 25,
  499. BuiltinOperator_SPACE_TO_DEPTH = 26,
  500. BuiltinOperator_SVDF = 27,
  501. BuiltinOperator_TANH = 28,
  502. BuiltinOperator_CONCAT_EMBEDDINGS = 29,
  503. BuiltinOperator_SKIP_GRAM = 30,
  504. BuiltinOperator_CALL = 31,
  505. BuiltinOperator_CUSTOM = 32,
  506. BuiltinOperator_EMBEDDING_LOOKUP_SPARSE = 33,
  507. BuiltinOperator_PAD = 34,
  508. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN = 35,
  509. BuiltinOperator_GATHER = 36,
  510. BuiltinOperator_BATCH_TO_SPACE_ND = 37,
  511. BuiltinOperator_SPACE_TO_BATCH_ND = 38,
  512. BuiltinOperator_TRANSPOSE = 39,
  513. BuiltinOperator_MEAN = 40,
  514. BuiltinOperator_SUB = 41,
  515. BuiltinOperator_DIV = 42,
  516. BuiltinOperator_SQUEEZE = 43,
  517. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM = 44,
  518. BuiltinOperator_STRIDED_SLICE = 45,
  519. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN = 46,
  520. BuiltinOperator_EXP = 47,
  521. BuiltinOperator_TOPK_V2 = 48,
  522. BuiltinOperator_SPLIT = 49,
  523. BuiltinOperator_LOG_SOFTMAX = 50,
  524. BuiltinOperator_DELEGATE = 51,
  525. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM = 52,
  526. BuiltinOperator_CAST = 53,
  527. BuiltinOperator_PRELU = 54,
  528. BuiltinOperator_MAXIMUM = 55,
  529. BuiltinOperator_ARG_MAX = 56,
  530. BuiltinOperator_MINIMUM = 57,
  531. BuiltinOperator_LESS = 58,
  532. BuiltinOperator_NEG = 59,
  533. BuiltinOperator_PADV2 = 60,
  534. BuiltinOperator_GREATER = 61,
  535. BuiltinOperator_GREATER_EQUAL = 62,
  536. BuiltinOperator_LESS_EQUAL = 63,
  537. BuiltinOperator_SELECT = 64,
  538. BuiltinOperator_SLICE = 65,
  539. BuiltinOperator_SIN = 66,
  540. BuiltinOperator_TRANSPOSE_CONV = 67,
  541. BuiltinOperator_SPARSE_TO_DENSE = 68,
  542. BuiltinOperator_TILE = 69,
  543. BuiltinOperator_EXPAND_DIMS = 70,
  544. BuiltinOperator_EQUAL = 71,
  545. BuiltinOperator_NOT_EQUAL = 72,
  546. BuiltinOperator_LOG = 73,
  547. BuiltinOperator_SUM = 74,
  548. BuiltinOperator_SQRT = 75,
  549. BuiltinOperator_RSQRT = 76,
  550. BuiltinOperator_SHAPE = 77,
  551. BuiltinOperator_POW = 78,
  552. BuiltinOperator_ARG_MIN = 79,
  553. BuiltinOperator_FAKE_QUANT = 80,
  554. BuiltinOperator_REDUCE_PROD = 81,
  555. BuiltinOperator_REDUCE_MAX = 82,
  556. BuiltinOperator_PACK = 83,
  557. BuiltinOperator_LOGICAL_OR = 84,
  558. BuiltinOperator_ONE_HOT = 85,
  559. BuiltinOperator_LOGICAL_AND = 86,
  560. BuiltinOperator_LOGICAL_NOT = 87,
  561. BuiltinOperator_UNPACK = 88,
  562. BuiltinOperator_REDUCE_MIN = 89,
  563. BuiltinOperator_FLOOR_DIV = 90,
  564. BuiltinOperator_REDUCE_ANY = 91,
  565. BuiltinOperator_SQUARE = 92,
  566. BuiltinOperator_ZEROS_LIKE = 93,
  567. BuiltinOperator_FILL = 94,
  568. BuiltinOperator_FLOOR_MOD = 95,
  569. BuiltinOperator_RANGE = 96,
  570. BuiltinOperator_RESIZE_NEAREST_NEIGHBOR = 97,
  571. BuiltinOperator_LEAKY_RELU = 98,
  572. BuiltinOperator_SQUARED_DIFFERENCE = 99,
  573. BuiltinOperator_MIRROR_PAD = 100,
  574. BuiltinOperator_ABS = 101,
  575. BuiltinOperator_SPLIT_V = 102,
  576. BuiltinOperator_UNIQUE = 103,
  577. BuiltinOperator_CEIL = 104,
  578. BuiltinOperator_REVERSE_V2 = 105,
  579. BuiltinOperator_ADD_N = 106,
  580. BuiltinOperator_GATHER_ND = 107,
  581. BuiltinOperator_COS = 108,
  582. BuiltinOperator_WHERE = 109,
  583. BuiltinOperator_RANK = 110,
  584. BuiltinOperator_ELU = 111,
  585. BuiltinOperator_REVERSE_SEQUENCE = 112,
  586. BuiltinOperator_MATRIX_DIAG = 113,
  587. BuiltinOperator_QUANTIZE = 114,
  588. BuiltinOperator_MATRIX_SET_DIAG = 115,
  589. BuiltinOperator_ROUND = 116,
  590. BuiltinOperator_HARD_SWISH = 117,
  591. BuiltinOperator_IF = 118,
  592. BuiltinOperator_WHILE = 119,
  593. BuiltinOperator_NON_MAX_SUPPRESSION_V4 = 120,
  594. BuiltinOperator_NON_MAX_SUPPRESSION_V5 = 121,
  595. BuiltinOperator_SCATTER_ND = 122,
  596. BuiltinOperator_SELECT_V2 = 123,
  597. BuiltinOperator_DENSIFY = 124,
  598. BuiltinOperator_SEGMENT_SUM = 125,
  599. BuiltinOperator_BATCH_MATMUL = 126,
  600. BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES = 127,
  601. BuiltinOperator_CUMSUM = 128,
  602. BuiltinOperator_CALL_ONCE = 129,
  603. BuiltinOperator_BROADCAST_TO = 130,
  604. BuiltinOperator_RFFT2D = 131,
  605. BuiltinOperator_CONV_3D = 132,
  606. BuiltinOperator_IMAG = 133,
  607. BuiltinOperator_REAL = 134,
  608. BuiltinOperator_COMPLEX_ABS = 135,
  609. BuiltinOperator_HASHTABLE = 136,
  610. BuiltinOperator_HASHTABLE_FIND = 137,
  611. BuiltinOperator_HASHTABLE_IMPORT = 138,
  612. BuiltinOperator_HASHTABLE_SIZE = 139,
  613. BuiltinOperator_REDUCE_ALL = 140,
  614. BuiltinOperator_CONV_3D_TRANSPOSE = 141,
  615. BuiltinOperator_VAR_HANDLE = 142,
  616. BuiltinOperator_READ_VARIABLE = 143,
  617. BuiltinOperator_ASSIGN_VARIABLE = 144,
  618. BuiltinOperator_BROADCAST_ARGS = 145,
  619. BuiltinOperator_RANDOM_STANDARD_NORMAL = 146,
  620. BuiltinOperator_BUCKETIZE = 147,
  621. BuiltinOperator_RANDOM_UNIFORM = 148,
  622. BuiltinOperator_MULTINOMIAL = 149,
  623. BuiltinOperator_GELU = 150,
  624. BuiltinOperator_DYNAMIC_UPDATE_SLICE = 151,
  625. BuiltinOperator_RELU_0_TO_1 = 152,
  626. BuiltinOperator_UNSORTED_SEGMENT_PROD = 153,
  627. BuiltinOperator_UNSORTED_SEGMENT_MAX = 154,
  628. BuiltinOperator_UNSORTED_SEGMENT_SUM = 155,
  629. BuiltinOperator_ATAN2 = 156,
  630. BuiltinOperator_UNSORTED_SEGMENT_MIN = 157,
  631. BuiltinOperator_SIGN = 158,
  632. BuiltinOperator_MIN = BuiltinOperator_ADD,
  633. BuiltinOperator_MAX = BuiltinOperator_SIGN
  634. };
  635. inline const BuiltinOperator (&EnumValuesBuiltinOperator())[159] {
  636. static const BuiltinOperator values[] = {
  637. BuiltinOperator_ADD,
  638. BuiltinOperator_AVERAGE_POOL_2D,
  639. BuiltinOperator_CONCATENATION,
  640. BuiltinOperator_CONV_2D,
  641. BuiltinOperator_DEPTHWISE_CONV_2D,
  642. BuiltinOperator_DEPTH_TO_SPACE,
  643. BuiltinOperator_DEQUANTIZE,
  644. BuiltinOperator_EMBEDDING_LOOKUP,
  645. BuiltinOperator_FLOOR,
  646. BuiltinOperator_FULLY_CONNECTED,
  647. BuiltinOperator_HASHTABLE_LOOKUP,
  648. BuiltinOperator_L2_NORMALIZATION,
  649. BuiltinOperator_L2_POOL_2D,
  650. BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION,
  651. BuiltinOperator_LOGISTIC,
  652. BuiltinOperator_LSH_PROJECTION,
  653. BuiltinOperator_LSTM,
  654. BuiltinOperator_MAX_POOL_2D,
  655. BuiltinOperator_MUL,
  656. BuiltinOperator_RELU,
  657. BuiltinOperator_RELU_N1_TO_1,
  658. BuiltinOperator_RELU6,
  659. BuiltinOperator_RESHAPE,
  660. BuiltinOperator_RESIZE_BILINEAR,
  661. BuiltinOperator_RNN,
  662. BuiltinOperator_SOFTMAX,
  663. BuiltinOperator_SPACE_TO_DEPTH,
  664. BuiltinOperator_SVDF,
  665. BuiltinOperator_TANH,
  666. BuiltinOperator_CONCAT_EMBEDDINGS,
  667. BuiltinOperator_SKIP_GRAM,
  668. BuiltinOperator_CALL,
  669. BuiltinOperator_CUSTOM,
  670. BuiltinOperator_EMBEDDING_LOOKUP_SPARSE,
  671. BuiltinOperator_PAD,
  672. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN,
  673. BuiltinOperator_GATHER,
  674. BuiltinOperator_BATCH_TO_SPACE_ND,
  675. BuiltinOperator_SPACE_TO_BATCH_ND,
  676. BuiltinOperator_TRANSPOSE,
  677. BuiltinOperator_MEAN,
  678. BuiltinOperator_SUB,
  679. BuiltinOperator_DIV,
  680. BuiltinOperator_SQUEEZE,
  681. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM,
  682. BuiltinOperator_STRIDED_SLICE,
  683. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN,
  684. BuiltinOperator_EXP,
  685. BuiltinOperator_TOPK_V2,
  686. BuiltinOperator_SPLIT,
  687. BuiltinOperator_LOG_SOFTMAX,
  688. BuiltinOperator_DELEGATE,
  689. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM,
  690. BuiltinOperator_CAST,
  691. BuiltinOperator_PRELU,
  692. BuiltinOperator_MAXIMUM,
  693. BuiltinOperator_ARG_MAX,
  694. BuiltinOperator_MINIMUM,
  695. BuiltinOperator_LESS,
  696. BuiltinOperator_NEG,
  697. BuiltinOperator_PADV2,
  698. BuiltinOperator_GREATER,
  699. BuiltinOperator_GREATER_EQUAL,
  700. BuiltinOperator_LESS_EQUAL,
  701. BuiltinOperator_SELECT,
  702. BuiltinOperator_SLICE,
  703. BuiltinOperator_SIN,
  704. BuiltinOperator_TRANSPOSE_CONV,
  705. BuiltinOperator_SPARSE_TO_DENSE,
  706. BuiltinOperator_TILE,
  707. BuiltinOperator_EXPAND_DIMS,
  708. BuiltinOperator_EQUAL,
  709. BuiltinOperator_NOT_EQUAL,
  710. BuiltinOperator_LOG,
  711. BuiltinOperator_SUM,
  712. BuiltinOperator_SQRT,
  713. BuiltinOperator_RSQRT,
  714. BuiltinOperator_SHAPE,
  715. BuiltinOperator_POW,
  716. BuiltinOperator_ARG_MIN,
  717. BuiltinOperator_FAKE_QUANT,
  718. BuiltinOperator_REDUCE_PROD,
  719. BuiltinOperator_REDUCE_MAX,
  720. BuiltinOperator_PACK,
  721. BuiltinOperator_LOGICAL_OR,
  722. BuiltinOperator_ONE_HOT,
  723. BuiltinOperator_LOGICAL_AND,
  724. BuiltinOperator_LOGICAL_NOT,
  725. BuiltinOperator_UNPACK,
  726. BuiltinOperator_REDUCE_MIN,
  727. BuiltinOperator_FLOOR_DIV,
  728. BuiltinOperator_REDUCE_ANY,
  729. BuiltinOperator_SQUARE,
  730. BuiltinOperator_ZEROS_LIKE,
  731. BuiltinOperator_FILL,
  732. BuiltinOperator_FLOOR_MOD,
  733. BuiltinOperator_RANGE,
  734. BuiltinOperator_RESIZE_NEAREST_NEIGHBOR,
  735. BuiltinOperator_LEAKY_RELU,
  736. BuiltinOperator_SQUARED_DIFFERENCE,
  737. BuiltinOperator_MIRROR_PAD,
  738. BuiltinOperator_ABS,
  739. BuiltinOperator_SPLIT_V,
  740. BuiltinOperator_UNIQUE,
  741. BuiltinOperator_CEIL,
  742. BuiltinOperator_REVERSE_V2,
  743. BuiltinOperator_ADD_N,
  744. BuiltinOperator_GATHER_ND,
  745. BuiltinOperator_COS,
  746. BuiltinOperator_WHERE,
  747. BuiltinOperator_RANK,
  748. BuiltinOperator_ELU,
  749. BuiltinOperator_REVERSE_SEQUENCE,
  750. BuiltinOperator_MATRIX_DIAG,
  751. BuiltinOperator_QUANTIZE,
  752. BuiltinOperator_MATRIX_SET_DIAG,
  753. BuiltinOperator_ROUND,
  754. BuiltinOperator_HARD_SWISH,
  755. BuiltinOperator_IF,
  756. BuiltinOperator_WHILE,
  757. BuiltinOperator_NON_MAX_SUPPRESSION_V4,
  758. BuiltinOperator_NON_MAX_SUPPRESSION_V5,
  759. BuiltinOperator_SCATTER_ND,
  760. BuiltinOperator_SELECT_V2,
  761. BuiltinOperator_DENSIFY,
  762. BuiltinOperator_SEGMENT_SUM,
  763. BuiltinOperator_BATCH_MATMUL,
  764. BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES,
  765. BuiltinOperator_CUMSUM,
  766. BuiltinOperator_CALL_ONCE,
  767. BuiltinOperator_BROADCAST_TO,
  768. BuiltinOperator_RFFT2D,
  769. BuiltinOperator_CONV_3D,
  770. BuiltinOperator_IMAG,
  771. BuiltinOperator_REAL,
  772. BuiltinOperator_COMPLEX_ABS,
  773. BuiltinOperator_HASHTABLE,
  774. BuiltinOperator_HASHTABLE_FIND,
  775. BuiltinOperator_HASHTABLE_IMPORT,
  776. BuiltinOperator_HASHTABLE_SIZE,
  777. BuiltinOperator_REDUCE_ALL,
  778. BuiltinOperator_CONV_3D_TRANSPOSE,
  779. BuiltinOperator_VAR_HANDLE,
  780. BuiltinOperator_READ_VARIABLE,
  781. BuiltinOperator_ASSIGN_VARIABLE,
  782. BuiltinOperator_BROADCAST_ARGS,
  783. BuiltinOperator_RANDOM_STANDARD_NORMAL,
  784. BuiltinOperator_BUCKETIZE,
  785. BuiltinOperator_RANDOM_UNIFORM,
  786. BuiltinOperator_MULTINOMIAL,
  787. BuiltinOperator_GELU,
  788. BuiltinOperator_DYNAMIC_UPDATE_SLICE,
  789. BuiltinOperator_RELU_0_TO_1,
  790. BuiltinOperator_UNSORTED_SEGMENT_PROD,
  791. BuiltinOperator_UNSORTED_SEGMENT_MAX,
  792. BuiltinOperator_UNSORTED_SEGMENT_SUM,
  793. BuiltinOperator_ATAN2,
  794. BuiltinOperator_UNSORTED_SEGMENT_MIN,
  795. BuiltinOperator_SIGN
  796. };
  797. return values;
  798. }
  799. inline const char * const *EnumNamesBuiltinOperator() {
  800. static const char * const names[160] = {
  801. "ADD",
  802. "AVERAGE_POOL_2D",
  803. "CONCATENATION",
  804. "CONV_2D",
  805. "DEPTHWISE_CONV_2D",
  806. "DEPTH_TO_SPACE",
  807. "DEQUANTIZE",
  808. "EMBEDDING_LOOKUP",
  809. "FLOOR",
  810. "FULLY_CONNECTED",
  811. "HASHTABLE_LOOKUP",
  812. "L2_NORMALIZATION",
  813. "L2_POOL_2D",
  814. "LOCAL_RESPONSE_NORMALIZATION",
  815. "LOGISTIC",
  816. "LSH_PROJECTION",
  817. "LSTM",
  818. "MAX_POOL_2D",
  819. "MUL",
  820. "RELU",
  821. "RELU_N1_TO_1",
  822. "RELU6",
  823. "RESHAPE",
  824. "RESIZE_BILINEAR",
  825. "RNN",
  826. "SOFTMAX",
  827. "SPACE_TO_DEPTH",
  828. "SVDF",
  829. "TANH",
  830. "CONCAT_EMBEDDINGS",
  831. "SKIP_GRAM",
  832. "CALL",
  833. "CUSTOM",
  834. "EMBEDDING_LOOKUP_SPARSE",
  835. "PAD",
  836. "UNIDIRECTIONAL_SEQUENCE_RNN",
  837. "GATHER",
  838. "BATCH_TO_SPACE_ND",
  839. "SPACE_TO_BATCH_ND",
  840. "TRANSPOSE",
  841. "MEAN",
  842. "SUB",
  843. "DIV",
  844. "SQUEEZE",
  845. "UNIDIRECTIONAL_SEQUENCE_LSTM",
  846. "STRIDED_SLICE",
  847. "BIDIRECTIONAL_SEQUENCE_RNN",
  848. "EXP",
  849. "TOPK_V2",
  850. "SPLIT",
  851. "LOG_SOFTMAX",
  852. "DELEGATE",
  853. "BIDIRECTIONAL_SEQUENCE_LSTM",
  854. "CAST",
  855. "PRELU",
  856. "MAXIMUM",
  857. "ARG_MAX",
  858. "MINIMUM",
  859. "LESS",
  860. "NEG",
  861. "PADV2",
  862. "GREATER",
  863. "GREATER_EQUAL",
  864. "LESS_EQUAL",
  865. "SELECT",
  866. "SLICE",
  867. "SIN",
  868. "TRANSPOSE_CONV",
  869. "SPARSE_TO_DENSE",
  870. "TILE",
  871. "EXPAND_DIMS",
  872. "EQUAL",
  873. "NOT_EQUAL",
  874. "LOG",
  875. "SUM",
  876. "SQRT",
  877. "RSQRT",
  878. "SHAPE",
  879. "POW",
  880. "ARG_MIN",
  881. "FAKE_QUANT",
  882. "REDUCE_PROD",
  883. "REDUCE_MAX",
  884. "PACK",
  885. "LOGICAL_OR",
  886. "ONE_HOT",
  887. "LOGICAL_AND",
  888. "LOGICAL_NOT",
  889. "UNPACK",
  890. "REDUCE_MIN",
  891. "FLOOR_DIV",
  892. "REDUCE_ANY",
  893. "SQUARE",
  894. "ZEROS_LIKE",
  895. "FILL",
  896. "FLOOR_MOD",
  897. "RANGE",
  898. "RESIZE_NEAREST_NEIGHBOR",
  899. "LEAKY_RELU",
  900. "SQUARED_DIFFERENCE",
  901. "MIRROR_PAD",
  902. "ABS",
  903. "SPLIT_V",
  904. "UNIQUE",
  905. "CEIL",
  906. "REVERSE_V2",
  907. "ADD_N",
  908. "GATHER_ND",
  909. "COS",
  910. "WHERE",
  911. "RANK",
  912. "ELU",
  913. "REVERSE_SEQUENCE",
  914. "MATRIX_DIAG",
  915. "QUANTIZE",
  916. "MATRIX_SET_DIAG",
  917. "ROUND",
  918. "HARD_SWISH",
  919. "IF",
  920. "WHILE",
  921. "NON_MAX_SUPPRESSION_V4",
  922. "NON_MAX_SUPPRESSION_V5",
  923. "SCATTER_ND",
  924. "SELECT_V2",
  925. "DENSIFY",
  926. "SEGMENT_SUM",
  927. "BATCH_MATMUL",
  928. "PLACEHOLDER_FOR_GREATER_OP_CODES",
  929. "CUMSUM",
  930. "CALL_ONCE",
  931. "BROADCAST_TO",
  932. "RFFT2D",
  933. "CONV_3D",
  934. "IMAG",
  935. "REAL",
  936. "COMPLEX_ABS",
  937. "HASHTABLE",
  938. "HASHTABLE_FIND",
  939. "HASHTABLE_IMPORT",
  940. "HASHTABLE_SIZE",
  941. "REDUCE_ALL",
  942. "CONV_3D_TRANSPOSE",
  943. "VAR_HANDLE",
  944. "READ_VARIABLE",
  945. "ASSIGN_VARIABLE",
  946. "BROADCAST_ARGS",
  947. "RANDOM_STANDARD_NORMAL",
  948. "BUCKETIZE",
  949. "RANDOM_UNIFORM",
  950. "MULTINOMIAL",
  951. "GELU",
  952. "DYNAMIC_UPDATE_SLICE",
  953. "RELU_0_TO_1",
  954. "UNSORTED_SEGMENT_PROD",
  955. "UNSORTED_SEGMENT_MAX",
  956. "UNSORTED_SEGMENT_SUM",
  957. "ATAN2",
  958. "UNSORTED_SEGMENT_MIN",
  959. "SIGN",
  960. nullptr
  961. };
  962. return names;
  963. }
  964. inline const char *EnumNameBuiltinOperator(BuiltinOperator e) {
  965. if (::flatbuffers::IsOutRange(e, BuiltinOperator_ADD, BuiltinOperator_SIGN)) return "";
  966. const size_t index = static_cast<size_t>(e);
  967. return EnumNamesBuiltinOperator()[index];
  968. }
  969. enum BuiltinOptions : uint8_t {
  970. BuiltinOptions_NONE = 0,
  971. BuiltinOptions_Conv2DOptions = 1,
  972. BuiltinOptions_DepthwiseConv2DOptions = 2,
  973. BuiltinOptions_ConcatEmbeddingsOptions = 3,
  974. BuiltinOptions_LSHProjectionOptions = 4,
  975. BuiltinOptions_Pool2DOptions = 5,
  976. BuiltinOptions_SVDFOptions = 6,
  977. BuiltinOptions_RNNOptions = 7,
  978. BuiltinOptions_FullyConnectedOptions = 8,
  979. BuiltinOptions_SoftmaxOptions = 9,
  980. BuiltinOptions_ConcatenationOptions = 10,
  981. BuiltinOptions_AddOptions = 11,
  982. BuiltinOptions_L2NormOptions = 12,
  983. BuiltinOptions_LocalResponseNormalizationOptions = 13,
  984. BuiltinOptions_LSTMOptions = 14,
  985. BuiltinOptions_ResizeBilinearOptions = 15,
  986. BuiltinOptions_CallOptions = 16,
  987. BuiltinOptions_ReshapeOptions = 17,
  988. BuiltinOptions_SkipGramOptions = 18,
  989. BuiltinOptions_SpaceToDepthOptions = 19,
  990. BuiltinOptions_EmbeddingLookupSparseOptions = 20,
  991. BuiltinOptions_MulOptions = 21,
  992. BuiltinOptions_PadOptions = 22,
  993. BuiltinOptions_GatherOptions = 23,
  994. BuiltinOptions_BatchToSpaceNDOptions = 24,
  995. BuiltinOptions_SpaceToBatchNDOptions = 25,
  996. BuiltinOptions_TransposeOptions = 26,
  997. BuiltinOptions_ReducerOptions = 27,
  998. BuiltinOptions_SubOptions = 28,
  999. BuiltinOptions_DivOptions = 29,
  1000. BuiltinOptions_SqueezeOptions = 30,
  1001. BuiltinOptions_SequenceRNNOptions = 31,
  1002. BuiltinOptions_StridedSliceOptions = 32,
  1003. BuiltinOptions_ExpOptions = 33,
  1004. BuiltinOptions_TopKV2Options = 34,
  1005. BuiltinOptions_SplitOptions = 35,
  1006. BuiltinOptions_LogSoftmaxOptions = 36,
  1007. BuiltinOptions_CastOptions = 37,
  1008. BuiltinOptions_DequantizeOptions = 38,
  1009. BuiltinOptions_MaximumMinimumOptions = 39,
  1010. BuiltinOptions_ArgMaxOptions = 40,
  1011. BuiltinOptions_LessOptions = 41,
  1012. BuiltinOptions_NegOptions = 42,
  1013. BuiltinOptions_PadV2Options = 43,
  1014. BuiltinOptions_GreaterOptions = 44,
  1015. BuiltinOptions_GreaterEqualOptions = 45,
  1016. BuiltinOptions_LessEqualOptions = 46,
  1017. BuiltinOptions_SelectOptions = 47,
  1018. BuiltinOptions_SliceOptions = 48,
  1019. BuiltinOptions_TransposeConvOptions = 49,
  1020. BuiltinOptions_SparseToDenseOptions = 50,
  1021. BuiltinOptions_TileOptions = 51,
  1022. BuiltinOptions_ExpandDimsOptions = 52,
  1023. BuiltinOptions_EqualOptions = 53,
  1024. BuiltinOptions_NotEqualOptions = 54,
  1025. BuiltinOptions_ShapeOptions = 55,
  1026. BuiltinOptions_PowOptions = 56,
  1027. BuiltinOptions_ArgMinOptions = 57,
  1028. BuiltinOptions_FakeQuantOptions = 58,
  1029. BuiltinOptions_PackOptions = 59,
  1030. BuiltinOptions_LogicalOrOptions = 60,
  1031. BuiltinOptions_OneHotOptions = 61,
  1032. BuiltinOptions_LogicalAndOptions = 62,
  1033. BuiltinOptions_LogicalNotOptions = 63,
  1034. BuiltinOptions_UnpackOptions = 64,
  1035. BuiltinOptions_FloorDivOptions = 65,
  1036. BuiltinOptions_SquareOptions = 66,
  1037. BuiltinOptions_ZerosLikeOptions = 67,
  1038. BuiltinOptions_FillOptions = 68,
  1039. BuiltinOptions_BidirectionalSequenceLSTMOptions = 69,
  1040. BuiltinOptions_BidirectionalSequenceRNNOptions = 70,
  1041. BuiltinOptions_UnidirectionalSequenceLSTMOptions = 71,
  1042. BuiltinOptions_FloorModOptions = 72,
  1043. BuiltinOptions_RangeOptions = 73,
  1044. BuiltinOptions_ResizeNearestNeighborOptions = 74,
  1045. BuiltinOptions_LeakyReluOptions = 75,
  1046. BuiltinOptions_SquaredDifferenceOptions = 76,
  1047. BuiltinOptions_MirrorPadOptions = 77,
  1048. BuiltinOptions_AbsOptions = 78,
  1049. BuiltinOptions_SplitVOptions = 79,
  1050. BuiltinOptions_UniqueOptions = 80,
  1051. BuiltinOptions_ReverseV2Options = 81,
  1052. BuiltinOptions_AddNOptions = 82,
  1053. BuiltinOptions_GatherNdOptions = 83,
  1054. BuiltinOptions_CosOptions = 84,
  1055. BuiltinOptions_WhereOptions = 85,
  1056. BuiltinOptions_RankOptions = 86,
  1057. BuiltinOptions_ReverseSequenceOptions = 87,
  1058. BuiltinOptions_MatrixDiagOptions = 88,
  1059. BuiltinOptions_QuantizeOptions = 89,
  1060. BuiltinOptions_MatrixSetDiagOptions = 90,
  1061. BuiltinOptions_HardSwishOptions = 91,
  1062. BuiltinOptions_IfOptions = 92,
  1063. BuiltinOptions_WhileOptions = 93,
  1064. BuiltinOptions_DepthToSpaceOptions = 94,
  1065. BuiltinOptions_NonMaxSuppressionV4Options = 95,
  1066. BuiltinOptions_NonMaxSuppressionV5Options = 96,
  1067. BuiltinOptions_ScatterNdOptions = 97,
  1068. BuiltinOptions_SelectV2Options = 98,
  1069. BuiltinOptions_DensifyOptions = 99,
  1070. BuiltinOptions_SegmentSumOptions = 100,
  1071. BuiltinOptions_BatchMatMulOptions = 101,
  1072. BuiltinOptions_CumsumOptions = 102,
  1073. BuiltinOptions_CallOnceOptions = 103,
  1074. BuiltinOptions_BroadcastToOptions = 104,
  1075. BuiltinOptions_Rfft2dOptions = 105,
  1076. BuiltinOptions_Conv3DOptions = 106,
  1077. BuiltinOptions_HashtableOptions = 107,
  1078. BuiltinOptions_HashtableFindOptions = 108,
  1079. BuiltinOptions_HashtableImportOptions = 109,
  1080. BuiltinOptions_HashtableSizeOptions = 110,
  1081. BuiltinOptions_VarHandleOptions = 111,
  1082. BuiltinOptions_ReadVariableOptions = 112,
  1083. BuiltinOptions_AssignVariableOptions = 113,
  1084. BuiltinOptions_RandomOptions = 114,
  1085. BuiltinOptions_BucketizeOptions = 115,
  1086. BuiltinOptions_GeluOptions = 116,
  1087. BuiltinOptions_DynamicUpdateSliceOptions = 117,
  1088. BuiltinOptions_UnsortedSegmentProdOptions = 118,
  1089. BuiltinOptions_UnsortedSegmentMaxOptions = 119,
  1090. BuiltinOptions_UnsortedSegmentMinOptions = 120,
  1091. BuiltinOptions_UnsortedSegmentSumOptions = 121,
  1092. BuiltinOptions_ATan2Options = 122,
  1093. BuiltinOptions_SignOptions = 123,
  1094. BuiltinOptions_MIN = BuiltinOptions_NONE,
  1095. BuiltinOptions_MAX = BuiltinOptions_SignOptions
  1096. };
  1097. inline const BuiltinOptions (&EnumValuesBuiltinOptions())[124] {
  1098. static const BuiltinOptions values[] = {
  1099. BuiltinOptions_NONE,
  1100. BuiltinOptions_Conv2DOptions,
  1101. BuiltinOptions_DepthwiseConv2DOptions,
  1102. BuiltinOptions_ConcatEmbeddingsOptions,
  1103. BuiltinOptions_LSHProjectionOptions,
  1104. BuiltinOptions_Pool2DOptions,
  1105. BuiltinOptions_SVDFOptions,
  1106. BuiltinOptions_RNNOptions,
  1107. BuiltinOptions_FullyConnectedOptions,
  1108. BuiltinOptions_SoftmaxOptions,
  1109. BuiltinOptions_ConcatenationOptions,
  1110. BuiltinOptions_AddOptions,
  1111. BuiltinOptions_L2NormOptions,
  1112. BuiltinOptions_LocalResponseNormalizationOptions,
  1113. BuiltinOptions_LSTMOptions,
  1114. BuiltinOptions_ResizeBilinearOptions,
  1115. BuiltinOptions_CallOptions,
  1116. BuiltinOptions_ReshapeOptions,
  1117. BuiltinOptions_SkipGramOptions,
  1118. BuiltinOptions_SpaceToDepthOptions,
  1119. BuiltinOptions_EmbeddingLookupSparseOptions,
  1120. BuiltinOptions_MulOptions,
  1121. BuiltinOptions_PadOptions,
  1122. BuiltinOptions_GatherOptions,
  1123. BuiltinOptions_BatchToSpaceNDOptions,
  1124. BuiltinOptions_SpaceToBatchNDOptions,
  1125. BuiltinOptions_TransposeOptions,
  1126. BuiltinOptions_ReducerOptions,
  1127. BuiltinOptions_SubOptions,
  1128. BuiltinOptions_DivOptions,
  1129. BuiltinOptions_SqueezeOptions,
  1130. BuiltinOptions_SequenceRNNOptions,
  1131. BuiltinOptions_StridedSliceOptions,
  1132. BuiltinOptions_ExpOptions,
  1133. BuiltinOptions_TopKV2Options,
  1134. BuiltinOptions_SplitOptions,
  1135. BuiltinOptions_LogSoftmaxOptions,
  1136. BuiltinOptions_CastOptions,
  1137. BuiltinOptions_DequantizeOptions,
  1138. BuiltinOptions_MaximumMinimumOptions,
  1139. BuiltinOptions_ArgMaxOptions,
  1140. BuiltinOptions_LessOptions,
  1141. BuiltinOptions_NegOptions,
  1142. BuiltinOptions_PadV2Options,
  1143. BuiltinOptions_GreaterOptions,
  1144. BuiltinOptions_GreaterEqualOptions,
  1145. BuiltinOptions_LessEqualOptions,
  1146. BuiltinOptions_SelectOptions,
  1147. BuiltinOptions_SliceOptions,
  1148. BuiltinOptions_TransposeConvOptions,
  1149. BuiltinOptions_SparseToDenseOptions,
  1150. BuiltinOptions_TileOptions,
  1151. BuiltinOptions_ExpandDimsOptions,
  1152. BuiltinOptions_EqualOptions,
  1153. BuiltinOptions_NotEqualOptions,
  1154. BuiltinOptions_ShapeOptions,
  1155. BuiltinOptions_PowOptions,
  1156. BuiltinOptions_ArgMinOptions,
  1157. BuiltinOptions_FakeQuantOptions,
  1158. BuiltinOptions_PackOptions,
  1159. BuiltinOptions_LogicalOrOptions,
  1160. BuiltinOptions_OneHotOptions,
  1161. BuiltinOptions_LogicalAndOptions,
  1162. BuiltinOptions_LogicalNotOptions,
  1163. BuiltinOptions_UnpackOptions,
  1164. BuiltinOptions_FloorDivOptions,
  1165. BuiltinOptions_SquareOptions,
  1166. BuiltinOptions_ZerosLikeOptions,
  1167. BuiltinOptions_FillOptions,
  1168. BuiltinOptions_BidirectionalSequenceLSTMOptions,
  1169. BuiltinOptions_BidirectionalSequenceRNNOptions,
  1170. BuiltinOptions_UnidirectionalSequenceLSTMOptions,
  1171. BuiltinOptions_FloorModOptions,
  1172. BuiltinOptions_RangeOptions,
  1173. BuiltinOptions_ResizeNearestNeighborOptions,
  1174. BuiltinOptions_LeakyReluOptions,
  1175. BuiltinOptions_SquaredDifferenceOptions,
  1176. BuiltinOptions_MirrorPadOptions,
  1177. BuiltinOptions_AbsOptions,
  1178. BuiltinOptions_SplitVOptions,
  1179. BuiltinOptions_UniqueOptions,
  1180. BuiltinOptions_ReverseV2Options,
  1181. BuiltinOptions_AddNOptions,
  1182. BuiltinOptions_GatherNdOptions,
  1183. BuiltinOptions_CosOptions,
  1184. BuiltinOptions_WhereOptions,
  1185. BuiltinOptions_RankOptions,
  1186. BuiltinOptions_ReverseSequenceOptions,
  1187. BuiltinOptions_MatrixDiagOptions,
  1188. BuiltinOptions_QuantizeOptions,
  1189. BuiltinOptions_MatrixSetDiagOptions,
  1190. BuiltinOptions_HardSwishOptions,
  1191. BuiltinOptions_IfOptions,
  1192. BuiltinOptions_WhileOptions,
  1193. BuiltinOptions_DepthToSpaceOptions,
  1194. BuiltinOptions_NonMaxSuppressionV4Options,
  1195. BuiltinOptions_NonMaxSuppressionV5Options,
  1196. BuiltinOptions_ScatterNdOptions,
  1197. BuiltinOptions_SelectV2Options,
  1198. BuiltinOptions_DensifyOptions,
  1199. BuiltinOptions_SegmentSumOptions,
  1200. BuiltinOptions_BatchMatMulOptions,
  1201. BuiltinOptions_CumsumOptions,
  1202. BuiltinOptions_CallOnceOptions,
  1203. BuiltinOptions_BroadcastToOptions,
  1204. BuiltinOptions_Rfft2dOptions,
  1205. BuiltinOptions_Conv3DOptions,
  1206. BuiltinOptions_HashtableOptions,
  1207. BuiltinOptions_HashtableFindOptions,
  1208. BuiltinOptions_HashtableImportOptions,
  1209. BuiltinOptions_HashtableSizeOptions,
  1210. BuiltinOptions_VarHandleOptions,
  1211. BuiltinOptions_ReadVariableOptions,
  1212. BuiltinOptions_AssignVariableOptions,
  1213. BuiltinOptions_RandomOptions,
  1214. BuiltinOptions_BucketizeOptions,
  1215. BuiltinOptions_GeluOptions,
  1216. BuiltinOptions_DynamicUpdateSliceOptions,
  1217. BuiltinOptions_UnsortedSegmentProdOptions,
  1218. BuiltinOptions_UnsortedSegmentMaxOptions,
  1219. BuiltinOptions_UnsortedSegmentMinOptions,
  1220. BuiltinOptions_UnsortedSegmentSumOptions,
  1221. BuiltinOptions_ATan2Options,
  1222. BuiltinOptions_SignOptions
  1223. };
  1224. return values;
  1225. }
  1226. inline const char * const *EnumNamesBuiltinOptions() {
  1227. static const char * const names[125] = {
  1228. "NONE",
  1229. "Conv2DOptions",
  1230. "DepthwiseConv2DOptions",
  1231. "ConcatEmbeddingsOptions",
  1232. "LSHProjectionOptions",
  1233. "Pool2DOptions",
  1234. "SVDFOptions",
  1235. "RNNOptions",
  1236. "FullyConnectedOptions",
  1237. "SoftmaxOptions",
  1238. "ConcatenationOptions",
  1239. "AddOptions",
  1240. "L2NormOptions",
  1241. "LocalResponseNormalizationOptions",
  1242. "LSTMOptions",
  1243. "ResizeBilinearOptions",
  1244. "CallOptions",
  1245. "ReshapeOptions",
  1246. "SkipGramOptions",
  1247. "SpaceToDepthOptions",
  1248. "EmbeddingLookupSparseOptions",
  1249. "MulOptions",
  1250. "PadOptions",
  1251. "GatherOptions",
  1252. "BatchToSpaceNDOptions",
  1253. "SpaceToBatchNDOptions",
  1254. "TransposeOptions",
  1255. "ReducerOptions",
  1256. "SubOptions",
  1257. "DivOptions",
  1258. "SqueezeOptions",
  1259. "SequenceRNNOptions",
  1260. "StridedSliceOptions",
  1261. "ExpOptions",
  1262. "TopKV2Options",
  1263. "SplitOptions",
  1264. "LogSoftmaxOptions",
  1265. "CastOptions",
  1266. "DequantizeOptions",
  1267. "MaximumMinimumOptions",
  1268. "ArgMaxOptions",
  1269. "LessOptions",
  1270. "NegOptions",
  1271. "PadV2Options",
  1272. "GreaterOptions",
  1273. "GreaterEqualOptions",
  1274. "LessEqualOptions",
  1275. "SelectOptions",
  1276. "SliceOptions",
  1277. "TransposeConvOptions",
  1278. "SparseToDenseOptions",
  1279. "TileOptions",
  1280. "ExpandDimsOptions",
  1281. "EqualOptions",
  1282. "NotEqualOptions",
  1283. "ShapeOptions",
  1284. "PowOptions",
  1285. "ArgMinOptions",
  1286. "FakeQuantOptions",
  1287. "PackOptions",
  1288. "LogicalOrOptions",
  1289. "OneHotOptions",
  1290. "LogicalAndOptions",
  1291. "LogicalNotOptions",
  1292. "UnpackOptions",
  1293. "FloorDivOptions",
  1294. "SquareOptions",
  1295. "ZerosLikeOptions",
  1296. "FillOptions",
  1297. "BidirectionalSequenceLSTMOptions",
  1298. "BidirectionalSequenceRNNOptions",
  1299. "UnidirectionalSequenceLSTMOptions",
  1300. "FloorModOptions",
  1301. "RangeOptions",
  1302. "ResizeNearestNeighborOptions",
  1303. "LeakyReluOptions",
  1304. "SquaredDifferenceOptions",
  1305. "MirrorPadOptions",
  1306. "AbsOptions",
  1307. "SplitVOptions",
  1308. "UniqueOptions",
  1309. "ReverseV2Options",
  1310. "AddNOptions",
  1311. "GatherNdOptions",
  1312. "CosOptions",
  1313. "WhereOptions",
  1314. "RankOptions",
  1315. "ReverseSequenceOptions",
  1316. "MatrixDiagOptions",
  1317. "QuantizeOptions",
  1318. "MatrixSetDiagOptions",
  1319. "HardSwishOptions",
  1320. "IfOptions",
  1321. "WhileOptions",
  1322. "DepthToSpaceOptions",
  1323. "NonMaxSuppressionV4Options",
  1324. "NonMaxSuppressionV5Options",
  1325. "ScatterNdOptions",
  1326. "SelectV2Options",
  1327. "DensifyOptions",
  1328. "SegmentSumOptions",
  1329. "BatchMatMulOptions",
  1330. "CumsumOptions",
  1331. "CallOnceOptions",
  1332. "BroadcastToOptions",
  1333. "Rfft2dOptions",
  1334. "Conv3DOptions",
  1335. "HashtableOptions",
  1336. "HashtableFindOptions",
  1337. "HashtableImportOptions",
  1338. "HashtableSizeOptions",
  1339. "VarHandleOptions",
  1340. "ReadVariableOptions",
  1341. "AssignVariableOptions",
  1342. "RandomOptions",
  1343. "BucketizeOptions",
  1344. "GeluOptions",
  1345. "DynamicUpdateSliceOptions",
  1346. "UnsortedSegmentProdOptions",
  1347. "UnsortedSegmentMaxOptions",
  1348. "UnsortedSegmentMinOptions",
  1349. "UnsortedSegmentSumOptions",
  1350. "ATan2Options",
  1351. "SignOptions",
  1352. nullptr
  1353. };
  1354. return names;
  1355. }
  1356. inline const char *EnumNameBuiltinOptions(BuiltinOptions e) {
  1357. if (::flatbuffers::IsOutRange(e, BuiltinOptions_NONE, BuiltinOptions_SignOptions)) return "";
  1358. const size_t index = static_cast<size_t>(e);
  1359. return EnumNamesBuiltinOptions()[index];
  1360. }
  1361. template<typename T> struct BuiltinOptionsTraits {
  1362. static const BuiltinOptions enum_value = BuiltinOptions_NONE;
  1363. };
  1364. template<> struct BuiltinOptionsTraits<opencv_tflite::Conv2DOptions> {
  1365. static const BuiltinOptions enum_value = BuiltinOptions_Conv2DOptions;
  1366. };
  1367. template<> struct BuiltinOptionsTraits<opencv_tflite::DepthwiseConv2DOptions> {
  1368. static const BuiltinOptions enum_value = BuiltinOptions_DepthwiseConv2DOptions;
  1369. };
  1370. template<> struct BuiltinOptionsTraits<opencv_tflite::ConcatEmbeddingsOptions> {
  1371. static const BuiltinOptions enum_value = BuiltinOptions_ConcatEmbeddingsOptions;
  1372. };
  1373. template<> struct BuiltinOptionsTraits<opencv_tflite::LSHProjectionOptions> {
  1374. static const BuiltinOptions enum_value = BuiltinOptions_LSHProjectionOptions;
  1375. };
  1376. template<> struct BuiltinOptionsTraits<opencv_tflite::Pool2DOptions> {
  1377. static const BuiltinOptions enum_value = BuiltinOptions_Pool2DOptions;
  1378. };
  1379. template<> struct BuiltinOptionsTraits<opencv_tflite::SVDFOptions> {
  1380. static const BuiltinOptions enum_value = BuiltinOptions_SVDFOptions;
  1381. };
  1382. template<> struct BuiltinOptionsTraits<opencv_tflite::RNNOptions> {
  1383. static const BuiltinOptions enum_value = BuiltinOptions_RNNOptions;
  1384. };
  1385. template<> struct BuiltinOptionsTraits<opencv_tflite::FullyConnectedOptions> {
  1386. static const BuiltinOptions enum_value = BuiltinOptions_FullyConnectedOptions;
  1387. };
  1388. template<> struct BuiltinOptionsTraits<opencv_tflite::SoftmaxOptions> {
  1389. static const BuiltinOptions enum_value = BuiltinOptions_SoftmaxOptions;
  1390. };
  1391. template<> struct BuiltinOptionsTraits<opencv_tflite::ConcatenationOptions> {
  1392. static const BuiltinOptions enum_value = BuiltinOptions_ConcatenationOptions;
  1393. };
  1394. template<> struct BuiltinOptionsTraits<opencv_tflite::AddOptions> {
  1395. static const BuiltinOptions enum_value = BuiltinOptions_AddOptions;
  1396. };
  1397. template<> struct BuiltinOptionsTraits<opencv_tflite::L2NormOptions> {
  1398. static const BuiltinOptions enum_value = BuiltinOptions_L2NormOptions;
  1399. };
  1400. template<> struct BuiltinOptionsTraits<opencv_tflite::LocalResponseNormalizationOptions> {
  1401. static const BuiltinOptions enum_value = BuiltinOptions_LocalResponseNormalizationOptions;
  1402. };
  1403. template<> struct BuiltinOptionsTraits<opencv_tflite::LSTMOptions> {
  1404. static const BuiltinOptions enum_value = BuiltinOptions_LSTMOptions;
  1405. };
  1406. template<> struct BuiltinOptionsTraits<opencv_tflite::ResizeBilinearOptions> {
  1407. static const BuiltinOptions enum_value = BuiltinOptions_ResizeBilinearOptions;
  1408. };
  1409. template<> struct BuiltinOptionsTraits<opencv_tflite::CallOptions> {
  1410. static const BuiltinOptions enum_value = BuiltinOptions_CallOptions;
  1411. };
  1412. template<> struct BuiltinOptionsTraits<opencv_tflite::ReshapeOptions> {
  1413. static const BuiltinOptions enum_value = BuiltinOptions_ReshapeOptions;
  1414. };
  1415. template<> struct BuiltinOptionsTraits<opencv_tflite::SkipGramOptions> {
  1416. static const BuiltinOptions enum_value = BuiltinOptions_SkipGramOptions;
  1417. };
  1418. template<> struct BuiltinOptionsTraits<opencv_tflite::SpaceToDepthOptions> {
  1419. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToDepthOptions;
  1420. };
  1421. template<> struct BuiltinOptionsTraits<opencv_tflite::EmbeddingLookupSparseOptions> {
  1422. static const BuiltinOptions enum_value = BuiltinOptions_EmbeddingLookupSparseOptions;
  1423. };
  1424. template<> struct BuiltinOptionsTraits<opencv_tflite::MulOptions> {
  1425. static const BuiltinOptions enum_value = BuiltinOptions_MulOptions;
  1426. };
  1427. template<> struct BuiltinOptionsTraits<opencv_tflite::PadOptions> {
  1428. static const BuiltinOptions enum_value = BuiltinOptions_PadOptions;
  1429. };
  1430. template<> struct BuiltinOptionsTraits<opencv_tflite::GatherOptions> {
  1431. static const BuiltinOptions enum_value = BuiltinOptions_GatherOptions;
  1432. };
  1433. template<> struct BuiltinOptionsTraits<opencv_tflite::BatchToSpaceNDOptions> {
  1434. static const BuiltinOptions enum_value = BuiltinOptions_BatchToSpaceNDOptions;
  1435. };
  1436. template<> struct BuiltinOptionsTraits<opencv_tflite::SpaceToBatchNDOptions> {
  1437. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToBatchNDOptions;
  1438. };
  1439. template<> struct BuiltinOptionsTraits<opencv_tflite::TransposeOptions> {
  1440. static const BuiltinOptions enum_value = BuiltinOptions_TransposeOptions;
  1441. };
  1442. template<> struct BuiltinOptionsTraits<opencv_tflite::ReducerOptions> {
  1443. static const BuiltinOptions enum_value = BuiltinOptions_ReducerOptions;
  1444. };
  1445. template<> struct BuiltinOptionsTraits<opencv_tflite::SubOptions> {
  1446. static const BuiltinOptions enum_value = BuiltinOptions_SubOptions;
  1447. };
  1448. template<> struct BuiltinOptionsTraits<opencv_tflite::DivOptions> {
  1449. static const BuiltinOptions enum_value = BuiltinOptions_DivOptions;
  1450. };
  1451. template<> struct BuiltinOptionsTraits<opencv_tflite::SqueezeOptions> {
  1452. static const BuiltinOptions enum_value = BuiltinOptions_SqueezeOptions;
  1453. };
  1454. template<> struct BuiltinOptionsTraits<opencv_tflite::SequenceRNNOptions> {
  1455. static const BuiltinOptions enum_value = BuiltinOptions_SequenceRNNOptions;
  1456. };
  1457. template<> struct BuiltinOptionsTraits<opencv_tflite::StridedSliceOptions> {
  1458. static const BuiltinOptions enum_value = BuiltinOptions_StridedSliceOptions;
  1459. };
  1460. template<> struct BuiltinOptionsTraits<opencv_tflite::ExpOptions> {
  1461. static const BuiltinOptions enum_value = BuiltinOptions_ExpOptions;
  1462. };
  1463. template<> struct BuiltinOptionsTraits<opencv_tflite::TopKV2Options> {
  1464. static const BuiltinOptions enum_value = BuiltinOptions_TopKV2Options;
  1465. };
  1466. template<> struct BuiltinOptionsTraits<opencv_tflite::SplitOptions> {
  1467. static const BuiltinOptions enum_value = BuiltinOptions_SplitOptions;
  1468. };
  1469. template<> struct BuiltinOptionsTraits<opencv_tflite::LogSoftmaxOptions> {
  1470. static const BuiltinOptions enum_value = BuiltinOptions_LogSoftmaxOptions;
  1471. };
  1472. template<> struct BuiltinOptionsTraits<opencv_tflite::CastOptions> {
  1473. static const BuiltinOptions enum_value = BuiltinOptions_CastOptions;
  1474. };
  1475. template<> struct BuiltinOptionsTraits<opencv_tflite::DequantizeOptions> {
  1476. static const BuiltinOptions enum_value = BuiltinOptions_DequantizeOptions;
  1477. };
  1478. template<> struct BuiltinOptionsTraits<opencv_tflite::MaximumMinimumOptions> {
  1479. static const BuiltinOptions enum_value = BuiltinOptions_MaximumMinimumOptions;
  1480. };
  1481. template<> struct BuiltinOptionsTraits<opencv_tflite::ArgMaxOptions> {
  1482. static const BuiltinOptions enum_value = BuiltinOptions_ArgMaxOptions;
  1483. };
  1484. template<> struct BuiltinOptionsTraits<opencv_tflite::LessOptions> {
  1485. static const BuiltinOptions enum_value = BuiltinOptions_LessOptions;
  1486. };
  1487. template<> struct BuiltinOptionsTraits<opencv_tflite::NegOptions> {
  1488. static const BuiltinOptions enum_value = BuiltinOptions_NegOptions;
  1489. };
  1490. template<> struct BuiltinOptionsTraits<opencv_tflite::PadV2Options> {
  1491. static const BuiltinOptions enum_value = BuiltinOptions_PadV2Options;
  1492. };
  1493. template<> struct BuiltinOptionsTraits<opencv_tflite::GreaterOptions> {
  1494. static const BuiltinOptions enum_value = BuiltinOptions_GreaterOptions;
  1495. };
  1496. template<> struct BuiltinOptionsTraits<opencv_tflite::GreaterEqualOptions> {
  1497. static const BuiltinOptions enum_value = BuiltinOptions_GreaterEqualOptions;
  1498. };
  1499. template<> struct BuiltinOptionsTraits<opencv_tflite::LessEqualOptions> {
  1500. static const BuiltinOptions enum_value = BuiltinOptions_LessEqualOptions;
  1501. };
  1502. template<> struct BuiltinOptionsTraits<opencv_tflite::SelectOptions> {
  1503. static const BuiltinOptions enum_value = BuiltinOptions_SelectOptions;
  1504. };
  1505. template<> struct BuiltinOptionsTraits<opencv_tflite::SliceOptions> {
  1506. static const BuiltinOptions enum_value = BuiltinOptions_SliceOptions;
  1507. };
  1508. template<> struct BuiltinOptionsTraits<opencv_tflite::TransposeConvOptions> {
  1509. static const BuiltinOptions enum_value = BuiltinOptions_TransposeConvOptions;
  1510. };
  1511. template<> struct BuiltinOptionsTraits<opencv_tflite::SparseToDenseOptions> {
  1512. static const BuiltinOptions enum_value = BuiltinOptions_SparseToDenseOptions;
  1513. };
  1514. template<> struct BuiltinOptionsTraits<opencv_tflite::TileOptions> {
  1515. static const BuiltinOptions enum_value = BuiltinOptions_TileOptions;
  1516. };
  1517. template<> struct BuiltinOptionsTraits<opencv_tflite::ExpandDimsOptions> {
  1518. static const BuiltinOptions enum_value = BuiltinOptions_ExpandDimsOptions;
  1519. };
  1520. template<> struct BuiltinOptionsTraits<opencv_tflite::EqualOptions> {
  1521. static const BuiltinOptions enum_value = BuiltinOptions_EqualOptions;
  1522. };
  1523. template<> struct BuiltinOptionsTraits<opencv_tflite::NotEqualOptions> {
  1524. static const BuiltinOptions enum_value = BuiltinOptions_NotEqualOptions;
  1525. };
  1526. template<> struct BuiltinOptionsTraits<opencv_tflite::ShapeOptions> {
  1527. static const BuiltinOptions enum_value = BuiltinOptions_ShapeOptions;
  1528. };
  1529. template<> struct BuiltinOptionsTraits<opencv_tflite::PowOptions> {
  1530. static const BuiltinOptions enum_value = BuiltinOptions_PowOptions;
  1531. };
  1532. template<> struct BuiltinOptionsTraits<opencv_tflite::ArgMinOptions> {
  1533. static const BuiltinOptions enum_value = BuiltinOptions_ArgMinOptions;
  1534. };
  1535. template<> struct BuiltinOptionsTraits<opencv_tflite::FakeQuantOptions> {
  1536. static const BuiltinOptions enum_value = BuiltinOptions_FakeQuantOptions;
  1537. };
  1538. template<> struct BuiltinOptionsTraits<opencv_tflite::PackOptions> {
  1539. static const BuiltinOptions enum_value = BuiltinOptions_PackOptions;
  1540. };
  1541. template<> struct BuiltinOptionsTraits<opencv_tflite::LogicalOrOptions> {
  1542. static const BuiltinOptions enum_value = BuiltinOptions_LogicalOrOptions;
  1543. };
  1544. template<> struct BuiltinOptionsTraits<opencv_tflite::OneHotOptions> {
  1545. static const BuiltinOptions enum_value = BuiltinOptions_OneHotOptions;
  1546. };
  1547. template<> struct BuiltinOptionsTraits<opencv_tflite::LogicalAndOptions> {
  1548. static const BuiltinOptions enum_value = BuiltinOptions_LogicalAndOptions;
  1549. };
  1550. template<> struct BuiltinOptionsTraits<opencv_tflite::LogicalNotOptions> {
  1551. static const BuiltinOptions enum_value = BuiltinOptions_LogicalNotOptions;
  1552. };
  1553. template<> struct BuiltinOptionsTraits<opencv_tflite::UnpackOptions> {
  1554. static const BuiltinOptions enum_value = BuiltinOptions_UnpackOptions;
  1555. };
  1556. template<> struct BuiltinOptionsTraits<opencv_tflite::FloorDivOptions> {
  1557. static const BuiltinOptions enum_value = BuiltinOptions_FloorDivOptions;
  1558. };
  1559. template<> struct BuiltinOptionsTraits<opencv_tflite::SquareOptions> {
  1560. static const BuiltinOptions enum_value = BuiltinOptions_SquareOptions;
  1561. };
  1562. template<> struct BuiltinOptionsTraits<opencv_tflite::ZerosLikeOptions> {
  1563. static const BuiltinOptions enum_value = BuiltinOptions_ZerosLikeOptions;
  1564. };
  1565. template<> struct BuiltinOptionsTraits<opencv_tflite::FillOptions> {
  1566. static const BuiltinOptions enum_value = BuiltinOptions_FillOptions;
  1567. };
  1568. template<> struct BuiltinOptionsTraits<opencv_tflite::BidirectionalSequenceLSTMOptions> {
  1569. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceLSTMOptions;
  1570. };
  1571. template<> struct BuiltinOptionsTraits<opencv_tflite::BidirectionalSequenceRNNOptions> {
  1572. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceRNNOptions;
  1573. };
  1574. template<> struct BuiltinOptionsTraits<opencv_tflite::UnidirectionalSequenceLSTMOptions> {
  1575. static const BuiltinOptions enum_value = BuiltinOptions_UnidirectionalSequenceLSTMOptions;
  1576. };
  1577. template<> struct BuiltinOptionsTraits<opencv_tflite::FloorModOptions> {
  1578. static const BuiltinOptions enum_value = BuiltinOptions_FloorModOptions;
  1579. };
  1580. template<> struct BuiltinOptionsTraits<opencv_tflite::RangeOptions> {
  1581. static const BuiltinOptions enum_value = BuiltinOptions_RangeOptions;
  1582. };
  1583. template<> struct BuiltinOptionsTraits<opencv_tflite::ResizeNearestNeighborOptions> {
  1584. static const BuiltinOptions enum_value = BuiltinOptions_ResizeNearestNeighborOptions;
  1585. };
  1586. template<> struct BuiltinOptionsTraits<opencv_tflite::LeakyReluOptions> {
  1587. static const BuiltinOptions enum_value = BuiltinOptions_LeakyReluOptions;
  1588. };
  1589. template<> struct BuiltinOptionsTraits<opencv_tflite::SquaredDifferenceOptions> {
  1590. static const BuiltinOptions enum_value = BuiltinOptions_SquaredDifferenceOptions;
  1591. };
  1592. template<> struct BuiltinOptionsTraits<opencv_tflite::MirrorPadOptions> {
  1593. static const BuiltinOptions enum_value = BuiltinOptions_MirrorPadOptions;
  1594. };
  1595. template<> struct BuiltinOptionsTraits<opencv_tflite::AbsOptions> {
  1596. static const BuiltinOptions enum_value = BuiltinOptions_AbsOptions;
  1597. };
  1598. template<> struct BuiltinOptionsTraits<opencv_tflite::SplitVOptions> {
  1599. static const BuiltinOptions enum_value = BuiltinOptions_SplitVOptions;
  1600. };
  1601. template<> struct BuiltinOptionsTraits<opencv_tflite::UniqueOptions> {
  1602. static const BuiltinOptions enum_value = BuiltinOptions_UniqueOptions;
  1603. };
  1604. template<> struct BuiltinOptionsTraits<opencv_tflite::ReverseV2Options> {
  1605. static const BuiltinOptions enum_value = BuiltinOptions_ReverseV2Options;
  1606. };
  1607. template<> struct BuiltinOptionsTraits<opencv_tflite::AddNOptions> {
  1608. static const BuiltinOptions enum_value = BuiltinOptions_AddNOptions;
  1609. };
  1610. template<> struct BuiltinOptionsTraits<opencv_tflite::GatherNdOptions> {
  1611. static const BuiltinOptions enum_value = BuiltinOptions_GatherNdOptions;
  1612. };
  1613. template<> struct BuiltinOptionsTraits<opencv_tflite::CosOptions> {
  1614. static const BuiltinOptions enum_value = BuiltinOptions_CosOptions;
  1615. };
  1616. template<> struct BuiltinOptionsTraits<opencv_tflite::WhereOptions> {
  1617. static const BuiltinOptions enum_value = BuiltinOptions_WhereOptions;
  1618. };
  1619. template<> struct BuiltinOptionsTraits<opencv_tflite::RankOptions> {
  1620. static const BuiltinOptions enum_value = BuiltinOptions_RankOptions;
  1621. };
  1622. template<> struct BuiltinOptionsTraits<opencv_tflite::ReverseSequenceOptions> {
  1623. static const BuiltinOptions enum_value = BuiltinOptions_ReverseSequenceOptions;
  1624. };
  1625. template<> struct BuiltinOptionsTraits<opencv_tflite::MatrixDiagOptions> {
  1626. static const BuiltinOptions enum_value = BuiltinOptions_MatrixDiagOptions;
  1627. };
  1628. template<> struct BuiltinOptionsTraits<opencv_tflite::QuantizeOptions> {
  1629. static const BuiltinOptions enum_value = BuiltinOptions_QuantizeOptions;
  1630. };
  1631. template<> struct BuiltinOptionsTraits<opencv_tflite::MatrixSetDiagOptions> {
  1632. static const BuiltinOptions enum_value = BuiltinOptions_MatrixSetDiagOptions;
  1633. };
  1634. template<> struct BuiltinOptionsTraits<opencv_tflite::HardSwishOptions> {
  1635. static const BuiltinOptions enum_value = BuiltinOptions_HardSwishOptions;
  1636. };
  1637. template<> struct BuiltinOptionsTraits<opencv_tflite::IfOptions> {
  1638. static const BuiltinOptions enum_value = BuiltinOptions_IfOptions;
  1639. };
  1640. template<> struct BuiltinOptionsTraits<opencv_tflite::WhileOptions> {
  1641. static const BuiltinOptions enum_value = BuiltinOptions_WhileOptions;
  1642. };
  1643. template<> struct BuiltinOptionsTraits<opencv_tflite::DepthToSpaceOptions> {
  1644. static const BuiltinOptions enum_value = BuiltinOptions_DepthToSpaceOptions;
  1645. };
  1646. template<> struct BuiltinOptionsTraits<opencv_tflite::NonMaxSuppressionV4Options> {
  1647. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV4Options;
  1648. };
  1649. template<> struct BuiltinOptionsTraits<opencv_tflite::NonMaxSuppressionV5Options> {
  1650. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV5Options;
  1651. };
  1652. template<> struct BuiltinOptionsTraits<opencv_tflite::ScatterNdOptions> {
  1653. static const BuiltinOptions enum_value = BuiltinOptions_ScatterNdOptions;
  1654. };
  1655. template<> struct BuiltinOptionsTraits<opencv_tflite::SelectV2Options> {
  1656. static const BuiltinOptions enum_value = BuiltinOptions_SelectV2Options;
  1657. };
  1658. template<> struct BuiltinOptionsTraits<opencv_tflite::DensifyOptions> {
  1659. static const BuiltinOptions enum_value = BuiltinOptions_DensifyOptions;
  1660. };
  1661. template<> struct BuiltinOptionsTraits<opencv_tflite::SegmentSumOptions> {
  1662. static const BuiltinOptions enum_value = BuiltinOptions_SegmentSumOptions;
  1663. };
  1664. template<> struct BuiltinOptionsTraits<opencv_tflite::BatchMatMulOptions> {
  1665. static const BuiltinOptions enum_value = BuiltinOptions_BatchMatMulOptions;
  1666. };
  1667. template<> struct BuiltinOptionsTraits<opencv_tflite::CumsumOptions> {
  1668. static const BuiltinOptions enum_value = BuiltinOptions_CumsumOptions;
  1669. };
  1670. template<> struct BuiltinOptionsTraits<opencv_tflite::CallOnceOptions> {
  1671. static const BuiltinOptions enum_value = BuiltinOptions_CallOnceOptions;
  1672. };
  1673. template<> struct BuiltinOptionsTraits<opencv_tflite::BroadcastToOptions> {
  1674. static const BuiltinOptions enum_value = BuiltinOptions_BroadcastToOptions;
  1675. };
  1676. template<> struct BuiltinOptionsTraits<opencv_tflite::Rfft2dOptions> {
  1677. static const BuiltinOptions enum_value = BuiltinOptions_Rfft2dOptions;
  1678. };
  1679. template<> struct BuiltinOptionsTraits<opencv_tflite::Conv3DOptions> {
  1680. static const BuiltinOptions enum_value = BuiltinOptions_Conv3DOptions;
  1681. };
  1682. template<> struct BuiltinOptionsTraits<opencv_tflite::HashtableOptions> {
  1683. static const BuiltinOptions enum_value = BuiltinOptions_HashtableOptions;
  1684. };
  1685. template<> struct BuiltinOptionsTraits<opencv_tflite::HashtableFindOptions> {
  1686. static const BuiltinOptions enum_value = BuiltinOptions_HashtableFindOptions;
  1687. };
  1688. template<> struct BuiltinOptionsTraits<opencv_tflite::HashtableImportOptions> {
  1689. static const BuiltinOptions enum_value = BuiltinOptions_HashtableImportOptions;
  1690. };
  1691. template<> struct BuiltinOptionsTraits<opencv_tflite::HashtableSizeOptions> {
  1692. static const BuiltinOptions enum_value = BuiltinOptions_HashtableSizeOptions;
  1693. };
  1694. template<> struct BuiltinOptionsTraits<opencv_tflite::VarHandleOptions> {
  1695. static const BuiltinOptions enum_value = BuiltinOptions_VarHandleOptions;
  1696. };
  1697. template<> struct BuiltinOptionsTraits<opencv_tflite::ReadVariableOptions> {
  1698. static const BuiltinOptions enum_value = BuiltinOptions_ReadVariableOptions;
  1699. };
  1700. template<> struct BuiltinOptionsTraits<opencv_tflite::AssignVariableOptions> {
  1701. static const BuiltinOptions enum_value = BuiltinOptions_AssignVariableOptions;
  1702. };
  1703. template<> struct BuiltinOptionsTraits<opencv_tflite::RandomOptions> {
  1704. static const BuiltinOptions enum_value = BuiltinOptions_RandomOptions;
  1705. };
  1706. template<> struct BuiltinOptionsTraits<opencv_tflite::BucketizeOptions> {
  1707. static const BuiltinOptions enum_value = BuiltinOptions_BucketizeOptions;
  1708. };
  1709. template<> struct BuiltinOptionsTraits<opencv_tflite::GeluOptions> {
  1710. static const BuiltinOptions enum_value = BuiltinOptions_GeluOptions;
  1711. };
  1712. template<> struct BuiltinOptionsTraits<opencv_tflite::DynamicUpdateSliceOptions> {
  1713. static const BuiltinOptions enum_value = BuiltinOptions_DynamicUpdateSliceOptions;
  1714. };
  1715. template<> struct BuiltinOptionsTraits<opencv_tflite::UnsortedSegmentProdOptions> {
  1716. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentProdOptions;
  1717. };
  1718. template<> struct BuiltinOptionsTraits<opencv_tflite::UnsortedSegmentMaxOptions> {
  1719. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMaxOptions;
  1720. };
  1721. template<> struct BuiltinOptionsTraits<opencv_tflite::UnsortedSegmentMinOptions> {
  1722. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMinOptions;
  1723. };
  1724. template<> struct BuiltinOptionsTraits<opencv_tflite::UnsortedSegmentSumOptions> {
  1725. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentSumOptions;
  1726. };
  1727. template<> struct BuiltinOptionsTraits<opencv_tflite::ATan2Options> {
  1728. static const BuiltinOptions enum_value = BuiltinOptions_ATan2Options;
  1729. };
  1730. template<> struct BuiltinOptionsTraits<opencv_tflite::SignOptions> {
  1731. static const BuiltinOptions enum_value = BuiltinOptions_SignOptions;
  1732. };
  1733. bool VerifyBuiltinOptions(::flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type);
  1734. bool VerifyBuiltinOptionsVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types);
  1735. enum Padding : int8_t {
  1736. Padding_SAME = 0,
  1737. Padding_VALID = 1,
  1738. Padding_MIN = Padding_SAME,
  1739. Padding_MAX = Padding_VALID
  1740. };
  1741. inline const Padding (&EnumValuesPadding())[2] {
  1742. static const Padding values[] = {
  1743. Padding_SAME,
  1744. Padding_VALID
  1745. };
  1746. return values;
  1747. }
  1748. inline const char * const *EnumNamesPadding() {
  1749. static const char * const names[3] = {
  1750. "SAME",
  1751. "VALID",
  1752. nullptr
  1753. };
  1754. return names;
  1755. }
  1756. inline const char *EnumNamePadding(Padding e) {
  1757. if (::flatbuffers::IsOutRange(e, Padding_SAME, Padding_VALID)) return "";
  1758. const size_t index = static_cast<size_t>(e);
  1759. return EnumNamesPadding()[index];
  1760. }
  1761. enum ActivationFunctionType : int8_t {
  1762. ActivationFunctionType_NONE = 0,
  1763. ActivationFunctionType_RELU = 1,
  1764. ActivationFunctionType_RELU_N1_TO_1 = 2,
  1765. ActivationFunctionType_RELU6 = 3,
  1766. ActivationFunctionType_TANH = 4,
  1767. ActivationFunctionType_SIGN_BIT = 5,
  1768. ActivationFunctionType_MIN = ActivationFunctionType_NONE,
  1769. ActivationFunctionType_MAX = ActivationFunctionType_SIGN_BIT
  1770. };
  1771. inline const ActivationFunctionType (&EnumValuesActivationFunctionType())[6] {
  1772. static const ActivationFunctionType values[] = {
  1773. ActivationFunctionType_NONE,
  1774. ActivationFunctionType_RELU,
  1775. ActivationFunctionType_RELU_N1_TO_1,
  1776. ActivationFunctionType_RELU6,
  1777. ActivationFunctionType_TANH,
  1778. ActivationFunctionType_SIGN_BIT
  1779. };
  1780. return values;
  1781. }
  1782. inline const char * const *EnumNamesActivationFunctionType() {
  1783. static const char * const names[7] = {
  1784. "NONE",
  1785. "RELU",
  1786. "RELU_N1_TO_1",
  1787. "RELU6",
  1788. "TANH",
  1789. "SIGN_BIT",
  1790. nullptr
  1791. };
  1792. return names;
  1793. }
  1794. inline const char *EnumNameActivationFunctionType(ActivationFunctionType e) {
  1795. if (::flatbuffers::IsOutRange(e, ActivationFunctionType_NONE, ActivationFunctionType_SIGN_BIT)) return "";
  1796. const size_t index = static_cast<size_t>(e);
  1797. return EnumNamesActivationFunctionType()[index];
  1798. }
  1799. enum LSHProjectionType : int8_t {
  1800. LSHProjectionType_UNKNOWN = 0,
  1801. LSHProjectionType_SPARSE = 1,
  1802. LSHProjectionType_DENSE = 2,
  1803. LSHProjectionType_MIN = LSHProjectionType_UNKNOWN,
  1804. LSHProjectionType_MAX = LSHProjectionType_DENSE
  1805. };
  1806. inline const LSHProjectionType (&EnumValuesLSHProjectionType())[3] {
  1807. static const LSHProjectionType values[] = {
  1808. LSHProjectionType_UNKNOWN,
  1809. LSHProjectionType_SPARSE,
  1810. LSHProjectionType_DENSE
  1811. };
  1812. return values;
  1813. }
  1814. inline const char * const *EnumNamesLSHProjectionType() {
  1815. static const char * const names[4] = {
  1816. "UNKNOWN",
  1817. "SPARSE",
  1818. "DENSE",
  1819. nullptr
  1820. };
  1821. return names;
  1822. }
  1823. inline const char *EnumNameLSHProjectionType(LSHProjectionType e) {
  1824. if (::flatbuffers::IsOutRange(e, LSHProjectionType_UNKNOWN, LSHProjectionType_DENSE)) return "";
  1825. const size_t index = static_cast<size_t>(e);
  1826. return EnumNamesLSHProjectionType()[index];
  1827. }
  1828. enum FullyConnectedOptionsWeightsFormat : int8_t {
  1829. FullyConnectedOptionsWeightsFormat_DEFAULT = 0,
  1830. FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8 = 1,
  1831. FullyConnectedOptionsWeightsFormat_MIN = FullyConnectedOptionsWeightsFormat_DEFAULT,
  1832. FullyConnectedOptionsWeightsFormat_MAX = FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
  1833. };
  1834. inline const FullyConnectedOptionsWeightsFormat (&EnumValuesFullyConnectedOptionsWeightsFormat())[2] {
  1835. static const FullyConnectedOptionsWeightsFormat values[] = {
  1836. FullyConnectedOptionsWeightsFormat_DEFAULT,
  1837. FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
  1838. };
  1839. return values;
  1840. }
  1841. inline const char * const *EnumNamesFullyConnectedOptionsWeightsFormat() {
  1842. static const char * const names[3] = {
  1843. "DEFAULT",
  1844. "SHUFFLED4x16INT8",
  1845. nullptr
  1846. };
  1847. return names;
  1848. }
  1849. inline const char *EnumNameFullyConnectedOptionsWeightsFormat(FullyConnectedOptionsWeightsFormat e) {
  1850. if (::flatbuffers::IsOutRange(e, FullyConnectedOptionsWeightsFormat_DEFAULT, FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8)) return "";
  1851. const size_t index = static_cast<size_t>(e);
  1852. return EnumNamesFullyConnectedOptionsWeightsFormat()[index];
  1853. }
  1854. enum LSTMKernelType : int8_t {
  1855. LSTMKernelType_FULL = 0,
  1856. LSTMKernelType_BASIC = 1,
  1857. LSTMKernelType_MIN = LSTMKernelType_FULL,
  1858. LSTMKernelType_MAX = LSTMKernelType_BASIC
  1859. };
  1860. inline const LSTMKernelType (&EnumValuesLSTMKernelType())[2] {
  1861. static const LSTMKernelType values[] = {
  1862. LSTMKernelType_FULL,
  1863. LSTMKernelType_BASIC
  1864. };
  1865. return values;
  1866. }
  1867. inline const char * const *EnumNamesLSTMKernelType() {
  1868. static const char * const names[3] = {
  1869. "FULL",
  1870. "BASIC",
  1871. nullptr
  1872. };
  1873. return names;
  1874. }
  1875. inline const char *EnumNameLSTMKernelType(LSTMKernelType e) {
  1876. if (::flatbuffers::IsOutRange(e, LSTMKernelType_FULL, LSTMKernelType_BASIC)) return "";
  1877. const size_t index = static_cast<size_t>(e);
  1878. return EnumNamesLSTMKernelType()[index];
  1879. }
  1880. enum CombinerType : int8_t {
  1881. CombinerType_SUM = 0,
  1882. CombinerType_MEAN = 1,
  1883. CombinerType_SQRTN = 2,
  1884. CombinerType_MIN = CombinerType_SUM,
  1885. CombinerType_MAX = CombinerType_SQRTN
  1886. };
  1887. inline const CombinerType (&EnumValuesCombinerType())[3] {
  1888. static const CombinerType values[] = {
  1889. CombinerType_SUM,
  1890. CombinerType_MEAN,
  1891. CombinerType_SQRTN
  1892. };
  1893. return values;
  1894. }
  1895. inline const char * const *EnumNamesCombinerType() {
  1896. static const char * const names[4] = {
  1897. "SUM",
  1898. "MEAN",
  1899. "SQRTN",
  1900. nullptr
  1901. };
  1902. return names;
  1903. }
  1904. inline const char *EnumNameCombinerType(CombinerType e) {
  1905. if (::flatbuffers::IsOutRange(e, CombinerType_SUM, CombinerType_SQRTN)) return "";
  1906. const size_t index = static_cast<size_t>(e);
  1907. return EnumNamesCombinerType()[index];
  1908. }
  1909. enum MirrorPadMode : int8_t {
  1910. MirrorPadMode_REFLECT = 0,
  1911. MirrorPadMode_SYMMETRIC = 1,
  1912. MirrorPadMode_MIN = MirrorPadMode_REFLECT,
  1913. MirrorPadMode_MAX = MirrorPadMode_SYMMETRIC
  1914. };
  1915. inline const MirrorPadMode (&EnumValuesMirrorPadMode())[2] {
  1916. static const MirrorPadMode values[] = {
  1917. MirrorPadMode_REFLECT,
  1918. MirrorPadMode_SYMMETRIC
  1919. };
  1920. return values;
  1921. }
  1922. inline const char * const *EnumNamesMirrorPadMode() {
  1923. static const char * const names[3] = {
  1924. "REFLECT",
  1925. "SYMMETRIC",
  1926. nullptr
  1927. };
  1928. return names;
  1929. }
  1930. inline const char *EnumNameMirrorPadMode(MirrorPadMode e) {
  1931. if (::flatbuffers::IsOutRange(e, MirrorPadMode_REFLECT, MirrorPadMode_SYMMETRIC)) return "";
  1932. const size_t index = static_cast<size_t>(e);
  1933. return EnumNamesMirrorPadMode()[index];
  1934. }
  1935. enum CustomOptionsFormat : int8_t {
  1936. CustomOptionsFormat_FLEXBUFFERS = 0,
  1937. CustomOptionsFormat_MIN = CustomOptionsFormat_FLEXBUFFERS,
  1938. CustomOptionsFormat_MAX = CustomOptionsFormat_FLEXBUFFERS
  1939. };
  1940. inline const CustomOptionsFormat (&EnumValuesCustomOptionsFormat())[1] {
  1941. static const CustomOptionsFormat values[] = {
  1942. CustomOptionsFormat_FLEXBUFFERS
  1943. };
  1944. return values;
  1945. }
  1946. inline const char * const *EnumNamesCustomOptionsFormat() {
  1947. static const char * const names[2] = {
  1948. "FLEXBUFFERS",
  1949. nullptr
  1950. };
  1951. return names;
  1952. }
  1953. inline const char *EnumNameCustomOptionsFormat(CustomOptionsFormat e) {
  1954. if (::flatbuffers::IsOutRange(e, CustomOptionsFormat_FLEXBUFFERS, CustomOptionsFormat_FLEXBUFFERS)) return "";
  1955. const size_t index = static_cast<size_t>(e);
  1956. return EnumNamesCustomOptionsFormat()[index];
  1957. }
  1958. struct CustomQuantization FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  1959. typedef CustomQuantizationBuilder Builder;
  1960. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  1961. VT_CUSTOM = 4
  1962. };
  1963. const ::flatbuffers::Vector<uint8_t> *custom() const {
  1964. return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_CUSTOM);
  1965. }
  1966. bool Verify(::flatbuffers::Verifier &verifier) const {
  1967. return VerifyTableStart(verifier) &&
  1968. VerifyOffset(verifier, VT_CUSTOM) &&
  1969. verifier.VerifyVector(custom()) &&
  1970. verifier.EndTable();
  1971. }
  1972. };
  1973. struct CustomQuantizationBuilder {
  1974. typedef CustomQuantization Table;
  1975. ::flatbuffers::FlatBufferBuilder &fbb_;
  1976. ::flatbuffers::uoffset_t start_;
  1977. void add_custom(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> custom) {
  1978. fbb_.AddOffset(CustomQuantization::VT_CUSTOM, custom);
  1979. }
  1980. explicit CustomQuantizationBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  1981. : fbb_(_fbb) {
  1982. start_ = fbb_.StartTable();
  1983. }
  1984. ::flatbuffers::Offset<CustomQuantization> Finish() {
  1985. const auto end = fbb_.EndTable(start_);
  1986. auto o = ::flatbuffers::Offset<CustomQuantization>(end);
  1987. return o;
  1988. }
  1989. };
  1990. inline ::flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(
  1991. ::flatbuffers::FlatBufferBuilder &_fbb,
  1992. ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> custom = 0) {
  1993. CustomQuantizationBuilder builder_(_fbb);
  1994. builder_.add_custom(custom);
  1995. return builder_.Finish();
  1996. }
  1997. inline ::flatbuffers::Offset<CustomQuantization> CreateCustomQuantizationDirect(
  1998. ::flatbuffers::FlatBufferBuilder &_fbb,
  1999. const std::vector<uint8_t> *custom = nullptr) {
  2000. if (custom) { _fbb.ForceVectorAlignment(custom->size(), sizeof(uint8_t), 16); }
  2001. auto custom__ = custom ? _fbb.CreateVector<uint8_t>(*custom) : 0;
  2002. return opencv_tflite::CreateCustomQuantization(
  2003. _fbb,
  2004. custom__);
  2005. }
  2006. struct QuantizationParameters FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2007. typedef QuantizationParametersBuilder Builder;
  2008. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2009. VT_MIN = 4,
  2010. VT_MAX = 6,
  2011. VT_SCALE = 8,
  2012. VT_ZERO_POINT = 10,
  2013. VT_DETAILS_TYPE = 12,
  2014. VT_DETAILS = 14,
  2015. VT_QUANTIZED_DIMENSION = 16
  2016. };
  2017. const ::flatbuffers::Vector<float> *min() const {
  2018. return GetPointer<const ::flatbuffers::Vector<float> *>(VT_MIN);
  2019. }
  2020. const ::flatbuffers::Vector<float> *max() const {
  2021. return GetPointer<const ::flatbuffers::Vector<float> *>(VT_MAX);
  2022. }
  2023. const ::flatbuffers::Vector<float> *scale() const {
  2024. return GetPointer<const ::flatbuffers::Vector<float> *>(VT_SCALE);
  2025. }
  2026. const ::flatbuffers::Vector<int64_t> *zero_point() const {
  2027. return GetPointer<const ::flatbuffers::Vector<int64_t> *>(VT_ZERO_POINT);
  2028. }
  2029. opencv_tflite::QuantizationDetails details_type() const {
  2030. return static_cast<opencv_tflite::QuantizationDetails>(GetField<uint8_t>(VT_DETAILS_TYPE, 0));
  2031. }
  2032. const void *details() const {
  2033. return GetPointer<const void *>(VT_DETAILS);
  2034. }
  2035. template<typename T> const T *details_as() const;
  2036. const opencv_tflite::CustomQuantization *details_as_CustomQuantization() const {
  2037. return details_type() == opencv_tflite::QuantizationDetails_CustomQuantization ? static_cast<const opencv_tflite::CustomQuantization *>(details()) : nullptr;
  2038. }
  2039. int32_t quantized_dimension() const {
  2040. return GetField<int32_t>(VT_QUANTIZED_DIMENSION, 0);
  2041. }
  2042. bool Verify(::flatbuffers::Verifier &verifier) const {
  2043. return VerifyTableStart(verifier) &&
  2044. VerifyOffset(verifier, VT_MIN) &&
  2045. verifier.VerifyVector(min()) &&
  2046. VerifyOffset(verifier, VT_MAX) &&
  2047. verifier.VerifyVector(max()) &&
  2048. VerifyOffset(verifier, VT_SCALE) &&
  2049. verifier.VerifyVector(scale()) &&
  2050. VerifyOffset(verifier, VT_ZERO_POINT) &&
  2051. verifier.VerifyVector(zero_point()) &&
  2052. VerifyField<uint8_t>(verifier, VT_DETAILS_TYPE, 1) &&
  2053. VerifyOffset(verifier, VT_DETAILS) &&
  2054. VerifyQuantizationDetails(verifier, details(), details_type()) &&
  2055. VerifyField<int32_t>(verifier, VT_QUANTIZED_DIMENSION, 4) &&
  2056. verifier.EndTable();
  2057. }
  2058. };
  2059. template<> inline const opencv_tflite::CustomQuantization *QuantizationParameters::details_as<opencv_tflite::CustomQuantization>() const {
  2060. return details_as_CustomQuantization();
  2061. }
  2062. struct QuantizationParametersBuilder {
  2063. typedef QuantizationParameters Table;
  2064. ::flatbuffers::FlatBufferBuilder &fbb_;
  2065. ::flatbuffers::uoffset_t start_;
  2066. void add_min(::flatbuffers::Offset<::flatbuffers::Vector<float>> min) {
  2067. fbb_.AddOffset(QuantizationParameters::VT_MIN, min);
  2068. }
  2069. void add_max(::flatbuffers::Offset<::flatbuffers::Vector<float>> max) {
  2070. fbb_.AddOffset(QuantizationParameters::VT_MAX, max);
  2071. }
  2072. void add_scale(::flatbuffers::Offset<::flatbuffers::Vector<float>> scale) {
  2073. fbb_.AddOffset(QuantizationParameters::VT_SCALE, scale);
  2074. }
  2075. void add_zero_point(::flatbuffers::Offset<::flatbuffers::Vector<int64_t>> zero_point) {
  2076. fbb_.AddOffset(QuantizationParameters::VT_ZERO_POINT, zero_point);
  2077. }
  2078. void add_details_type(opencv_tflite::QuantizationDetails details_type) {
  2079. fbb_.AddElement<uint8_t>(QuantizationParameters::VT_DETAILS_TYPE, static_cast<uint8_t>(details_type), 0);
  2080. }
  2081. void add_details(::flatbuffers::Offset<void> details) {
  2082. fbb_.AddOffset(QuantizationParameters::VT_DETAILS, details);
  2083. }
  2084. void add_quantized_dimension(int32_t quantized_dimension) {
  2085. fbb_.AddElement<int32_t>(QuantizationParameters::VT_QUANTIZED_DIMENSION, quantized_dimension, 0);
  2086. }
  2087. explicit QuantizationParametersBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2088. : fbb_(_fbb) {
  2089. start_ = fbb_.StartTable();
  2090. }
  2091. ::flatbuffers::Offset<QuantizationParameters> Finish() {
  2092. const auto end = fbb_.EndTable(start_);
  2093. auto o = ::flatbuffers::Offset<QuantizationParameters>(end);
  2094. return o;
  2095. }
  2096. };
  2097. inline ::flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(
  2098. ::flatbuffers::FlatBufferBuilder &_fbb,
  2099. ::flatbuffers::Offset<::flatbuffers::Vector<float>> min = 0,
  2100. ::flatbuffers::Offset<::flatbuffers::Vector<float>> max = 0,
  2101. ::flatbuffers::Offset<::flatbuffers::Vector<float>> scale = 0,
  2102. ::flatbuffers::Offset<::flatbuffers::Vector<int64_t>> zero_point = 0,
  2103. opencv_tflite::QuantizationDetails details_type = opencv_tflite::QuantizationDetails_NONE,
  2104. ::flatbuffers::Offset<void> details = 0,
  2105. int32_t quantized_dimension = 0) {
  2106. QuantizationParametersBuilder builder_(_fbb);
  2107. builder_.add_quantized_dimension(quantized_dimension);
  2108. builder_.add_details(details);
  2109. builder_.add_zero_point(zero_point);
  2110. builder_.add_scale(scale);
  2111. builder_.add_max(max);
  2112. builder_.add_min(min);
  2113. builder_.add_details_type(details_type);
  2114. return builder_.Finish();
  2115. }
  2116. inline ::flatbuffers::Offset<QuantizationParameters> CreateQuantizationParametersDirect(
  2117. ::flatbuffers::FlatBufferBuilder &_fbb,
  2118. const std::vector<float> *min = nullptr,
  2119. const std::vector<float> *max = nullptr,
  2120. const std::vector<float> *scale = nullptr,
  2121. const std::vector<int64_t> *zero_point = nullptr,
  2122. opencv_tflite::QuantizationDetails details_type = opencv_tflite::QuantizationDetails_NONE,
  2123. ::flatbuffers::Offset<void> details = 0,
  2124. int32_t quantized_dimension = 0) {
  2125. auto min__ = min ? _fbb.CreateVector<float>(*min) : 0;
  2126. auto max__ = max ? _fbb.CreateVector<float>(*max) : 0;
  2127. auto scale__ = scale ? _fbb.CreateVector<float>(*scale) : 0;
  2128. auto zero_point__ = zero_point ? _fbb.CreateVector<int64_t>(*zero_point) : 0;
  2129. return opencv_tflite::CreateQuantizationParameters(
  2130. _fbb,
  2131. min__,
  2132. max__,
  2133. scale__,
  2134. zero_point__,
  2135. details_type,
  2136. details,
  2137. quantized_dimension);
  2138. }
  2139. struct Int32Vector FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2140. typedef Int32VectorBuilder Builder;
  2141. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2142. VT_VALUES = 4
  2143. };
  2144. const ::flatbuffers::Vector<int32_t> *values() const {
  2145. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_VALUES);
  2146. }
  2147. bool Verify(::flatbuffers::Verifier &verifier) const {
  2148. return VerifyTableStart(verifier) &&
  2149. VerifyOffset(verifier, VT_VALUES) &&
  2150. verifier.VerifyVector(values()) &&
  2151. verifier.EndTable();
  2152. }
  2153. };
  2154. struct Int32VectorBuilder {
  2155. typedef Int32Vector Table;
  2156. ::flatbuffers::FlatBufferBuilder &fbb_;
  2157. ::flatbuffers::uoffset_t start_;
  2158. void add_values(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> values) {
  2159. fbb_.AddOffset(Int32Vector::VT_VALUES, values);
  2160. }
  2161. explicit Int32VectorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2162. : fbb_(_fbb) {
  2163. start_ = fbb_.StartTable();
  2164. }
  2165. ::flatbuffers::Offset<Int32Vector> Finish() {
  2166. const auto end = fbb_.EndTable(start_);
  2167. auto o = ::flatbuffers::Offset<Int32Vector>(end);
  2168. return o;
  2169. }
  2170. };
  2171. inline ::flatbuffers::Offset<Int32Vector> CreateInt32Vector(
  2172. ::flatbuffers::FlatBufferBuilder &_fbb,
  2173. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> values = 0) {
  2174. Int32VectorBuilder builder_(_fbb);
  2175. builder_.add_values(values);
  2176. return builder_.Finish();
  2177. }
  2178. inline ::flatbuffers::Offset<Int32Vector> CreateInt32VectorDirect(
  2179. ::flatbuffers::FlatBufferBuilder &_fbb,
  2180. const std::vector<int32_t> *values = nullptr) {
  2181. auto values__ = values ? _fbb.CreateVector<int32_t>(*values) : 0;
  2182. return opencv_tflite::CreateInt32Vector(
  2183. _fbb,
  2184. values__);
  2185. }
  2186. struct Uint16Vector FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2187. typedef Uint16VectorBuilder Builder;
  2188. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2189. VT_VALUES = 4
  2190. };
  2191. const ::flatbuffers::Vector<uint16_t> *values() const {
  2192. return GetPointer<const ::flatbuffers::Vector<uint16_t> *>(VT_VALUES);
  2193. }
  2194. bool Verify(::flatbuffers::Verifier &verifier) const {
  2195. return VerifyTableStart(verifier) &&
  2196. VerifyOffset(verifier, VT_VALUES) &&
  2197. verifier.VerifyVector(values()) &&
  2198. verifier.EndTable();
  2199. }
  2200. };
  2201. struct Uint16VectorBuilder {
  2202. typedef Uint16Vector Table;
  2203. ::flatbuffers::FlatBufferBuilder &fbb_;
  2204. ::flatbuffers::uoffset_t start_;
  2205. void add_values(::flatbuffers::Offset<::flatbuffers::Vector<uint16_t>> values) {
  2206. fbb_.AddOffset(Uint16Vector::VT_VALUES, values);
  2207. }
  2208. explicit Uint16VectorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2209. : fbb_(_fbb) {
  2210. start_ = fbb_.StartTable();
  2211. }
  2212. ::flatbuffers::Offset<Uint16Vector> Finish() {
  2213. const auto end = fbb_.EndTable(start_);
  2214. auto o = ::flatbuffers::Offset<Uint16Vector>(end);
  2215. return o;
  2216. }
  2217. };
  2218. inline ::flatbuffers::Offset<Uint16Vector> CreateUint16Vector(
  2219. ::flatbuffers::FlatBufferBuilder &_fbb,
  2220. ::flatbuffers::Offset<::flatbuffers::Vector<uint16_t>> values = 0) {
  2221. Uint16VectorBuilder builder_(_fbb);
  2222. builder_.add_values(values);
  2223. return builder_.Finish();
  2224. }
  2225. inline ::flatbuffers::Offset<Uint16Vector> CreateUint16VectorDirect(
  2226. ::flatbuffers::FlatBufferBuilder &_fbb,
  2227. const std::vector<uint16_t> *values = nullptr) {
  2228. if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint16_t), 4); }
  2229. auto values__ = values ? _fbb.CreateVector<uint16_t>(*values) : 0;
  2230. return opencv_tflite::CreateUint16Vector(
  2231. _fbb,
  2232. values__);
  2233. }
  2234. struct Uint8Vector FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2235. typedef Uint8VectorBuilder Builder;
  2236. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2237. VT_VALUES = 4
  2238. };
  2239. const ::flatbuffers::Vector<uint8_t> *values() const {
  2240. return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_VALUES);
  2241. }
  2242. bool Verify(::flatbuffers::Verifier &verifier) const {
  2243. return VerifyTableStart(verifier) &&
  2244. VerifyOffset(verifier, VT_VALUES) &&
  2245. verifier.VerifyVector(values()) &&
  2246. verifier.EndTable();
  2247. }
  2248. };
  2249. struct Uint8VectorBuilder {
  2250. typedef Uint8Vector Table;
  2251. ::flatbuffers::FlatBufferBuilder &fbb_;
  2252. ::flatbuffers::uoffset_t start_;
  2253. void add_values(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> values) {
  2254. fbb_.AddOffset(Uint8Vector::VT_VALUES, values);
  2255. }
  2256. explicit Uint8VectorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2257. : fbb_(_fbb) {
  2258. start_ = fbb_.StartTable();
  2259. }
  2260. ::flatbuffers::Offset<Uint8Vector> Finish() {
  2261. const auto end = fbb_.EndTable(start_);
  2262. auto o = ::flatbuffers::Offset<Uint8Vector>(end);
  2263. return o;
  2264. }
  2265. };
  2266. inline ::flatbuffers::Offset<Uint8Vector> CreateUint8Vector(
  2267. ::flatbuffers::FlatBufferBuilder &_fbb,
  2268. ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> values = 0) {
  2269. Uint8VectorBuilder builder_(_fbb);
  2270. builder_.add_values(values);
  2271. return builder_.Finish();
  2272. }
  2273. inline ::flatbuffers::Offset<Uint8Vector> CreateUint8VectorDirect(
  2274. ::flatbuffers::FlatBufferBuilder &_fbb,
  2275. const std::vector<uint8_t> *values = nullptr) {
  2276. if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint8_t), 4); }
  2277. auto values__ = values ? _fbb.CreateVector<uint8_t>(*values) : 0;
  2278. return opencv_tflite::CreateUint8Vector(
  2279. _fbb,
  2280. values__);
  2281. }
  2282. struct DimensionMetadata FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2283. typedef DimensionMetadataBuilder Builder;
  2284. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2285. VT_FORMAT = 4,
  2286. VT_DENSE_SIZE = 6,
  2287. VT_ARRAY_SEGMENTS_TYPE = 8,
  2288. VT_ARRAY_SEGMENTS = 10,
  2289. VT_ARRAY_INDICES_TYPE = 12,
  2290. VT_ARRAY_INDICES = 14
  2291. };
  2292. opencv_tflite::DimensionType format() const {
  2293. return static_cast<opencv_tflite::DimensionType>(GetField<int8_t>(VT_FORMAT, 0));
  2294. }
  2295. int32_t dense_size() const {
  2296. return GetField<int32_t>(VT_DENSE_SIZE, 0);
  2297. }
  2298. opencv_tflite::SparseIndexVector array_segments_type() const {
  2299. return static_cast<opencv_tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_SEGMENTS_TYPE, 0));
  2300. }
  2301. const void *array_segments() const {
  2302. return GetPointer<const void *>(VT_ARRAY_SEGMENTS);
  2303. }
  2304. template<typename T> const T *array_segments_as() const;
  2305. const opencv_tflite::Int32Vector *array_segments_as_Int32Vector() const {
  2306. return array_segments_type() == opencv_tflite::SparseIndexVector_Int32Vector ? static_cast<const opencv_tflite::Int32Vector *>(array_segments()) : nullptr;
  2307. }
  2308. const opencv_tflite::Uint16Vector *array_segments_as_Uint16Vector() const {
  2309. return array_segments_type() == opencv_tflite::SparseIndexVector_Uint16Vector ? static_cast<const opencv_tflite::Uint16Vector *>(array_segments()) : nullptr;
  2310. }
  2311. const opencv_tflite::Uint8Vector *array_segments_as_Uint8Vector() const {
  2312. return array_segments_type() == opencv_tflite::SparseIndexVector_Uint8Vector ? static_cast<const opencv_tflite::Uint8Vector *>(array_segments()) : nullptr;
  2313. }
  2314. opencv_tflite::SparseIndexVector array_indices_type() const {
  2315. return static_cast<opencv_tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_INDICES_TYPE, 0));
  2316. }
  2317. const void *array_indices() const {
  2318. return GetPointer<const void *>(VT_ARRAY_INDICES);
  2319. }
  2320. template<typename T> const T *array_indices_as() const;
  2321. const opencv_tflite::Int32Vector *array_indices_as_Int32Vector() const {
  2322. return array_indices_type() == opencv_tflite::SparseIndexVector_Int32Vector ? static_cast<const opencv_tflite::Int32Vector *>(array_indices()) : nullptr;
  2323. }
  2324. const opencv_tflite::Uint16Vector *array_indices_as_Uint16Vector() const {
  2325. return array_indices_type() == opencv_tflite::SparseIndexVector_Uint16Vector ? static_cast<const opencv_tflite::Uint16Vector *>(array_indices()) : nullptr;
  2326. }
  2327. const opencv_tflite::Uint8Vector *array_indices_as_Uint8Vector() const {
  2328. return array_indices_type() == opencv_tflite::SparseIndexVector_Uint8Vector ? static_cast<const opencv_tflite::Uint8Vector *>(array_indices()) : nullptr;
  2329. }
  2330. bool Verify(::flatbuffers::Verifier &verifier) const {
  2331. return VerifyTableStart(verifier) &&
  2332. VerifyField<int8_t>(verifier, VT_FORMAT, 1) &&
  2333. VerifyField<int32_t>(verifier, VT_DENSE_SIZE, 4) &&
  2334. VerifyField<uint8_t>(verifier, VT_ARRAY_SEGMENTS_TYPE, 1) &&
  2335. VerifyOffset(verifier, VT_ARRAY_SEGMENTS) &&
  2336. VerifySparseIndexVector(verifier, array_segments(), array_segments_type()) &&
  2337. VerifyField<uint8_t>(verifier, VT_ARRAY_INDICES_TYPE, 1) &&
  2338. VerifyOffset(verifier, VT_ARRAY_INDICES) &&
  2339. VerifySparseIndexVector(verifier, array_indices(), array_indices_type()) &&
  2340. verifier.EndTable();
  2341. }
  2342. };
  2343. template<> inline const opencv_tflite::Int32Vector *DimensionMetadata::array_segments_as<opencv_tflite::Int32Vector>() const {
  2344. return array_segments_as_Int32Vector();
  2345. }
  2346. template<> inline const opencv_tflite::Uint16Vector *DimensionMetadata::array_segments_as<opencv_tflite::Uint16Vector>() const {
  2347. return array_segments_as_Uint16Vector();
  2348. }
  2349. template<> inline const opencv_tflite::Uint8Vector *DimensionMetadata::array_segments_as<opencv_tflite::Uint8Vector>() const {
  2350. return array_segments_as_Uint8Vector();
  2351. }
  2352. template<> inline const opencv_tflite::Int32Vector *DimensionMetadata::array_indices_as<opencv_tflite::Int32Vector>() const {
  2353. return array_indices_as_Int32Vector();
  2354. }
  2355. template<> inline const opencv_tflite::Uint16Vector *DimensionMetadata::array_indices_as<opencv_tflite::Uint16Vector>() const {
  2356. return array_indices_as_Uint16Vector();
  2357. }
  2358. template<> inline const opencv_tflite::Uint8Vector *DimensionMetadata::array_indices_as<opencv_tflite::Uint8Vector>() const {
  2359. return array_indices_as_Uint8Vector();
  2360. }
  2361. struct DimensionMetadataBuilder {
  2362. typedef DimensionMetadata Table;
  2363. ::flatbuffers::FlatBufferBuilder &fbb_;
  2364. ::flatbuffers::uoffset_t start_;
  2365. void add_format(opencv_tflite::DimensionType format) {
  2366. fbb_.AddElement<int8_t>(DimensionMetadata::VT_FORMAT, static_cast<int8_t>(format), 0);
  2367. }
  2368. void add_dense_size(int32_t dense_size) {
  2369. fbb_.AddElement<int32_t>(DimensionMetadata::VT_DENSE_SIZE, dense_size, 0);
  2370. }
  2371. void add_array_segments_type(opencv_tflite::SparseIndexVector array_segments_type) {
  2372. fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_SEGMENTS_TYPE, static_cast<uint8_t>(array_segments_type), 0);
  2373. }
  2374. void add_array_segments(::flatbuffers::Offset<void> array_segments) {
  2375. fbb_.AddOffset(DimensionMetadata::VT_ARRAY_SEGMENTS, array_segments);
  2376. }
  2377. void add_array_indices_type(opencv_tflite::SparseIndexVector array_indices_type) {
  2378. fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_INDICES_TYPE, static_cast<uint8_t>(array_indices_type), 0);
  2379. }
  2380. void add_array_indices(::flatbuffers::Offset<void> array_indices) {
  2381. fbb_.AddOffset(DimensionMetadata::VT_ARRAY_INDICES, array_indices);
  2382. }
  2383. explicit DimensionMetadataBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2384. : fbb_(_fbb) {
  2385. start_ = fbb_.StartTable();
  2386. }
  2387. ::flatbuffers::Offset<DimensionMetadata> Finish() {
  2388. const auto end = fbb_.EndTable(start_);
  2389. auto o = ::flatbuffers::Offset<DimensionMetadata>(end);
  2390. return o;
  2391. }
  2392. };
  2393. inline ::flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(
  2394. ::flatbuffers::FlatBufferBuilder &_fbb,
  2395. opencv_tflite::DimensionType format = opencv_tflite::DimensionType_DENSE,
  2396. int32_t dense_size = 0,
  2397. opencv_tflite::SparseIndexVector array_segments_type = opencv_tflite::SparseIndexVector_NONE,
  2398. ::flatbuffers::Offset<void> array_segments = 0,
  2399. opencv_tflite::SparseIndexVector array_indices_type = opencv_tflite::SparseIndexVector_NONE,
  2400. ::flatbuffers::Offset<void> array_indices = 0) {
  2401. DimensionMetadataBuilder builder_(_fbb);
  2402. builder_.add_array_indices(array_indices);
  2403. builder_.add_array_segments(array_segments);
  2404. builder_.add_dense_size(dense_size);
  2405. builder_.add_array_indices_type(array_indices_type);
  2406. builder_.add_array_segments_type(array_segments_type);
  2407. builder_.add_format(format);
  2408. return builder_.Finish();
  2409. }
  2410. struct SparsityParameters FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2411. typedef SparsityParametersBuilder Builder;
  2412. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2413. VT_TRAVERSAL_ORDER = 4,
  2414. VT_BLOCK_MAP = 6,
  2415. VT_DIM_METADATA = 8
  2416. };
  2417. const ::flatbuffers::Vector<int32_t> *traversal_order() const {
  2418. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_TRAVERSAL_ORDER);
  2419. }
  2420. const ::flatbuffers::Vector<int32_t> *block_map() const {
  2421. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_BLOCK_MAP);
  2422. }
  2423. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::DimensionMetadata>> *dim_metadata() const {
  2424. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::DimensionMetadata>> *>(VT_DIM_METADATA);
  2425. }
  2426. bool Verify(::flatbuffers::Verifier &verifier) const {
  2427. return VerifyTableStart(verifier) &&
  2428. VerifyOffset(verifier, VT_TRAVERSAL_ORDER) &&
  2429. verifier.VerifyVector(traversal_order()) &&
  2430. VerifyOffset(verifier, VT_BLOCK_MAP) &&
  2431. verifier.VerifyVector(block_map()) &&
  2432. VerifyOffset(verifier, VT_DIM_METADATA) &&
  2433. verifier.VerifyVector(dim_metadata()) &&
  2434. verifier.VerifyVectorOfTables(dim_metadata()) &&
  2435. verifier.EndTable();
  2436. }
  2437. };
  2438. struct SparsityParametersBuilder {
  2439. typedef SparsityParameters Table;
  2440. ::flatbuffers::FlatBufferBuilder &fbb_;
  2441. ::flatbuffers::uoffset_t start_;
  2442. void add_traversal_order(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> traversal_order) {
  2443. fbb_.AddOffset(SparsityParameters::VT_TRAVERSAL_ORDER, traversal_order);
  2444. }
  2445. void add_block_map(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> block_map) {
  2446. fbb_.AddOffset(SparsityParameters::VT_BLOCK_MAP, block_map);
  2447. }
  2448. void add_dim_metadata(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::DimensionMetadata>>> dim_metadata) {
  2449. fbb_.AddOffset(SparsityParameters::VT_DIM_METADATA, dim_metadata);
  2450. }
  2451. explicit SparsityParametersBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2452. : fbb_(_fbb) {
  2453. start_ = fbb_.StartTable();
  2454. }
  2455. ::flatbuffers::Offset<SparsityParameters> Finish() {
  2456. const auto end = fbb_.EndTable(start_);
  2457. auto o = ::flatbuffers::Offset<SparsityParameters>(end);
  2458. return o;
  2459. }
  2460. };
  2461. inline ::flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(
  2462. ::flatbuffers::FlatBufferBuilder &_fbb,
  2463. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> traversal_order = 0,
  2464. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> block_map = 0,
  2465. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::DimensionMetadata>>> dim_metadata = 0) {
  2466. SparsityParametersBuilder builder_(_fbb);
  2467. builder_.add_dim_metadata(dim_metadata);
  2468. builder_.add_block_map(block_map);
  2469. builder_.add_traversal_order(traversal_order);
  2470. return builder_.Finish();
  2471. }
  2472. inline ::flatbuffers::Offset<SparsityParameters> CreateSparsityParametersDirect(
  2473. ::flatbuffers::FlatBufferBuilder &_fbb,
  2474. const std::vector<int32_t> *traversal_order = nullptr,
  2475. const std::vector<int32_t> *block_map = nullptr,
  2476. const std::vector<::flatbuffers::Offset<opencv_tflite::DimensionMetadata>> *dim_metadata = nullptr) {
  2477. auto traversal_order__ = traversal_order ? _fbb.CreateVector<int32_t>(*traversal_order) : 0;
  2478. auto block_map__ = block_map ? _fbb.CreateVector<int32_t>(*block_map) : 0;
  2479. auto dim_metadata__ = dim_metadata ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::DimensionMetadata>>(*dim_metadata) : 0;
  2480. return opencv_tflite::CreateSparsityParameters(
  2481. _fbb,
  2482. traversal_order__,
  2483. block_map__,
  2484. dim_metadata__);
  2485. }
  2486. struct VariantSubType FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2487. typedef VariantSubTypeBuilder Builder;
  2488. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2489. VT_SHAPE = 4,
  2490. VT_TYPE = 6,
  2491. VT_HAS_RANK = 8
  2492. };
  2493. const ::flatbuffers::Vector<int32_t> *shape() const {
  2494. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_SHAPE);
  2495. }
  2496. opencv_tflite::TensorType type() const {
  2497. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_TYPE, 0));
  2498. }
  2499. bool has_rank() const {
  2500. return GetField<uint8_t>(VT_HAS_RANK, 0) != 0;
  2501. }
  2502. bool Verify(::flatbuffers::Verifier &verifier) const {
  2503. return VerifyTableStart(verifier) &&
  2504. VerifyOffset(verifier, VT_SHAPE) &&
  2505. verifier.VerifyVector(shape()) &&
  2506. VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
  2507. VerifyField<uint8_t>(verifier, VT_HAS_RANK, 1) &&
  2508. verifier.EndTable();
  2509. }
  2510. };
  2511. struct VariantSubTypeBuilder {
  2512. typedef VariantSubType Table;
  2513. ::flatbuffers::FlatBufferBuilder &fbb_;
  2514. ::flatbuffers::uoffset_t start_;
  2515. void add_shape(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape) {
  2516. fbb_.AddOffset(VariantSubType::VT_SHAPE, shape);
  2517. }
  2518. void add_type(opencv_tflite::TensorType type) {
  2519. fbb_.AddElement<int8_t>(VariantSubType::VT_TYPE, static_cast<int8_t>(type), 0);
  2520. }
  2521. void add_has_rank(bool has_rank) {
  2522. fbb_.AddElement<uint8_t>(VariantSubType::VT_HAS_RANK, static_cast<uint8_t>(has_rank), 0);
  2523. }
  2524. explicit VariantSubTypeBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2525. : fbb_(_fbb) {
  2526. start_ = fbb_.StartTable();
  2527. }
  2528. ::flatbuffers::Offset<VariantSubType> Finish() {
  2529. const auto end = fbb_.EndTable(start_);
  2530. auto o = ::flatbuffers::Offset<VariantSubType>(end);
  2531. return o;
  2532. }
  2533. };
  2534. inline ::flatbuffers::Offset<VariantSubType> CreateVariantSubType(
  2535. ::flatbuffers::FlatBufferBuilder &_fbb,
  2536. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape = 0,
  2537. opencv_tflite::TensorType type = opencv_tflite::TensorType_FLOAT32,
  2538. bool has_rank = false) {
  2539. VariantSubTypeBuilder builder_(_fbb);
  2540. builder_.add_shape(shape);
  2541. builder_.add_has_rank(has_rank);
  2542. builder_.add_type(type);
  2543. return builder_.Finish();
  2544. }
  2545. inline ::flatbuffers::Offset<VariantSubType> CreateVariantSubTypeDirect(
  2546. ::flatbuffers::FlatBufferBuilder &_fbb,
  2547. const std::vector<int32_t> *shape = nullptr,
  2548. opencv_tflite::TensorType type = opencv_tflite::TensorType_FLOAT32,
  2549. bool has_rank = false) {
  2550. auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
  2551. return opencv_tflite::CreateVariantSubType(
  2552. _fbb,
  2553. shape__,
  2554. type,
  2555. has_rank);
  2556. }
  2557. struct Tensor FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2558. typedef TensorBuilder Builder;
  2559. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2560. VT_SHAPE = 4,
  2561. VT_TYPE = 6,
  2562. VT_BUFFER = 8,
  2563. VT_NAME = 10,
  2564. VT_QUANTIZATION = 12,
  2565. VT_IS_VARIABLE = 14,
  2566. VT_SPARSITY = 16,
  2567. VT_SHAPE_SIGNATURE = 18,
  2568. VT_HAS_RANK = 20,
  2569. VT_VARIANT_TENSORS = 22
  2570. };
  2571. const ::flatbuffers::Vector<int32_t> *shape() const {
  2572. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_SHAPE);
  2573. }
  2574. opencv_tflite::TensorType type() const {
  2575. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_TYPE, 0));
  2576. }
  2577. uint32_t buffer() const {
  2578. return GetField<uint32_t>(VT_BUFFER, 0);
  2579. }
  2580. const ::flatbuffers::String *name() const {
  2581. return GetPointer<const ::flatbuffers::String *>(VT_NAME);
  2582. }
  2583. const opencv_tflite::QuantizationParameters *quantization() const {
  2584. return GetPointer<const opencv_tflite::QuantizationParameters *>(VT_QUANTIZATION);
  2585. }
  2586. bool is_variable() const {
  2587. return GetField<uint8_t>(VT_IS_VARIABLE, 0) != 0;
  2588. }
  2589. const opencv_tflite::SparsityParameters *sparsity() const {
  2590. return GetPointer<const opencv_tflite::SparsityParameters *>(VT_SPARSITY);
  2591. }
  2592. const ::flatbuffers::Vector<int32_t> *shape_signature() const {
  2593. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_SHAPE_SIGNATURE);
  2594. }
  2595. bool has_rank() const {
  2596. return GetField<uint8_t>(VT_HAS_RANK, 0) != 0;
  2597. }
  2598. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::VariantSubType>> *variant_tensors() const {
  2599. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::VariantSubType>> *>(VT_VARIANT_TENSORS);
  2600. }
  2601. bool Verify(::flatbuffers::Verifier &verifier) const {
  2602. return VerifyTableStart(verifier) &&
  2603. VerifyOffset(verifier, VT_SHAPE) &&
  2604. verifier.VerifyVector(shape()) &&
  2605. VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
  2606. VerifyField<uint32_t>(verifier, VT_BUFFER, 4) &&
  2607. VerifyOffset(verifier, VT_NAME) &&
  2608. verifier.VerifyString(name()) &&
  2609. VerifyOffset(verifier, VT_QUANTIZATION) &&
  2610. verifier.VerifyTable(quantization()) &&
  2611. VerifyField<uint8_t>(verifier, VT_IS_VARIABLE, 1) &&
  2612. VerifyOffset(verifier, VT_SPARSITY) &&
  2613. verifier.VerifyTable(sparsity()) &&
  2614. VerifyOffset(verifier, VT_SHAPE_SIGNATURE) &&
  2615. verifier.VerifyVector(shape_signature()) &&
  2616. VerifyField<uint8_t>(verifier, VT_HAS_RANK, 1) &&
  2617. VerifyOffset(verifier, VT_VARIANT_TENSORS) &&
  2618. verifier.VerifyVector(variant_tensors()) &&
  2619. verifier.VerifyVectorOfTables(variant_tensors()) &&
  2620. verifier.EndTable();
  2621. }
  2622. };
  2623. struct TensorBuilder {
  2624. typedef Tensor Table;
  2625. ::flatbuffers::FlatBufferBuilder &fbb_;
  2626. ::flatbuffers::uoffset_t start_;
  2627. void add_shape(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape) {
  2628. fbb_.AddOffset(Tensor::VT_SHAPE, shape);
  2629. }
  2630. void add_type(opencv_tflite::TensorType type) {
  2631. fbb_.AddElement<int8_t>(Tensor::VT_TYPE, static_cast<int8_t>(type), 0);
  2632. }
  2633. void add_buffer(uint32_t buffer) {
  2634. fbb_.AddElement<uint32_t>(Tensor::VT_BUFFER, buffer, 0);
  2635. }
  2636. void add_name(::flatbuffers::Offset<::flatbuffers::String> name) {
  2637. fbb_.AddOffset(Tensor::VT_NAME, name);
  2638. }
  2639. void add_quantization(::flatbuffers::Offset<opencv_tflite::QuantizationParameters> quantization) {
  2640. fbb_.AddOffset(Tensor::VT_QUANTIZATION, quantization);
  2641. }
  2642. void add_is_variable(bool is_variable) {
  2643. fbb_.AddElement<uint8_t>(Tensor::VT_IS_VARIABLE, static_cast<uint8_t>(is_variable), 0);
  2644. }
  2645. void add_sparsity(::flatbuffers::Offset<opencv_tflite::SparsityParameters> sparsity) {
  2646. fbb_.AddOffset(Tensor::VT_SPARSITY, sparsity);
  2647. }
  2648. void add_shape_signature(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape_signature) {
  2649. fbb_.AddOffset(Tensor::VT_SHAPE_SIGNATURE, shape_signature);
  2650. }
  2651. void add_has_rank(bool has_rank) {
  2652. fbb_.AddElement<uint8_t>(Tensor::VT_HAS_RANK, static_cast<uint8_t>(has_rank), 0);
  2653. }
  2654. void add_variant_tensors(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::VariantSubType>>> variant_tensors) {
  2655. fbb_.AddOffset(Tensor::VT_VARIANT_TENSORS, variant_tensors);
  2656. }
  2657. explicit TensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2658. : fbb_(_fbb) {
  2659. start_ = fbb_.StartTable();
  2660. }
  2661. ::flatbuffers::Offset<Tensor> Finish() {
  2662. const auto end = fbb_.EndTable(start_);
  2663. auto o = ::flatbuffers::Offset<Tensor>(end);
  2664. return o;
  2665. }
  2666. };
  2667. inline ::flatbuffers::Offset<Tensor> CreateTensor(
  2668. ::flatbuffers::FlatBufferBuilder &_fbb,
  2669. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape = 0,
  2670. opencv_tflite::TensorType type = opencv_tflite::TensorType_FLOAT32,
  2671. uint32_t buffer = 0,
  2672. ::flatbuffers::Offset<::flatbuffers::String> name = 0,
  2673. ::flatbuffers::Offset<opencv_tflite::QuantizationParameters> quantization = 0,
  2674. bool is_variable = false,
  2675. ::flatbuffers::Offset<opencv_tflite::SparsityParameters> sparsity = 0,
  2676. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape_signature = 0,
  2677. bool has_rank = false,
  2678. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::VariantSubType>>> variant_tensors = 0) {
  2679. TensorBuilder builder_(_fbb);
  2680. builder_.add_variant_tensors(variant_tensors);
  2681. builder_.add_shape_signature(shape_signature);
  2682. builder_.add_sparsity(sparsity);
  2683. builder_.add_quantization(quantization);
  2684. builder_.add_name(name);
  2685. builder_.add_buffer(buffer);
  2686. builder_.add_shape(shape);
  2687. builder_.add_has_rank(has_rank);
  2688. builder_.add_is_variable(is_variable);
  2689. builder_.add_type(type);
  2690. return builder_.Finish();
  2691. }
  2692. inline ::flatbuffers::Offset<Tensor> CreateTensorDirect(
  2693. ::flatbuffers::FlatBufferBuilder &_fbb,
  2694. const std::vector<int32_t> *shape = nullptr,
  2695. opencv_tflite::TensorType type = opencv_tflite::TensorType_FLOAT32,
  2696. uint32_t buffer = 0,
  2697. const char *name = nullptr,
  2698. ::flatbuffers::Offset<opencv_tflite::QuantizationParameters> quantization = 0,
  2699. bool is_variable = false,
  2700. ::flatbuffers::Offset<opencv_tflite::SparsityParameters> sparsity = 0,
  2701. const std::vector<int32_t> *shape_signature = nullptr,
  2702. bool has_rank = false,
  2703. const std::vector<::flatbuffers::Offset<opencv_tflite::VariantSubType>> *variant_tensors = nullptr) {
  2704. auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
  2705. auto name__ = name ? _fbb.CreateString(name) : 0;
  2706. auto shape_signature__ = shape_signature ? _fbb.CreateVector<int32_t>(*shape_signature) : 0;
  2707. auto variant_tensors__ = variant_tensors ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::VariantSubType>>(*variant_tensors) : 0;
  2708. return opencv_tflite::CreateTensor(
  2709. _fbb,
  2710. shape__,
  2711. type,
  2712. buffer,
  2713. name__,
  2714. quantization,
  2715. is_variable,
  2716. sparsity,
  2717. shape_signature__,
  2718. has_rank,
  2719. variant_tensors__);
  2720. }
  2721. struct Conv2DOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2722. typedef Conv2DOptionsBuilder Builder;
  2723. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2724. VT_PADDING = 4,
  2725. VT_STRIDE_W = 6,
  2726. VT_STRIDE_H = 8,
  2727. VT_FUSED_ACTIVATION_FUNCTION = 10,
  2728. VT_DILATION_W_FACTOR = 12,
  2729. VT_DILATION_H_FACTOR = 14
  2730. };
  2731. opencv_tflite::Padding padding() const {
  2732. return static_cast<opencv_tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  2733. }
  2734. int32_t stride_w() const {
  2735. return GetField<int32_t>(VT_STRIDE_W, 0);
  2736. }
  2737. int32_t stride_h() const {
  2738. return GetField<int32_t>(VT_STRIDE_H, 0);
  2739. }
  2740. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  2741. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  2742. }
  2743. int32_t dilation_w_factor() const {
  2744. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  2745. }
  2746. int32_t dilation_h_factor() const {
  2747. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  2748. }
  2749. bool Verify(::flatbuffers::Verifier &verifier) const {
  2750. return VerifyTableStart(verifier) &&
  2751. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  2752. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  2753. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  2754. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  2755. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
  2756. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
  2757. verifier.EndTable();
  2758. }
  2759. };
  2760. struct Conv2DOptionsBuilder {
  2761. typedef Conv2DOptions Table;
  2762. ::flatbuffers::FlatBufferBuilder &fbb_;
  2763. ::flatbuffers::uoffset_t start_;
  2764. void add_padding(opencv_tflite::Padding padding) {
  2765. fbb_.AddElement<int8_t>(Conv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  2766. }
  2767. void add_stride_w(int32_t stride_w) {
  2768. fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_W, stride_w, 0);
  2769. }
  2770. void add_stride_h(int32_t stride_h) {
  2771. fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_H, stride_h, 0);
  2772. }
  2773. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  2774. fbb_.AddElement<int8_t>(Conv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  2775. }
  2776. void add_dilation_w_factor(int32_t dilation_w_factor) {
  2777. fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  2778. }
  2779. void add_dilation_h_factor(int32_t dilation_h_factor) {
  2780. fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  2781. }
  2782. explicit Conv2DOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2783. : fbb_(_fbb) {
  2784. start_ = fbb_.StartTable();
  2785. }
  2786. ::flatbuffers::Offset<Conv2DOptions> Finish() {
  2787. const auto end = fbb_.EndTable(start_);
  2788. auto o = ::flatbuffers::Offset<Conv2DOptions>(end);
  2789. return o;
  2790. }
  2791. };
  2792. inline ::flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(
  2793. ::flatbuffers::FlatBufferBuilder &_fbb,
  2794. opencv_tflite::Padding padding = opencv_tflite::Padding_SAME,
  2795. int32_t stride_w = 0,
  2796. int32_t stride_h = 0,
  2797. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  2798. int32_t dilation_w_factor = 1,
  2799. int32_t dilation_h_factor = 1) {
  2800. Conv2DOptionsBuilder builder_(_fbb);
  2801. builder_.add_dilation_h_factor(dilation_h_factor);
  2802. builder_.add_dilation_w_factor(dilation_w_factor);
  2803. builder_.add_stride_h(stride_h);
  2804. builder_.add_stride_w(stride_w);
  2805. builder_.add_fused_activation_function(fused_activation_function);
  2806. builder_.add_padding(padding);
  2807. return builder_.Finish();
  2808. }
  2809. struct Conv3DOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2810. typedef Conv3DOptionsBuilder Builder;
  2811. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2812. VT_PADDING = 4,
  2813. VT_STRIDE_D = 6,
  2814. VT_STRIDE_W = 8,
  2815. VT_STRIDE_H = 10,
  2816. VT_FUSED_ACTIVATION_FUNCTION = 12,
  2817. VT_DILATION_D_FACTOR = 14,
  2818. VT_DILATION_W_FACTOR = 16,
  2819. VT_DILATION_H_FACTOR = 18
  2820. };
  2821. opencv_tflite::Padding padding() const {
  2822. return static_cast<opencv_tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  2823. }
  2824. int32_t stride_d() const {
  2825. return GetField<int32_t>(VT_STRIDE_D, 0);
  2826. }
  2827. int32_t stride_w() const {
  2828. return GetField<int32_t>(VT_STRIDE_W, 0);
  2829. }
  2830. int32_t stride_h() const {
  2831. return GetField<int32_t>(VT_STRIDE_H, 0);
  2832. }
  2833. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  2834. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  2835. }
  2836. int32_t dilation_d_factor() const {
  2837. return GetField<int32_t>(VT_DILATION_D_FACTOR, 1);
  2838. }
  2839. int32_t dilation_w_factor() const {
  2840. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  2841. }
  2842. int32_t dilation_h_factor() const {
  2843. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  2844. }
  2845. bool Verify(::flatbuffers::Verifier &verifier) const {
  2846. return VerifyTableStart(verifier) &&
  2847. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  2848. VerifyField<int32_t>(verifier, VT_STRIDE_D, 4) &&
  2849. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  2850. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  2851. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  2852. VerifyField<int32_t>(verifier, VT_DILATION_D_FACTOR, 4) &&
  2853. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
  2854. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
  2855. verifier.EndTable();
  2856. }
  2857. };
  2858. struct Conv3DOptionsBuilder {
  2859. typedef Conv3DOptions Table;
  2860. ::flatbuffers::FlatBufferBuilder &fbb_;
  2861. ::flatbuffers::uoffset_t start_;
  2862. void add_padding(opencv_tflite::Padding padding) {
  2863. fbb_.AddElement<int8_t>(Conv3DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  2864. }
  2865. void add_stride_d(int32_t stride_d) {
  2866. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_D, stride_d, 0);
  2867. }
  2868. void add_stride_w(int32_t stride_w) {
  2869. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_W, stride_w, 0);
  2870. }
  2871. void add_stride_h(int32_t stride_h) {
  2872. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_H, stride_h, 0);
  2873. }
  2874. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  2875. fbb_.AddElement<int8_t>(Conv3DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  2876. }
  2877. void add_dilation_d_factor(int32_t dilation_d_factor) {
  2878. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_D_FACTOR, dilation_d_factor, 1);
  2879. }
  2880. void add_dilation_w_factor(int32_t dilation_w_factor) {
  2881. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  2882. }
  2883. void add_dilation_h_factor(int32_t dilation_h_factor) {
  2884. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  2885. }
  2886. explicit Conv3DOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2887. : fbb_(_fbb) {
  2888. start_ = fbb_.StartTable();
  2889. }
  2890. ::flatbuffers::Offset<Conv3DOptions> Finish() {
  2891. const auto end = fbb_.EndTable(start_);
  2892. auto o = ::flatbuffers::Offset<Conv3DOptions>(end);
  2893. return o;
  2894. }
  2895. };
  2896. inline ::flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(
  2897. ::flatbuffers::FlatBufferBuilder &_fbb,
  2898. opencv_tflite::Padding padding = opencv_tflite::Padding_SAME,
  2899. int32_t stride_d = 0,
  2900. int32_t stride_w = 0,
  2901. int32_t stride_h = 0,
  2902. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  2903. int32_t dilation_d_factor = 1,
  2904. int32_t dilation_w_factor = 1,
  2905. int32_t dilation_h_factor = 1) {
  2906. Conv3DOptionsBuilder builder_(_fbb);
  2907. builder_.add_dilation_h_factor(dilation_h_factor);
  2908. builder_.add_dilation_w_factor(dilation_w_factor);
  2909. builder_.add_dilation_d_factor(dilation_d_factor);
  2910. builder_.add_stride_h(stride_h);
  2911. builder_.add_stride_w(stride_w);
  2912. builder_.add_stride_d(stride_d);
  2913. builder_.add_fused_activation_function(fused_activation_function);
  2914. builder_.add_padding(padding);
  2915. return builder_.Finish();
  2916. }
  2917. struct Pool2DOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  2918. typedef Pool2DOptionsBuilder Builder;
  2919. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  2920. VT_PADDING = 4,
  2921. VT_STRIDE_W = 6,
  2922. VT_STRIDE_H = 8,
  2923. VT_FILTER_WIDTH = 10,
  2924. VT_FILTER_HEIGHT = 12,
  2925. VT_FUSED_ACTIVATION_FUNCTION = 14
  2926. };
  2927. opencv_tflite::Padding padding() const {
  2928. return static_cast<opencv_tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  2929. }
  2930. int32_t stride_w() const {
  2931. return GetField<int32_t>(VT_STRIDE_W, 0);
  2932. }
  2933. int32_t stride_h() const {
  2934. return GetField<int32_t>(VT_STRIDE_H, 0);
  2935. }
  2936. int32_t filter_width() const {
  2937. return GetField<int32_t>(VT_FILTER_WIDTH, 0);
  2938. }
  2939. int32_t filter_height() const {
  2940. return GetField<int32_t>(VT_FILTER_HEIGHT, 0);
  2941. }
  2942. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  2943. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  2944. }
  2945. bool Verify(::flatbuffers::Verifier &verifier) const {
  2946. return VerifyTableStart(verifier) &&
  2947. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  2948. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  2949. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  2950. VerifyField<int32_t>(verifier, VT_FILTER_WIDTH, 4) &&
  2951. VerifyField<int32_t>(verifier, VT_FILTER_HEIGHT, 4) &&
  2952. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  2953. verifier.EndTable();
  2954. }
  2955. };
  2956. struct Pool2DOptionsBuilder {
  2957. typedef Pool2DOptions Table;
  2958. ::flatbuffers::FlatBufferBuilder &fbb_;
  2959. ::flatbuffers::uoffset_t start_;
  2960. void add_padding(opencv_tflite::Padding padding) {
  2961. fbb_.AddElement<int8_t>(Pool2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  2962. }
  2963. void add_stride_w(int32_t stride_w) {
  2964. fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_W, stride_w, 0);
  2965. }
  2966. void add_stride_h(int32_t stride_h) {
  2967. fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_H, stride_h, 0);
  2968. }
  2969. void add_filter_width(int32_t filter_width) {
  2970. fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_WIDTH, filter_width, 0);
  2971. }
  2972. void add_filter_height(int32_t filter_height) {
  2973. fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_HEIGHT, filter_height, 0);
  2974. }
  2975. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  2976. fbb_.AddElement<int8_t>(Pool2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  2977. }
  2978. explicit Pool2DOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  2979. : fbb_(_fbb) {
  2980. start_ = fbb_.StartTable();
  2981. }
  2982. ::flatbuffers::Offset<Pool2DOptions> Finish() {
  2983. const auto end = fbb_.EndTable(start_);
  2984. auto o = ::flatbuffers::Offset<Pool2DOptions>(end);
  2985. return o;
  2986. }
  2987. };
  2988. inline ::flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(
  2989. ::flatbuffers::FlatBufferBuilder &_fbb,
  2990. opencv_tflite::Padding padding = opencv_tflite::Padding_SAME,
  2991. int32_t stride_w = 0,
  2992. int32_t stride_h = 0,
  2993. int32_t filter_width = 0,
  2994. int32_t filter_height = 0,
  2995. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE) {
  2996. Pool2DOptionsBuilder builder_(_fbb);
  2997. builder_.add_filter_height(filter_height);
  2998. builder_.add_filter_width(filter_width);
  2999. builder_.add_stride_h(stride_h);
  3000. builder_.add_stride_w(stride_w);
  3001. builder_.add_fused_activation_function(fused_activation_function);
  3002. builder_.add_padding(padding);
  3003. return builder_.Finish();
  3004. }
  3005. struct DepthwiseConv2DOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3006. typedef DepthwiseConv2DOptionsBuilder Builder;
  3007. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3008. VT_PADDING = 4,
  3009. VT_STRIDE_W = 6,
  3010. VT_STRIDE_H = 8,
  3011. VT_DEPTH_MULTIPLIER = 10,
  3012. VT_FUSED_ACTIVATION_FUNCTION = 12,
  3013. VT_DILATION_W_FACTOR = 14,
  3014. VT_DILATION_H_FACTOR = 16
  3015. };
  3016. opencv_tflite::Padding padding() const {
  3017. return static_cast<opencv_tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  3018. }
  3019. int32_t stride_w() const {
  3020. return GetField<int32_t>(VT_STRIDE_W, 0);
  3021. }
  3022. int32_t stride_h() const {
  3023. return GetField<int32_t>(VT_STRIDE_H, 0);
  3024. }
  3025. int32_t depth_multiplier() const {
  3026. return GetField<int32_t>(VT_DEPTH_MULTIPLIER, 0);
  3027. }
  3028. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3029. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3030. }
  3031. int32_t dilation_w_factor() const {
  3032. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  3033. }
  3034. int32_t dilation_h_factor() const {
  3035. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  3036. }
  3037. bool Verify(::flatbuffers::Verifier &verifier) const {
  3038. return VerifyTableStart(verifier) &&
  3039. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  3040. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  3041. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  3042. VerifyField<int32_t>(verifier, VT_DEPTH_MULTIPLIER, 4) &&
  3043. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3044. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
  3045. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
  3046. verifier.EndTable();
  3047. }
  3048. };
  3049. struct DepthwiseConv2DOptionsBuilder {
  3050. typedef DepthwiseConv2DOptions Table;
  3051. ::flatbuffers::FlatBufferBuilder &fbb_;
  3052. ::flatbuffers::uoffset_t start_;
  3053. void add_padding(opencv_tflite::Padding padding) {
  3054. fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  3055. }
  3056. void add_stride_w(int32_t stride_w) {
  3057. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_W, stride_w, 0);
  3058. }
  3059. void add_stride_h(int32_t stride_h) {
  3060. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_H, stride_h, 0);
  3061. }
  3062. void add_depth_multiplier(int32_t depth_multiplier) {
  3063. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DEPTH_MULTIPLIER, depth_multiplier, 0);
  3064. }
  3065. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3066. fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3067. }
  3068. void add_dilation_w_factor(int32_t dilation_w_factor) {
  3069. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  3070. }
  3071. void add_dilation_h_factor(int32_t dilation_h_factor) {
  3072. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  3073. }
  3074. explicit DepthwiseConv2DOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3075. : fbb_(_fbb) {
  3076. start_ = fbb_.StartTable();
  3077. }
  3078. ::flatbuffers::Offset<DepthwiseConv2DOptions> Finish() {
  3079. const auto end = fbb_.EndTable(start_);
  3080. auto o = ::flatbuffers::Offset<DepthwiseConv2DOptions>(end);
  3081. return o;
  3082. }
  3083. };
  3084. inline ::flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(
  3085. ::flatbuffers::FlatBufferBuilder &_fbb,
  3086. opencv_tflite::Padding padding = opencv_tflite::Padding_SAME,
  3087. int32_t stride_w = 0,
  3088. int32_t stride_h = 0,
  3089. int32_t depth_multiplier = 0,
  3090. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3091. int32_t dilation_w_factor = 1,
  3092. int32_t dilation_h_factor = 1) {
  3093. DepthwiseConv2DOptionsBuilder builder_(_fbb);
  3094. builder_.add_dilation_h_factor(dilation_h_factor);
  3095. builder_.add_dilation_w_factor(dilation_w_factor);
  3096. builder_.add_depth_multiplier(depth_multiplier);
  3097. builder_.add_stride_h(stride_h);
  3098. builder_.add_stride_w(stride_w);
  3099. builder_.add_fused_activation_function(fused_activation_function);
  3100. builder_.add_padding(padding);
  3101. return builder_.Finish();
  3102. }
  3103. struct ConcatEmbeddingsOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3104. typedef ConcatEmbeddingsOptionsBuilder Builder;
  3105. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3106. VT_NUM_CHANNELS = 4,
  3107. VT_NUM_COLUMNS_PER_CHANNEL = 6,
  3108. VT_EMBEDDING_DIM_PER_CHANNEL = 8
  3109. };
  3110. int32_t num_channels() const {
  3111. return GetField<int32_t>(VT_NUM_CHANNELS, 0);
  3112. }
  3113. const ::flatbuffers::Vector<int32_t> *num_columns_per_channel() const {
  3114. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_NUM_COLUMNS_PER_CHANNEL);
  3115. }
  3116. const ::flatbuffers::Vector<int32_t> *embedding_dim_per_channel() const {
  3117. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_EMBEDDING_DIM_PER_CHANNEL);
  3118. }
  3119. bool Verify(::flatbuffers::Verifier &verifier) const {
  3120. return VerifyTableStart(verifier) &&
  3121. VerifyField<int32_t>(verifier, VT_NUM_CHANNELS, 4) &&
  3122. VerifyOffset(verifier, VT_NUM_COLUMNS_PER_CHANNEL) &&
  3123. verifier.VerifyVector(num_columns_per_channel()) &&
  3124. VerifyOffset(verifier, VT_EMBEDDING_DIM_PER_CHANNEL) &&
  3125. verifier.VerifyVector(embedding_dim_per_channel()) &&
  3126. verifier.EndTable();
  3127. }
  3128. };
  3129. struct ConcatEmbeddingsOptionsBuilder {
  3130. typedef ConcatEmbeddingsOptions Table;
  3131. ::flatbuffers::FlatBufferBuilder &fbb_;
  3132. ::flatbuffers::uoffset_t start_;
  3133. void add_num_channels(int32_t num_channels) {
  3134. fbb_.AddElement<int32_t>(ConcatEmbeddingsOptions::VT_NUM_CHANNELS, num_channels, 0);
  3135. }
  3136. void add_num_columns_per_channel(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> num_columns_per_channel) {
  3137. fbb_.AddOffset(ConcatEmbeddingsOptions::VT_NUM_COLUMNS_PER_CHANNEL, num_columns_per_channel);
  3138. }
  3139. void add_embedding_dim_per_channel(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> embedding_dim_per_channel) {
  3140. fbb_.AddOffset(ConcatEmbeddingsOptions::VT_EMBEDDING_DIM_PER_CHANNEL, embedding_dim_per_channel);
  3141. }
  3142. explicit ConcatEmbeddingsOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3143. : fbb_(_fbb) {
  3144. start_ = fbb_.StartTable();
  3145. }
  3146. ::flatbuffers::Offset<ConcatEmbeddingsOptions> Finish() {
  3147. const auto end = fbb_.EndTable(start_);
  3148. auto o = ::flatbuffers::Offset<ConcatEmbeddingsOptions>(end);
  3149. return o;
  3150. }
  3151. };
  3152. inline ::flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(
  3153. ::flatbuffers::FlatBufferBuilder &_fbb,
  3154. int32_t num_channels = 0,
  3155. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> num_columns_per_channel = 0,
  3156. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> embedding_dim_per_channel = 0) {
  3157. ConcatEmbeddingsOptionsBuilder builder_(_fbb);
  3158. builder_.add_embedding_dim_per_channel(embedding_dim_per_channel);
  3159. builder_.add_num_columns_per_channel(num_columns_per_channel);
  3160. builder_.add_num_channels(num_channels);
  3161. return builder_.Finish();
  3162. }
  3163. inline ::flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptionsDirect(
  3164. ::flatbuffers::FlatBufferBuilder &_fbb,
  3165. int32_t num_channels = 0,
  3166. const std::vector<int32_t> *num_columns_per_channel = nullptr,
  3167. const std::vector<int32_t> *embedding_dim_per_channel = nullptr) {
  3168. auto num_columns_per_channel__ = num_columns_per_channel ? _fbb.CreateVector<int32_t>(*num_columns_per_channel) : 0;
  3169. auto embedding_dim_per_channel__ = embedding_dim_per_channel ? _fbb.CreateVector<int32_t>(*embedding_dim_per_channel) : 0;
  3170. return opencv_tflite::CreateConcatEmbeddingsOptions(
  3171. _fbb,
  3172. num_channels,
  3173. num_columns_per_channel__,
  3174. embedding_dim_per_channel__);
  3175. }
  3176. struct LSHProjectionOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3177. typedef LSHProjectionOptionsBuilder Builder;
  3178. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3179. VT_TYPE = 4
  3180. };
  3181. opencv_tflite::LSHProjectionType type() const {
  3182. return static_cast<opencv_tflite::LSHProjectionType>(GetField<int8_t>(VT_TYPE, 0));
  3183. }
  3184. bool Verify(::flatbuffers::Verifier &verifier) const {
  3185. return VerifyTableStart(verifier) &&
  3186. VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
  3187. verifier.EndTable();
  3188. }
  3189. };
  3190. struct LSHProjectionOptionsBuilder {
  3191. typedef LSHProjectionOptions Table;
  3192. ::flatbuffers::FlatBufferBuilder &fbb_;
  3193. ::flatbuffers::uoffset_t start_;
  3194. void add_type(opencv_tflite::LSHProjectionType type) {
  3195. fbb_.AddElement<int8_t>(LSHProjectionOptions::VT_TYPE, static_cast<int8_t>(type), 0);
  3196. }
  3197. explicit LSHProjectionOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3198. : fbb_(_fbb) {
  3199. start_ = fbb_.StartTable();
  3200. }
  3201. ::flatbuffers::Offset<LSHProjectionOptions> Finish() {
  3202. const auto end = fbb_.EndTable(start_);
  3203. auto o = ::flatbuffers::Offset<LSHProjectionOptions>(end);
  3204. return o;
  3205. }
  3206. };
  3207. inline ::flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(
  3208. ::flatbuffers::FlatBufferBuilder &_fbb,
  3209. opencv_tflite::LSHProjectionType type = opencv_tflite::LSHProjectionType_UNKNOWN) {
  3210. LSHProjectionOptionsBuilder builder_(_fbb);
  3211. builder_.add_type(type);
  3212. return builder_.Finish();
  3213. }
  3214. struct SVDFOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3215. typedef SVDFOptionsBuilder Builder;
  3216. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3217. VT_RANK = 4,
  3218. VT_FUSED_ACTIVATION_FUNCTION = 6,
  3219. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  3220. };
  3221. int32_t rank() const {
  3222. return GetField<int32_t>(VT_RANK, 0);
  3223. }
  3224. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3225. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3226. }
  3227. bool asymmetric_quantize_inputs() const {
  3228. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3229. }
  3230. bool Verify(::flatbuffers::Verifier &verifier) const {
  3231. return VerifyTableStart(verifier) &&
  3232. VerifyField<int32_t>(verifier, VT_RANK, 4) &&
  3233. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3234. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3235. verifier.EndTable();
  3236. }
  3237. };
  3238. struct SVDFOptionsBuilder {
  3239. typedef SVDFOptions Table;
  3240. ::flatbuffers::FlatBufferBuilder &fbb_;
  3241. ::flatbuffers::uoffset_t start_;
  3242. void add_rank(int32_t rank) {
  3243. fbb_.AddElement<int32_t>(SVDFOptions::VT_RANK, rank, 0);
  3244. }
  3245. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3246. fbb_.AddElement<int8_t>(SVDFOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3247. }
  3248. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  3249. fbb_.AddElement<uint8_t>(SVDFOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  3250. }
  3251. explicit SVDFOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3252. : fbb_(_fbb) {
  3253. start_ = fbb_.StartTable();
  3254. }
  3255. ::flatbuffers::Offset<SVDFOptions> Finish() {
  3256. const auto end = fbb_.EndTable(start_);
  3257. auto o = ::flatbuffers::Offset<SVDFOptions>(end);
  3258. return o;
  3259. }
  3260. };
  3261. inline ::flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(
  3262. ::flatbuffers::FlatBufferBuilder &_fbb,
  3263. int32_t rank = 0,
  3264. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3265. bool asymmetric_quantize_inputs = false) {
  3266. SVDFOptionsBuilder builder_(_fbb);
  3267. builder_.add_rank(rank);
  3268. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  3269. builder_.add_fused_activation_function(fused_activation_function);
  3270. return builder_.Finish();
  3271. }
  3272. struct RNNOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3273. typedef RNNOptionsBuilder Builder;
  3274. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3275. VT_FUSED_ACTIVATION_FUNCTION = 4,
  3276. VT_ASYMMETRIC_QUANTIZE_INPUTS = 6
  3277. };
  3278. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3279. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3280. }
  3281. bool asymmetric_quantize_inputs() const {
  3282. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3283. }
  3284. bool Verify(::flatbuffers::Verifier &verifier) const {
  3285. return VerifyTableStart(verifier) &&
  3286. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3287. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3288. verifier.EndTable();
  3289. }
  3290. };
  3291. struct RNNOptionsBuilder {
  3292. typedef RNNOptions Table;
  3293. ::flatbuffers::FlatBufferBuilder &fbb_;
  3294. ::flatbuffers::uoffset_t start_;
  3295. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3296. fbb_.AddElement<int8_t>(RNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3297. }
  3298. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  3299. fbb_.AddElement<uint8_t>(RNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  3300. }
  3301. explicit RNNOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3302. : fbb_(_fbb) {
  3303. start_ = fbb_.StartTable();
  3304. }
  3305. ::flatbuffers::Offset<RNNOptions> Finish() {
  3306. const auto end = fbb_.EndTable(start_);
  3307. auto o = ::flatbuffers::Offset<RNNOptions>(end);
  3308. return o;
  3309. }
  3310. };
  3311. inline ::flatbuffers::Offset<RNNOptions> CreateRNNOptions(
  3312. ::flatbuffers::FlatBufferBuilder &_fbb,
  3313. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3314. bool asymmetric_quantize_inputs = false) {
  3315. RNNOptionsBuilder builder_(_fbb);
  3316. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  3317. builder_.add_fused_activation_function(fused_activation_function);
  3318. return builder_.Finish();
  3319. }
  3320. struct SequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3321. typedef SequenceRNNOptionsBuilder Builder;
  3322. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3323. VT_TIME_MAJOR = 4,
  3324. VT_FUSED_ACTIVATION_FUNCTION = 6,
  3325. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  3326. };
  3327. bool time_major() const {
  3328. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  3329. }
  3330. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3331. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3332. }
  3333. bool asymmetric_quantize_inputs() const {
  3334. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3335. }
  3336. bool Verify(::flatbuffers::Verifier &verifier) const {
  3337. return VerifyTableStart(verifier) &&
  3338. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  3339. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3340. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3341. verifier.EndTable();
  3342. }
  3343. };
  3344. struct SequenceRNNOptionsBuilder {
  3345. typedef SequenceRNNOptions Table;
  3346. ::flatbuffers::FlatBufferBuilder &fbb_;
  3347. ::flatbuffers::uoffset_t start_;
  3348. void add_time_major(bool time_major) {
  3349. fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  3350. }
  3351. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3352. fbb_.AddElement<int8_t>(SequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3353. }
  3354. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  3355. fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  3356. }
  3357. explicit SequenceRNNOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3358. : fbb_(_fbb) {
  3359. start_ = fbb_.StartTable();
  3360. }
  3361. ::flatbuffers::Offset<SequenceRNNOptions> Finish() {
  3362. const auto end = fbb_.EndTable(start_);
  3363. auto o = ::flatbuffers::Offset<SequenceRNNOptions>(end);
  3364. return o;
  3365. }
  3366. };
  3367. inline ::flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(
  3368. ::flatbuffers::FlatBufferBuilder &_fbb,
  3369. bool time_major = false,
  3370. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3371. bool asymmetric_quantize_inputs = false) {
  3372. SequenceRNNOptionsBuilder builder_(_fbb);
  3373. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  3374. builder_.add_fused_activation_function(fused_activation_function);
  3375. builder_.add_time_major(time_major);
  3376. return builder_.Finish();
  3377. }
  3378. struct BidirectionalSequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3379. typedef BidirectionalSequenceRNNOptionsBuilder Builder;
  3380. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3381. VT_TIME_MAJOR = 4,
  3382. VT_FUSED_ACTIVATION_FUNCTION = 6,
  3383. VT_MERGE_OUTPUTS = 8,
  3384. VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
  3385. };
  3386. bool time_major() const {
  3387. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  3388. }
  3389. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3390. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3391. }
  3392. bool merge_outputs() const {
  3393. return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
  3394. }
  3395. bool asymmetric_quantize_inputs() const {
  3396. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3397. }
  3398. bool Verify(::flatbuffers::Verifier &verifier) const {
  3399. return VerifyTableStart(verifier) &&
  3400. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  3401. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3402. VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS, 1) &&
  3403. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3404. verifier.EndTable();
  3405. }
  3406. };
  3407. struct BidirectionalSequenceRNNOptionsBuilder {
  3408. typedef BidirectionalSequenceRNNOptions Table;
  3409. ::flatbuffers::FlatBufferBuilder &fbb_;
  3410. ::flatbuffers::uoffset_t start_;
  3411. void add_time_major(bool time_major) {
  3412. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  3413. }
  3414. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3415. fbb_.AddElement<int8_t>(BidirectionalSequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3416. }
  3417. void add_merge_outputs(bool merge_outputs) {
  3418. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
  3419. }
  3420. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  3421. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  3422. }
  3423. explicit BidirectionalSequenceRNNOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3424. : fbb_(_fbb) {
  3425. start_ = fbb_.StartTable();
  3426. }
  3427. ::flatbuffers::Offset<BidirectionalSequenceRNNOptions> Finish() {
  3428. const auto end = fbb_.EndTable(start_);
  3429. auto o = ::flatbuffers::Offset<BidirectionalSequenceRNNOptions>(end);
  3430. return o;
  3431. }
  3432. };
  3433. inline ::flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(
  3434. ::flatbuffers::FlatBufferBuilder &_fbb,
  3435. bool time_major = false,
  3436. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3437. bool merge_outputs = false,
  3438. bool asymmetric_quantize_inputs = false) {
  3439. BidirectionalSequenceRNNOptionsBuilder builder_(_fbb);
  3440. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  3441. builder_.add_merge_outputs(merge_outputs);
  3442. builder_.add_fused_activation_function(fused_activation_function);
  3443. builder_.add_time_major(time_major);
  3444. return builder_.Finish();
  3445. }
  3446. struct FullyConnectedOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3447. typedef FullyConnectedOptionsBuilder Builder;
  3448. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3449. VT_FUSED_ACTIVATION_FUNCTION = 4,
  3450. VT_WEIGHTS_FORMAT = 6,
  3451. VT_KEEP_NUM_DIMS = 8,
  3452. VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
  3453. };
  3454. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3455. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3456. }
  3457. opencv_tflite::FullyConnectedOptionsWeightsFormat weights_format() const {
  3458. return static_cast<opencv_tflite::FullyConnectedOptionsWeightsFormat>(GetField<int8_t>(VT_WEIGHTS_FORMAT, 0));
  3459. }
  3460. bool keep_num_dims() const {
  3461. return GetField<uint8_t>(VT_KEEP_NUM_DIMS, 0) != 0;
  3462. }
  3463. bool asymmetric_quantize_inputs() const {
  3464. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3465. }
  3466. bool Verify(::flatbuffers::Verifier &verifier) const {
  3467. return VerifyTableStart(verifier) &&
  3468. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3469. VerifyField<int8_t>(verifier, VT_WEIGHTS_FORMAT, 1) &&
  3470. VerifyField<uint8_t>(verifier, VT_KEEP_NUM_DIMS, 1) &&
  3471. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3472. verifier.EndTable();
  3473. }
  3474. };
  3475. struct FullyConnectedOptionsBuilder {
  3476. typedef FullyConnectedOptions Table;
  3477. ::flatbuffers::FlatBufferBuilder &fbb_;
  3478. ::flatbuffers::uoffset_t start_;
  3479. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3480. fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3481. }
  3482. void add_weights_format(opencv_tflite::FullyConnectedOptionsWeightsFormat weights_format) {
  3483. fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_WEIGHTS_FORMAT, static_cast<int8_t>(weights_format), 0);
  3484. }
  3485. void add_keep_num_dims(bool keep_num_dims) {
  3486. fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_KEEP_NUM_DIMS, static_cast<uint8_t>(keep_num_dims), 0);
  3487. }
  3488. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  3489. fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  3490. }
  3491. explicit FullyConnectedOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3492. : fbb_(_fbb) {
  3493. start_ = fbb_.StartTable();
  3494. }
  3495. ::flatbuffers::Offset<FullyConnectedOptions> Finish() {
  3496. const auto end = fbb_.EndTable(start_);
  3497. auto o = ::flatbuffers::Offset<FullyConnectedOptions>(end);
  3498. return o;
  3499. }
  3500. };
  3501. inline ::flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(
  3502. ::flatbuffers::FlatBufferBuilder &_fbb,
  3503. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3504. opencv_tflite::FullyConnectedOptionsWeightsFormat weights_format = opencv_tflite::FullyConnectedOptionsWeightsFormat_DEFAULT,
  3505. bool keep_num_dims = false,
  3506. bool asymmetric_quantize_inputs = false) {
  3507. FullyConnectedOptionsBuilder builder_(_fbb);
  3508. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  3509. builder_.add_keep_num_dims(keep_num_dims);
  3510. builder_.add_weights_format(weights_format);
  3511. builder_.add_fused_activation_function(fused_activation_function);
  3512. return builder_.Finish();
  3513. }
  3514. struct SoftmaxOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3515. typedef SoftmaxOptionsBuilder Builder;
  3516. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3517. VT_BETA = 4
  3518. };
  3519. float beta() const {
  3520. return GetField<float>(VT_BETA, 0.0f);
  3521. }
  3522. bool Verify(::flatbuffers::Verifier &verifier) const {
  3523. return VerifyTableStart(verifier) &&
  3524. VerifyField<float>(verifier, VT_BETA, 4) &&
  3525. verifier.EndTable();
  3526. }
  3527. };
  3528. struct SoftmaxOptionsBuilder {
  3529. typedef SoftmaxOptions Table;
  3530. ::flatbuffers::FlatBufferBuilder &fbb_;
  3531. ::flatbuffers::uoffset_t start_;
  3532. void add_beta(float beta) {
  3533. fbb_.AddElement<float>(SoftmaxOptions::VT_BETA, beta, 0.0f);
  3534. }
  3535. explicit SoftmaxOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3536. : fbb_(_fbb) {
  3537. start_ = fbb_.StartTable();
  3538. }
  3539. ::flatbuffers::Offset<SoftmaxOptions> Finish() {
  3540. const auto end = fbb_.EndTable(start_);
  3541. auto o = ::flatbuffers::Offset<SoftmaxOptions>(end);
  3542. return o;
  3543. }
  3544. };
  3545. inline ::flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(
  3546. ::flatbuffers::FlatBufferBuilder &_fbb,
  3547. float beta = 0.0f) {
  3548. SoftmaxOptionsBuilder builder_(_fbb);
  3549. builder_.add_beta(beta);
  3550. return builder_.Finish();
  3551. }
  3552. struct ConcatenationOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3553. typedef ConcatenationOptionsBuilder Builder;
  3554. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3555. VT_AXIS = 4,
  3556. VT_FUSED_ACTIVATION_FUNCTION = 6
  3557. };
  3558. int32_t axis() const {
  3559. return GetField<int32_t>(VT_AXIS, 0);
  3560. }
  3561. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3562. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3563. }
  3564. bool Verify(::flatbuffers::Verifier &verifier) const {
  3565. return VerifyTableStart(verifier) &&
  3566. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  3567. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3568. verifier.EndTable();
  3569. }
  3570. };
  3571. struct ConcatenationOptionsBuilder {
  3572. typedef ConcatenationOptions Table;
  3573. ::flatbuffers::FlatBufferBuilder &fbb_;
  3574. ::flatbuffers::uoffset_t start_;
  3575. void add_axis(int32_t axis) {
  3576. fbb_.AddElement<int32_t>(ConcatenationOptions::VT_AXIS, axis, 0);
  3577. }
  3578. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3579. fbb_.AddElement<int8_t>(ConcatenationOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3580. }
  3581. explicit ConcatenationOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3582. : fbb_(_fbb) {
  3583. start_ = fbb_.StartTable();
  3584. }
  3585. ::flatbuffers::Offset<ConcatenationOptions> Finish() {
  3586. const auto end = fbb_.EndTable(start_);
  3587. auto o = ::flatbuffers::Offset<ConcatenationOptions>(end);
  3588. return o;
  3589. }
  3590. };
  3591. inline ::flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(
  3592. ::flatbuffers::FlatBufferBuilder &_fbb,
  3593. int32_t axis = 0,
  3594. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE) {
  3595. ConcatenationOptionsBuilder builder_(_fbb);
  3596. builder_.add_axis(axis);
  3597. builder_.add_fused_activation_function(fused_activation_function);
  3598. return builder_.Finish();
  3599. }
  3600. struct AddOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3601. typedef AddOptionsBuilder Builder;
  3602. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3603. VT_FUSED_ACTIVATION_FUNCTION = 4,
  3604. VT_POT_SCALE_INT16 = 6
  3605. };
  3606. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3607. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3608. }
  3609. bool pot_scale_int16() const {
  3610. return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
  3611. }
  3612. bool Verify(::flatbuffers::Verifier &verifier) const {
  3613. return VerifyTableStart(verifier) &&
  3614. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3615. VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16, 1) &&
  3616. verifier.EndTable();
  3617. }
  3618. };
  3619. struct AddOptionsBuilder {
  3620. typedef AddOptions Table;
  3621. ::flatbuffers::FlatBufferBuilder &fbb_;
  3622. ::flatbuffers::uoffset_t start_;
  3623. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3624. fbb_.AddElement<int8_t>(AddOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3625. }
  3626. void add_pot_scale_int16(bool pot_scale_int16) {
  3627. fbb_.AddElement<uint8_t>(AddOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
  3628. }
  3629. explicit AddOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3630. : fbb_(_fbb) {
  3631. start_ = fbb_.StartTable();
  3632. }
  3633. ::flatbuffers::Offset<AddOptions> Finish() {
  3634. const auto end = fbb_.EndTable(start_);
  3635. auto o = ::flatbuffers::Offset<AddOptions>(end);
  3636. return o;
  3637. }
  3638. };
  3639. inline ::flatbuffers::Offset<AddOptions> CreateAddOptions(
  3640. ::flatbuffers::FlatBufferBuilder &_fbb,
  3641. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3642. bool pot_scale_int16 = true) {
  3643. AddOptionsBuilder builder_(_fbb);
  3644. builder_.add_pot_scale_int16(pot_scale_int16);
  3645. builder_.add_fused_activation_function(fused_activation_function);
  3646. return builder_.Finish();
  3647. }
  3648. struct MulOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3649. typedef MulOptionsBuilder Builder;
  3650. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3651. VT_FUSED_ACTIVATION_FUNCTION = 4
  3652. };
  3653. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3654. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3655. }
  3656. bool Verify(::flatbuffers::Verifier &verifier) const {
  3657. return VerifyTableStart(verifier) &&
  3658. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3659. verifier.EndTable();
  3660. }
  3661. };
  3662. struct MulOptionsBuilder {
  3663. typedef MulOptions Table;
  3664. ::flatbuffers::FlatBufferBuilder &fbb_;
  3665. ::flatbuffers::uoffset_t start_;
  3666. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3667. fbb_.AddElement<int8_t>(MulOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3668. }
  3669. explicit MulOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3670. : fbb_(_fbb) {
  3671. start_ = fbb_.StartTable();
  3672. }
  3673. ::flatbuffers::Offset<MulOptions> Finish() {
  3674. const auto end = fbb_.EndTable(start_);
  3675. auto o = ::flatbuffers::Offset<MulOptions>(end);
  3676. return o;
  3677. }
  3678. };
  3679. inline ::flatbuffers::Offset<MulOptions> CreateMulOptions(
  3680. ::flatbuffers::FlatBufferBuilder &_fbb,
  3681. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE) {
  3682. MulOptionsBuilder builder_(_fbb);
  3683. builder_.add_fused_activation_function(fused_activation_function);
  3684. return builder_.Finish();
  3685. }
  3686. struct L2NormOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3687. typedef L2NormOptionsBuilder Builder;
  3688. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3689. VT_FUSED_ACTIVATION_FUNCTION = 4
  3690. };
  3691. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3692. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3693. }
  3694. bool Verify(::flatbuffers::Verifier &verifier) const {
  3695. return VerifyTableStart(verifier) &&
  3696. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3697. verifier.EndTable();
  3698. }
  3699. };
  3700. struct L2NormOptionsBuilder {
  3701. typedef L2NormOptions Table;
  3702. ::flatbuffers::FlatBufferBuilder &fbb_;
  3703. ::flatbuffers::uoffset_t start_;
  3704. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3705. fbb_.AddElement<int8_t>(L2NormOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3706. }
  3707. explicit L2NormOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3708. : fbb_(_fbb) {
  3709. start_ = fbb_.StartTable();
  3710. }
  3711. ::flatbuffers::Offset<L2NormOptions> Finish() {
  3712. const auto end = fbb_.EndTable(start_);
  3713. auto o = ::flatbuffers::Offset<L2NormOptions>(end);
  3714. return o;
  3715. }
  3716. };
  3717. inline ::flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(
  3718. ::flatbuffers::FlatBufferBuilder &_fbb,
  3719. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE) {
  3720. L2NormOptionsBuilder builder_(_fbb);
  3721. builder_.add_fused_activation_function(fused_activation_function);
  3722. return builder_.Finish();
  3723. }
  3724. struct LocalResponseNormalizationOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3725. typedef LocalResponseNormalizationOptionsBuilder Builder;
  3726. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3727. VT_RADIUS = 4,
  3728. VT_BIAS = 6,
  3729. VT_ALPHA = 8,
  3730. VT_BETA = 10
  3731. };
  3732. int32_t radius() const {
  3733. return GetField<int32_t>(VT_RADIUS, 0);
  3734. }
  3735. float bias() const {
  3736. return GetField<float>(VT_BIAS, 0.0f);
  3737. }
  3738. float alpha() const {
  3739. return GetField<float>(VT_ALPHA, 0.0f);
  3740. }
  3741. float beta() const {
  3742. return GetField<float>(VT_BETA, 0.0f);
  3743. }
  3744. bool Verify(::flatbuffers::Verifier &verifier) const {
  3745. return VerifyTableStart(verifier) &&
  3746. VerifyField<int32_t>(verifier, VT_RADIUS, 4) &&
  3747. VerifyField<float>(verifier, VT_BIAS, 4) &&
  3748. VerifyField<float>(verifier, VT_ALPHA, 4) &&
  3749. VerifyField<float>(verifier, VT_BETA, 4) &&
  3750. verifier.EndTable();
  3751. }
  3752. };
  3753. struct LocalResponseNormalizationOptionsBuilder {
  3754. typedef LocalResponseNormalizationOptions Table;
  3755. ::flatbuffers::FlatBufferBuilder &fbb_;
  3756. ::flatbuffers::uoffset_t start_;
  3757. void add_radius(int32_t radius) {
  3758. fbb_.AddElement<int32_t>(LocalResponseNormalizationOptions::VT_RADIUS, radius, 0);
  3759. }
  3760. void add_bias(float bias) {
  3761. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BIAS, bias, 0.0f);
  3762. }
  3763. void add_alpha(float alpha) {
  3764. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_ALPHA, alpha, 0.0f);
  3765. }
  3766. void add_beta(float beta) {
  3767. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BETA, beta, 0.0f);
  3768. }
  3769. explicit LocalResponseNormalizationOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3770. : fbb_(_fbb) {
  3771. start_ = fbb_.StartTable();
  3772. }
  3773. ::flatbuffers::Offset<LocalResponseNormalizationOptions> Finish() {
  3774. const auto end = fbb_.EndTable(start_);
  3775. auto o = ::flatbuffers::Offset<LocalResponseNormalizationOptions>(end);
  3776. return o;
  3777. }
  3778. };
  3779. inline ::flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(
  3780. ::flatbuffers::FlatBufferBuilder &_fbb,
  3781. int32_t radius = 0,
  3782. float bias = 0.0f,
  3783. float alpha = 0.0f,
  3784. float beta = 0.0f) {
  3785. LocalResponseNormalizationOptionsBuilder builder_(_fbb);
  3786. builder_.add_beta(beta);
  3787. builder_.add_alpha(alpha);
  3788. builder_.add_bias(bias);
  3789. builder_.add_radius(radius);
  3790. return builder_.Finish();
  3791. }
  3792. struct LSTMOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3793. typedef LSTMOptionsBuilder Builder;
  3794. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3795. VT_FUSED_ACTIVATION_FUNCTION = 4,
  3796. VT_CELL_CLIP = 6,
  3797. VT_PROJ_CLIP = 8,
  3798. VT_KERNEL_TYPE = 10,
  3799. VT_ASYMMETRIC_QUANTIZE_INPUTS = 12
  3800. };
  3801. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3802. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3803. }
  3804. float cell_clip() const {
  3805. return GetField<float>(VT_CELL_CLIP, 0.0f);
  3806. }
  3807. float proj_clip() const {
  3808. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  3809. }
  3810. opencv_tflite::LSTMKernelType kernel_type() const {
  3811. return static_cast<opencv_tflite::LSTMKernelType>(GetField<int8_t>(VT_KERNEL_TYPE, 0));
  3812. }
  3813. bool asymmetric_quantize_inputs() const {
  3814. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3815. }
  3816. bool Verify(::flatbuffers::Verifier &verifier) const {
  3817. return VerifyTableStart(verifier) &&
  3818. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3819. VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
  3820. VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
  3821. VerifyField<int8_t>(verifier, VT_KERNEL_TYPE, 1) &&
  3822. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3823. verifier.EndTable();
  3824. }
  3825. };
  3826. struct LSTMOptionsBuilder {
  3827. typedef LSTMOptions Table;
  3828. ::flatbuffers::FlatBufferBuilder &fbb_;
  3829. ::flatbuffers::uoffset_t start_;
  3830. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3831. fbb_.AddElement<int8_t>(LSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3832. }
  3833. void add_cell_clip(float cell_clip) {
  3834. fbb_.AddElement<float>(LSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  3835. }
  3836. void add_proj_clip(float proj_clip) {
  3837. fbb_.AddElement<float>(LSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  3838. }
  3839. void add_kernel_type(opencv_tflite::LSTMKernelType kernel_type) {
  3840. fbb_.AddElement<int8_t>(LSTMOptions::VT_KERNEL_TYPE, static_cast<int8_t>(kernel_type), 0);
  3841. }
  3842. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  3843. fbb_.AddElement<uint8_t>(LSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  3844. }
  3845. explicit LSTMOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3846. : fbb_(_fbb) {
  3847. start_ = fbb_.StartTable();
  3848. }
  3849. ::flatbuffers::Offset<LSTMOptions> Finish() {
  3850. const auto end = fbb_.EndTable(start_);
  3851. auto o = ::flatbuffers::Offset<LSTMOptions>(end);
  3852. return o;
  3853. }
  3854. };
  3855. inline ::flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(
  3856. ::flatbuffers::FlatBufferBuilder &_fbb,
  3857. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3858. float cell_clip = 0.0f,
  3859. float proj_clip = 0.0f,
  3860. opencv_tflite::LSTMKernelType kernel_type = opencv_tflite::LSTMKernelType_FULL,
  3861. bool asymmetric_quantize_inputs = false) {
  3862. LSTMOptionsBuilder builder_(_fbb);
  3863. builder_.add_proj_clip(proj_clip);
  3864. builder_.add_cell_clip(cell_clip);
  3865. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  3866. builder_.add_kernel_type(kernel_type);
  3867. builder_.add_fused_activation_function(fused_activation_function);
  3868. return builder_.Finish();
  3869. }
  3870. struct UnidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3871. typedef UnidirectionalSequenceLSTMOptionsBuilder Builder;
  3872. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3873. VT_FUSED_ACTIVATION_FUNCTION = 4,
  3874. VT_CELL_CLIP = 6,
  3875. VT_PROJ_CLIP = 8,
  3876. VT_TIME_MAJOR = 10,
  3877. VT_ASYMMETRIC_QUANTIZE_INPUTS = 12,
  3878. VT_DIAGONAL_RECURRENT_TENSORS = 14
  3879. };
  3880. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3881. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3882. }
  3883. float cell_clip() const {
  3884. return GetField<float>(VT_CELL_CLIP, 0.0f);
  3885. }
  3886. float proj_clip() const {
  3887. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  3888. }
  3889. bool time_major() const {
  3890. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  3891. }
  3892. bool asymmetric_quantize_inputs() const {
  3893. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3894. }
  3895. bool diagonal_recurrent_tensors() const {
  3896. return GetField<uint8_t>(VT_DIAGONAL_RECURRENT_TENSORS, 0) != 0;
  3897. }
  3898. bool Verify(::flatbuffers::Verifier &verifier) const {
  3899. return VerifyTableStart(verifier) &&
  3900. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3901. VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
  3902. VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
  3903. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  3904. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3905. VerifyField<uint8_t>(verifier, VT_DIAGONAL_RECURRENT_TENSORS, 1) &&
  3906. verifier.EndTable();
  3907. }
  3908. };
  3909. struct UnidirectionalSequenceLSTMOptionsBuilder {
  3910. typedef UnidirectionalSequenceLSTMOptions Table;
  3911. ::flatbuffers::FlatBufferBuilder &fbb_;
  3912. ::flatbuffers::uoffset_t start_;
  3913. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  3914. fbb_.AddElement<int8_t>(UnidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  3915. }
  3916. void add_cell_clip(float cell_clip) {
  3917. fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  3918. }
  3919. void add_proj_clip(float proj_clip) {
  3920. fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  3921. }
  3922. void add_time_major(bool time_major) {
  3923. fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  3924. }
  3925. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  3926. fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  3927. }
  3928. void add_diagonal_recurrent_tensors(bool diagonal_recurrent_tensors) {
  3929. fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_DIAGONAL_RECURRENT_TENSORS, static_cast<uint8_t>(diagonal_recurrent_tensors), 0);
  3930. }
  3931. explicit UnidirectionalSequenceLSTMOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  3932. : fbb_(_fbb) {
  3933. start_ = fbb_.StartTable();
  3934. }
  3935. ::flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> Finish() {
  3936. const auto end = fbb_.EndTable(start_);
  3937. auto o = ::flatbuffers::Offset<UnidirectionalSequenceLSTMOptions>(end);
  3938. return o;
  3939. }
  3940. };
  3941. inline ::flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(
  3942. ::flatbuffers::FlatBufferBuilder &_fbb,
  3943. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  3944. float cell_clip = 0.0f,
  3945. float proj_clip = 0.0f,
  3946. bool time_major = false,
  3947. bool asymmetric_quantize_inputs = false,
  3948. bool diagonal_recurrent_tensors = false) {
  3949. UnidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
  3950. builder_.add_proj_clip(proj_clip);
  3951. builder_.add_cell_clip(cell_clip);
  3952. builder_.add_diagonal_recurrent_tensors(diagonal_recurrent_tensors);
  3953. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  3954. builder_.add_time_major(time_major);
  3955. builder_.add_fused_activation_function(fused_activation_function);
  3956. return builder_.Finish();
  3957. }
  3958. struct BidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  3959. typedef BidirectionalSequenceLSTMOptionsBuilder Builder;
  3960. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3961. VT_FUSED_ACTIVATION_FUNCTION = 4,
  3962. VT_CELL_CLIP = 6,
  3963. VT_PROJ_CLIP = 8,
  3964. VT_MERGE_OUTPUTS = 10,
  3965. VT_TIME_MAJOR = 12,
  3966. VT_ASYMMETRIC_QUANTIZE_INPUTS = 14
  3967. };
  3968. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  3969. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  3970. }
  3971. float cell_clip() const {
  3972. return GetField<float>(VT_CELL_CLIP, 0.0f);
  3973. }
  3974. float proj_clip() const {
  3975. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  3976. }
  3977. bool merge_outputs() const {
  3978. return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
  3979. }
  3980. bool time_major() const {
  3981. return GetField<uint8_t>(VT_TIME_MAJOR, 1) != 0;
  3982. }
  3983. bool asymmetric_quantize_inputs() const {
  3984. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  3985. }
  3986. bool Verify(::flatbuffers::Verifier &verifier) const {
  3987. return VerifyTableStart(verifier) &&
  3988. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  3989. VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
  3990. VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
  3991. VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS, 1) &&
  3992. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  3993. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  3994. verifier.EndTable();
  3995. }
  3996. };
  3997. struct BidirectionalSequenceLSTMOptionsBuilder {
  3998. typedef BidirectionalSequenceLSTMOptions Table;
  3999. ::flatbuffers::FlatBufferBuilder &fbb_;
  4000. ::flatbuffers::uoffset_t start_;
  4001. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  4002. fbb_.AddElement<int8_t>(BidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4003. }
  4004. void add_cell_clip(float cell_clip) {
  4005. fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  4006. }
  4007. void add_proj_clip(float proj_clip) {
  4008. fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  4009. }
  4010. void add_merge_outputs(bool merge_outputs) {
  4011. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
  4012. }
  4013. void add_time_major(bool time_major) {
  4014. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 1);
  4015. }
  4016. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  4017. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  4018. }
  4019. explicit BidirectionalSequenceLSTMOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4020. : fbb_(_fbb) {
  4021. start_ = fbb_.StartTable();
  4022. }
  4023. ::flatbuffers::Offset<BidirectionalSequenceLSTMOptions> Finish() {
  4024. const auto end = fbb_.EndTable(start_);
  4025. auto o = ::flatbuffers::Offset<BidirectionalSequenceLSTMOptions>(end);
  4026. return o;
  4027. }
  4028. };
  4029. inline ::flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(
  4030. ::flatbuffers::FlatBufferBuilder &_fbb,
  4031. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  4032. float cell_clip = 0.0f,
  4033. float proj_clip = 0.0f,
  4034. bool merge_outputs = false,
  4035. bool time_major = true,
  4036. bool asymmetric_quantize_inputs = false) {
  4037. BidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
  4038. builder_.add_proj_clip(proj_clip);
  4039. builder_.add_cell_clip(cell_clip);
  4040. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  4041. builder_.add_time_major(time_major);
  4042. builder_.add_merge_outputs(merge_outputs);
  4043. builder_.add_fused_activation_function(fused_activation_function);
  4044. return builder_.Finish();
  4045. }
  4046. struct ResizeBilinearOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4047. typedef ResizeBilinearOptionsBuilder Builder;
  4048. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4049. VT_ALIGN_CORNERS = 8,
  4050. VT_HALF_PIXEL_CENTERS = 10
  4051. };
  4052. bool align_corners() const {
  4053. return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
  4054. }
  4055. bool half_pixel_centers() const {
  4056. return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
  4057. }
  4058. bool Verify(::flatbuffers::Verifier &verifier) const {
  4059. return VerifyTableStart(verifier) &&
  4060. VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS, 1) &&
  4061. VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS, 1) &&
  4062. verifier.EndTable();
  4063. }
  4064. };
  4065. struct ResizeBilinearOptionsBuilder {
  4066. typedef ResizeBilinearOptions Table;
  4067. ::flatbuffers::FlatBufferBuilder &fbb_;
  4068. ::flatbuffers::uoffset_t start_;
  4069. void add_align_corners(bool align_corners) {
  4070. fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
  4071. }
  4072. void add_half_pixel_centers(bool half_pixel_centers) {
  4073. fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
  4074. }
  4075. explicit ResizeBilinearOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4076. : fbb_(_fbb) {
  4077. start_ = fbb_.StartTable();
  4078. }
  4079. ::flatbuffers::Offset<ResizeBilinearOptions> Finish() {
  4080. const auto end = fbb_.EndTable(start_);
  4081. auto o = ::flatbuffers::Offset<ResizeBilinearOptions>(end);
  4082. return o;
  4083. }
  4084. };
  4085. inline ::flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(
  4086. ::flatbuffers::FlatBufferBuilder &_fbb,
  4087. bool align_corners = false,
  4088. bool half_pixel_centers = false) {
  4089. ResizeBilinearOptionsBuilder builder_(_fbb);
  4090. builder_.add_half_pixel_centers(half_pixel_centers);
  4091. builder_.add_align_corners(align_corners);
  4092. return builder_.Finish();
  4093. }
  4094. struct ResizeNearestNeighborOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4095. typedef ResizeNearestNeighborOptionsBuilder Builder;
  4096. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4097. VT_ALIGN_CORNERS = 4,
  4098. VT_HALF_PIXEL_CENTERS = 6
  4099. };
  4100. bool align_corners() const {
  4101. return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
  4102. }
  4103. bool half_pixel_centers() const {
  4104. return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
  4105. }
  4106. bool Verify(::flatbuffers::Verifier &verifier) const {
  4107. return VerifyTableStart(verifier) &&
  4108. VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS, 1) &&
  4109. VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS, 1) &&
  4110. verifier.EndTable();
  4111. }
  4112. };
  4113. struct ResizeNearestNeighborOptionsBuilder {
  4114. typedef ResizeNearestNeighborOptions Table;
  4115. ::flatbuffers::FlatBufferBuilder &fbb_;
  4116. ::flatbuffers::uoffset_t start_;
  4117. void add_align_corners(bool align_corners) {
  4118. fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
  4119. }
  4120. void add_half_pixel_centers(bool half_pixel_centers) {
  4121. fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
  4122. }
  4123. explicit ResizeNearestNeighborOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4124. : fbb_(_fbb) {
  4125. start_ = fbb_.StartTable();
  4126. }
  4127. ::flatbuffers::Offset<ResizeNearestNeighborOptions> Finish() {
  4128. const auto end = fbb_.EndTable(start_);
  4129. auto o = ::flatbuffers::Offset<ResizeNearestNeighborOptions>(end);
  4130. return o;
  4131. }
  4132. };
  4133. inline ::flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(
  4134. ::flatbuffers::FlatBufferBuilder &_fbb,
  4135. bool align_corners = false,
  4136. bool half_pixel_centers = false) {
  4137. ResizeNearestNeighborOptionsBuilder builder_(_fbb);
  4138. builder_.add_half_pixel_centers(half_pixel_centers);
  4139. builder_.add_align_corners(align_corners);
  4140. return builder_.Finish();
  4141. }
  4142. struct CallOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4143. typedef CallOptionsBuilder Builder;
  4144. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4145. VT_SUBGRAPH = 4
  4146. };
  4147. uint32_t subgraph() const {
  4148. return GetField<uint32_t>(VT_SUBGRAPH, 0);
  4149. }
  4150. bool Verify(::flatbuffers::Verifier &verifier) const {
  4151. return VerifyTableStart(verifier) &&
  4152. VerifyField<uint32_t>(verifier, VT_SUBGRAPH, 4) &&
  4153. verifier.EndTable();
  4154. }
  4155. };
  4156. struct CallOptionsBuilder {
  4157. typedef CallOptions Table;
  4158. ::flatbuffers::FlatBufferBuilder &fbb_;
  4159. ::flatbuffers::uoffset_t start_;
  4160. void add_subgraph(uint32_t subgraph) {
  4161. fbb_.AddElement<uint32_t>(CallOptions::VT_SUBGRAPH, subgraph, 0);
  4162. }
  4163. explicit CallOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4164. : fbb_(_fbb) {
  4165. start_ = fbb_.StartTable();
  4166. }
  4167. ::flatbuffers::Offset<CallOptions> Finish() {
  4168. const auto end = fbb_.EndTable(start_);
  4169. auto o = ::flatbuffers::Offset<CallOptions>(end);
  4170. return o;
  4171. }
  4172. };
  4173. inline ::flatbuffers::Offset<CallOptions> CreateCallOptions(
  4174. ::flatbuffers::FlatBufferBuilder &_fbb,
  4175. uint32_t subgraph = 0) {
  4176. CallOptionsBuilder builder_(_fbb);
  4177. builder_.add_subgraph(subgraph);
  4178. return builder_.Finish();
  4179. }
  4180. struct PadOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4181. typedef PadOptionsBuilder Builder;
  4182. bool Verify(::flatbuffers::Verifier &verifier) const {
  4183. return VerifyTableStart(verifier) &&
  4184. verifier.EndTable();
  4185. }
  4186. };
  4187. struct PadOptionsBuilder {
  4188. typedef PadOptions Table;
  4189. ::flatbuffers::FlatBufferBuilder &fbb_;
  4190. ::flatbuffers::uoffset_t start_;
  4191. explicit PadOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4192. : fbb_(_fbb) {
  4193. start_ = fbb_.StartTable();
  4194. }
  4195. ::flatbuffers::Offset<PadOptions> Finish() {
  4196. const auto end = fbb_.EndTable(start_);
  4197. auto o = ::flatbuffers::Offset<PadOptions>(end);
  4198. return o;
  4199. }
  4200. };
  4201. inline ::flatbuffers::Offset<PadOptions> CreatePadOptions(
  4202. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4203. PadOptionsBuilder builder_(_fbb);
  4204. return builder_.Finish();
  4205. }
  4206. struct PadV2Options FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4207. typedef PadV2OptionsBuilder Builder;
  4208. bool Verify(::flatbuffers::Verifier &verifier) const {
  4209. return VerifyTableStart(verifier) &&
  4210. verifier.EndTable();
  4211. }
  4212. };
  4213. struct PadV2OptionsBuilder {
  4214. typedef PadV2Options Table;
  4215. ::flatbuffers::FlatBufferBuilder &fbb_;
  4216. ::flatbuffers::uoffset_t start_;
  4217. explicit PadV2OptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4218. : fbb_(_fbb) {
  4219. start_ = fbb_.StartTable();
  4220. }
  4221. ::flatbuffers::Offset<PadV2Options> Finish() {
  4222. const auto end = fbb_.EndTable(start_);
  4223. auto o = ::flatbuffers::Offset<PadV2Options>(end);
  4224. return o;
  4225. }
  4226. };
  4227. inline ::flatbuffers::Offset<PadV2Options> CreatePadV2Options(
  4228. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4229. PadV2OptionsBuilder builder_(_fbb);
  4230. return builder_.Finish();
  4231. }
  4232. struct ReshapeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4233. typedef ReshapeOptionsBuilder Builder;
  4234. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4235. VT_NEW_SHAPE = 4
  4236. };
  4237. const ::flatbuffers::Vector<int32_t> *new_shape() const {
  4238. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_NEW_SHAPE);
  4239. }
  4240. bool Verify(::flatbuffers::Verifier &verifier) const {
  4241. return VerifyTableStart(verifier) &&
  4242. VerifyOffset(verifier, VT_NEW_SHAPE) &&
  4243. verifier.VerifyVector(new_shape()) &&
  4244. verifier.EndTable();
  4245. }
  4246. };
  4247. struct ReshapeOptionsBuilder {
  4248. typedef ReshapeOptions Table;
  4249. ::flatbuffers::FlatBufferBuilder &fbb_;
  4250. ::flatbuffers::uoffset_t start_;
  4251. void add_new_shape(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> new_shape) {
  4252. fbb_.AddOffset(ReshapeOptions::VT_NEW_SHAPE, new_shape);
  4253. }
  4254. explicit ReshapeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4255. : fbb_(_fbb) {
  4256. start_ = fbb_.StartTable();
  4257. }
  4258. ::flatbuffers::Offset<ReshapeOptions> Finish() {
  4259. const auto end = fbb_.EndTable(start_);
  4260. auto o = ::flatbuffers::Offset<ReshapeOptions>(end);
  4261. return o;
  4262. }
  4263. };
  4264. inline ::flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(
  4265. ::flatbuffers::FlatBufferBuilder &_fbb,
  4266. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> new_shape = 0) {
  4267. ReshapeOptionsBuilder builder_(_fbb);
  4268. builder_.add_new_shape(new_shape);
  4269. return builder_.Finish();
  4270. }
  4271. inline ::flatbuffers::Offset<ReshapeOptions> CreateReshapeOptionsDirect(
  4272. ::flatbuffers::FlatBufferBuilder &_fbb,
  4273. const std::vector<int32_t> *new_shape = nullptr) {
  4274. auto new_shape__ = new_shape ? _fbb.CreateVector<int32_t>(*new_shape) : 0;
  4275. return opencv_tflite::CreateReshapeOptions(
  4276. _fbb,
  4277. new_shape__);
  4278. }
  4279. struct SpaceToBatchNDOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4280. typedef SpaceToBatchNDOptionsBuilder Builder;
  4281. bool Verify(::flatbuffers::Verifier &verifier) const {
  4282. return VerifyTableStart(verifier) &&
  4283. verifier.EndTable();
  4284. }
  4285. };
  4286. struct SpaceToBatchNDOptionsBuilder {
  4287. typedef SpaceToBatchNDOptions Table;
  4288. ::flatbuffers::FlatBufferBuilder &fbb_;
  4289. ::flatbuffers::uoffset_t start_;
  4290. explicit SpaceToBatchNDOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4291. : fbb_(_fbb) {
  4292. start_ = fbb_.StartTable();
  4293. }
  4294. ::flatbuffers::Offset<SpaceToBatchNDOptions> Finish() {
  4295. const auto end = fbb_.EndTable(start_);
  4296. auto o = ::flatbuffers::Offset<SpaceToBatchNDOptions>(end);
  4297. return o;
  4298. }
  4299. };
  4300. inline ::flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(
  4301. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4302. SpaceToBatchNDOptionsBuilder builder_(_fbb);
  4303. return builder_.Finish();
  4304. }
  4305. struct BatchToSpaceNDOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4306. typedef BatchToSpaceNDOptionsBuilder Builder;
  4307. bool Verify(::flatbuffers::Verifier &verifier) const {
  4308. return VerifyTableStart(verifier) &&
  4309. verifier.EndTable();
  4310. }
  4311. };
  4312. struct BatchToSpaceNDOptionsBuilder {
  4313. typedef BatchToSpaceNDOptions Table;
  4314. ::flatbuffers::FlatBufferBuilder &fbb_;
  4315. ::flatbuffers::uoffset_t start_;
  4316. explicit BatchToSpaceNDOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4317. : fbb_(_fbb) {
  4318. start_ = fbb_.StartTable();
  4319. }
  4320. ::flatbuffers::Offset<BatchToSpaceNDOptions> Finish() {
  4321. const auto end = fbb_.EndTable(start_);
  4322. auto o = ::flatbuffers::Offset<BatchToSpaceNDOptions>(end);
  4323. return o;
  4324. }
  4325. };
  4326. inline ::flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(
  4327. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4328. BatchToSpaceNDOptionsBuilder builder_(_fbb);
  4329. return builder_.Finish();
  4330. }
  4331. struct SkipGramOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4332. typedef SkipGramOptionsBuilder Builder;
  4333. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4334. VT_NGRAM_SIZE = 4,
  4335. VT_MAX_SKIP_SIZE = 6,
  4336. VT_INCLUDE_ALL_NGRAMS = 8
  4337. };
  4338. int32_t ngram_size() const {
  4339. return GetField<int32_t>(VT_NGRAM_SIZE, 0);
  4340. }
  4341. int32_t max_skip_size() const {
  4342. return GetField<int32_t>(VT_MAX_SKIP_SIZE, 0);
  4343. }
  4344. bool include_all_ngrams() const {
  4345. return GetField<uint8_t>(VT_INCLUDE_ALL_NGRAMS, 0) != 0;
  4346. }
  4347. bool Verify(::flatbuffers::Verifier &verifier) const {
  4348. return VerifyTableStart(verifier) &&
  4349. VerifyField<int32_t>(verifier, VT_NGRAM_SIZE, 4) &&
  4350. VerifyField<int32_t>(verifier, VT_MAX_SKIP_SIZE, 4) &&
  4351. VerifyField<uint8_t>(verifier, VT_INCLUDE_ALL_NGRAMS, 1) &&
  4352. verifier.EndTable();
  4353. }
  4354. };
  4355. struct SkipGramOptionsBuilder {
  4356. typedef SkipGramOptions Table;
  4357. ::flatbuffers::FlatBufferBuilder &fbb_;
  4358. ::flatbuffers::uoffset_t start_;
  4359. void add_ngram_size(int32_t ngram_size) {
  4360. fbb_.AddElement<int32_t>(SkipGramOptions::VT_NGRAM_SIZE, ngram_size, 0);
  4361. }
  4362. void add_max_skip_size(int32_t max_skip_size) {
  4363. fbb_.AddElement<int32_t>(SkipGramOptions::VT_MAX_SKIP_SIZE, max_skip_size, 0);
  4364. }
  4365. void add_include_all_ngrams(bool include_all_ngrams) {
  4366. fbb_.AddElement<uint8_t>(SkipGramOptions::VT_INCLUDE_ALL_NGRAMS, static_cast<uint8_t>(include_all_ngrams), 0);
  4367. }
  4368. explicit SkipGramOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4369. : fbb_(_fbb) {
  4370. start_ = fbb_.StartTable();
  4371. }
  4372. ::flatbuffers::Offset<SkipGramOptions> Finish() {
  4373. const auto end = fbb_.EndTable(start_);
  4374. auto o = ::flatbuffers::Offset<SkipGramOptions>(end);
  4375. return o;
  4376. }
  4377. };
  4378. inline ::flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(
  4379. ::flatbuffers::FlatBufferBuilder &_fbb,
  4380. int32_t ngram_size = 0,
  4381. int32_t max_skip_size = 0,
  4382. bool include_all_ngrams = false) {
  4383. SkipGramOptionsBuilder builder_(_fbb);
  4384. builder_.add_max_skip_size(max_skip_size);
  4385. builder_.add_ngram_size(ngram_size);
  4386. builder_.add_include_all_ngrams(include_all_ngrams);
  4387. return builder_.Finish();
  4388. }
  4389. struct SpaceToDepthOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4390. typedef SpaceToDepthOptionsBuilder Builder;
  4391. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4392. VT_BLOCK_SIZE = 4
  4393. };
  4394. int32_t block_size() const {
  4395. return GetField<int32_t>(VT_BLOCK_SIZE, 0);
  4396. }
  4397. bool Verify(::flatbuffers::Verifier &verifier) const {
  4398. return VerifyTableStart(verifier) &&
  4399. VerifyField<int32_t>(verifier, VT_BLOCK_SIZE, 4) &&
  4400. verifier.EndTable();
  4401. }
  4402. };
  4403. struct SpaceToDepthOptionsBuilder {
  4404. typedef SpaceToDepthOptions Table;
  4405. ::flatbuffers::FlatBufferBuilder &fbb_;
  4406. ::flatbuffers::uoffset_t start_;
  4407. void add_block_size(int32_t block_size) {
  4408. fbb_.AddElement<int32_t>(SpaceToDepthOptions::VT_BLOCK_SIZE, block_size, 0);
  4409. }
  4410. explicit SpaceToDepthOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4411. : fbb_(_fbb) {
  4412. start_ = fbb_.StartTable();
  4413. }
  4414. ::flatbuffers::Offset<SpaceToDepthOptions> Finish() {
  4415. const auto end = fbb_.EndTable(start_);
  4416. auto o = ::flatbuffers::Offset<SpaceToDepthOptions>(end);
  4417. return o;
  4418. }
  4419. };
  4420. inline ::flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(
  4421. ::flatbuffers::FlatBufferBuilder &_fbb,
  4422. int32_t block_size = 0) {
  4423. SpaceToDepthOptionsBuilder builder_(_fbb);
  4424. builder_.add_block_size(block_size);
  4425. return builder_.Finish();
  4426. }
  4427. struct DepthToSpaceOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4428. typedef DepthToSpaceOptionsBuilder Builder;
  4429. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4430. VT_BLOCK_SIZE = 4
  4431. };
  4432. int32_t block_size() const {
  4433. return GetField<int32_t>(VT_BLOCK_SIZE, 0);
  4434. }
  4435. bool Verify(::flatbuffers::Verifier &verifier) const {
  4436. return VerifyTableStart(verifier) &&
  4437. VerifyField<int32_t>(verifier, VT_BLOCK_SIZE, 4) &&
  4438. verifier.EndTable();
  4439. }
  4440. };
  4441. struct DepthToSpaceOptionsBuilder {
  4442. typedef DepthToSpaceOptions Table;
  4443. ::flatbuffers::FlatBufferBuilder &fbb_;
  4444. ::flatbuffers::uoffset_t start_;
  4445. void add_block_size(int32_t block_size) {
  4446. fbb_.AddElement<int32_t>(DepthToSpaceOptions::VT_BLOCK_SIZE, block_size, 0);
  4447. }
  4448. explicit DepthToSpaceOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4449. : fbb_(_fbb) {
  4450. start_ = fbb_.StartTable();
  4451. }
  4452. ::flatbuffers::Offset<DepthToSpaceOptions> Finish() {
  4453. const auto end = fbb_.EndTable(start_);
  4454. auto o = ::flatbuffers::Offset<DepthToSpaceOptions>(end);
  4455. return o;
  4456. }
  4457. };
  4458. inline ::flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(
  4459. ::flatbuffers::FlatBufferBuilder &_fbb,
  4460. int32_t block_size = 0) {
  4461. DepthToSpaceOptionsBuilder builder_(_fbb);
  4462. builder_.add_block_size(block_size);
  4463. return builder_.Finish();
  4464. }
  4465. struct SubOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4466. typedef SubOptionsBuilder Builder;
  4467. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4468. VT_FUSED_ACTIVATION_FUNCTION = 4,
  4469. VT_POT_SCALE_INT16 = 6
  4470. };
  4471. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  4472. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4473. }
  4474. bool pot_scale_int16() const {
  4475. return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
  4476. }
  4477. bool Verify(::flatbuffers::Verifier &verifier) const {
  4478. return VerifyTableStart(verifier) &&
  4479. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  4480. VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16, 1) &&
  4481. verifier.EndTable();
  4482. }
  4483. };
  4484. struct SubOptionsBuilder {
  4485. typedef SubOptions Table;
  4486. ::flatbuffers::FlatBufferBuilder &fbb_;
  4487. ::flatbuffers::uoffset_t start_;
  4488. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  4489. fbb_.AddElement<int8_t>(SubOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4490. }
  4491. void add_pot_scale_int16(bool pot_scale_int16) {
  4492. fbb_.AddElement<uint8_t>(SubOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
  4493. }
  4494. explicit SubOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4495. : fbb_(_fbb) {
  4496. start_ = fbb_.StartTable();
  4497. }
  4498. ::flatbuffers::Offset<SubOptions> Finish() {
  4499. const auto end = fbb_.EndTable(start_);
  4500. auto o = ::flatbuffers::Offset<SubOptions>(end);
  4501. return o;
  4502. }
  4503. };
  4504. inline ::flatbuffers::Offset<SubOptions> CreateSubOptions(
  4505. ::flatbuffers::FlatBufferBuilder &_fbb,
  4506. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE,
  4507. bool pot_scale_int16 = true) {
  4508. SubOptionsBuilder builder_(_fbb);
  4509. builder_.add_pot_scale_int16(pot_scale_int16);
  4510. builder_.add_fused_activation_function(fused_activation_function);
  4511. return builder_.Finish();
  4512. }
  4513. struct DivOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4514. typedef DivOptionsBuilder Builder;
  4515. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4516. VT_FUSED_ACTIVATION_FUNCTION = 4
  4517. };
  4518. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  4519. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4520. }
  4521. bool Verify(::flatbuffers::Verifier &verifier) const {
  4522. return VerifyTableStart(verifier) &&
  4523. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  4524. verifier.EndTable();
  4525. }
  4526. };
  4527. struct DivOptionsBuilder {
  4528. typedef DivOptions Table;
  4529. ::flatbuffers::FlatBufferBuilder &fbb_;
  4530. ::flatbuffers::uoffset_t start_;
  4531. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  4532. fbb_.AddElement<int8_t>(DivOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4533. }
  4534. explicit DivOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4535. : fbb_(_fbb) {
  4536. start_ = fbb_.StartTable();
  4537. }
  4538. ::flatbuffers::Offset<DivOptions> Finish() {
  4539. const auto end = fbb_.EndTable(start_);
  4540. auto o = ::flatbuffers::Offset<DivOptions>(end);
  4541. return o;
  4542. }
  4543. };
  4544. inline ::flatbuffers::Offset<DivOptions> CreateDivOptions(
  4545. ::flatbuffers::FlatBufferBuilder &_fbb,
  4546. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE) {
  4547. DivOptionsBuilder builder_(_fbb);
  4548. builder_.add_fused_activation_function(fused_activation_function);
  4549. return builder_.Finish();
  4550. }
  4551. struct TopKV2Options FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4552. typedef TopKV2OptionsBuilder Builder;
  4553. bool Verify(::flatbuffers::Verifier &verifier) const {
  4554. return VerifyTableStart(verifier) &&
  4555. verifier.EndTable();
  4556. }
  4557. };
  4558. struct TopKV2OptionsBuilder {
  4559. typedef TopKV2Options Table;
  4560. ::flatbuffers::FlatBufferBuilder &fbb_;
  4561. ::flatbuffers::uoffset_t start_;
  4562. explicit TopKV2OptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4563. : fbb_(_fbb) {
  4564. start_ = fbb_.StartTable();
  4565. }
  4566. ::flatbuffers::Offset<TopKV2Options> Finish() {
  4567. const auto end = fbb_.EndTable(start_);
  4568. auto o = ::flatbuffers::Offset<TopKV2Options>(end);
  4569. return o;
  4570. }
  4571. };
  4572. inline ::flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(
  4573. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4574. TopKV2OptionsBuilder builder_(_fbb);
  4575. return builder_.Finish();
  4576. }
  4577. struct EmbeddingLookupSparseOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4578. typedef EmbeddingLookupSparseOptionsBuilder Builder;
  4579. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4580. VT_COMBINER = 4
  4581. };
  4582. opencv_tflite::CombinerType combiner() const {
  4583. return static_cast<opencv_tflite::CombinerType>(GetField<int8_t>(VT_COMBINER, 0));
  4584. }
  4585. bool Verify(::flatbuffers::Verifier &verifier) const {
  4586. return VerifyTableStart(verifier) &&
  4587. VerifyField<int8_t>(verifier, VT_COMBINER, 1) &&
  4588. verifier.EndTable();
  4589. }
  4590. };
  4591. struct EmbeddingLookupSparseOptionsBuilder {
  4592. typedef EmbeddingLookupSparseOptions Table;
  4593. ::flatbuffers::FlatBufferBuilder &fbb_;
  4594. ::flatbuffers::uoffset_t start_;
  4595. void add_combiner(opencv_tflite::CombinerType combiner) {
  4596. fbb_.AddElement<int8_t>(EmbeddingLookupSparseOptions::VT_COMBINER, static_cast<int8_t>(combiner), 0);
  4597. }
  4598. explicit EmbeddingLookupSparseOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4599. : fbb_(_fbb) {
  4600. start_ = fbb_.StartTable();
  4601. }
  4602. ::flatbuffers::Offset<EmbeddingLookupSparseOptions> Finish() {
  4603. const auto end = fbb_.EndTable(start_);
  4604. auto o = ::flatbuffers::Offset<EmbeddingLookupSparseOptions>(end);
  4605. return o;
  4606. }
  4607. };
  4608. inline ::flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(
  4609. ::flatbuffers::FlatBufferBuilder &_fbb,
  4610. opencv_tflite::CombinerType combiner = opencv_tflite::CombinerType_SUM) {
  4611. EmbeddingLookupSparseOptionsBuilder builder_(_fbb);
  4612. builder_.add_combiner(combiner);
  4613. return builder_.Finish();
  4614. }
  4615. struct GatherOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4616. typedef GatherOptionsBuilder Builder;
  4617. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4618. VT_AXIS = 4,
  4619. VT_BATCH_DIMS = 6
  4620. };
  4621. int32_t axis() const {
  4622. return GetField<int32_t>(VT_AXIS, 0);
  4623. }
  4624. int32_t batch_dims() const {
  4625. return GetField<int32_t>(VT_BATCH_DIMS, 0);
  4626. }
  4627. bool Verify(::flatbuffers::Verifier &verifier) const {
  4628. return VerifyTableStart(verifier) &&
  4629. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  4630. VerifyField<int32_t>(verifier, VT_BATCH_DIMS, 4) &&
  4631. verifier.EndTable();
  4632. }
  4633. };
  4634. struct GatherOptionsBuilder {
  4635. typedef GatherOptions Table;
  4636. ::flatbuffers::FlatBufferBuilder &fbb_;
  4637. ::flatbuffers::uoffset_t start_;
  4638. void add_axis(int32_t axis) {
  4639. fbb_.AddElement<int32_t>(GatherOptions::VT_AXIS, axis, 0);
  4640. }
  4641. void add_batch_dims(int32_t batch_dims) {
  4642. fbb_.AddElement<int32_t>(GatherOptions::VT_BATCH_DIMS, batch_dims, 0);
  4643. }
  4644. explicit GatherOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4645. : fbb_(_fbb) {
  4646. start_ = fbb_.StartTable();
  4647. }
  4648. ::flatbuffers::Offset<GatherOptions> Finish() {
  4649. const auto end = fbb_.EndTable(start_);
  4650. auto o = ::flatbuffers::Offset<GatherOptions>(end);
  4651. return o;
  4652. }
  4653. };
  4654. inline ::flatbuffers::Offset<GatherOptions> CreateGatherOptions(
  4655. ::flatbuffers::FlatBufferBuilder &_fbb,
  4656. int32_t axis = 0,
  4657. int32_t batch_dims = 0) {
  4658. GatherOptionsBuilder builder_(_fbb);
  4659. builder_.add_batch_dims(batch_dims);
  4660. builder_.add_axis(axis);
  4661. return builder_.Finish();
  4662. }
  4663. struct TransposeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4664. typedef TransposeOptionsBuilder Builder;
  4665. bool Verify(::flatbuffers::Verifier &verifier) const {
  4666. return VerifyTableStart(verifier) &&
  4667. verifier.EndTable();
  4668. }
  4669. };
  4670. struct TransposeOptionsBuilder {
  4671. typedef TransposeOptions Table;
  4672. ::flatbuffers::FlatBufferBuilder &fbb_;
  4673. ::flatbuffers::uoffset_t start_;
  4674. explicit TransposeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4675. : fbb_(_fbb) {
  4676. start_ = fbb_.StartTable();
  4677. }
  4678. ::flatbuffers::Offset<TransposeOptions> Finish() {
  4679. const auto end = fbb_.EndTable(start_);
  4680. auto o = ::flatbuffers::Offset<TransposeOptions>(end);
  4681. return o;
  4682. }
  4683. };
  4684. inline ::flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(
  4685. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4686. TransposeOptionsBuilder builder_(_fbb);
  4687. return builder_.Finish();
  4688. }
  4689. struct ExpOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4690. typedef ExpOptionsBuilder Builder;
  4691. bool Verify(::flatbuffers::Verifier &verifier) const {
  4692. return VerifyTableStart(verifier) &&
  4693. verifier.EndTable();
  4694. }
  4695. };
  4696. struct ExpOptionsBuilder {
  4697. typedef ExpOptions Table;
  4698. ::flatbuffers::FlatBufferBuilder &fbb_;
  4699. ::flatbuffers::uoffset_t start_;
  4700. explicit ExpOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4701. : fbb_(_fbb) {
  4702. start_ = fbb_.StartTable();
  4703. }
  4704. ::flatbuffers::Offset<ExpOptions> Finish() {
  4705. const auto end = fbb_.EndTable(start_);
  4706. auto o = ::flatbuffers::Offset<ExpOptions>(end);
  4707. return o;
  4708. }
  4709. };
  4710. inline ::flatbuffers::Offset<ExpOptions> CreateExpOptions(
  4711. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4712. ExpOptionsBuilder builder_(_fbb);
  4713. return builder_.Finish();
  4714. }
  4715. struct CosOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4716. typedef CosOptionsBuilder Builder;
  4717. bool Verify(::flatbuffers::Verifier &verifier) const {
  4718. return VerifyTableStart(verifier) &&
  4719. verifier.EndTable();
  4720. }
  4721. };
  4722. struct CosOptionsBuilder {
  4723. typedef CosOptions Table;
  4724. ::flatbuffers::FlatBufferBuilder &fbb_;
  4725. ::flatbuffers::uoffset_t start_;
  4726. explicit CosOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4727. : fbb_(_fbb) {
  4728. start_ = fbb_.StartTable();
  4729. }
  4730. ::flatbuffers::Offset<CosOptions> Finish() {
  4731. const auto end = fbb_.EndTable(start_);
  4732. auto o = ::flatbuffers::Offset<CosOptions>(end);
  4733. return o;
  4734. }
  4735. };
  4736. inline ::flatbuffers::Offset<CosOptions> CreateCosOptions(
  4737. ::flatbuffers::FlatBufferBuilder &_fbb) {
  4738. CosOptionsBuilder builder_(_fbb);
  4739. return builder_.Finish();
  4740. }
  4741. struct ReducerOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4742. typedef ReducerOptionsBuilder Builder;
  4743. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4744. VT_KEEP_DIMS = 4
  4745. };
  4746. bool keep_dims() const {
  4747. return GetField<uint8_t>(VT_KEEP_DIMS, 0) != 0;
  4748. }
  4749. bool Verify(::flatbuffers::Verifier &verifier) const {
  4750. return VerifyTableStart(verifier) &&
  4751. VerifyField<uint8_t>(verifier, VT_KEEP_DIMS, 1) &&
  4752. verifier.EndTable();
  4753. }
  4754. };
  4755. struct ReducerOptionsBuilder {
  4756. typedef ReducerOptions Table;
  4757. ::flatbuffers::FlatBufferBuilder &fbb_;
  4758. ::flatbuffers::uoffset_t start_;
  4759. void add_keep_dims(bool keep_dims) {
  4760. fbb_.AddElement<uint8_t>(ReducerOptions::VT_KEEP_DIMS, static_cast<uint8_t>(keep_dims), 0);
  4761. }
  4762. explicit ReducerOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4763. : fbb_(_fbb) {
  4764. start_ = fbb_.StartTable();
  4765. }
  4766. ::flatbuffers::Offset<ReducerOptions> Finish() {
  4767. const auto end = fbb_.EndTable(start_);
  4768. auto o = ::flatbuffers::Offset<ReducerOptions>(end);
  4769. return o;
  4770. }
  4771. };
  4772. inline ::flatbuffers::Offset<ReducerOptions> CreateReducerOptions(
  4773. ::flatbuffers::FlatBufferBuilder &_fbb,
  4774. bool keep_dims = false) {
  4775. ReducerOptionsBuilder builder_(_fbb);
  4776. builder_.add_keep_dims(keep_dims);
  4777. return builder_.Finish();
  4778. }
  4779. struct SqueezeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4780. typedef SqueezeOptionsBuilder Builder;
  4781. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4782. VT_SQUEEZE_DIMS = 4
  4783. };
  4784. const ::flatbuffers::Vector<int32_t> *squeeze_dims() const {
  4785. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_SQUEEZE_DIMS);
  4786. }
  4787. bool Verify(::flatbuffers::Verifier &verifier) const {
  4788. return VerifyTableStart(verifier) &&
  4789. VerifyOffset(verifier, VT_SQUEEZE_DIMS) &&
  4790. verifier.VerifyVector(squeeze_dims()) &&
  4791. verifier.EndTable();
  4792. }
  4793. };
  4794. struct SqueezeOptionsBuilder {
  4795. typedef SqueezeOptions Table;
  4796. ::flatbuffers::FlatBufferBuilder &fbb_;
  4797. ::flatbuffers::uoffset_t start_;
  4798. void add_squeeze_dims(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> squeeze_dims) {
  4799. fbb_.AddOffset(SqueezeOptions::VT_SQUEEZE_DIMS, squeeze_dims);
  4800. }
  4801. explicit SqueezeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4802. : fbb_(_fbb) {
  4803. start_ = fbb_.StartTable();
  4804. }
  4805. ::flatbuffers::Offset<SqueezeOptions> Finish() {
  4806. const auto end = fbb_.EndTable(start_);
  4807. auto o = ::flatbuffers::Offset<SqueezeOptions>(end);
  4808. return o;
  4809. }
  4810. };
  4811. inline ::flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(
  4812. ::flatbuffers::FlatBufferBuilder &_fbb,
  4813. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> squeeze_dims = 0) {
  4814. SqueezeOptionsBuilder builder_(_fbb);
  4815. builder_.add_squeeze_dims(squeeze_dims);
  4816. return builder_.Finish();
  4817. }
  4818. inline ::flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptionsDirect(
  4819. ::flatbuffers::FlatBufferBuilder &_fbb,
  4820. const std::vector<int32_t> *squeeze_dims = nullptr) {
  4821. auto squeeze_dims__ = squeeze_dims ? _fbb.CreateVector<int32_t>(*squeeze_dims) : 0;
  4822. return opencv_tflite::CreateSqueezeOptions(
  4823. _fbb,
  4824. squeeze_dims__);
  4825. }
  4826. struct SplitOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4827. typedef SplitOptionsBuilder Builder;
  4828. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4829. VT_NUM_SPLITS = 4
  4830. };
  4831. int32_t num_splits() const {
  4832. return GetField<int32_t>(VT_NUM_SPLITS, 0);
  4833. }
  4834. bool Verify(::flatbuffers::Verifier &verifier) const {
  4835. return VerifyTableStart(verifier) &&
  4836. VerifyField<int32_t>(verifier, VT_NUM_SPLITS, 4) &&
  4837. verifier.EndTable();
  4838. }
  4839. };
  4840. struct SplitOptionsBuilder {
  4841. typedef SplitOptions Table;
  4842. ::flatbuffers::FlatBufferBuilder &fbb_;
  4843. ::flatbuffers::uoffset_t start_;
  4844. void add_num_splits(int32_t num_splits) {
  4845. fbb_.AddElement<int32_t>(SplitOptions::VT_NUM_SPLITS, num_splits, 0);
  4846. }
  4847. explicit SplitOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4848. : fbb_(_fbb) {
  4849. start_ = fbb_.StartTable();
  4850. }
  4851. ::flatbuffers::Offset<SplitOptions> Finish() {
  4852. const auto end = fbb_.EndTable(start_);
  4853. auto o = ::flatbuffers::Offset<SplitOptions>(end);
  4854. return o;
  4855. }
  4856. };
  4857. inline ::flatbuffers::Offset<SplitOptions> CreateSplitOptions(
  4858. ::flatbuffers::FlatBufferBuilder &_fbb,
  4859. int32_t num_splits = 0) {
  4860. SplitOptionsBuilder builder_(_fbb);
  4861. builder_.add_num_splits(num_splits);
  4862. return builder_.Finish();
  4863. }
  4864. struct SplitVOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4865. typedef SplitVOptionsBuilder Builder;
  4866. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4867. VT_NUM_SPLITS = 4
  4868. };
  4869. int32_t num_splits() const {
  4870. return GetField<int32_t>(VT_NUM_SPLITS, 0);
  4871. }
  4872. bool Verify(::flatbuffers::Verifier &verifier) const {
  4873. return VerifyTableStart(verifier) &&
  4874. VerifyField<int32_t>(verifier, VT_NUM_SPLITS, 4) &&
  4875. verifier.EndTable();
  4876. }
  4877. };
  4878. struct SplitVOptionsBuilder {
  4879. typedef SplitVOptions Table;
  4880. ::flatbuffers::FlatBufferBuilder &fbb_;
  4881. ::flatbuffers::uoffset_t start_;
  4882. void add_num_splits(int32_t num_splits) {
  4883. fbb_.AddElement<int32_t>(SplitVOptions::VT_NUM_SPLITS, num_splits, 0);
  4884. }
  4885. explicit SplitVOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4886. : fbb_(_fbb) {
  4887. start_ = fbb_.StartTable();
  4888. }
  4889. ::flatbuffers::Offset<SplitVOptions> Finish() {
  4890. const auto end = fbb_.EndTable(start_);
  4891. auto o = ::flatbuffers::Offset<SplitVOptions>(end);
  4892. return o;
  4893. }
  4894. };
  4895. inline ::flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(
  4896. ::flatbuffers::FlatBufferBuilder &_fbb,
  4897. int32_t num_splits = 0) {
  4898. SplitVOptionsBuilder builder_(_fbb);
  4899. builder_.add_num_splits(num_splits);
  4900. return builder_.Finish();
  4901. }
  4902. struct StridedSliceOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4903. typedef StridedSliceOptionsBuilder Builder;
  4904. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4905. VT_BEGIN_MASK = 4,
  4906. VT_END_MASK = 6,
  4907. VT_ELLIPSIS_MASK = 8,
  4908. VT_NEW_AXIS_MASK = 10,
  4909. VT_SHRINK_AXIS_MASK = 12
  4910. };
  4911. int32_t begin_mask() const {
  4912. return GetField<int32_t>(VT_BEGIN_MASK, 0);
  4913. }
  4914. int32_t end_mask() const {
  4915. return GetField<int32_t>(VT_END_MASK, 0);
  4916. }
  4917. int32_t ellipsis_mask() const {
  4918. return GetField<int32_t>(VT_ELLIPSIS_MASK, 0);
  4919. }
  4920. int32_t new_axis_mask() const {
  4921. return GetField<int32_t>(VT_NEW_AXIS_MASK, 0);
  4922. }
  4923. int32_t shrink_axis_mask() const {
  4924. return GetField<int32_t>(VT_SHRINK_AXIS_MASK, 0);
  4925. }
  4926. bool Verify(::flatbuffers::Verifier &verifier) const {
  4927. return VerifyTableStart(verifier) &&
  4928. VerifyField<int32_t>(verifier, VT_BEGIN_MASK, 4) &&
  4929. VerifyField<int32_t>(verifier, VT_END_MASK, 4) &&
  4930. VerifyField<int32_t>(verifier, VT_ELLIPSIS_MASK, 4) &&
  4931. VerifyField<int32_t>(verifier, VT_NEW_AXIS_MASK, 4) &&
  4932. VerifyField<int32_t>(verifier, VT_SHRINK_AXIS_MASK, 4) &&
  4933. verifier.EndTable();
  4934. }
  4935. };
  4936. struct StridedSliceOptionsBuilder {
  4937. typedef StridedSliceOptions Table;
  4938. ::flatbuffers::FlatBufferBuilder &fbb_;
  4939. ::flatbuffers::uoffset_t start_;
  4940. void add_begin_mask(int32_t begin_mask) {
  4941. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_BEGIN_MASK, begin_mask, 0);
  4942. }
  4943. void add_end_mask(int32_t end_mask) {
  4944. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_END_MASK, end_mask, 0);
  4945. }
  4946. void add_ellipsis_mask(int32_t ellipsis_mask) {
  4947. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_ELLIPSIS_MASK, ellipsis_mask, 0);
  4948. }
  4949. void add_new_axis_mask(int32_t new_axis_mask) {
  4950. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_NEW_AXIS_MASK, new_axis_mask, 0);
  4951. }
  4952. void add_shrink_axis_mask(int32_t shrink_axis_mask) {
  4953. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_SHRINK_AXIS_MASK, shrink_axis_mask, 0);
  4954. }
  4955. explicit StridedSliceOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4956. : fbb_(_fbb) {
  4957. start_ = fbb_.StartTable();
  4958. }
  4959. ::flatbuffers::Offset<StridedSliceOptions> Finish() {
  4960. const auto end = fbb_.EndTable(start_);
  4961. auto o = ::flatbuffers::Offset<StridedSliceOptions>(end);
  4962. return o;
  4963. }
  4964. };
  4965. inline ::flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(
  4966. ::flatbuffers::FlatBufferBuilder &_fbb,
  4967. int32_t begin_mask = 0,
  4968. int32_t end_mask = 0,
  4969. int32_t ellipsis_mask = 0,
  4970. int32_t new_axis_mask = 0,
  4971. int32_t shrink_axis_mask = 0) {
  4972. StridedSliceOptionsBuilder builder_(_fbb);
  4973. builder_.add_shrink_axis_mask(shrink_axis_mask);
  4974. builder_.add_new_axis_mask(new_axis_mask);
  4975. builder_.add_ellipsis_mask(ellipsis_mask);
  4976. builder_.add_end_mask(end_mask);
  4977. builder_.add_begin_mask(begin_mask);
  4978. return builder_.Finish();
  4979. }
  4980. struct LogSoftmaxOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  4981. typedef LogSoftmaxOptionsBuilder Builder;
  4982. bool Verify(::flatbuffers::Verifier &verifier) const {
  4983. return VerifyTableStart(verifier) &&
  4984. verifier.EndTable();
  4985. }
  4986. };
  4987. struct LogSoftmaxOptionsBuilder {
  4988. typedef LogSoftmaxOptions Table;
  4989. ::flatbuffers::FlatBufferBuilder &fbb_;
  4990. ::flatbuffers::uoffset_t start_;
  4991. explicit LogSoftmaxOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  4992. : fbb_(_fbb) {
  4993. start_ = fbb_.StartTable();
  4994. }
  4995. ::flatbuffers::Offset<LogSoftmaxOptions> Finish() {
  4996. const auto end = fbb_.EndTable(start_);
  4997. auto o = ::flatbuffers::Offset<LogSoftmaxOptions>(end);
  4998. return o;
  4999. }
  5000. };
  5001. inline ::flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(
  5002. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5003. LogSoftmaxOptionsBuilder builder_(_fbb);
  5004. return builder_.Finish();
  5005. }
  5006. struct CastOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5007. typedef CastOptionsBuilder Builder;
  5008. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5009. VT_IN_DATA_TYPE = 4,
  5010. VT_OUT_DATA_TYPE = 6
  5011. };
  5012. opencv_tflite::TensorType in_data_type() const {
  5013. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_IN_DATA_TYPE, 0));
  5014. }
  5015. opencv_tflite::TensorType out_data_type() const {
  5016. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_OUT_DATA_TYPE, 0));
  5017. }
  5018. bool Verify(::flatbuffers::Verifier &verifier) const {
  5019. return VerifyTableStart(verifier) &&
  5020. VerifyField<int8_t>(verifier, VT_IN_DATA_TYPE, 1) &&
  5021. VerifyField<int8_t>(verifier, VT_OUT_DATA_TYPE, 1) &&
  5022. verifier.EndTable();
  5023. }
  5024. };
  5025. struct CastOptionsBuilder {
  5026. typedef CastOptions Table;
  5027. ::flatbuffers::FlatBufferBuilder &fbb_;
  5028. ::flatbuffers::uoffset_t start_;
  5029. void add_in_data_type(opencv_tflite::TensorType in_data_type) {
  5030. fbb_.AddElement<int8_t>(CastOptions::VT_IN_DATA_TYPE, static_cast<int8_t>(in_data_type), 0);
  5031. }
  5032. void add_out_data_type(opencv_tflite::TensorType out_data_type) {
  5033. fbb_.AddElement<int8_t>(CastOptions::VT_OUT_DATA_TYPE, static_cast<int8_t>(out_data_type), 0);
  5034. }
  5035. explicit CastOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5036. : fbb_(_fbb) {
  5037. start_ = fbb_.StartTable();
  5038. }
  5039. ::flatbuffers::Offset<CastOptions> Finish() {
  5040. const auto end = fbb_.EndTable(start_);
  5041. auto o = ::flatbuffers::Offset<CastOptions>(end);
  5042. return o;
  5043. }
  5044. };
  5045. inline ::flatbuffers::Offset<CastOptions> CreateCastOptions(
  5046. ::flatbuffers::FlatBufferBuilder &_fbb,
  5047. opencv_tflite::TensorType in_data_type = opencv_tflite::TensorType_FLOAT32,
  5048. opencv_tflite::TensorType out_data_type = opencv_tflite::TensorType_FLOAT32) {
  5049. CastOptionsBuilder builder_(_fbb);
  5050. builder_.add_out_data_type(out_data_type);
  5051. builder_.add_in_data_type(in_data_type);
  5052. return builder_.Finish();
  5053. }
  5054. struct DequantizeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5055. typedef DequantizeOptionsBuilder Builder;
  5056. bool Verify(::flatbuffers::Verifier &verifier) const {
  5057. return VerifyTableStart(verifier) &&
  5058. verifier.EndTable();
  5059. }
  5060. };
  5061. struct DequantizeOptionsBuilder {
  5062. typedef DequantizeOptions Table;
  5063. ::flatbuffers::FlatBufferBuilder &fbb_;
  5064. ::flatbuffers::uoffset_t start_;
  5065. explicit DequantizeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5066. : fbb_(_fbb) {
  5067. start_ = fbb_.StartTable();
  5068. }
  5069. ::flatbuffers::Offset<DequantizeOptions> Finish() {
  5070. const auto end = fbb_.EndTable(start_);
  5071. auto o = ::flatbuffers::Offset<DequantizeOptions>(end);
  5072. return o;
  5073. }
  5074. };
  5075. inline ::flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(
  5076. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5077. DequantizeOptionsBuilder builder_(_fbb);
  5078. return builder_.Finish();
  5079. }
  5080. struct MaximumMinimumOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5081. typedef MaximumMinimumOptionsBuilder Builder;
  5082. bool Verify(::flatbuffers::Verifier &verifier) const {
  5083. return VerifyTableStart(verifier) &&
  5084. verifier.EndTable();
  5085. }
  5086. };
  5087. struct MaximumMinimumOptionsBuilder {
  5088. typedef MaximumMinimumOptions Table;
  5089. ::flatbuffers::FlatBufferBuilder &fbb_;
  5090. ::flatbuffers::uoffset_t start_;
  5091. explicit MaximumMinimumOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5092. : fbb_(_fbb) {
  5093. start_ = fbb_.StartTable();
  5094. }
  5095. ::flatbuffers::Offset<MaximumMinimumOptions> Finish() {
  5096. const auto end = fbb_.EndTable(start_);
  5097. auto o = ::flatbuffers::Offset<MaximumMinimumOptions>(end);
  5098. return o;
  5099. }
  5100. };
  5101. inline ::flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(
  5102. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5103. MaximumMinimumOptionsBuilder builder_(_fbb);
  5104. return builder_.Finish();
  5105. }
  5106. struct TileOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5107. typedef TileOptionsBuilder Builder;
  5108. bool Verify(::flatbuffers::Verifier &verifier) const {
  5109. return VerifyTableStart(verifier) &&
  5110. verifier.EndTable();
  5111. }
  5112. };
  5113. struct TileOptionsBuilder {
  5114. typedef TileOptions Table;
  5115. ::flatbuffers::FlatBufferBuilder &fbb_;
  5116. ::flatbuffers::uoffset_t start_;
  5117. explicit TileOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5118. : fbb_(_fbb) {
  5119. start_ = fbb_.StartTable();
  5120. }
  5121. ::flatbuffers::Offset<TileOptions> Finish() {
  5122. const auto end = fbb_.EndTable(start_);
  5123. auto o = ::flatbuffers::Offset<TileOptions>(end);
  5124. return o;
  5125. }
  5126. };
  5127. inline ::flatbuffers::Offset<TileOptions> CreateTileOptions(
  5128. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5129. TileOptionsBuilder builder_(_fbb);
  5130. return builder_.Finish();
  5131. }
  5132. struct ArgMaxOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5133. typedef ArgMaxOptionsBuilder Builder;
  5134. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5135. VT_OUTPUT_TYPE = 4
  5136. };
  5137. opencv_tflite::TensorType output_type() const {
  5138. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
  5139. }
  5140. bool Verify(::flatbuffers::Verifier &verifier) const {
  5141. return VerifyTableStart(verifier) &&
  5142. VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE, 1) &&
  5143. verifier.EndTable();
  5144. }
  5145. };
  5146. struct ArgMaxOptionsBuilder {
  5147. typedef ArgMaxOptions Table;
  5148. ::flatbuffers::FlatBufferBuilder &fbb_;
  5149. ::flatbuffers::uoffset_t start_;
  5150. void add_output_type(opencv_tflite::TensorType output_type) {
  5151. fbb_.AddElement<int8_t>(ArgMaxOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
  5152. }
  5153. explicit ArgMaxOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5154. : fbb_(_fbb) {
  5155. start_ = fbb_.StartTable();
  5156. }
  5157. ::flatbuffers::Offset<ArgMaxOptions> Finish() {
  5158. const auto end = fbb_.EndTable(start_);
  5159. auto o = ::flatbuffers::Offset<ArgMaxOptions>(end);
  5160. return o;
  5161. }
  5162. };
  5163. inline ::flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(
  5164. ::flatbuffers::FlatBufferBuilder &_fbb,
  5165. opencv_tflite::TensorType output_type = opencv_tflite::TensorType_FLOAT32) {
  5166. ArgMaxOptionsBuilder builder_(_fbb);
  5167. builder_.add_output_type(output_type);
  5168. return builder_.Finish();
  5169. }
  5170. struct ArgMinOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5171. typedef ArgMinOptionsBuilder Builder;
  5172. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5173. VT_OUTPUT_TYPE = 4
  5174. };
  5175. opencv_tflite::TensorType output_type() const {
  5176. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
  5177. }
  5178. bool Verify(::flatbuffers::Verifier &verifier) const {
  5179. return VerifyTableStart(verifier) &&
  5180. VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE, 1) &&
  5181. verifier.EndTable();
  5182. }
  5183. };
  5184. struct ArgMinOptionsBuilder {
  5185. typedef ArgMinOptions Table;
  5186. ::flatbuffers::FlatBufferBuilder &fbb_;
  5187. ::flatbuffers::uoffset_t start_;
  5188. void add_output_type(opencv_tflite::TensorType output_type) {
  5189. fbb_.AddElement<int8_t>(ArgMinOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
  5190. }
  5191. explicit ArgMinOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5192. : fbb_(_fbb) {
  5193. start_ = fbb_.StartTable();
  5194. }
  5195. ::flatbuffers::Offset<ArgMinOptions> Finish() {
  5196. const auto end = fbb_.EndTable(start_);
  5197. auto o = ::flatbuffers::Offset<ArgMinOptions>(end);
  5198. return o;
  5199. }
  5200. };
  5201. inline ::flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(
  5202. ::flatbuffers::FlatBufferBuilder &_fbb,
  5203. opencv_tflite::TensorType output_type = opencv_tflite::TensorType_FLOAT32) {
  5204. ArgMinOptionsBuilder builder_(_fbb);
  5205. builder_.add_output_type(output_type);
  5206. return builder_.Finish();
  5207. }
  5208. struct GreaterOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5209. typedef GreaterOptionsBuilder Builder;
  5210. bool Verify(::flatbuffers::Verifier &verifier) const {
  5211. return VerifyTableStart(verifier) &&
  5212. verifier.EndTable();
  5213. }
  5214. };
  5215. struct GreaterOptionsBuilder {
  5216. typedef GreaterOptions Table;
  5217. ::flatbuffers::FlatBufferBuilder &fbb_;
  5218. ::flatbuffers::uoffset_t start_;
  5219. explicit GreaterOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5220. : fbb_(_fbb) {
  5221. start_ = fbb_.StartTable();
  5222. }
  5223. ::flatbuffers::Offset<GreaterOptions> Finish() {
  5224. const auto end = fbb_.EndTable(start_);
  5225. auto o = ::flatbuffers::Offset<GreaterOptions>(end);
  5226. return o;
  5227. }
  5228. };
  5229. inline ::flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(
  5230. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5231. GreaterOptionsBuilder builder_(_fbb);
  5232. return builder_.Finish();
  5233. }
  5234. struct GreaterEqualOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5235. typedef GreaterEqualOptionsBuilder Builder;
  5236. bool Verify(::flatbuffers::Verifier &verifier) const {
  5237. return VerifyTableStart(verifier) &&
  5238. verifier.EndTable();
  5239. }
  5240. };
  5241. struct GreaterEqualOptionsBuilder {
  5242. typedef GreaterEqualOptions Table;
  5243. ::flatbuffers::FlatBufferBuilder &fbb_;
  5244. ::flatbuffers::uoffset_t start_;
  5245. explicit GreaterEqualOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5246. : fbb_(_fbb) {
  5247. start_ = fbb_.StartTable();
  5248. }
  5249. ::flatbuffers::Offset<GreaterEqualOptions> Finish() {
  5250. const auto end = fbb_.EndTable(start_);
  5251. auto o = ::flatbuffers::Offset<GreaterEqualOptions>(end);
  5252. return o;
  5253. }
  5254. };
  5255. inline ::flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(
  5256. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5257. GreaterEqualOptionsBuilder builder_(_fbb);
  5258. return builder_.Finish();
  5259. }
  5260. struct LessOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5261. typedef LessOptionsBuilder Builder;
  5262. bool Verify(::flatbuffers::Verifier &verifier) const {
  5263. return VerifyTableStart(verifier) &&
  5264. verifier.EndTable();
  5265. }
  5266. };
  5267. struct LessOptionsBuilder {
  5268. typedef LessOptions Table;
  5269. ::flatbuffers::FlatBufferBuilder &fbb_;
  5270. ::flatbuffers::uoffset_t start_;
  5271. explicit LessOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5272. : fbb_(_fbb) {
  5273. start_ = fbb_.StartTable();
  5274. }
  5275. ::flatbuffers::Offset<LessOptions> Finish() {
  5276. const auto end = fbb_.EndTable(start_);
  5277. auto o = ::flatbuffers::Offset<LessOptions>(end);
  5278. return o;
  5279. }
  5280. };
  5281. inline ::flatbuffers::Offset<LessOptions> CreateLessOptions(
  5282. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5283. LessOptionsBuilder builder_(_fbb);
  5284. return builder_.Finish();
  5285. }
  5286. struct LessEqualOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5287. typedef LessEqualOptionsBuilder Builder;
  5288. bool Verify(::flatbuffers::Verifier &verifier) const {
  5289. return VerifyTableStart(verifier) &&
  5290. verifier.EndTable();
  5291. }
  5292. };
  5293. struct LessEqualOptionsBuilder {
  5294. typedef LessEqualOptions Table;
  5295. ::flatbuffers::FlatBufferBuilder &fbb_;
  5296. ::flatbuffers::uoffset_t start_;
  5297. explicit LessEqualOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5298. : fbb_(_fbb) {
  5299. start_ = fbb_.StartTable();
  5300. }
  5301. ::flatbuffers::Offset<LessEqualOptions> Finish() {
  5302. const auto end = fbb_.EndTable(start_);
  5303. auto o = ::flatbuffers::Offset<LessEqualOptions>(end);
  5304. return o;
  5305. }
  5306. };
  5307. inline ::flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(
  5308. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5309. LessEqualOptionsBuilder builder_(_fbb);
  5310. return builder_.Finish();
  5311. }
  5312. struct NegOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5313. typedef NegOptionsBuilder Builder;
  5314. bool Verify(::flatbuffers::Verifier &verifier) const {
  5315. return VerifyTableStart(verifier) &&
  5316. verifier.EndTable();
  5317. }
  5318. };
  5319. struct NegOptionsBuilder {
  5320. typedef NegOptions Table;
  5321. ::flatbuffers::FlatBufferBuilder &fbb_;
  5322. ::flatbuffers::uoffset_t start_;
  5323. explicit NegOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5324. : fbb_(_fbb) {
  5325. start_ = fbb_.StartTable();
  5326. }
  5327. ::flatbuffers::Offset<NegOptions> Finish() {
  5328. const auto end = fbb_.EndTable(start_);
  5329. auto o = ::flatbuffers::Offset<NegOptions>(end);
  5330. return o;
  5331. }
  5332. };
  5333. inline ::flatbuffers::Offset<NegOptions> CreateNegOptions(
  5334. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5335. NegOptionsBuilder builder_(_fbb);
  5336. return builder_.Finish();
  5337. }
  5338. struct SelectOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5339. typedef SelectOptionsBuilder Builder;
  5340. bool Verify(::flatbuffers::Verifier &verifier) const {
  5341. return VerifyTableStart(verifier) &&
  5342. verifier.EndTable();
  5343. }
  5344. };
  5345. struct SelectOptionsBuilder {
  5346. typedef SelectOptions Table;
  5347. ::flatbuffers::FlatBufferBuilder &fbb_;
  5348. ::flatbuffers::uoffset_t start_;
  5349. explicit SelectOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5350. : fbb_(_fbb) {
  5351. start_ = fbb_.StartTable();
  5352. }
  5353. ::flatbuffers::Offset<SelectOptions> Finish() {
  5354. const auto end = fbb_.EndTable(start_);
  5355. auto o = ::flatbuffers::Offset<SelectOptions>(end);
  5356. return o;
  5357. }
  5358. };
  5359. inline ::flatbuffers::Offset<SelectOptions> CreateSelectOptions(
  5360. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5361. SelectOptionsBuilder builder_(_fbb);
  5362. return builder_.Finish();
  5363. }
  5364. struct SliceOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5365. typedef SliceOptionsBuilder Builder;
  5366. bool Verify(::flatbuffers::Verifier &verifier) const {
  5367. return VerifyTableStart(verifier) &&
  5368. verifier.EndTable();
  5369. }
  5370. };
  5371. struct SliceOptionsBuilder {
  5372. typedef SliceOptions Table;
  5373. ::flatbuffers::FlatBufferBuilder &fbb_;
  5374. ::flatbuffers::uoffset_t start_;
  5375. explicit SliceOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5376. : fbb_(_fbb) {
  5377. start_ = fbb_.StartTable();
  5378. }
  5379. ::flatbuffers::Offset<SliceOptions> Finish() {
  5380. const auto end = fbb_.EndTable(start_);
  5381. auto o = ::flatbuffers::Offset<SliceOptions>(end);
  5382. return o;
  5383. }
  5384. };
  5385. inline ::flatbuffers::Offset<SliceOptions> CreateSliceOptions(
  5386. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5387. SliceOptionsBuilder builder_(_fbb);
  5388. return builder_.Finish();
  5389. }
  5390. struct TransposeConvOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5391. typedef TransposeConvOptionsBuilder Builder;
  5392. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5393. VT_PADDING = 4,
  5394. VT_STRIDE_W = 6,
  5395. VT_STRIDE_H = 8,
  5396. VT_FUSED_ACTIVATION_FUNCTION = 10
  5397. };
  5398. opencv_tflite::Padding padding() const {
  5399. return static_cast<opencv_tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  5400. }
  5401. int32_t stride_w() const {
  5402. return GetField<int32_t>(VT_STRIDE_W, 0);
  5403. }
  5404. int32_t stride_h() const {
  5405. return GetField<int32_t>(VT_STRIDE_H, 0);
  5406. }
  5407. opencv_tflite::ActivationFunctionType fused_activation_function() const {
  5408. return static_cast<opencv_tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5409. }
  5410. bool Verify(::flatbuffers::Verifier &verifier) const {
  5411. return VerifyTableStart(verifier) &&
  5412. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  5413. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  5414. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  5415. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5416. verifier.EndTable();
  5417. }
  5418. };
  5419. struct TransposeConvOptionsBuilder {
  5420. typedef TransposeConvOptions Table;
  5421. ::flatbuffers::FlatBufferBuilder &fbb_;
  5422. ::flatbuffers::uoffset_t start_;
  5423. void add_padding(opencv_tflite::Padding padding) {
  5424. fbb_.AddElement<int8_t>(TransposeConvOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  5425. }
  5426. void add_stride_w(int32_t stride_w) {
  5427. fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_W, stride_w, 0);
  5428. }
  5429. void add_stride_h(int32_t stride_h) {
  5430. fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_H, stride_h, 0);
  5431. }
  5432. void add_fused_activation_function(opencv_tflite::ActivationFunctionType fused_activation_function) {
  5433. fbb_.AddElement<int8_t>(TransposeConvOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5434. }
  5435. explicit TransposeConvOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5436. : fbb_(_fbb) {
  5437. start_ = fbb_.StartTable();
  5438. }
  5439. ::flatbuffers::Offset<TransposeConvOptions> Finish() {
  5440. const auto end = fbb_.EndTable(start_);
  5441. auto o = ::flatbuffers::Offset<TransposeConvOptions>(end);
  5442. return o;
  5443. }
  5444. };
  5445. inline ::flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(
  5446. ::flatbuffers::FlatBufferBuilder &_fbb,
  5447. opencv_tflite::Padding padding = opencv_tflite::Padding_SAME,
  5448. int32_t stride_w = 0,
  5449. int32_t stride_h = 0,
  5450. opencv_tflite::ActivationFunctionType fused_activation_function = opencv_tflite::ActivationFunctionType_NONE) {
  5451. TransposeConvOptionsBuilder builder_(_fbb);
  5452. builder_.add_stride_h(stride_h);
  5453. builder_.add_stride_w(stride_w);
  5454. builder_.add_fused_activation_function(fused_activation_function);
  5455. builder_.add_padding(padding);
  5456. return builder_.Finish();
  5457. }
  5458. struct ExpandDimsOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5459. typedef ExpandDimsOptionsBuilder Builder;
  5460. bool Verify(::flatbuffers::Verifier &verifier) const {
  5461. return VerifyTableStart(verifier) &&
  5462. verifier.EndTable();
  5463. }
  5464. };
  5465. struct ExpandDimsOptionsBuilder {
  5466. typedef ExpandDimsOptions Table;
  5467. ::flatbuffers::FlatBufferBuilder &fbb_;
  5468. ::flatbuffers::uoffset_t start_;
  5469. explicit ExpandDimsOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5470. : fbb_(_fbb) {
  5471. start_ = fbb_.StartTable();
  5472. }
  5473. ::flatbuffers::Offset<ExpandDimsOptions> Finish() {
  5474. const auto end = fbb_.EndTable(start_);
  5475. auto o = ::flatbuffers::Offset<ExpandDimsOptions>(end);
  5476. return o;
  5477. }
  5478. };
  5479. inline ::flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(
  5480. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5481. ExpandDimsOptionsBuilder builder_(_fbb);
  5482. return builder_.Finish();
  5483. }
  5484. struct SparseToDenseOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5485. typedef SparseToDenseOptionsBuilder Builder;
  5486. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5487. VT_VALIDATE_INDICES = 4
  5488. };
  5489. bool validate_indices() const {
  5490. return GetField<uint8_t>(VT_VALIDATE_INDICES, 0) != 0;
  5491. }
  5492. bool Verify(::flatbuffers::Verifier &verifier) const {
  5493. return VerifyTableStart(verifier) &&
  5494. VerifyField<uint8_t>(verifier, VT_VALIDATE_INDICES, 1) &&
  5495. verifier.EndTable();
  5496. }
  5497. };
  5498. struct SparseToDenseOptionsBuilder {
  5499. typedef SparseToDenseOptions Table;
  5500. ::flatbuffers::FlatBufferBuilder &fbb_;
  5501. ::flatbuffers::uoffset_t start_;
  5502. void add_validate_indices(bool validate_indices) {
  5503. fbb_.AddElement<uint8_t>(SparseToDenseOptions::VT_VALIDATE_INDICES, static_cast<uint8_t>(validate_indices), 0);
  5504. }
  5505. explicit SparseToDenseOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5506. : fbb_(_fbb) {
  5507. start_ = fbb_.StartTable();
  5508. }
  5509. ::flatbuffers::Offset<SparseToDenseOptions> Finish() {
  5510. const auto end = fbb_.EndTable(start_);
  5511. auto o = ::flatbuffers::Offset<SparseToDenseOptions>(end);
  5512. return o;
  5513. }
  5514. };
  5515. inline ::flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(
  5516. ::flatbuffers::FlatBufferBuilder &_fbb,
  5517. bool validate_indices = false) {
  5518. SparseToDenseOptionsBuilder builder_(_fbb);
  5519. builder_.add_validate_indices(validate_indices);
  5520. return builder_.Finish();
  5521. }
  5522. struct EqualOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5523. typedef EqualOptionsBuilder Builder;
  5524. bool Verify(::flatbuffers::Verifier &verifier) const {
  5525. return VerifyTableStart(verifier) &&
  5526. verifier.EndTable();
  5527. }
  5528. };
  5529. struct EqualOptionsBuilder {
  5530. typedef EqualOptions Table;
  5531. ::flatbuffers::FlatBufferBuilder &fbb_;
  5532. ::flatbuffers::uoffset_t start_;
  5533. explicit EqualOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5534. : fbb_(_fbb) {
  5535. start_ = fbb_.StartTable();
  5536. }
  5537. ::flatbuffers::Offset<EqualOptions> Finish() {
  5538. const auto end = fbb_.EndTable(start_);
  5539. auto o = ::flatbuffers::Offset<EqualOptions>(end);
  5540. return o;
  5541. }
  5542. };
  5543. inline ::flatbuffers::Offset<EqualOptions> CreateEqualOptions(
  5544. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5545. EqualOptionsBuilder builder_(_fbb);
  5546. return builder_.Finish();
  5547. }
  5548. struct NotEqualOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5549. typedef NotEqualOptionsBuilder Builder;
  5550. bool Verify(::flatbuffers::Verifier &verifier) const {
  5551. return VerifyTableStart(verifier) &&
  5552. verifier.EndTable();
  5553. }
  5554. };
  5555. struct NotEqualOptionsBuilder {
  5556. typedef NotEqualOptions Table;
  5557. ::flatbuffers::FlatBufferBuilder &fbb_;
  5558. ::flatbuffers::uoffset_t start_;
  5559. explicit NotEqualOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5560. : fbb_(_fbb) {
  5561. start_ = fbb_.StartTable();
  5562. }
  5563. ::flatbuffers::Offset<NotEqualOptions> Finish() {
  5564. const auto end = fbb_.EndTable(start_);
  5565. auto o = ::flatbuffers::Offset<NotEqualOptions>(end);
  5566. return o;
  5567. }
  5568. };
  5569. inline ::flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(
  5570. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5571. NotEqualOptionsBuilder builder_(_fbb);
  5572. return builder_.Finish();
  5573. }
  5574. struct ShapeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5575. typedef ShapeOptionsBuilder Builder;
  5576. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5577. VT_OUT_TYPE = 4
  5578. };
  5579. opencv_tflite::TensorType out_type() const {
  5580. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_OUT_TYPE, 0));
  5581. }
  5582. bool Verify(::flatbuffers::Verifier &verifier) const {
  5583. return VerifyTableStart(verifier) &&
  5584. VerifyField<int8_t>(verifier, VT_OUT_TYPE, 1) &&
  5585. verifier.EndTable();
  5586. }
  5587. };
  5588. struct ShapeOptionsBuilder {
  5589. typedef ShapeOptions Table;
  5590. ::flatbuffers::FlatBufferBuilder &fbb_;
  5591. ::flatbuffers::uoffset_t start_;
  5592. void add_out_type(opencv_tflite::TensorType out_type) {
  5593. fbb_.AddElement<int8_t>(ShapeOptions::VT_OUT_TYPE, static_cast<int8_t>(out_type), 0);
  5594. }
  5595. explicit ShapeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5596. : fbb_(_fbb) {
  5597. start_ = fbb_.StartTable();
  5598. }
  5599. ::flatbuffers::Offset<ShapeOptions> Finish() {
  5600. const auto end = fbb_.EndTable(start_);
  5601. auto o = ::flatbuffers::Offset<ShapeOptions>(end);
  5602. return o;
  5603. }
  5604. };
  5605. inline ::flatbuffers::Offset<ShapeOptions> CreateShapeOptions(
  5606. ::flatbuffers::FlatBufferBuilder &_fbb,
  5607. opencv_tflite::TensorType out_type = opencv_tflite::TensorType_FLOAT32) {
  5608. ShapeOptionsBuilder builder_(_fbb);
  5609. builder_.add_out_type(out_type);
  5610. return builder_.Finish();
  5611. }
  5612. struct RankOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5613. typedef RankOptionsBuilder Builder;
  5614. bool Verify(::flatbuffers::Verifier &verifier) const {
  5615. return VerifyTableStart(verifier) &&
  5616. verifier.EndTable();
  5617. }
  5618. };
  5619. struct RankOptionsBuilder {
  5620. typedef RankOptions Table;
  5621. ::flatbuffers::FlatBufferBuilder &fbb_;
  5622. ::flatbuffers::uoffset_t start_;
  5623. explicit RankOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5624. : fbb_(_fbb) {
  5625. start_ = fbb_.StartTable();
  5626. }
  5627. ::flatbuffers::Offset<RankOptions> Finish() {
  5628. const auto end = fbb_.EndTable(start_);
  5629. auto o = ::flatbuffers::Offset<RankOptions>(end);
  5630. return o;
  5631. }
  5632. };
  5633. inline ::flatbuffers::Offset<RankOptions> CreateRankOptions(
  5634. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5635. RankOptionsBuilder builder_(_fbb);
  5636. return builder_.Finish();
  5637. }
  5638. struct PowOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5639. typedef PowOptionsBuilder Builder;
  5640. bool Verify(::flatbuffers::Verifier &verifier) const {
  5641. return VerifyTableStart(verifier) &&
  5642. verifier.EndTable();
  5643. }
  5644. };
  5645. struct PowOptionsBuilder {
  5646. typedef PowOptions Table;
  5647. ::flatbuffers::FlatBufferBuilder &fbb_;
  5648. ::flatbuffers::uoffset_t start_;
  5649. explicit PowOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5650. : fbb_(_fbb) {
  5651. start_ = fbb_.StartTable();
  5652. }
  5653. ::flatbuffers::Offset<PowOptions> Finish() {
  5654. const auto end = fbb_.EndTable(start_);
  5655. auto o = ::flatbuffers::Offset<PowOptions>(end);
  5656. return o;
  5657. }
  5658. };
  5659. inline ::flatbuffers::Offset<PowOptions> CreatePowOptions(
  5660. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5661. PowOptionsBuilder builder_(_fbb);
  5662. return builder_.Finish();
  5663. }
  5664. struct FakeQuantOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5665. typedef FakeQuantOptionsBuilder Builder;
  5666. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5667. VT_MIN = 4,
  5668. VT_MAX = 6,
  5669. VT_NUM_BITS = 8,
  5670. VT_NARROW_RANGE = 10
  5671. };
  5672. float min() const {
  5673. return GetField<float>(VT_MIN, 0.0f);
  5674. }
  5675. float max() const {
  5676. return GetField<float>(VT_MAX, 0.0f);
  5677. }
  5678. int32_t num_bits() const {
  5679. return GetField<int32_t>(VT_NUM_BITS, 0);
  5680. }
  5681. bool narrow_range() const {
  5682. return GetField<uint8_t>(VT_NARROW_RANGE, 0) != 0;
  5683. }
  5684. bool Verify(::flatbuffers::Verifier &verifier) const {
  5685. return VerifyTableStart(verifier) &&
  5686. VerifyField<float>(verifier, VT_MIN, 4) &&
  5687. VerifyField<float>(verifier, VT_MAX, 4) &&
  5688. VerifyField<int32_t>(verifier, VT_NUM_BITS, 4) &&
  5689. VerifyField<uint8_t>(verifier, VT_NARROW_RANGE, 1) &&
  5690. verifier.EndTable();
  5691. }
  5692. };
  5693. struct FakeQuantOptionsBuilder {
  5694. typedef FakeQuantOptions Table;
  5695. ::flatbuffers::FlatBufferBuilder &fbb_;
  5696. ::flatbuffers::uoffset_t start_;
  5697. void add_min(float min) {
  5698. fbb_.AddElement<float>(FakeQuantOptions::VT_MIN, min, 0.0f);
  5699. }
  5700. void add_max(float max) {
  5701. fbb_.AddElement<float>(FakeQuantOptions::VT_MAX, max, 0.0f);
  5702. }
  5703. void add_num_bits(int32_t num_bits) {
  5704. fbb_.AddElement<int32_t>(FakeQuantOptions::VT_NUM_BITS, num_bits, 0);
  5705. }
  5706. void add_narrow_range(bool narrow_range) {
  5707. fbb_.AddElement<uint8_t>(FakeQuantOptions::VT_NARROW_RANGE, static_cast<uint8_t>(narrow_range), 0);
  5708. }
  5709. explicit FakeQuantOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5710. : fbb_(_fbb) {
  5711. start_ = fbb_.StartTable();
  5712. }
  5713. ::flatbuffers::Offset<FakeQuantOptions> Finish() {
  5714. const auto end = fbb_.EndTable(start_);
  5715. auto o = ::flatbuffers::Offset<FakeQuantOptions>(end);
  5716. return o;
  5717. }
  5718. };
  5719. inline ::flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(
  5720. ::flatbuffers::FlatBufferBuilder &_fbb,
  5721. float min = 0.0f,
  5722. float max = 0.0f,
  5723. int32_t num_bits = 0,
  5724. bool narrow_range = false) {
  5725. FakeQuantOptionsBuilder builder_(_fbb);
  5726. builder_.add_num_bits(num_bits);
  5727. builder_.add_max(max);
  5728. builder_.add_min(min);
  5729. builder_.add_narrow_range(narrow_range);
  5730. return builder_.Finish();
  5731. }
  5732. struct PackOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5733. typedef PackOptionsBuilder Builder;
  5734. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5735. VT_VALUES_COUNT = 4,
  5736. VT_AXIS = 6
  5737. };
  5738. int32_t values_count() const {
  5739. return GetField<int32_t>(VT_VALUES_COUNT, 0);
  5740. }
  5741. int32_t axis() const {
  5742. return GetField<int32_t>(VT_AXIS, 0);
  5743. }
  5744. bool Verify(::flatbuffers::Verifier &verifier) const {
  5745. return VerifyTableStart(verifier) &&
  5746. VerifyField<int32_t>(verifier, VT_VALUES_COUNT, 4) &&
  5747. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  5748. verifier.EndTable();
  5749. }
  5750. };
  5751. struct PackOptionsBuilder {
  5752. typedef PackOptions Table;
  5753. ::flatbuffers::FlatBufferBuilder &fbb_;
  5754. ::flatbuffers::uoffset_t start_;
  5755. void add_values_count(int32_t values_count) {
  5756. fbb_.AddElement<int32_t>(PackOptions::VT_VALUES_COUNT, values_count, 0);
  5757. }
  5758. void add_axis(int32_t axis) {
  5759. fbb_.AddElement<int32_t>(PackOptions::VT_AXIS, axis, 0);
  5760. }
  5761. explicit PackOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5762. : fbb_(_fbb) {
  5763. start_ = fbb_.StartTable();
  5764. }
  5765. ::flatbuffers::Offset<PackOptions> Finish() {
  5766. const auto end = fbb_.EndTable(start_);
  5767. auto o = ::flatbuffers::Offset<PackOptions>(end);
  5768. return o;
  5769. }
  5770. };
  5771. inline ::flatbuffers::Offset<PackOptions> CreatePackOptions(
  5772. ::flatbuffers::FlatBufferBuilder &_fbb,
  5773. int32_t values_count = 0,
  5774. int32_t axis = 0) {
  5775. PackOptionsBuilder builder_(_fbb);
  5776. builder_.add_axis(axis);
  5777. builder_.add_values_count(values_count);
  5778. return builder_.Finish();
  5779. }
  5780. struct LogicalOrOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5781. typedef LogicalOrOptionsBuilder Builder;
  5782. bool Verify(::flatbuffers::Verifier &verifier) const {
  5783. return VerifyTableStart(verifier) &&
  5784. verifier.EndTable();
  5785. }
  5786. };
  5787. struct LogicalOrOptionsBuilder {
  5788. typedef LogicalOrOptions Table;
  5789. ::flatbuffers::FlatBufferBuilder &fbb_;
  5790. ::flatbuffers::uoffset_t start_;
  5791. explicit LogicalOrOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5792. : fbb_(_fbb) {
  5793. start_ = fbb_.StartTable();
  5794. }
  5795. ::flatbuffers::Offset<LogicalOrOptions> Finish() {
  5796. const auto end = fbb_.EndTable(start_);
  5797. auto o = ::flatbuffers::Offset<LogicalOrOptions>(end);
  5798. return o;
  5799. }
  5800. };
  5801. inline ::flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(
  5802. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5803. LogicalOrOptionsBuilder builder_(_fbb);
  5804. return builder_.Finish();
  5805. }
  5806. struct OneHotOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5807. typedef OneHotOptionsBuilder Builder;
  5808. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5809. VT_AXIS = 4
  5810. };
  5811. int32_t axis() const {
  5812. return GetField<int32_t>(VT_AXIS, 0);
  5813. }
  5814. bool Verify(::flatbuffers::Verifier &verifier) const {
  5815. return VerifyTableStart(verifier) &&
  5816. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  5817. verifier.EndTable();
  5818. }
  5819. };
  5820. struct OneHotOptionsBuilder {
  5821. typedef OneHotOptions Table;
  5822. ::flatbuffers::FlatBufferBuilder &fbb_;
  5823. ::flatbuffers::uoffset_t start_;
  5824. void add_axis(int32_t axis) {
  5825. fbb_.AddElement<int32_t>(OneHotOptions::VT_AXIS, axis, 0);
  5826. }
  5827. explicit OneHotOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5828. : fbb_(_fbb) {
  5829. start_ = fbb_.StartTable();
  5830. }
  5831. ::flatbuffers::Offset<OneHotOptions> Finish() {
  5832. const auto end = fbb_.EndTable(start_);
  5833. auto o = ::flatbuffers::Offset<OneHotOptions>(end);
  5834. return o;
  5835. }
  5836. };
  5837. inline ::flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(
  5838. ::flatbuffers::FlatBufferBuilder &_fbb,
  5839. int32_t axis = 0) {
  5840. OneHotOptionsBuilder builder_(_fbb);
  5841. builder_.add_axis(axis);
  5842. return builder_.Finish();
  5843. }
  5844. struct AbsOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5845. typedef AbsOptionsBuilder Builder;
  5846. bool Verify(::flatbuffers::Verifier &verifier) const {
  5847. return VerifyTableStart(verifier) &&
  5848. verifier.EndTable();
  5849. }
  5850. };
  5851. struct AbsOptionsBuilder {
  5852. typedef AbsOptions Table;
  5853. ::flatbuffers::FlatBufferBuilder &fbb_;
  5854. ::flatbuffers::uoffset_t start_;
  5855. explicit AbsOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5856. : fbb_(_fbb) {
  5857. start_ = fbb_.StartTable();
  5858. }
  5859. ::flatbuffers::Offset<AbsOptions> Finish() {
  5860. const auto end = fbb_.EndTable(start_);
  5861. auto o = ::flatbuffers::Offset<AbsOptions>(end);
  5862. return o;
  5863. }
  5864. };
  5865. inline ::flatbuffers::Offset<AbsOptions> CreateAbsOptions(
  5866. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5867. AbsOptionsBuilder builder_(_fbb);
  5868. return builder_.Finish();
  5869. }
  5870. struct HardSwishOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5871. typedef HardSwishOptionsBuilder Builder;
  5872. bool Verify(::flatbuffers::Verifier &verifier) const {
  5873. return VerifyTableStart(verifier) &&
  5874. verifier.EndTable();
  5875. }
  5876. };
  5877. struct HardSwishOptionsBuilder {
  5878. typedef HardSwishOptions Table;
  5879. ::flatbuffers::FlatBufferBuilder &fbb_;
  5880. ::flatbuffers::uoffset_t start_;
  5881. explicit HardSwishOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5882. : fbb_(_fbb) {
  5883. start_ = fbb_.StartTable();
  5884. }
  5885. ::flatbuffers::Offset<HardSwishOptions> Finish() {
  5886. const auto end = fbb_.EndTable(start_);
  5887. auto o = ::flatbuffers::Offset<HardSwishOptions>(end);
  5888. return o;
  5889. }
  5890. };
  5891. inline ::flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(
  5892. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5893. HardSwishOptionsBuilder builder_(_fbb);
  5894. return builder_.Finish();
  5895. }
  5896. struct LogicalAndOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5897. typedef LogicalAndOptionsBuilder Builder;
  5898. bool Verify(::flatbuffers::Verifier &verifier) const {
  5899. return VerifyTableStart(verifier) &&
  5900. verifier.EndTable();
  5901. }
  5902. };
  5903. struct LogicalAndOptionsBuilder {
  5904. typedef LogicalAndOptions Table;
  5905. ::flatbuffers::FlatBufferBuilder &fbb_;
  5906. ::flatbuffers::uoffset_t start_;
  5907. explicit LogicalAndOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5908. : fbb_(_fbb) {
  5909. start_ = fbb_.StartTable();
  5910. }
  5911. ::flatbuffers::Offset<LogicalAndOptions> Finish() {
  5912. const auto end = fbb_.EndTable(start_);
  5913. auto o = ::flatbuffers::Offset<LogicalAndOptions>(end);
  5914. return o;
  5915. }
  5916. };
  5917. inline ::flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(
  5918. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5919. LogicalAndOptionsBuilder builder_(_fbb);
  5920. return builder_.Finish();
  5921. }
  5922. struct LogicalNotOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5923. typedef LogicalNotOptionsBuilder Builder;
  5924. bool Verify(::flatbuffers::Verifier &verifier) const {
  5925. return VerifyTableStart(verifier) &&
  5926. verifier.EndTable();
  5927. }
  5928. };
  5929. struct LogicalNotOptionsBuilder {
  5930. typedef LogicalNotOptions Table;
  5931. ::flatbuffers::FlatBufferBuilder &fbb_;
  5932. ::flatbuffers::uoffset_t start_;
  5933. explicit LogicalNotOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5934. : fbb_(_fbb) {
  5935. start_ = fbb_.StartTable();
  5936. }
  5937. ::flatbuffers::Offset<LogicalNotOptions> Finish() {
  5938. const auto end = fbb_.EndTable(start_);
  5939. auto o = ::flatbuffers::Offset<LogicalNotOptions>(end);
  5940. return o;
  5941. }
  5942. };
  5943. inline ::flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(
  5944. ::flatbuffers::FlatBufferBuilder &_fbb) {
  5945. LogicalNotOptionsBuilder builder_(_fbb);
  5946. return builder_.Finish();
  5947. }
  5948. struct UnpackOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5949. typedef UnpackOptionsBuilder Builder;
  5950. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5951. VT_NUM = 4,
  5952. VT_AXIS = 6
  5953. };
  5954. int32_t num() const {
  5955. return GetField<int32_t>(VT_NUM, 0);
  5956. }
  5957. int32_t axis() const {
  5958. return GetField<int32_t>(VT_AXIS, 0);
  5959. }
  5960. bool Verify(::flatbuffers::Verifier &verifier) const {
  5961. return VerifyTableStart(verifier) &&
  5962. VerifyField<int32_t>(verifier, VT_NUM, 4) &&
  5963. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  5964. verifier.EndTable();
  5965. }
  5966. };
  5967. struct UnpackOptionsBuilder {
  5968. typedef UnpackOptions Table;
  5969. ::flatbuffers::FlatBufferBuilder &fbb_;
  5970. ::flatbuffers::uoffset_t start_;
  5971. void add_num(int32_t num) {
  5972. fbb_.AddElement<int32_t>(UnpackOptions::VT_NUM, num, 0);
  5973. }
  5974. void add_axis(int32_t axis) {
  5975. fbb_.AddElement<int32_t>(UnpackOptions::VT_AXIS, axis, 0);
  5976. }
  5977. explicit UnpackOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  5978. : fbb_(_fbb) {
  5979. start_ = fbb_.StartTable();
  5980. }
  5981. ::flatbuffers::Offset<UnpackOptions> Finish() {
  5982. const auto end = fbb_.EndTable(start_);
  5983. auto o = ::flatbuffers::Offset<UnpackOptions>(end);
  5984. return o;
  5985. }
  5986. };
  5987. inline ::flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(
  5988. ::flatbuffers::FlatBufferBuilder &_fbb,
  5989. int32_t num = 0,
  5990. int32_t axis = 0) {
  5991. UnpackOptionsBuilder builder_(_fbb);
  5992. builder_.add_axis(axis);
  5993. builder_.add_num(num);
  5994. return builder_.Finish();
  5995. }
  5996. struct FloorDivOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  5997. typedef FloorDivOptionsBuilder Builder;
  5998. bool Verify(::flatbuffers::Verifier &verifier) const {
  5999. return VerifyTableStart(verifier) &&
  6000. verifier.EndTable();
  6001. }
  6002. };
  6003. struct FloorDivOptionsBuilder {
  6004. typedef FloorDivOptions Table;
  6005. ::flatbuffers::FlatBufferBuilder &fbb_;
  6006. ::flatbuffers::uoffset_t start_;
  6007. explicit FloorDivOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6008. : fbb_(_fbb) {
  6009. start_ = fbb_.StartTable();
  6010. }
  6011. ::flatbuffers::Offset<FloorDivOptions> Finish() {
  6012. const auto end = fbb_.EndTable(start_);
  6013. auto o = ::flatbuffers::Offset<FloorDivOptions>(end);
  6014. return o;
  6015. }
  6016. };
  6017. inline ::flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(
  6018. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6019. FloorDivOptionsBuilder builder_(_fbb);
  6020. return builder_.Finish();
  6021. }
  6022. struct SquareOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6023. typedef SquareOptionsBuilder Builder;
  6024. bool Verify(::flatbuffers::Verifier &verifier) const {
  6025. return VerifyTableStart(verifier) &&
  6026. verifier.EndTable();
  6027. }
  6028. };
  6029. struct SquareOptionsBuilder {
  6030. typedef SquareOptions Table;
  6031. ::flatbuffers::FlatBufferBuilder &fbb_;
  6032. ::flatbuffers::uoffset_t start_;
  6033. explicit SquareOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6034. : fbb_(_fbb) {
  6035. start_ = fbb_.StartTable();
  6036. }
  6037. ::flatbuffers::Offset<SquareOptions> Finish() {
  6038. const auto end = fbb_.EndTable(start_);
  6039. auto o = ::flatbuffers::Offset<SquareOptions>(end);
  6040. return o;
  6041. }
  6042. };
  6043. inline ::flatbuffers::Offset<SquareOptions> CreateSquareOptions(
  6044. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6045. SquareOptionsBuilder builder_(_fbb);
  6046. return builder_.Finish();
  6047. }
  6048. struct ZerosLikeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6049. typedef ZerosLikeOptionsBuilder Builder;
  6050. bool Verify(::flatbuffers::Verifier &verifier) const {
  6051. return VerifyTableStart(verifier) &&
  6052. verifier.EndTable();
  6053. }
  6054. };
  6055. struct ZerosLikeOptionsBuilder {
  6056. typedef ZerosLikeOptions Table;
  6057. ::flatbuffers::FlatBufferBuilder &fbb_;
  6058. ::flatbuffers::uoffset_t start_;
  6059. explicit ZerosLikeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6060. : fbb_(_fbb) {
  6061. start_ = fbb_.StartTable();
  6062. }
  6063. ::flatbuffers::Offset<ZerosLikeOptions> Finish() {
  6064. const auto end = fbb_.EndTable(start_);
  6065. auto o = ::flatbuffers::Offset<ZerosLikeOptions>(end);
  6066. return o;
  6067. }
  6068. };
  6069. inline ::flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(
  6070. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6071. ZerosLikeOptionsBuilder builder_(_fbb);
  6072. return builder_.Finish();
  6073. }
  6074. struct FillOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6075. typedef FillOptionsBuilder Builder;
  6076. bool Verify(::flatbuffers::Verifier &verifier) const {
  6077. return VerifyTableStart(verifier) &&
  6078. verifier.EndTable();
  6079. }
  6080. };
  6081. struct FillOptionsBuilder {
  6082. typedef FillOptions Table;
  6083. ::flatbuffers::FlatBufferBuilder &fbb_;
  6084. ::flatbuffers::uoffset_t start_;
  6085. explicit FillOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6086. : fbb_(_fbb) {
  6087. start_ = fbb_.StartTable();
  6088. }
  6089. ::flatbuffers::Offset<FillOptions> Finish() {
  6090. const auto end = fbb_.EndTable(start_);
  6091. auto o = ::flatbuffers::Offset<FillOptions>(end);
  6092. return o;
  6093. }
  6094. };
  6095. inline ::flatbuffers::Offset<FillOptions> CreateFillOptions(
  6096. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6097. FillOptionsBuilder builder_(_fbb);
  6098. return builder_.Finish();
  6099. }
  6100. struct FloorModOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6101. typedef FloorModOptionsBuilder Builder;
  6102. bool Verify(::flatbuffers::Verifier &verifier) const {
  6103. return VerifyTableStart(verifier) &&
  6104. verifier.EndTable();
  6105. }
  6106. };
  6107. struct FloorModOptionsBuilder {
  6108. typedef FloorModOptions Table;
  6109. ::flatbuffers::FlatBufferBuilder &fbb_;
  6110. ::flatbuffers::uoffset_t start_;
  6111. explicit FloorModOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6112. : fbb_(_fbb) {
  6113. start_ = fbb_.StartTable();
  6114. }
  6115. ::flatbuffers::Offset<FloorModOptions> Finish() {
  6116. const auto end = fbb_.EndTable(start_);
  6117. auto o = ::flatbuffers::Offset<FloorModOptions>(end);
  6118. return o;
  6119. }
  6120. };
  6121. inline ::flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(
  6122. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6123. FloorModOptionsBuilder builder_(_fbb);
  6124. return builder_.Finish();
  6125. }
  6126. struct RangeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6127. typedef RangeOptionsBuilder Builder;
  6128. bool Verify(::flatbuffers::Verifier &verifier) const {
  6129. return VerifyTableStart(verifier) &&
  6130. verifier.EndTable();
  6131. }
  6132. };
  6133. struct RangeOptionsBuilder {
  6134. typedef RangeOptions Table;
  6135. ::flatbuffers::FlatBufferBuilder &fbb_;
  6136. ::flatbuffers::uoffset_t start_;
  6137. explicit RangeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6138. : fbb_(_fbb) {
  6139. start_ = fbb_.StartTable();
  6140. }
  6141. ::flatbuffers::Offset<RangeOptions> Finish() {
  6142. const auto end = fbb_.EndTable(start_);
  6143. auto o = ::flatbuffers::Offset<RangeOptions>(end);
  6144. return o;
  6145. }
  6146. };
  6147. inline ::flatbuffers::Offset<RangeOptions> CreateRangeOptions(
  6148. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6149. RangeOptionsBuilder builder_(_fbb);
  6150. return builder_.Finish();
  6151. }
  6152. struct LeakyReluOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6153. typedef LeakyReluOptionsBuilder Builder;
  6154. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6155. VT_ALPHA = 4
  6156. };
  6157. float alpha() const {
  6158. return GetField<float>(VT_ALPHA, 0.0f);
  6159. }
  6160. bool Verify(::flatbuffers::Verifier &verifier) const {
  6161. return VerifyTableStart(verifier) &&
  6162. VerifyField<float>(verifier, VT_ALPHA, 4) &&
  6163. verifier.EndTable();
  6164. }
  6165. };
  6166. struct LeakyReluOptionsBuilder {
  6167. typedef LeakyReluOptions Table;
  6168. ::flatbuffers::FlatBufferBuilder &fbb_;
  6169. ::flatbuffers::uoffset_t start_;
  6170. void add_alpha(float alpha) {
  6171. fbb_.AddElement<float>(LeakyReluOptions::VT_ALPHA, alpha, 0.0f);
  6172. }
  6173. explicit LeakyReluOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6174. : fbb_(_fbb) {
  6175. start_ = fbb_.StartTable();
  6176. }
  6177. ::flatbuffers::Offset<LeakyReluOptions> Finish() {
  6178. const auto end = fbb_.EndTable(start_);
  6179. auto o = ::flatbuffers::Offset<LeakyReluOptions>(end);
  6180. return o;
  6181. }
  6182. };
  6183. inline ::flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(
  6184. ::flatbuffers::FlatBufferBuilder &_fbb,
  6185. float alpha = 0.0f) {
  6186. LeakyReluOptionsBuilder builder_(_fbb);
  6187. builder_.add_alpha(alpha);
  6188. return builder_.Finish();
  6189. }
  6190. struct SquaredDifferenceOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6191. typedef SquaredDifferenceOptionsBuilder Builder;
  6192. bool Verify(::flatbuffers::Verifier &verifier) const {
  6193. return VerifyTableStart(verifier) &&
  6194. verifier.EndTable();
  6195. }
  6196. };
  6197. struct SquaredDifferenceOptionsBuilder {
  6198. typedef SquaredDifferenceOptions Table;
  6199. ::flatbuffers::FlatBufferBuilder &fbb_;
  6200. ::flatbuffers::uoffset_t start_;
  6201. explicit SquaredDifferenceOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6202. : fbb_(_fbb) {
  6203. start_ = fbb_.StartTable();
  6204. }
  6205. ::flatbuffers::Offset<SquaredDifferenceOptions> Finish() {
  6206. const auto end = fbb_.EndTable(start_);
  6207. auto o = ::flatbuffers::Offset<SquaredDifferenceOptions>(end);
  6208. return o;
  6209. }
  6210. };
  6211. inline ::flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(
  6212. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6213. SquaredDifferenceOptionsBuilder builder_(_fbb);
  6214. return builder_.Finish();
  6215. }
  6216. struct MirrorPadOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6217. typedef MirrorPadOptionsBuilder Builder;
  6218. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6219. VT_MODE = 4
  6220. };
  6221. opencv_tflite::MirrorPadMode mode() const {
  6222. return static_cast<opencv_tflite::MirrorPadMode>(GetField<int8_t>(VT_MODE, 0));
  6223. }
  6224. bool Verify(::flatbuffers::Verifier &verifier) const {
  6225. return VerifyTableStart(verifier) &&
  6226. VerifyField<int8_t>(verifier, VT_MODE, 1) &&
  6227. verifier.EndTable();
  6228. }
  6229. };
  6230. struct MirrorPadOptionsBuilder {
  6231. typedef MirrorPadOptions Table;
  6232. ::flatbuffers::FlatBufferBuilder &fbb_;
  6233. ::flatbuffers::uoffset_t start_;
  6234. void add_mode(opencv_tflite::MirrorPadMode mode) {
  6235. fbb_.AddElement<int8_t>(MirrorPadOptions::VT_MODE, static_cast<int8_t>(mode), 0);
  6236. }
  6237. explicit MirrorPadOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6238. : fbb_(_fbb) {
  6239. start_ = fbb_.StartTable();
  6240. }
  6241. ::flatbuffers::Offset<MirrorPadOptions> Finish() {
  6242. const auto end = fbb_.EndTable(start_);
  6243. auto o = ::flatbuffers::Offset<MirrorPadOptions>(end);
  6244. return o;
  6245. }
  6246. };
  6247. inline ::flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(
  6248. ::flatbuffers::FlatBufferBuilder &_fbb,
  6249. opencv_tflite::MirrorPadMode mode = opencv_tflite::MirrorPadMode_REFLECT) {
  6250. MirrorPadOptionsBuilder builder_(_fbb);
  6251. builder_.add_mode(mode);
  6252. return builder_.Finish();
  6253. }
  6254. struct UniqueOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6255. typedef UniqueOptionsBuilder Builder;
  6256. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6257. VT_IDX_OUT_TYPE = 4
  6258. };
  6259. opencv_tflite::TensorType idx_out_type() const {
  6260. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_IDX_OUT_TYPE, 2));
  6261. }
  6262. bool Verify(::flatbuffers::Verifier &verifier) const {
  6263. return VerifyTableStart(verifier) &&
  6264. VerifyField<int8_t>(verifier, VT_IDX_OUT_TYPE, 1) &&
  6265. verifier.EndTable();
  6266. }
  6267. };
  6268. struct UniqueOptionsBuilder {
  6269. typedef UniqueOptions Table;
  6270. ::flatbuffers::FlatBufferBuilder &fbb_;
  6271. ::flatbuffers::uoffset_t start_;
  6272. void add_idx_out_type(opencv_tflite::TensorType idx_out_type) {
  6273. fbb_.AddElement<int8_t>(UniqueOptions::VT_IDX_OUT_TYPE, static_cast<int8_t>(idx_out_type), 2);
  6274. }
  6275. explicit UniqueOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6276. : fbb_(_fbb) {
  6277. start_ = fbb_.StartTable();
  6278. }
  6279. ::flatbuffers::Offset<UniqueOptions> Finish() {
  6280. const auto end = fbb_.EndTable(start_);
  6281. auto o = ::flatbuffers::Offset<UniqueOptions>(end);
  6282. return o;
  6283. }
  6284. };
  6285. inline ::flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(
  6286. ::flatbuffers::FlatBufferBuilder &_fbb,
  6287. opencv_tflite::TensorType idx_out_type = opencv_tflite::TensorType_INT32) {
  6288. UniqueOptionsBuilder builder_(_fbb);
  6289. builder_.add_idx_out_type(idx_out_type);
  6290. return builder_.Finish();
  6291. }
  6292. struct ReverseV2Options FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6293. typedef ReverseV2OptionsBuilder Builder;
  6294. bool Verify(::flatbuffers::Verifier &verifier) const {
  6295. return VerifyTableStart(verifier) &&
  6296. verifier.EndTable();
  6297. }
  6298. };
  6299. struct ReverseV2OptionsBuilder {
  6300. typedef ReverseV2Options Table;
  6301. ::flatbuffers::FlatBufferBuilder &fbb_;
  6302. ::flatbuffers::uoffset_t start_;
  6303. explicit ReverseV2OptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6304. : fbb_(_fbb) {
  6305. start_ = fbb_.StartTable();
  6306. }
  6307. ::flatbuffers::Offset<ReverseV2Options> Finish() {
  6308. const auto end = fbb_.EndTable(start_);
  6309. auto o = ::flatbuffers::Offset<ReverseV2Options>(end);
  6310. return o;
  6311. }
  6312. };
  6313. inline ::flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(
  6314. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6315. ReverseV2OptionsBuilder builder_(_fbb);
  6316. return builder_.Finish();
  6317. }
  6318. struct AddNOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6319. typedef AddNOptionsBuilder Builder;
  6320. bool Verify(::flatbuffers::Verifier &verifier) const {
  6321. return VerifyTableStart(verifier) &&
  6322. verifier.EndTable();
  6323. }
  6324. };
  6325. struct AddNOptionsBuilder {
  6326. typedef AddNOptions Table;
  6327. ::flatbuffers::FlatBufferBuilder &fbb_;
  6328. ::flatbuffers::uoffset_t start_;
  6329. explicit AddNOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6330. : fbb_(_fbb) {
  6331. start_ = fbb_.StartTable();
  6332. }
  6333. ::flatbuffers::Offset<AddNOptions> Finish() {
  6334. const auto end = fbb_.EndTable(start_);
  6335. auto o = ::flatbuffers::Offset<AddNOptions>(end);
  6336. return o;
  6337. }
  6338. };
  6339. inline ::flatbuffers::Offset<AddNOptions> CreateAddNOptions(
  6340. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6341. AddNOptionsBuilder builder_(_fbb);
  6342. return builder_.Finish();
  6343. }
  6344. struct GatherNdOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6345. typedef GatherNdOptionsBuilder Builder;
  6346. bool Verify(::flatbuffers::Verifier &verifier) const {
  6347. return VerifyTableStart(verifier) &&
  6348. verifier.EndTable();
  6349. }
  6350. };
  6351. struct GatherNdOptionsBuilder {
  6352. typedef GatherNdOptions Table;
  6353. ::flatbuffers::FlatBufferBuilder &fbb_;
  6354. ::flatbuffers::uoffset_t start_;
  6355. explicit GatherNdOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6356. : fbb_(_fbb) {
  6357. start_ = fbb_.StartTable();
  6358. }
  6359. ::flatbuffers::Offset<GatherNdOptions> Finish() {
  6360. const auto end = fbb_.EndTable(start_);
  6361. auto o = ::flatbuffers::Offset<GatherNdOptions>(end);
  6362. return o;
  6363. }
  6364. };
  6365. inline ::flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(
  6366. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6367. GatherNdOptionsBuilder builder_(_fbb);
  6368. return builder_.Finish();
  6369. }
  6370. struct WhereOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6371. typedef WhereOptionsBuilder Builder;
  6372. bool Verify(::flatbuffers::Verifier &verifier) const {
  6373. return VerifyTableStart(verifier) &&
  6374. verifier.EndTable();
  6375. }
  6376. };
  6377. struct WhereOptionsBuilder {
  6378. typedef WhereOptions Table;
  6379. ::flatbuffers::FlatBufferBuilder &fbb_;
  6380. ::flatbuffers::uoffset_t start_;
  6381. explicit WhereOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6382. : fbb_(_fbb) {
  6383. start_ = fbb_.StartTable();
  6384. }
  6385. ::flatbuffers::Offset<WhereOptions> Finish() {
  6386. const auto end = fbb_.EndTable(start_);
  6387. auto o = ::flatbuffers::Offset<WhereOptions>(end);
  6388. return o;
  6389. }
  6390. };
  6391. inline ::flatbuffers::Offset<WhereOptions> CreateWhereOptions(
  6392. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6393. WhereOptionsBuilder builder_(_fbb);
  6394. return builder_.Finish();
  6395. }
  6396. struct ReverseSequenceOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6397. typedef ReverseSequenceOptionsBuilder Builder;
  6398. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6399. VT_SEQ_DIM = 4,
  6400. VT_BATCH_DIM = 6
  6401. };
  6402. int32_t seq_dim() const {
  6403. return GetField<int32_t>(VT_SEQ_DIM, 0);
  6404. }
  6405. int32_t batch_dim() const {
  6406. return GetField<int32_t>(VT_BATCH_DIM, 0);
  6407. }
  6408. bool Verify(::flatbuffers::Verifier &verifier) const {
  6409. return VerifyTableStart(verifier) &&
  6410. VerifyField<int32_t>(verifier, VT_SEQ_DIM, 4) &&
  6411. VerifyField<int32_t>(verifier, VT_BATCH_DIM, 4) &&
  6412. verifier.EndTable();
  6413. }
  6414. };
  6415. struct ReverseSequenceOptionsBuilder {
  6416. typedef ReverseSequenceOptions Table;
  6417. ::flatbuffers::FlatBufferBuilder &fbb_;
  6418. ::flatbuffers::uoffset_t start_;
  6419. void add_seq_dim(int32_t seq_dim) {
  6420. fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_SEQ_DIM, seq_dim, 0);
  6421. }
  6422. void add_batch_dim(int32_t batch_dim) {
  6423. fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_BATCH_DIM, batch_dim, 0);
  6424. }
  6425. explicit ReverseSequenceOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6426. : fbb_(_fbb) {
  6427. start_ = fbb_.StartTable();
  6428. }
  6429. ::flatbuffers::Offset<ReverseSequenceOptions> Finish() {
  6430. const auto end = fbb_.EndTable(start_);
  6431. auto o = ::flatbuffers::Offset<ReverseSequenceOptions>(end);
  6432. return o;
  6433. }
  6434. };
  6435. inline ::flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(
  6436. ::flatbuffers::FlatBufferBuilder &_fbb,
  6437. int32_t seq_dim = 0,
  6438. int32_t batch_dim = 0) {
  6439. ReverseSequenceOptionsBuilder builder_(_fbb);
  6440. builder_.add_batch_dim(batch_dim);
  6441. builder_.add_seq_dim(seq_dim);
  6442. return builder_.Finish();
  6443. }
  6444. struct MatrixDiagOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6445. typedef MatrixDiagOptionsBuilder Builder;
  6446. bool Verify(::flatbuffers::Verifier &verifier) const {
  6447. return VerifyTableStart(verifier) &&
  6448. verifier.EndTable();
  6449. }
  6450. };
  6451. struct MatrixDiagOptionsBuilder {
  6452. typedef MatrixDiagOptions Table;
  6453. ::flatbuffers::FlatBufferBuilder &fbb_;
  6454. ::flatbuffers::uoffset_t start_;
  6455. explicit MatrixDiagOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6456. : fbb_(_fbb) {
  6457. start_ = fbb_.StartTable();
  6458. }
  6459. ::flatbuffers::Offset<MatrixDiagOptions> Finish() {
  6460. const auto end = fbb_.EndTable(start_);
  6461. auto o = ::flatbuffers::Offset<MatrixDiagOptions>(end);
  6462. return o;
  6463. }
  6464. };
  6465. inline ::flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(
  6466. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6467. MatrixDiagOptionsBuilder builder_(_fbb);
  6468. return builder_.Finish();
  6469. }
  6470. struct QuantizeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6471. typedef QuantizeOptionsBuilder Builder;
  6472. bool Verify(::flatbuffers::Verifier &verifier) const {
  6473. return VerifyTableStart(verifier) &&
  6474. verifier.EndTable();
  6475. }
  6476. };
  6477. struct QuantizeOptionsBuilder {
  6478. typedef QuantizeOptions Table;
  6479. ::flatbuffers::FlatBufferBuilder &fbb_;
  6480. ::flatbuffers::uoffset_t start_;
  6481. explicit QuantizeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6482. : fbb_(_fbb) {
  6483. start_ = fbb_.StartTable();
  6484. }
  6485. ::flatbuffers::Offset<QuantizeOptions> Finish() {
  6486. const auto end = fbb_.EndTable(start_);
  6487. auto o = ::flatbuffers::Offset<QuantizeOptions>(end);
  6488. return o;
  6489. }
  6490. };
  6491. inline ::flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(
  6492. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6493. QuantizeOptionsBuilder builder_(_fbb);
  6494. return builder_.Finish();
  6495. }
  6496. struct MatrixSetDiagOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6497. typedef MatrixSetDiagOptionsBuilder Builder;
  6498. bool Verify(::flatbuffers::Verifier &verifier) const {
  6499. return VerifyTableStart(verifier) &&
  6500. verifier.EndTable();
  6501. }
  6502. };
  6503. struct MatrixSetDiagOptionsBuilder {
  6504. typedef MatrixSetDiagOptions Table;
  6505. ::flatbuffers::FlatBufferBuilder &fbb_;
  6506. ::flatbuffers::uoffset_t start_;
  6507. explicit MatrixSetDiagOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6508. : fbb_(_fbb) {
  6509. start_ = fbb_.StartTable();
  6510. }
  6511. ::flatbuffers::Offset<MatrixSetDiagOptions> Finish() {
  6512. const auto end = fbb_.EndTable(start_);
  6513. auto o = ::flatbuffers::Offset<MatrixSetDiagOptions>(end);
  6514. return o;
  6515. }
  6516. };
  6517. inline ::flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(
  6518. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6519. MatrixSetDiagOptionsBuilder builder_(_fbb);
  6520. return builder_.Finish();
  6521. }
  6522. struct IfOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6523. typedef IfOptionsBuilder Builder;
  6524. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6525. VT_THEN_SUBGRAPH_INDEX = 4,
  6526. VT_ELSE_SUBGRAPH_INDEX = 6
  6527. };
  6528. int32_t then_subgraph_index() const {
  6529. return GetField<int32_t>(VT_THEN_SUBGRAPH_INDEX, 0);
  6530. }
  6531. int32_t else_subgraph_index() const {
  6532. return GetField<int32_t>(VT_ELSE_SUBGRAPH_INDEX, 0);
  6533. }
  6534. bool Verify(::flatbuffers::Verifier &verifier) const {
  6535. return VerifyTableStart(verifier) &&
  6536. VerifyField<int32_t>(verifier, VT_THEN_SUBGRAPH_INDEX, 4) &&
  6537. VerifyField<int32_t>(verifier, VT_ELSE_SUBGRAPH_INDEX, 4) &&
  6538. verifier.EndTable();
  6539. }
  6540. };
  6541. struct IfOptionsBuilder {
  6542. typedef IfOptions Table;
  6543. ::flatbuffers::FlatBufferBuilder &fbb_;
  6544. ::flatbuffers::uoffset_t start_;
  6545. void add_then_subgraph_index(int32_t then_subgraph_index) {
  6546. fbb_.AddElement<int32_t>(IfOptions::VT_THEN_SUBGRAPH_INDEX, then_subgraph_index, 0);
  6547. }
  6548. void add_else_subgraph_index(int32_t else_subgraph_index) {
  6549. fbb_.AddElement<int32_t>(IfOptions::VT_ELSE_SUBGRAPH_INDEX, else_subgraph_index, 0);
  6550. }
  6551. explicit IfOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6552. : fbb_(_fbb) {
  6553. start_ = fbb_.StartTable();
  6554. }
  6555. ::flatbuffers::Offset<IfOptions> Finish() {
  6556. const auto end = fbb_.EndTable(start_);
  6557. auto o = ::flatbuffers::Offset<IfOptions>(end);
  6558. return o;
  6559. }
  6560. };
  6561. inline ::flatbuffers::Offset<IfOptions> CreateIfOptions(
  6562. ::flatbuffers::FlatBufferBuilder &_fbb,
  6563. int32_t then_subgraph_index = 0,
  6564. int32_t else_subgraph_index = 0) {
  6565. IfOptionsBuilder builder_(_fbb);
  6566. builder_.add_else_subgraph_index(else_subgraph_index);
  6567. builder_.add_then_subgraph_index(then_subgraph_index);
  6568. return builder_.Finish();
  6569. }
  6570. struct CallOnceOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6571. typedef CallOnceOptionsBuilder Builder;
  6572. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6573. VT_INIT_SUBGRAPH_INDEX = 4
  6574. };
  6575. int32_t init_subgraph_index() const {
  6576. return GetField<int32_t>(VT_INIT_SUBGRAPH_INDEX, 0);
  6577. }
  6578. bool Verify(::flatbuffers::Verifier &verifier) const {
  6579. return VerifyTableStart(verifier) &&
  6580. VerifyField<int32_t>(verifier, VT_INIT_SUBGRAPH_INDEX, 4) &&
  6581. verifier.EndTable();
  6582. }
  6583. };
  6584. struct CallOnceOptionsBuilder {
  6585. typedef CallOnceOptions Table;
  6586. ::flatbuffers::FlatBufferBuilder &fbb_;
  6587. ::flatbuffers::uoffset_t start_;
  6588. void add_init_subgraph_index(int32_t init_subgraph_index) {
  6589. fbb_.AddElement<int32_t>(CallOnceOptions::VT_INIT_SUBGRAPH_INDEX, init_subgraph_index, 0);
  6590. }
  6591. explicit CallOnceOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6592. : fbb_(_fbb) {
  6593. start_ = fbb_.StartTable();
  6594. }
  6595. ::flatbuffers::Offset<CallOnceOptions> Finish() {
  6596. const auto end = fbb_.EndTable(start_);
  6597. auto o = ::flatbuffers::Offset<CallOnceOptions>(end);
  6598. return o;
  6599. }
  6600. };
  6601. inline ::flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(
  6602. ::flatbuffers::FlatBufferBuilder &_fbb,
  6603. int32_t init_subgraph_index = 0) {
  6604. CallOnceOptionsBuilder builder_(_fbb);
  6605. builder_.add_init_subgraph_index(init_subgraph_index);
  6606. return builder_.Finish();
  6607. }
  6608. struct WhileOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6609. typedef WhileOptionsBuilder Builder;
  6610. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6611. VT_COND_SUBGRAPH_INDEX = 4,
  6612. VT_BODY_SUBGRAPH_INDEX = 6
  6613. };
  6614. int32_t cond_subgraph_index() const {
  6615. return GetField<int32_t>(VT_COND_SUBGRAPH_INDEX, 0);
  6616. }
  6617. int32_t body_subgraph_index() const {
  6618. return GetField<int32_t>(VT_BODY_SUBGRAPH_INDEX, 0);
  6619. }
  6620. bool Verify(::flatbuffers::Verifier &verifier) const {
  6621. return VerifyTableStart(verifier) &&
  6622. VerifyField<int32_t>(verifier, VT_COND_SUBGRAPH_INDEX, 4) &&
  6623. VerifyField<int32_t>(verifier, VT_BODY_SUBGRAPH_INDEX, 4) &&
  6624. verifier.EndTable();
  6625. }
  6626. };
  6627. struct WhileOptionsBuilder {
  6628. typedef WhileOptions Table;
  6629. ::flatbuffers::FlatBufferBuilder &fbb_;
  6630. ::flatbuffers::uoffset_t start_;
  6631. void add_cond_subgraph_index(int32_t cond_subgraph_index) {
  6632. fbb_.AddElement<int32_t>(WhileOptions::VT_COND_SUBGRAPH_INDEX, cond_subgraph_index, 0);
  6633. }
  6634. void add_body_subgraph_index(int32_t body_subgraph_index) {
  6635. fbb_.AddElement<int32_t>(WhileOptions::VT_BODY_SUBGRAPH_INDEX, body_subgraph_index, 0);
  6636. }
  6637. explicit WhileOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6638. : fbb_(_fbb) {
  6639. start_ = fbb_.StartTable();
  6640. }
  6641. ::flatbuffers::Offset<WhileOptions> Finish() {
  6642. const auto end = fbb_.EndTable(start_);
  6643. auto o = ::flatbuffers::Offset<WhileOptions>(end);
  6644. return o;
  6645. }
  6646. };
  6647. inline ::flatbuffers::Offset<WhileOptions> CreateWhileOptions(
  6648. ::flatbuffers::FlatBufferBuilder &_fbb,
  6649. int32_t cond_subgraph_index = 0,
  6650. int32_t body_subgraph_index = 0) {
  6651. WhileOptionsBuilder builder_(_fbb);
  6652. builder_.add_body_subgraph_index(body_subgraph_index);
  6653. builder_.add_cond_subgraph_index(cond_subgraph_index);
  6654. return builder_.Finish();
  6655. }
  6656. struct NonMaxSuppressionV4Options FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6657. typedef NonMaxSuppressionV4OptionsBuilder Builder;
  6658. bool Verify(::flatbuffers::Verifier &verifier) const {
  6659. return VerifyTableStart(verifier) &&
  6660. verifier.EndTable();
  6661. }
  6662. };
  6663. struct NonMaxSuppressionV4OptionsBuilder {
  6664. typedef NonMaxSuppressionV4Options Table;
  6665. ::flatbuffers::FlatBufferBuilder &fbb_;
  6666. ::flatbuffers::uoffset_t start_;
  6667. explicit NonMaxSuppressionV4OptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6668. : fbb_(_fbb) {
  6669. start_ = fbb_.StartTable();
  6670. }
  6671. ::flatbuffers::Offset<NonMaxSuppressionV4Options> Finish() {
  6672. const auto end = fbb_.EndTable(start_);
  6673. auto o = ::flatbuffers::Offset<NonMaxSuppressionV4Options>(end);
  6674. return o;
  6675. }
  6676. };
  6677. inline ::flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(
  6678. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6679. NonMaxSuppressionV4OptionsBuilder builder_(_fbb);
  6680. return builder_.Finish();
  6681. }
  6682. struct NonMaxSuppressionV5Options FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6683. typedef NonMaxSuppressionV5OptionsBuilder Builder;
  6684. bool Verify(::flatbuffers::Verifier &verifier) const {
  6685. return VerifyTableStart(verifier) &&
  6686. verifier.EndTable();
  6687. }
  6688. };
  6689. struct NonMaxSuppressionV5OptionsBuilder {
  6690. typedef NonMaxSuppressionV5Options Table;
  6691. ::flatbuffers::FlatBufferBuilder &fbb_;
  6692. ::flatbuffers::uoffset_t start_;
  6693. explicit NonMaxSuppressionV5OptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6694. : fbb_(_fbb) {
  6695. start_ = fbb_.StartTable();
  6696. }
  6697. ::flatbuffers::Offset<NonMaxSuppressionV5Options> Finish() {
  6698. const auto end = fbb_.EndTable(start_);
  6699. auto o = ::flatbuffers::Offset<NonMaxSuppressionV5Options>(end);
  6700. return o;
  6701. }
  6702. };
  6703. inline ::flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(
  6704. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6705. NonMaxSuppressionV5OptionsBuilder builder_(_fbb);
  6706. return builder_.Finish();
  6707. }
  6708. struct ScatterNdOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6709. typedef ScatterNdOptionsBuilder Builder;
  6710. bool Verify(::flatbuffers::Verifier &verifier) const {
  6711. return VerifyTableStart(verifier) &&
  6712. verifier.EndTable();
  6713. }
  6714. };
  6715. struct ScatterNdOptionsBuilder {
  6716. typedef ScatterNdOptions Table;
  6717. ::flatbuffers::FlatBufferBuilder &fbb_;
  6718. ::flatbuffers::uoffset_t start_;
  6719. explicit ScatterNdOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6720. : fbb_(_fbb) {
  6721. start_ = fbb_.StartTable();
  6722. }
  6723. ::flatbuffers::Offset<ScatterNdOptions> Finish() {
  6724. const auto end = fbb_.EndTable(start_);
  6725. auto o = ::flatbuffers::Offset<ScatterNdOptions>(end);
  6726. return o;
  6727. }
  6728. };
  6729. inline ::flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(
  6730. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6731. ScatterNdOptionsBuilder builder_(_fbb);
  6732. return builder_.Finish();
  6733. }
  6734. struct SelectV2Options FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6735. typedef SelectV2OptionsBuilder Builder;
  6736. bool Verify(::flatbuffers::Verifier &verifier) const {
  6737. return VerifyTableStart(verifier) &&
  6738. verifier.EndTable();
  6739. }
  6740. };
  6741. struct SelectV2OptionsBuilder {
  6742. typedef SelectV2Options Table;
  6743. ::flatbuffers::FlatBufferBuilder &fbb_;
  6744. ::flatbuffers::uoffset_t start_;
  6745. explicit SelectV2OptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6746. : fbb_(_fbb) {
  6747. start_ = fbb_.StartTable();
  6748. }
  6749. ::flatbuffers::Offset<SelectV2Options> Finish() {
  6750. const auto end = fbb_.EndTable(start_);
  6751. auto o = ::flatbuffers::Offset<SelectV2Options>(end);
  6752. return o;
  6753. }
  6754. };
  6755. inline ::flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(
  6756. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6757. SelectV2OptionsBuilder builder_(_fbb);
  6758. return builder_.Finish();
  6759. }
  6760. struct DensifyOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6761. typedef DensifyOptionsBuilder Builder;
  6762. bool Verify(::flatbuffers::Verifier &verifier) const {
  6763. return VerifyTableStart(verifier) &&
  6764. verifier.EndTable();
  6765. }
  6766. };
  6767. struct DensifyOptionsBuilder {
  6768. typedef DensifyOptions Table;
  6769. ::flatbuffers::FlatBufferBuilder &fbb_;
  6770. ::flatbuffers::uoffset_t start_;
  6771. explicit DensifyOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6772. : fbb_(_fbb) {
  6773. start_ = fbb_.StartTable();
  6774. }
  6775. ::flatbuffers::Offset<DensifyOptions> Finish() {
  6776. const auto end = fbb_.EndTable(start_);
  6777. auto o = ::flatbuffers::Offset<DensifyOptions>(end);
  6778. return o;
  6779. }
  6780. };
  6781. inline ::flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(
  6782. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6783. DensifyOptionsBuilder builder_(_fbb);
  6784. return builder_.Finish();
  6785. }
  6786. struct SegmentSumOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6787. typedef SegmentSumOptionsBuilder Builder;
  6788. bool Verify(::flatbuffers::Verifier &verifier) const {
  6789. return VerifyTableStart(verifier) &&
  6790. verifier.EndTable();
  6791. }
  6792. };
  6793. struct SegmentSumOptionsBuilder {
  6794. typedef SegmentSumOptions Table;
  6795. ::flatbuffers::FlatBufferBuilder &fbb_;
  6796. ::flatbuffers::uoffset_t start_;
  6797. explicit SegmentSumOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6798. : fbb_(_fbb) {
  6799. start_ = fbb_.StartTable();
  6800. }
  6801. ::flatbuffers::Offset<SegmentSumOptions> Finish() {
  6802. const auto end = fbb_.EndTable(start_);
  6803. auto o = ::flatbuffers::Offset<SegmentSumOptions>(end);
  6804. return o;
  6805. }
  6806. };
  6807. inline ::flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(
  6808. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6809. SegmentSumOptionsBuilder builder_(_fbb);
  6810. return builder_.Finish();
  6811. }
  6812. struct BatchMatMulOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6813. typedef BatchMatMulOptionsBuilder Builder;
  6814. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6815. VT_ADJ_X = 4,
  6816. VT_ADJ_Y = 6,
  6817. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  6818. };
  6819. bool adj_x() const {
  6820. return GetField<uint8_t>(VT_ADJ_X, 0) != 0;
  6821. }
  6822. bool adj_y() const {
  6823. return GetField<uint8_t>(VT_ADJ_Y, 0) != 0;
  6824. }
  6825. bool asymmetric_quantize_inputs() const {
  6826. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  6827. }
  6828. bool Verify(::flatbuffers::Verifier &verifier) const {
  6829. return VerifyTableStart(verifier) &&
  6830. VerifyField<uint8_t>(verifier, VT_ADJ_X, 1) &&
  6831. VerifyField<uint8_t>(verifier, VT_ADJ_Y, 1) &&
  6832. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  6833. verifier.EndTable();
  6834. }
  6835. };
  6836. struct BatchMatMulOptionsBuilder {
  6837. typedef BatchMatMulOptions Table;
  6838. ::flatbuffers::FlatBufferBuilder &fbb_;
  6839. ::flatbuffers::uoffset_t start_;
  6840. void add_adj_x(bool adj_x) {
  6841. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_X, static_cast<uint8_t>(adj_x), 0);
  6842. }
  6843. void add_adj_y(bool adj_y) {
  6844. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_Y, static_cast<uint8_t>(adj_y), 0);
  6845. }
  6846. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  6847. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  6848. }
  6849. explicit BatchMatMulOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6850. : fbb_(_fbb) {
  6851. start_ = fbb_.StartTable();
  6852. }
  6853. ::flatbuffers::Offset<BatchMatMulOptions> Finish() {
  6854. const auto end = fbb_.EndTable(start_);
  6855. auto o = ::flatbuffers::Offset<BatchMatMulOptions>(end);
  6856. return o;
  6857. }
  6858. };
  6859. inline ::flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(
  6860. ::flatbuffers::FlatBufferBuilder &_fbb,
  6861. bool adj_x = false,
  6862. bool adj_y = false,
  6863. bool asymmetric_quantize_inputs = false) {
  6864. BatchMatMulOptionsBuilder builder_(_fbb);
  6865. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  6866. builder_.add_adj_y(adj_y);
  6867. builder_.add_adj_x(adj_x);
  6868. return builder_.Finish();
  6869. }
  6870. struct CumsumOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6871. typedef CumsumOptionsBuilder Builder;
  6872. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6873. VT_EXCLUSIVE = 4,
  6874. VT_REVERSE = 6
  6875. };
  6876. bool exclusive() const {
  6877. return GetField<uint8_t>(VT_EXCLUSIVE, 0) != 0;
  6878. }
  6879. bool reverse() const {
  6880. return GetField<uint8_t>(VT_REVERSE, 0) != 0;
  6881. }
  6882. bool Verify(::flatbuffers::Verifier &verifier) const {
  6883. return VerifyTableStart(verifier) &&
  6884. VerifyField<uint8_t>(verifier, VT_EXCLUSIVE, 1) &&
  6885. VerifyField<uint8_t>(verifier, VT_REVERSE, 1) &&
  6886. verifier.EndTable();
  6887. }
  6888. };
  6889. struct CumsumOptionsBuilder {
  6890. typedef CumsumOptions Table;
  6891. ::flatbuffers::FlatBufferBuilder &fbb_;
  6892. ::flatbuffers::uoffset_t start_;
  6893. void add_exclusive(bool exclusive) {
  6894. fbb_.AddElement<uint8_t>(CumsumOptions::VT_EXCLUSIVE, static_cast<uint8_t>(exclusive), 0);
  6895. }
  6896. void add_reverse(bool reverse) {
  6897. fbb_.AddElement<uint8_t>(CumsumOptions::VT_REVERSE, static_cast<uint8_t>(reverse), 0);
  6898. }
  6899. explicit CumsumOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6900. : fbb_(_fbb) {
  6901. start_ = fbb_.StartTable();
  6902. }
  6903. ::flatbuffers::Offset<CumsumOptions> Finish() {
  6904. const auto end = fbb_.EndTable(start_);
  6905. auto o = ::flatbuffers::Offset<CumsumOptions>(end);
  6906. return o;
  6907. }
  6908. };
  6909. inline ::flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(
  6910. ::flatbuffers::FlatBufferBuilder &_fbb,
  6911. bool exclusive = false,
  6912. bool reverse = false) {
  6913. CumsumOptionsBuilder builder_(_fbb);
  6914. builder_.add_reverse(reverse);
  6915. builder_.add_exclusive(exclusive);
  6916. return builder_.Finish();
  6917. }
  6918. struct BroadcastToOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6919. typedef BroadcastToOptionsBuilder Builder;
  6920. bool Verify(::flatbuffers::Verifier &verifier) const {
  6921. return VerifyTableStart(verifier) &&
  6922. verifier.EndTable();
  6923. }
  6924. };
  6925. struct BroadcastToOptionsBuilder {
  6926. typedef BroadcastToOptions Table;
  6927. ::flatbuffers::FlatBufferBuilder &fbb_;
  6928. ::flatbuffers::uoffset_t start_;
  6929. explicit BroadcastToOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6930. : fbb_(_fbb) {
  6931. start_ = fbb_.StartTable();
  6932. }
  6933. ::flatbuffers::Offset<BroadcastToOptions> Finish() {
  6934. const auto end = fbb_.EndTable(start_);
  6935. auto o = ::flatbuffers::Offset<BroadcastToOptions>(end);
  6936. return o;
  6937. }
  6938. };
  6939. inline ::flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(
  6940. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6941. BroadcastToOptionsBuilder builder_(_fbb);
  6942. return builder_.Finish();
  6943. }
  6944. struct Rfft2dOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6945. typedef Rfft2dOptionsBuilder Builder;
  6946. bool Verify(::flatbuffers::Verifier &verifier) const {
  6947. return VerifyTableStart(verifier) &&
  6948. verifier.EndTable();
  6949. }
  6950. };
  6951. struct Rfft2dOptionsBuilder {
  6952. typedef Rfft2dOptions Table;
  6953. ::flatbuffers::FlatBufferBuilder &fbb_;
  6954. ::flatbuffers::uoffset_t start_;
  6955. explicit Rfft2dOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  6956. : fbb_(_fbb) {
  6957. start_ = fbb_.StartTable();
  6958. }
  6959. ::flatbuffers::Offset<Rfft2dOptions> Finish() {
  6960. const auto end = fbb_.EndTable(start_);
  6961. auto o = ::flatbuffers::Offset<Rfft2dOptions>(end);
  6962. return o;
  6963. }
  6964. };
  6965. inline ::flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(
  6966. ::flatbuffers::FlatBufferBuilder &_fbb) {
  6967. Rfft2dOptionsBuilder builder_(_fbb);
  6968. return builder_.Finish();
  6969. }
  6970. struct HashtableOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  6971. typedef HashtableOptionsBuilder Builder;
  6972. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6973. VT_TABLE_ID = 4,
  6974. VT_KEY_DTYPE = 6,
  6975. VT_VALUE_DTYPE = 8
  6976. };
  6977. int32_t table_id() const {
  6978. return GetField<int32_t>(VT_TABLE_ID, 0);
  6979. }
  6980. opencv_tflite::TensorType key_dtype() const {
  6981. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_KEY_DTYPE, 0));
  6982. }
  6983. opencv_tflite::TensorType value_dtype() const {
  6984. return static_cast<opencv_tflite::TensorType>(GetField<int8_t>(VT_VALUE_DTYPE, 0));
  6985. }
  6986. bool Verify(::flatbuffers::Verifier &verifier) const {
  6987. return VerifyTableStart(verifier) &&
  6988. VerifyField<int32_t>(verifier, VT_TABLE_ID, 4) &&
  6989. VerifyField<int8_t>(verifier, VT_KEY_DTYPE, 1) &&
  6990. VerifyField<int8_t>(verifier, VT_VALUE_DTYPE, 1) &&
  6991. verifier.EndTable();
  6992. }
  6993. };
  6994. struct HashtableOptionsBuilder {
  6995. typedef HashtableOptions Table;
  6996. ::flatbuffers::FlatBufferBuilder &fbb_;
  6997. ::flatbuffers::uoffset_t start_;
  6998. void add_table_id(int32_t table_id) {
  6999. fbb_.AddElement<int32_t>(HashtableOptions::VT_TABLE_ID, table_id, 0);
  7000. }
  7001. void add_key_dtype(opencv_tflite::TensorType key_dtype) {
  7002. fbb_.AddElement<int8_t>(HashtableOptions::VT_KEY_DTYPE, static_cast<int8_t>(key_dtype), 0);
  7003. }
  7004. void add_value_dtype(opencv_tflite::TensorType value_dtype) {
  7005. fbb_.AddElement<int8_t>(HashtableOptions::VT_VALUE_DTYPE, static_cast<int8_t>(value_dtype), 0);
  7006. }
  7007. explicit HashtableOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7008. : fbb_(_fbb) {
  7009. start_ = fbb_.StartTable();
  7010. }
  7011. ::flatbuffers::Offset<HashtableOptions> Finish() {
  7012. const auto end = fbb_.EndTable(start_);
  7013. auto o = ::flatbuffers::Offset<HashtableOptions>(end);
  7014. return o;
  7015. }
  7016. };
  7017. inline ::flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(
  7018. ::flatbuffers::FlatBufferBuilder &_fbb,
  7019. int32_t table_id = 0,
  7020. opencv_tflite::TensorType key_dtype = opencv_tflite::TensorType_FLOAT32,
  7021. opencv_tflite::TensorType value_dtype = opencv_tflite::TensorType_FLOAT32) {
  7022. HashtableOptionsBuilder builder_(_fbb);
  7023. builder_.add_table_id(table_id);
  7024. builder_.add_value_dtype(value_dtype);
  7025. builder_.add_key_dtype(key_dtype);
  7026. return builder_.Finish();
  7027. }
  7028. struct HashtableFindOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7029. typedef HashtableFindOptionsBuilder Builder;
  7030. bool Verify(::flatbuffers::Verifier &verifier) const {
  7031. return VerifyTableStart(verifier) &&
  7032. verifier.EndTable();
  7033. }
  7034. };
  7035. struct HashtableFindOptionsBuilder {
  7036. typedef HashtableFindOptions Table;
  7037. ::flatbuffers::FlatBufferBuilder &fbb_;
  7038. ::flatbuffers::uoffset_t start_;
  7039. explicit HashtableFindOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7040. : fbb_(_fbb) {
  7041. start_ = fbb_.StartTable();
  7042. }
  7043. ::flatbuffers::Offset<HashtableFindOptions> Finish() {
  7044. const auto end = fbb_.EndTable(start_);
  7045. auto o = ::flatbuffers::Offset<HashtableFindOptions>(end);
  7046. return o;
  7047. }
  7048. };
  7049. inline ::flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(
  7050. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7051. HashtableFindOptionsBuilder builder_(_fbb);
  7052. return builder_.Finish();
  7053. }
  7054. struct HashtableImportOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7055. typedef HashtableImportOptionsBuilder Builder;
  7056. bool Verify(::flatbuffers::Verifier &verifier) const {
  7057. return VerifyTableStart(verifier) &&
  7058. verifier.EndTable();
  7059. }
  7060. };
  7061. struct HashtableImportOptionsBuilder {
  7062. typedef HashtableImportOptions Table;
  7063. ::flatbuffers::FlatBufferBuilder &fbb_;
  7064. ::flatbuffers::uoffset_t start_;
  7065. explicit HashtableImportOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7066. : fbb_(_fbb) {
  7067. start_ = fbb_.StartTable();
  7068. }
  7069. ::flatbuffers::Offset<HashtableImportOptions> Finish() {
  7070. const auto end = fbb_.EndTable(start_);
  7071. auto o = ::flatbuffers::Offset<HashtableImportOptions>(end);
  7072. return o;
  7073. }
  7074. };
  7075. inline ::flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(
  7076. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7077. HashtableImportOptionsBuilder builder_(_fbb);
  7078. return builder_.Finish();
  7079. }
  7080. struct HashtableSizeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7081. typedef HashtableSizeOptionsBuilder Builder;
  7082. bool Verify(::flatbuffers::Verifier &verifier) const {
  7083. return VerifyTableStart(verifier) &&
  7084. verifier.EndTable();
  7085. }
  7086. };
  7087. struct HashtableSizeOptionsBuilder {
  7088. typedef HashtableSizeOptions Table;
  7089. ::flatbuffers::FlatBufferBuilder &fbb_;
  7090. ::flatbuffers::uoffset_t start_;
  7091. explicit HashtableSizeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7092. : fbb_(_fbb) {
  7093. start_ = fbb_.StartTable();
  7094. }
  7095. ::flatbuffers::Offset<HashtableSizeOptions> Finish() {
  7096. const auto end = fbb_.EndTable(start_);
  7097. auto o = ::flatbuffers::Offset<HashtableSizeOptions>(end);
  7098. return o;
  7099. }
  7100. };
  7101. inline ::flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(
  7102. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7103. HashtableSizeOptionsBuilder builder_(_fbb);
  7104. return builder_.Finish();
  7105. }
  7106. struct VarHandleOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7107. typedef VarHandleOptionsBuilder Builder;
  7108. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7109. VT_CONTAINER = 4,
  7110. VT_SHARED_NAME = 6
  7111. };
  7112. const ::flatbuffers::String *container() const {
  7113. return GetPointer<const ::flatbuffers::String *>(VT_CONTAINER);
  7114. }
  7115. const ::flatbuffers::String *shared_name() const {
  7116. return GetPointer<const ::flatbuffers::String *>(VT_SHARED_NAME);
  7117. }
  7118. bool Verify(::flatbuffers::Verifier &verifier) const {
  7119. return VerifyTableStart(verifier) &&
  7120. VerifyOffset(verifier, VT_CONTAINER) &&
  7121. verifier.VerifyString(container()) &&
  7122. VerifyOffset(verifier, VT_SHARED_NAME) &&
  7123. verifier.VerifyString(shared_name()) &&
  7124. verifier.EndTable();
  7125. }
  7126. };
  7127. struct VarHandleOptionsBuilder {
  7128. typedef VarHandleOptions Table;
  7129. ::flatbuffers::FlatBufferBuilder &fbb_;
  7130. ::flatbuffers::uoffset_t start_;
  7131. void add_container(::flatbuffers::Offset<::flatbuffers::String> container) {
  7132. fbb_.AddOffset(VarHandleOptions::VT_CONTAINER, container);
  7133. }
  7134. void add_shared_name(::flatbuffers::Offset<::flatbuffers::String> shared_name) {
  7135. fbb_.AddOffset(VarHandleOptions::VT_SHARED_NAME, shared_name);
  7136. }
  7137. explicit VarHandleOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7138. : fbb_(_fbb) {
  7139. start_ = fbb_.StartTable();
  7140. }
  7141. ::flatbuffers::Offset<VarHandleOptions> Finish() {
  7142. const auto end = fbb_.EndTable(start_);
  7143. auto o = ::flatbuffers::Offset<VarHandleOptions>(end);
  7144. return o;
  7145. }
  7146. };
  7147. inline ::flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(
  7148. ::flatbuffers::FlatBufferBuilder &_fbb,
  7149. ::flatbuffers::Offset<::flatbuffers::String> container = 0,
  7150. ::flatbuffers::Offset<::flatbuffers::String> shared_name = 0) {
  7151. VarHandleOptionsBuilder builder_(_fbb);
  7152. builder_.add_shared_name(shared_name);
  7153. builder_.add_container(container);
  7154. return builder_.Finish();
  7155. }
  7156. inline ::flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptionsDirect(
  7157. ::flatbuffers::FlatBufferBuilder &_fbb,
  7158. const char *container = nullptr,
  7159. const char *shared_name = nullptr) {
  7160. auto container__ = container ? _fbb.CreateString(container) : 0;
  7161. auto shared_name__ = shared_name ? _fbb.CreateString(shared_name) : 0;
  7162. return opencv_tflite::CreateVarHandleOptions(
  7163. _fbb,
  7164. container__,
  7165. shared_name__);
  7166. }
  7167. struct ReadVariableOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7168. typedef ReadVariableOptionsBuilder Builder;
  7169. bool Verify(::flatbuffers::Verifier &verifier) const {
  7170. return VerifyTableStart(verifier) &&
  7171. verifier.EndTable();
  7172. }
  7173. };
  7174. struct ReadVariableOptionsBuilder {
  7175. typedef ReadVariableOptions Table;
  7176. ::flatbuffers::FlatBufferBuilder &fbb_;
  7177. ::flatbuffers::uoffset_t start_;
  7178. explicit ReadVariableOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7179. : fbb_(_fbb) {
  7180. start_ = fbb_.StartTable();
  7181. }
  7182. ::flatbuffers::Offset<ReadVariableOptions> Finish() {
  7183. const auto end = fbb_.EndTable(start_);
  7184. auto o = ::flatbuffers::Offset<ReadVariableOptions>(end);
  7185. return o;
  7186. }
  7187. };
  7188. inline ::flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(
  7189. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7190. ReadVariableOptionsBuilder builder_(_fbb);
  7191. return builder_.Finish();
  7192. }
  7193. struct AssignVariableOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7194. typedef AssignVariableOptionsBuilder Builder;
  7195. bool Verify(::flatbuffers::Verifier &verifier) const {
  7196. return VerifyTableStart(verifier) &&
  7197. verifier.EndTable();
  7198. }
  7199. };
  7200. struct AssignVariableOptionsBuilder {
  7201. typedef AssignVariableOptions Table;
  7202. ::flatbuffers::FlatBufferBuilder &fbb_;
  7203. ::flatbuffers::uoffset_t start_;
  7204. explicit AssignVariableOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7205. : fbb_(_fbb) {
  7206. start_ = fbb_.StartTable();
  7207. }
  7208. ::flatbuffers::Offset<AssignVariableOptions> Finish() {
  7209. const auto end = fbb_.EndTable(start_);
  7210. auto o = ::flatbuffers::Offset<AssignVariableOptions>(end);
  7211. return o;
  7212. }
  7213. };
  7214. inline ::flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(
  7215. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7216. AssignVariableOptionsBuilder builder_(_fbb);
  7217. return builder_.Finish();
  7218. }
  7219. struct RandomOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7220. typedef RandomOptionsBuilder Builder;
  7221. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7222. VT_SEED = 4,
  7223. VT_SEED2 = 6
  7224. };
  7225. int64_t seed() const {
  7226. return GetField<int64_t>(VT_SEED, 0);
  7227. }
  7228. int64_t seed2() const {
  7229. return GetField<int64_t>(VT_SEED2, 0);
  7230. }
  7231. bool Verify(::flatbuffers::Verifier &verifier) const {
  7232. return VerifyTableStart(verifier) &&
  7233. VerifyField<int64_t>(verifier, VT_SEED, 8) &&
  7234. VerifyField<int64_t>(verifier, VT_SEED2, 8) &&
  7235. verifier.EndTable();
  7236. }
  7237. };
  7238. struct RandomOptionsBuilder {
  7239. typedef RandomOptions Table;
  7240. ::flatbuffers::FlatBufferBuilder &fbb_;
  7241. ::flatbuffers::uoffset_t start_;
  7242. void add_seed(int64_t seed) {
  7243. fbb_.AddElement<int64_t>(RandomOptions::VT_SEED, seed, 0);
  7244. }
  7245. void add_seed2(int64_t seed2) {
  7246. fbb_.AddElement<int64_t>(RandomOptions::VT_SEED2, seed2, 0);
  7247. }
  7248. explicit RandomOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7249. : fbb_(_fbb) {
  7250. start_ = fbb_.StartTable();
  7251. }
  7252. ::flatbuffers::Offset<RandomOptions> Finish() {
  7253. const auto end = fbb_.EndTable(start_);
  7254. auto o = ::flatbuffers::Offset<RandomOptions>(end);
  7255. return o;
  7256. }
  7257. };
  7258. inline ::flatbuffers::Offset<RandomOptions> CreateRandomOptions(
  7259. ::flatbuffers::FlatBufferBuilder &_fbb,
  7260. int64_t seed = 0,
  7261. int64_t seed2 = 0) {
  7262. RandomOptionsBuilder builder_(_fbb);
  7263. builder_.add_seed2(seed2);
  7264. builder_.add_seed(seed);
  7265. return builder_.Finish();
  7266. }
  7267. struct BucketizeOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7268. typedef BucketizeOptionsBuilder Builder;
  7269. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7270. VT_BOUNDARIES = 4
  7271. };
  7272. const ::flatbuffers::Vector<float> *boundaries() const {
  7273. return GetPointer<const ::flatbuffers::Vector<float> *>(VT_BOUNDARIES);
  7274. }
  7275. bool Verify(::flatbuffers::Verifier &verifier) const {
  7276. return VerifyTableStart(verifier) &&
  7277. VerifyOffset(verifier, VT_BOUNDARIES) &&
  7278. verifier.VerifyVector(boundaries()) &&
  7279. verifier.EndTable();
  7280. }
  7281. };
  7282. struct BucketizeOptionsBuilder {
  7283. typedef BucketizeOptions Table;
  7284. ::flatbuffers::FlatBufferBuilder &fbb_;
  7285. ::flatbuffers::uoffset_t start_;
  7286. void add_boundaries(::flatbuffers::Offset<::flatbuffers::Vector<float>> boundaries) {
  7287. fbb_.AddOffset(BucketizeOptions::VT_BOUNDARIES, boundaries);
  7288. }
  7289. explicit BucketizeOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7290. : fbb_(_fbb) {
  7291. start_ = fbb_.StartTable();
  7292. }
  7293. ::flatbuffers::Offset<BucketizeOptions> Finish() {
  7294. const auto end = fbb_.EndTable(start_);
  7295. auto o = ::flatbuffers::Offset<BucketizeOptions>(end);
  7296. return o;
  7297. }
  7298. };
  7299. inline ::flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(
  7300. ::flatbuffers::FlatBufferBuilder &_fbb,
  7301. ::flatbuffers::Offset<::flatbuffers::Vector<float>> boundaries = 0) {
  7302. BucketizeOptionsBuilder builder_(_fbb);
  7303. builder_.add_boundaries(boundaries);
  7304. return builder_.Finish();
  7305. }
  7306. inline ::flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptionsDirect(
  7307. ::flatbuffers::FlatBufferBuilder &_fbb,
  7308. const std::vector<float> *boundaries = nullptr) {
  7309. auto boundaries__ = boundaries ? _fbb.CreateVector<float>(*boundaries) : 0;
  7310. return opencv_tflite::CreateBucketizeOptions(
  7311. _fbb,
  7312. boundaries__);
  7313. }
  7314. struct GeluOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7315. typedef GeluOptionsBuilder Builder;
  7316. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7317. VT_APPROXIMATE = 4
  7318. };
  7319. bool approximate() const {
  7320. return GetField<uint8_t>(VT_APPROXIMATE, 0) != 0;
  7321. }
  7322. bool Verify(::flatbuffers::Verifier &verifier) const {
  7323. return VerifyTableStart(verifier) &&
  7324. VerifyField<uint8_t>(verifier, VT_APPROXIMATE, 1) &&
  7325. verifier.EndTable();
  7326. }
  7327. };
  7328. struct GeluOptionsBuilder {
  7329. typedef GeluOptions Table;
  7330. ::flatbuffers::FlatBufferBuilder &fbb_;
  7331. ::flatbuffers::uoffset_t start_;
  7332. void add_approximate(bool approximate) {
  7333. fbb_.AddElement<uint8_t>(GeluOptions::VT_APPROXIMATE, static_cast<uint8_t>(approximate), 0);
  7334. }
  7335. explicit GeluOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7336. : fbb_(_fbb) {
  7337. start_ = fbb_.StartTable();
  7338. }
  7339. ::flatbuffers::Offset<GeluOptions> Finish() {
  7340. const auto end = fbb_.EndTable(start_);
  7341. auto o = ::flatbuffers::Offset<GeluOptions>(end);
  7342. return o;
  7343. }
  7344. };
  7345. inline ::flatbuffers::Offset<GeluOptions> CreateGeluOptions(
  7346. ::flatbuffers::FlatBufferBuilder &_fbb,
  7347. bool approximate = false) {
  7348. GeluOptionsBuilder builder_(_fbb);
  7349. builder_.add_approximate(approximate);
  7350. return builder_.Finish();
  7351. }
  7352. struct DynamicUpdateSliceOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7353. typedef DynamicUpdateSliceOptionsBuilder Builder;
  7354. bool Verify(::flatbuffers::Verifier &verifier) const {
  7355. return VerifyTableStart(verifier) &&
  7356. verifier.EndTable();
  7357. }
  7358. };
  7359. struct DynamicUpdateSliceOptionsBuilder {
  7360. typedef DynamicUpdateSliceOptions Table;
  7361. ::flatbuffers::FlatBufferBuilder &fbb_;
  7362. ::flatbuffers::uoffset_t start_;
  7363. explicit DynamicUpdateSliceOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7364. : fbb_(_fbb) {
  7365. start_ = fbb_.StartTable();
  7366. }
  7367. ::flatbuffers::Offset<DynamicUpdateSliceOptions> Finish() {
  7368. const auto end = fbb_.EndTable(start_);
  7369. auto o = ::flatbuffers::Offset<DynamicUpdateSliceOptions>(end);
  7370. return o;
  7371. }
  7372. };
  7373. inline ::flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(
  7374. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7375. DynamicUpdateSliceOptionsBuilder builder_(_fbb);
  7376. return builder_.Finish();
  7377. }
  7378. struct UnsortedSegmentProdOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7379. typedef UnsortedSegmentProdOptionsBuilder Builder;
  7380. bool Verify(::flatbuffers::Verifier &verifier) const {
  7381. return VerifyTableStart(verifier) &&
  7382. verifier.EndTable();
  7383. }
  7384. };
  7385. struct UnsortedSegmentProdOptionsBuilder {
  7386. typedef UnsortedSegmentProdOptions Table;
  7387. ::flatbuffers::FlatBufferBuilder &fbb_;
  7388. ::flatbuffers::uoffset_t start_;
  7389. explicit UnsortedSegmentProdOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7390. : fbb_(_fbb) {
  7391. start_ = fbb_.StartTable();
  7392. }
  7393. ::flatbuffers::Offset<UnsortedSegmentProdOptions> Finish() {
  7394. const auto end = fbb_.EndTable(start_);
  7395. auto o = ::flatbuffers::Offset<UnsortedSegmentProdOptions>(end);
  7396. return o;
  7397. }
  7398. };
  7399. inline ::flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(
  7400. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7401. UnsortedSegmentProdOptionsBuilder builder_(_fbb);
  7402. return builder_.Finish();
  7403. }
  7404. struct UnsortedSegmentMaxOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7405. typedef UnsortedSegmentMaxOptionsBuilder Builder;
  7406. bool Verify(::flatbuffers::Verifier &verifier) const {
  7407. return VerifyTableStart(verifier) &&
  7408. verifier.EndTable();
  7409. }
  7410. };
  7411. struct UnsortedSegmentMaxOptionsBuilder {
  7412. typedef UnsortedSegmentMaxOptions Table;
  7413. ::flatbuffers::FlatBufferBuilder &fbb_;
  7414. ::flatbuffers::uoffset_t start_;
  7415. explicit UnsortedSegmentMaxOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7416. : fbb_(_fbb) {
  7417. start_ = fbb_.StartTable();
  7418. }
  7419. ::flatbuffers::Offset<UnsortedSegmentMaxOptions> Finish() {
  7420. const auto end = fbb_.EndTable(start_);
  7421. auto o = ::flatbuffers::Offset<UnsortedSegmentMaxOptions>(end);
  7422. return o;
  7423. }
  7424. };
  7425. inline ::flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(
  7426. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7427. UnsortedSegmentMaxOptionsBuilder builder_(_fbb);
  7428. return builder_.Finish();
  7429. }
  7430. struct UnsortedSegmentSumOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7431. typedef UnsortedSegmentSumOptionsBuilder Builder;
  7432. bool Verify(::flatbuffers::Verifier &verifier) const {
  7433. return VerifyTableStart(verifier) &&
  7434. verifier.EndTable();
  7435. }
  7436. };
  7437. struct UnsortedSegmentSumOptionsBuilder {
  7438. typedef UnsortedSegmentSumOptions Table;
  7439. ::flatbuffers::FlatBufferBuilder &fbb_;
  7440. ::flatbuffers::uoffset_t start_;
  7441. explicit UnsortedSegmentSumOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7442. : fbb_(_fbb) {
  7443. start_ = fbb_.StartTable();
  7444. }
  7445. ::flatbuffers::Offset<UnsortedSegmentSumOptions> Finish() {
  7446. const auto end = fbb_.EndTable(start_);
  7447. auto o = ::flatbuffers::Offset<UnsortedSegmentSumOptions>(end);
  7448. return o;
  7449. }
  7450. };
  7451. inline ::flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(
  7452. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7453. UnsortedSegmentSumOptionsBuilder builder_(_fbb);
  7454. return builder_.Finish();
  7455. }
  7456. struct ATan2Options FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7457. typedef ATan2OptionsBuilder Builder;
  7458. bool Verify(::flatbuffers::Verifier &verifier) const {
  7459. return VerifyTableStart(verifier) &&
  7460. verifier.EndTable();
  7461. }
  7462. };
  7463. struct ATan2OptionsBuilder {
  7464. typedef ATan2Options Table;
  7465. ::flatbuffers::FlatBufferBuilder &fbb_;
  7466. ::flatbuffers::uoffset_t start_;
  7467. explicit ATan2OptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7468. : fbb_(_fbb) {
  7469. start_ = fbb_.StartTable();
  7470. }
  7471. ::flatbuffers::Offset<ATan2Options> Finish() {
  7472. const auto end = fbb_.EndTable(start_);
  7473. auto o = ::flatbuffers::Offset<ATan2Options>(end);
  7474. return o;
  7475. }
  7476. };
  7477. inline ::flatbuffers::Offset<ATan2Options> CreateATan2Options(
  7478. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7479. ATan2OptionsBuilder builder_(_fbb);
  7480. return builder_.Finish();
  7481. }
  7482. struct UnsortedSegmentMinOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7483. typedef UnsortedSegmentMinOptionsBuilder Builder;
  7484. bool Verify(::flatbuffers::Verifier &verifier) const {
  7485. return VerifyTableStart(verifier) &&
  7486. verifier.EndTable();
  7487. }
  7488. };
  7489. struct UnsortedSegmentMinOptionsBuilder {
  7490. typedef UnsortedSegmentMinOptions Table;
  7491. ::flatbuffers::FlatBufferBuilder &fbb_;
  7492. ::flatbuffers::uoffset_t start_;
  7493. explicit UnsortedSegmentMinOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7494. : fbb_(_fbb) {
  7495. start_ = fbb_.StartTable();
  7496. }
  7497. ::flatbuffers::Offset<UnsortedSegmentMinOptions> Finish() {
  7498. const auto end = fbb_.EndTable(start_);
  7499. auto o = ::flatbuffers::Offset<UnsortedSegmentMinOptions>(end);
  7500. return o;
  7501. }
  7502. };
  7503. inline ::flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(
  7504. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7505. UnsortedSegmentMinOptionsBuilder builder_(_fbb);
  7506. return builder_.Finish();
  7507. }
  7508. struct SignOptions FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7509. typedef SignOptionsBuilder Builder;
  7510. bool Verify(::flatbuffers::Verifier &verifier) const {
  7511. return VerifyTableStart(verifier) &&
  7512. verifier.EndTable();
  7513. }
  7514. };
  7515. struct SignOptionsBuilder {
  7516. typedef SignOptions Table;
  7517. ::flatbuffers::FlatBufferBuilder &fbb_;
  7518. ::flatbuffers::uoffset_t start_;
  7519. explicit SignOptionsBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7520. : fbb_(_fbb) {
  7521. start_ = fbb_.StartTable();
  7522. }
  7523. ::flatbuffers::Offset<SignOptions> Finish() {
  7524. const auto end = fbb_.EndTable(start_);
  7525. auto o = ::flatbuffers::Offset<SignOptions>(end);
  7526. return o;
  7527. }
  7528. };
  7529. inline ::flatbuffers::Offset<SignOptions> CreateSignOptions(
  7530. ::flatbuffers::FlatBufferBuilder &_fbb) {
  7531. SignOptionsBuilder builder_(_fbb);
  7532. return builder_.Finish();
  7533. }
  7534. struct OperatorCode FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7535. typedef OperatorCodeBuilder Builder;
  7536. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7537. VT_DEPRECATED_BUILTIN_CODE = 4,
  7538. VT_CUSTOM_CODE = 6,
  7539. VT_VERSION = 8,
  7540. VT_BUILTIN_CODE = 10
  7541. };
  7542. int8_t deprecated_builtin_code() const {
  7543. return GetField<int8_t>(VT_DEPRECATED_BUILTIN_CODE, 0);
  7544. }
  7545. const ::flatbuffers::String *custom_code() const {
  7546. return GetPointer<const ::flatbuffers::String *>(VT_CUSTOM_CODE);
  7547. }
  7548. int32_t version() const {
  7549. return GetField<int32_t>(VT_VERSION, 1);
  7550. }
  7551. opencv_tflite::BuiltinOperator builtin_code() const {
  7552. return static_cast<opencv_tflite::BuiltinOperator>(GetField<int32_t>(VT_BUILTIN_CODE, 0));
  7553. }
  7554. bool Verify(::flatbuffers::Verifier &verifier) const {
  7555. return VerifyTableStart(verifier) &&
  7556. VerifyField<int8_t>(verifier, VT_DEPRECATED_BUILTIN_CODE, 1) &&
  7557. VerifyOffset(verifier, VT_CUSTOM_CODE) &&
  7558. verifier.VerifyString(custom_code()) &&
  7559. VerifyField<int32_t>(verifier, VT_VERSION, 4) &&
  7560. VerifyField<int32_t>(verifier, VT_BUILTIN_CODE, 4) &&
  7561. verifier.EndTable();
  7562. }
  7563. };
  7564. struct OperatorCodeBuilder {
  7565. typedef OperatorCode Table;
  7566. ::flatbuffers::FlatBufferBuilder &fbb_;
  7567. ::flatbuffers::uoffset_t start_;
  7568. void add_deprecated_builtin_code(int8_t deprecated_builtin_code) {
  7569. fbb_.AddElement<int8_t>(OperatorCode::VT_DEPRECATED_BUILTIN_CODE, deprecated_builtin_code, 0);
  7570. }
  7571. void add_custom_code(::flatbuffers::Offset<::flatbuffers::String> custom_code) {
  7572. fbb_.AddOffset(OperatorCode::VT_CUSTOM_CODE, custom_code);
  7573. }
  7574. void add_version(int32_t version) {
  7575. fbb_.AddElement<int32_t>(OperatorCode::VT_VERSION, version, 1);
  7576. }
  7577. void add_builtin_code(opencv_tflite::BuiltinOperator builtin_code) {
  7578. fbb_.AddElement<int32_t>(OperatorCode::VT_BUILTIN_CODE, static_cast<int32_t>(builtin_code), 0);
  7579. }
  7580. explicit OperatorCodeBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  7581. : fbb_(_fbb) {
  7582. start_ = fbb_.StartTable();
  7583. }
  7584. ::flatbuffers::Offset<OperatorCode> Finish() {
  7585. const auto end = fbb_.EndTable(start_);
  7586. auto o = ::flatbuffers::Offset<OperatorCode>(end);
  7587. return o;
  7588. }
  7589. };
  7590. inline ::flatbuffers::Offset<OperatorCode> CreateOperatorCode(
  7591. ::flatbuffers::FlatBufferBuilder &_fbb,
  7592. int8_t deprecated_builtin_code = 0,
  7593. ::flatbuffers::Offset<::flatbuffers::String> custom_code = 0,
  7594. int32_t version = 1,
  7595. opencv_tflite::BuiltinOperator builtin_code = opencv_tflite::BuiltinOperator_ADD) {
  7596. OperatorCodeBuilder builder_(_fbb);
  7597. builder_.add_builtin_code(builtin_code);
  7598. builder_.add_version(version);
  7599. builder_.add_custom_code(custom_code);
  7600. builder_.add_deprecated_builtin_code(deprecated_builtin_code);
  7601. return builder_.Finish();
  7602. }
  7603. inline ::flatbuffers::Offset<OperatorCode> CreateOperatorCodeDirect(
  7604. ::flatbuffers::FlatBufferBuilder &_fbb,
  7605. int8_t deprecated_builtin_code = 0,
  7606. const char *custom_code = nullptr,
  7607. int32_t version = 1,
  7608. opencv_tflite::BuiltinOperator builtin_code = opencv_tflite::BuiltinOperator_ADD) {
  7609. auto custom_code__ = custom_code ? _fbb.CreateString(custom_code) : 0;
  7610. return opencv_tflite::CreateOperatorCode(
  7611. _fbb,
  7612. deprecated_builtin_code,
  7613. custom_code__,
  7614. version,
  7615. builtin_code);
  7616. }
  7617. struct Operator FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  7618. typedef OperatorBuilder Builder;
  7619. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7620. VT_OPCODE_INDEX = 4,
  7621. VT_INPUTS = 6,
  7622. VT_OUTPUTS = 8,
  7623. VT_BUILTIN_OPTIONS_TYPE = 10,
  7624. VT_BUILTIN_OPTIONS = 12,
  7625. VT_CUSTOM_OPTIONS = 14,
  7626. VT_CUSTOM_OPTIONS_FORMAT = 16,
  7627. VT_MUTATING_VARIABLE_INPUTS = 18,
  7628. VT_INTERMEDIATES = 20
  7629. };
  7630. uint32_t opcode_index() const {
  7631. return GetField<uint32_t>(VT_OPCODE_INDEX, 0);
  7632. }
  7633. const ::flatbuffers::Vector<int32_t> *inputs() const {
  7634. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_INPUTS);
  7635. }
  7636. const ::flatbuffers::Vector<int32_t> *outputs() const {
  7637. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
  7638. }
  7639. opencv_tflite::BuiltinOptions builtin_options_type() const {
  7640. return static_cast<opencv_tflite::BuiltinOptions>(GetField<uint8_t>(VT_BUILTIN_OPTIONS_TYPE, 0));
  7641. }
  7642. const void *builtin_options() const {
  7643. return GetPointer<const void *>(VT_BUILTIN_OPTIONS);
  7644. }
  7645. template<typename T> const T *builtin_options_as() const;
  7646. const opencv_tflite::Conv2DOptions *builtin_options_as_Conv2DOptions() const {
  7647. return builtin_options_type() == opencv_tflite::BuiltinOptions_Conv2DOptions ? static_cast<const opencv_tflite::Conv2DOptions *>(builtin_options()) : nullptr;
  7648. }
  7649. const opencv_tflite::DepthwiseConv2DOptions *builtin_options_as_DepthwiseConv2DOptions() const {
  7650. return builtin_options_type() == opencv_tflite::BuiltinOptions_DepthwiseConv2DOptions ? static_cast<const opencv_tflite::DepthwiseConv2DOptions *>(builtin_options()) : nullptr;
  7651. }
  7652. const opencv_tflite::ConcatEmbeddingsOptions *builtin_options_as_ConcatEmbeddingsOptions() const {
  7653. return builtin_options_type() == opencv_tflite::BuiltinOptions_ConcatEmbeddingsOptions ? static_cast<const opencv_tflite::ConcatEmbeddingsOptions *>(builtin_options()) : nullptr;
  7654. }
  7655. const opencv_tflite::LSHProjectionOptions *builtin_options_as_LSHProjectionOptions() const {
  7656. return builtin_options_type() == opencv_tflite::BuiltinOptions_LSHProjectionOptions ? static_cast<const opencv_tflite::LSHProjectionOptions *>(builtin_options()) : nullptr;
  7657. }
  7658. const opencv_tflite::Pool2DOptions *builtin_options_as_Pool2DOptions() const {
  7659. return builtin_options_type() == opencv_tflite::BuiltinOptions_Pool2DOptions ? static_cast<const opencv_tflite::Pool2DOptions *>(builtin_options()) : nullptr;
  7660. }
  7661. const opencv_tflite::SVDFOptions *builtin_options_as_SVDFOptions() const {
  7662. return builtin_options_type() == opencv_tflite::BuiltinOptions_SVDFOptions ? static_cast<const opencv_tflite::SVDFOptions *>(builtin_options()) : nullptr;
  7663. }
  7664. const opencv_tflite::RNNOptions *builtin_options_as_RNNOptions() const {
  7665. return builtin_options_type() == opencv_tflite::BuiltinOptions_RNNOptions ? static_cast<const opencv_tflite::RNNOptions *>(builtin_options()) : nullptr;
  7666. }
  7667. const opencv_tflite::FullyConnectedOptions *builtin_options_as_FullyConnectedOptions() const {
  7668. return builtin_options_type() == opencv_tflite::BuiltinOptions_FullyConnectedOptions ? static_cast<const opencv_tflite::FullyConnectedOptions *>(builtin_options()) : nullptr;
  7669. }
  7670. const opencv_tflite::SoftmaxOptions *builtin_options_as_SoftmaxOptions() const {
  7671. return builtin_options_type() == opencv_tflite::BuiltinOptions_SoftmaxOptions ? static_cast<const opencv_tflite::SoftmaxOptions *>(builtin_options()) : nullptr;
  7672. }
  7673. const opencv_tflite::ConcatenationOptions *builtin_options_as_ConcatenationOptions() const {
  7674. return builtin_options_type() == opencv_tflite::BuiltinOptions_ConcatenationOptions ? static_cast<const opencv_tflite::ConcatenationOptions *>(builtin_options()) : nullptr;
  7675. }
  7676. const opencv_tflite::AddOptions *builtin_options_as_AddOptions() const {
  7677. return builtin_options_type() == opencv_tflite::BuiltinOptions_AddOptions ? static_cast<const opencv_tflite::AddOptions *>(builtin_options()) : nullptr;
  7678. }
  7679. const opencv_tflite::L2NormOptions *builtin_options_as_L2NormOptions() const {
  7680. return builtin_options_type() == opencv_tflite::BuiltinOptions_L2NormOptions ? static_cast<const opencv_tflite::L2NormOptions *>(builtin_options()) : nullptr;
  7681. }
  7682. const opencv_tflite::LocalResponseNormalizationOptions *builtin_options_as_LocalResponseNormalizationOptions() const {
  7683. return builtin_options_type() == opencv_tflite::BuiltinOptions_LocalResponseNormalizationOptions ? static_cast<const opencv_tflite::LocalResponseNormalizationOptions *>(builtin_options()) : nullptr;
  7684. }
  7685. const opencv_tflite::LSTMOptions *builtin_options_as_LSTMOptions() const {
  7686. return builtin_options_type() == opencv_tflite::BuiltinOptions_LSTMOptions ? static_cast<const opencv_tflite::LSTMOptions *>(builtin_options()) : nullptr;
  7687. }
  7688. const opencv_tflite::ResizeBilinearOptions *builtin_options_as_ResizeBilinearOptions() const {
  7689. return builtin_options_type() == opencv_tflite::BuiltinOptions_ResizeBilinearOptions ? static_cast<const opencv_tflite::ResizeBilinearOptions *>(builtin_options()) : nullptr;
  7690. }
  7691. const opencv_tflite::CallOptions *builtin_options_as_CallOptions() const {
  7692. return builtin_options_type() == opencv_tflite::BuiltinOptions_CallOptions ? static_cast<const opencv_tflite::CallOptions *>(builtin_options()) : nullptr;
  7693. }
  7694. const opencv_tflite::ReshapeOptions *builtin_options_as_ReshapeOptions() const {
  7695. return builtin_options_type() == opencv_tflite::BuiltinOptions_ReshapeOptions ? static_cast<const opencv_tflite::ReshapeOptions *>(builtin_options()) : nullptr;
  7696. }
  7697. const opencv_tflite::SkipGramOptions *builtin_options_as_SkipGramOptions() const {
  7698. return builtin_options_type() == opencv_tflite::BuiltinOptions_SkipGramOptions ? static_cast<const opencv_tflite::SkipGramOptions *>(builtin_options()) : nullptr;
  7699. }
  7700. const opencv_tflite::SpaceToDepthOptions *builtin_options_as_SpaceToDepthOptions() const {
  7701. return builtin_options_type() == opencv_tflite::BuiltinOptions_SpaceToDepthOptions ? static_cast<const opencv_tflite::SpaceToDepthOptions *>(builtin_options()) : nullptr;
  7702. }
  7703. const opencv_tflite::EmbeddingLookupSparseOptions *builtin_options_as_EmbeddingLookupSparseOptions() const {
  7704. return builtin_options_type() == opencv_tflite::BuiltinOptions_EmbeddingLookupSparseOptions ? static_cast<const opencv_tflite::EmbeddingLookupSparseOptions *>(builtin_options()) : nullptr;
  7705. }
  7706. const opencv_tflite::MulOptions *builtin_options_as_MulOptions() const {
  7707. return builtin_options_type() == opencv_tflite::BuiltinOptions_MulOptions ? static_cast<const opencv_tflite::MulOptions *>(builtin_options()) : nullptr;
  7708. }
  7709. const opencv_tflite::PadOptions *builtin_options_as_PadOptions() const {
  7710. return builtin_options_type() == opencv_tflite::BuiltinOptions_PadOptions ? static_cast<const opencv_tflite::PadOptions *>(builtin_options()) : nullptr;
  7711. }
  7712. const opencv_tflite::GatherOptions *builtin_options_as_GatherOptions() const {
  7713. return builtin_options_type() == opencv_tflite::BuiltinOptions_GatherOptions ? static_cast<const opencv_tflite::GatherOptions *>(builtin_options()) : nullptr;
  7714. }
  7715. const opencv_tflite::BatchToSpaceNDOptions *builtin_options_as_BatchToSpaceNDOptions() const {
  7716. return builtin_options_type() == opencv_tflite::BuiltinOptions_BatchToSpaceNDOptions ? static_cast<const opencv_tflite::BatchToSpaceNDOptions *>(builtin_options()) : nullptr;
  7717. }
  7718. const opencv_tflite::SpaceToBatchNDOptions *builtin_options_as_SpaceToBatchNDOptions() const {
  7719. return builtin_options_type() == opencv_tflite::BuiltinOptions_SpaceToBatchNDOptions ? static_cast<const opencv_tflite::SpaceToBatchNDOptions *>(builtin_options()) : nullptr;
  7720. }
  7721. const opencv_tflite::TransposeOptions *builtin_options_as_TransposeOptions() const {
  7722. return builtin_options_type() == opencv_tflite::BuiltinOptions_TransposeOptions ? static_cast<const opencv_tflite::TransposeOptions *>(builtin_options()) : nullptr;
  7723. }
  7724. const opencv_tflite::ReducerOptions *builtin_options_as_ReducerOptions() const {
  7725. return builtin_options_type() == opencv_tflite::BuiltinOptions_ReducerOptions ? static_cast<const opencv_tflite::ReducerOptions *>(builtin_options()) : nullptr;
  7726. }
  7727. const opencv_tflite::SubOptions *builtin_options_as_SubOptions() const {
  7728. return builtin_options_type() == opencv_tflite::BuiltinOptions_SubOptions ? static_cast<const opencv_tflite::SubOptions *>(builtin_options()) : nullptr;
  7729. }
  7730. const opencv_tflite::DivOptions *builtin_options_as_DivOptions() const {
  7731. return builtin_options_type() == opencv_tflite::BuiltinOptions_DivOptions ? static_cast<const opencv_tflite::DivOptions *>(builtin_options()) : nullptr;
  7732. }
  7733. const opencv_tflite::SqueezeOptions *builtin_options_as_SqueezeOptions() const {
  7734. return builtin_options_type() == opencv_tflite::BuiltinOptions_SqueezeOptions ? static_cast<const opencv_tflite::SqueezeOptions *>(builtin_options()) : nullptr;
  7735. }
  7736. const opencv_tflite::SequenceRNNOptions *builtin_options_as_SequenceRNNOptions() const {
  7737. return builtin_options_type() == opencv_tflite::BuiltinOptions_SequenceRNNOptions ? static_cast<const opencv_tflite::SequenceRNNOptions *>(builtin_options()) : nullptr;
  7738. }
  7739. const opencv_tflite::StridedSliceOptions *builtin_options_as_StridedSliceOptions() const {
  7740. return builtin_options_type() == opencv_tflite::BuiltinOptions_StridedSliceOptions ? static_cast<const opencv_tflite::StridedSliceOptions *>(builtin_options()) : nullptr;
  7741. }
  7742. const opencv_tflite::ExpOptions *builtin_options_as_ExpOptions() const {
  7743. return builtin_options_type() == opencv_tflite::BuiltinOptions_ExpOptions ? static_cast<const opencv_tflite::ExpOptions *>(builtin_options()) : nullptr;
  7744. }
  7745. const opencv_tflite::TopKV2Options *builtin_options_as_TopKV2Options() const {
  7746. return builtin_options_type() == opencv_tflite::BuiltinOptions_TopKV2Options ? static_cast<const opencv_tflite::TopKV2Options *>(builtin_options()) : nullptr;
  7747. }
  7748. const opencv_tflite::SplitOptions *builtin_options_as_SplitOptions() const {
  7749. return builtin_options_type() == opencv_tflite::BuiltinOptions_SplitOptions ? static_cast<const opencv_tflite::SplitOptions *>(builtin_options()) : nullptr;
  7750. }
  7751. const opencv_tflite::LogSoftmaxOptions *builtin_options_as_LogSoftmaxOptions() const {
  7752. return builtin_options_type() == opencv_tflite::BuiltinOptions_LogSoftmaxOptions ? static_cast<const opencv_tflite::LogSoftmaxOptions *>(builtin_options()) : nullptr;
  7753. }
  7754. const opencv_tflite::CastOptions *builtin_options_as_CastOptions() const {
  7755. return builtin_options_type() == opencv_tflite::BuiltinOptions_CastOptions ? static_cast<const opencv_tflite::CastOptions *>(builtin_options()) : nullptr;
  7756. }
  7757. const opencv_tflite::DequantizeOptions *builtin_options_as_DequantizeOptions() const {
  7758. return builtin_options_type() == opencv_tflite::BuiltinOptions_DequantizeOptions ? static_cast<const opencv_tflite::DequantizeOptions *>(builtin_options()) : nullptr;
  7759. }
  7760. const opencv_tflite::MaximumMinimumOptions *builtin_options_as_MaximumMinimumOptions() const {
  7761. return builtin_options_type() == opencv_tflite::BuiltinOptions_MaximumMinimumOptions ? static_cast<const opencv_tflite::MaximumMinimumOptions *>(builtin_options()) : nullptr;
  7762. }
  7763. const opencv_tflite::ArgMaxOptions *builtin_options_as_ArgMaxOptions() const {
  7764. return builtin_options_type() == opencv_tflite::BuiltinOptions_ArgMaxOptions ? static_cast<const opencv_tflite::ArgMaxOptions *>(builtin_options()) : nullptr;
  7765. }
  7766. const opencv_tflite::LessOptions *builtin_options_as_LessOptions() const {
  7767. return builtin_options_type() == opencv_tflite::BuiltinOptions_LessOptions ? static_cast<const opencv_tflite::LessOptions *>(builtin_options()) : nullptr;
  7768. }
  7769. const opencv_tflite::NegOptions *builtin_options_as_NegOptions() const {
  7770. return builtin_options_type() == opencv_tflite::BuiltinOptions_NegOptions ? static_cast<const opencv_tflite::NegOptions *>(builtin_options()) : nullptr;
  7771. }
  7772. const opencv_tflite::PadV2Options *builtin_options_as_PadV2Options() const {
  7773. return builtin_options_type() == opencv_tflite::BuiltinOptions_PadV2Options ? static_cast<const opencv_tflite::PadV2Options *>(builtin_options()) : nullptr;
  7774. }
  7775. const opencv_tflite::GreaterOptions *builtin_options_as_GreaterOptions() const {
  7776. return builtin_options_type() == opencv_tflite::BuiltinOptions_GreaterOptions ? static_cast<const opencv_tflite::GreaterOptions *>(builtin_options()) : nullptr;
  7777. }
  7778. const opencv_tflite::GreaterEqualOptions *builtin_options_as_GreaterEqualOptions() const {
  7779. return builtin_options_type() == opencv_tflite::BuiltinOptions_GreaterEqualOptions ? static_cast<const opencv_tflite::GreaterEqualOptions *>(builtin_options()) : nullptr;
  7780. }
  7781. const opencv_tflite::LessEqualOptions *builtin_options_as_LessEqualOptions() const {
  7782. return builtin_options_type() == opencv_tflite::BuiltinOptions_LessEqualOptions ? static_cast<const opencv_tflite::LessEqualOptions *>(builtin_options()) : nullptr;
  7783. }
  7784. const opencv_tflite::SelectOptions *builtin_options_as_SelectOptions() const {
  7785. return builtin_options_type() == opencv_tflite::BuiltinOptions_SelectOptions ? static_cast<const opencv_tflite::SelectOptions *>(builtin_options()) : nullptr;
  7786. }
  7787. const opencv_tflite::SliceOptions *builtin_options_as_SliceOptions() const {
  7788. return builtin_options_type() == opencv_tflite::BuiltinOptions_SliceOptions ? static_cast<const opencv_tflite::SliceOptions *>(builtin_options()) : nullptr;
  7789. }
  7790. const opencv_tflite::TransposeConvOptions *builtin_options_as_TransposeConvOptions() const {
  7791. return builtin_options_type() == opencv_tflite::BuiltinOptions_TransposeConvOptions ? static_cast<const opencv_tflite::TransposeConvOptions *>(builtin_options()) : nullptr;
  7792. }
  7793. const opencv_tflite::SparseToDenseOptions *builtin_options_as_SparseToDenseOptions() const {
  7794. return builtin_options_type() == opencv_tflite::BuiltinOptions_SparseToDenseOptions ? static_cast<const opencv_tflite::SparseToDenseOptions *>(builtin_options()) : nullptr;
  7795. }
  7796. const opencv_tflite::TileOptions *builtin_options_as_TileOptions() const {
  7797. return builtin_options_type() == opencv_tflite::BuiltinOptions_TileOptions ? static_cast<const opencv_tflite::TileOptions *>(builtin_options()) : nullptr;
  7798. }
  7799. const opencv_tflite::ExpandDimsOptions *builtin_options_as_ExpandDimsOptions() const {
  7800. return builtin_options_type() == opencv_tflite::BuiltinOptions_ExpandDimsOptions ? static_cast<const opencv_tflite::ExpandDimsOptions *>(builtin_options()) : nullptr;
  7801. }
  7802. const opencv_tflite::EqualOptions *builtin_options_as_EqualOptions() const {
  7803. return builtin_options_type() == opencv_tflite::BuiltinOptions_EqualOptions ? static_cast<const opencv_tflite::EqualOptions *>(builtin_options()) : nullptr;
  7804. }
  7805. const opencv_tflite::NotEqualOptions *builtin_options_as_NotEqualOptions() const {
  7806. return builtin_options_type() == opencv_tflite::BuiltinOptions_NotEqualOptions ? static_cast<const opencv_tflite::NotEqualOptions *>(builtin_options()) : nullptr;
  7807. }
  7808. const opencv_tflite::ShapeOptions *builtin_options_as_ShapeOptions() const {
  7809. return builtin_options_type() == opencv_tflite::BuiltinOptions_ShapeOptions ? static_cast<const opencv_tflite::ShapeOptions *>(builtin_options()) : nullptr;
  7810. }
  7811. const opencv_tflite::PowOptions *builtin_options_as_PowOptions() const {
  7812. return builtin_options_type() == opencv_tflite::BuiltinOptions_PowOptions ? static_cast<const opencv_tflite::PowOptions *>(builtin_options()) : nullptr;
  7813. }
  7814. const opencv_tflite::ArgMinOptions *builtin_options_as_ArgMinOptions() const {
  7815. return builtin_options_type() == opencv_tflite::BuiltinOptions_ArgMinOptions ? static_cast<const opencv_tflite::ArgMinOptions *>(builtin_options()) : nullptr;
  7816. }
  7817. const opencv_tflite::FakeQuantOptions *builtin_options_as_FakeQuantOptions() const {
  7818. return builtin_options_type() == opencv_tflite::BuiltinOptions_FakeQuantOptions ? static_cast<const opencv_tflite::FakeQuantOptions *>(builtin_options()) : nullptr;
  7819. }
  7820. const opencv_tflite::PackOptions *builtin_options_as_PackOptions() const {
  7821. return builtin_options_type() == opencv_tflite::BuiltinOptions_PackOptions ? static_cast<const opencv_tflite::PackOptions *>(builtin_options()) : nullptr;
  7822. }
  7823. const opencv_tflite::LogicalOrOptions *builtin_options_as_LogicalOrOptions() const {
  7824. return builtin_options_type() == opencv_tflite::BuiltinOptions_LogicalOrOptions ? static_cast<const opencv_tflite::LogicalOrOptions *>(builtin_options()) : nullptr;
  7825. }
  7826. const opencv_tflite::OneHotOptions *builtin_options_as_OneHotOptions() const {
  7827. return builtin_options_type() == opencv_tflite::BuiltinOptions_OneHotOptions ? static_cast<const opencv_tflite::OneHotOptions *>(builtin_options()) : nullptr;
  7828. }
  7829. const opencv_tflite::LogicalAndOptions *builtin_options_as_LogicalAndOptions() const {
  7830. return builtin_options_type() == opencv_tflite::BuiltinOptions_LogicalAndOptions ? static_cast<const opencv_tflite::LogicalAndOptions *>(builtin_options()) : nullptr;
  7831. }
  7832. const opencv_tflite::LogicalNotOptions *builtin_options_as_LogicalNotOptions() const {
  7833. return builtin_options_type() == opencv_tflite::BuiltinOptions_LogicalNotOptions ? static_cast<const opencv_tflite::LogicalNotOptions *>(builtin_options()) : nullptr;
  7834. }
  7835. const opencv_tflite::UnpackOptions *builtin_options_as_UnpackOptions() const {
  7836. return builtin_options_type() == opencv_tflite::BuiltinOptions_UnpackOptions ? static_cast<const opencv_tflite::UnpackOptions *>(builtin_options()) : nullptr;
  7837. }
  7838. const opencv_tflite::FloorDivOptions *builtin_options_as_FloorDivOptions() const {
  7839. return builtin_options_type() == opencv_tflite::BuiltinOptions_FloorDivOptions ? static_cast<const opencv_tflite::FloorDivOptions *>(builtin_options()) : nullptr;
  7840. }
  7841. const opencv_tflite::SquareOptions *builtin_options_as_SquareOptions() const {
  7842. return builtin_options_type() == opencv_tflite::BuiltinOptions_SquareOptions ? static_cast<const opencv_tflite::SquareOptions *>(builtin_options()) : nullptr;
  7843. }
  7844. const opencv_tflite::ZerosLikeOptions *builtin_options_as_ZerosLikeOptions() const {
  7845. return builtin_options_type() == opencv_tflite::BuiltinOptions_ZerosLikeOptions ? static_cast<const opencv_tflite::ZerosLikeOptions *>(builtin_options()) : nullptr;
  7846. }
  7847. const opencv_tflite::FillOptions *builtin_options_as_FillOptions() const {
  7848. return builtin_options_type() == opencv_tflite::BuiltinOptions_FillOptions ? static_cast<const opencv_tflite::FillOptions *>(builtin_options()) : nullptr;
  7849. }
  7850. const opencv_tflite::BidirectionalSequenceLSTMOptions *builtin_options_as_BidirectionalSequenceLSTMOptions() const {
  7851. return builtin_options_type() == opencv_tflite::BuiltinOptions_BidirectionalSequenceLSTMOptions ? static_cast<const opencv_tflite::BidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
  7852. }
  7853. const opencv_tflite::BidirectionalSequenceRNNOptions *builtin_options_as_BidirectionalSequenceRNNOptions() const {
  7854. return builtin_options_type() == opencv_tflite::BuiltinOptions_BidirectionalSequenceRNNOptions ? static_cast<const opencv_tflite::BidirectionalSequenceRNNOptions *>(builtin_options()) : nullptr;
  7855. }
  7856. const opencv_tflite::UnidirectionalSequenceLSTMOptions *builtin_options_as_UnidirectionalSequenceLSTMOptions() const {
  7857. return builtin_options_type() == opencv_tflite::BuiltinOptions_UnidirectionalSequenceLSTMOptions ? static_cast<const opencv_tflite::UnidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
  7858. }
  7859. const opencv_tflite::FloorModOptions *builtin_options_as_FloorModOptions() const {
  7860. return builtin_options_type() == opencv_tflite::BuiltinOptions_FloorModOptions ? static_cast<const opencv_tflite::FloorModOptions *>(builtin_options()) : nullptr;
  7861. }
  7862. const opencv_tflite::RangeOptions *builtin_options_as_RangeOptions() const {
  7863. return builtin_options_type() == opencv_tflite::BuiltinOptions_RangeOptions ? static_cast<const opencv_tflite::RangeOptions *>(builtin_options()) : nullptr;
  7864. }
  7865. const opencv_tflite::ResizeNearestNeighborOptions *builtin_options_as_ResizeNearestNeighborOptions() const {
  7866. return builtin_options_type() == opencv_tflite::BuiltinOptions_ResizeNearestNeighborOptions ? static_cast<const opencv_tflite::ResizeNearestNeighborOptions *>(builtin_options()) : nullptr;
  7867. }
  7868. const opencv_tflite::LeakyReluOptions *builtin_options_as_LeakyReluOptions() const {
  7869. return builtin_options_type() == opencv_tflite::BuiltinOptions_LeakyReluOptions ? static_cast<const opencv_tflite::LeakyReluOptions *>(builtin_options()) : nullptr;
  7870. }
  7871. const opencv_tflite::SquaredDifferenceOptions *builtin_options_as_SquaredDifferenceOptions() const {
  7872. return builtin_options_type() == opencv_tflite::BuiltinOptions_SquaredDifferenceOptions ? static_cast<const opencv_tflite::SquaredDifferenceOptions *>(builtin_options()) : nullptr;
  7873. }
  7874. const opencv_tflite::MirrorPadOptions *builtin_options_as_MirrorPadOptions() const {
  7875. return builtin_options_type() == opencv_tflite::BuiltinOptions_MirrorPadOptions ? static_cast<const opencv_tflite::MirrorPadOptions *>(builtin_options()) : nullptr;
  7876. }
  7877. const opencv_tflite::AbsOptions *builtin_options_as_AbsOptions() const {
  7878. return builtin_options_type() == opencv_tflite::BuiltinOptions_AbsOptions ? static_cast<const opencv_tflite::AbsOptions *>(builtin_options()) : nullptr;
  7879. }
  7880. const opencv_tflite::SplitVOptions *builtin_options_as_SplitVOptions() const {
  7881. return builtin_options_type() == opencv_tflite::BuiltinOptions_SplitVOptions ? static_cast<const opencv_tflite::SplitVOptions *>(builtin_options()) : nullptr;
  7882. }
  7883. const opencv_tflite::UniqueOptions *builtin_options_as_UniqueOptions() const {
  7884. return builtin_options_type() == opencv_tflite::BuiltinOptions_UniqueOptions ? static_cast<const opencv_tflite::UniqueOptions *>(builtin_options()) : nullptr;
  7885. }
  7886. const opencv_tflite::ReverseV2Options *builtin_options_as_ReverseV2Options() const {
  7887. return builtin_options_type() == opencv_tflite::BuiltinOptions_ReverseV2Options ? static_cast<const opencv_tflite::ReverseV2Options *>(builtin_options()) : nullptr;
  7888. }
  7889. const opencv_tflite::AddNOptions *builtin_options_as_AddNOptions() const {
  7890. return builtin_options_type() == opencv_tflite::BuiltinOptions_AddNOptions ? static_cast<const opencv_tflite::AddNOptions *>(builtin_options()) : nullptr;
  7891. }
  7892. const opencv_tflite::GatherNdOptions *builtin_options_as_GatherNdOptions() const {
  7893. return builtin_options_type() == opencv_tflite::BuiltinOptions_GatherNdOptions ? static_cast<const opencv_tflite::GatherNdOptions *>(builtin_options()) : nullptr;
  7894. }
  7895. const opencv_tflite::CosOptions *builtin_options_as_CosOptions() const {
  7896. return builtin_options_type() == opencv_tflite::BuiltinOptions_CosOptions ? static_cast<const opencv_tflite::CosOptions *>(builtin_options()) : nullptr;
  7897. }
  7898. const opencv_tflite::WhereOptions *builtin_options_as_WhereOptions() const {
  7899. return builtin_options_type() == opencv_tflite::BuiltinOptions_WhereOptions ? static_cast<const opencv_tflite::WhereOptions *>(builtin_options()) : nullptr;
  7900. }
  7901. const opencv_tflite::RankOptions *builtin_options_as_RankOptions() const {
  7902. return builtin_options_type() == opencv_tflite::BuiltinOptions_RankOptions ? static_cast<const opencv_tflite::RankOptions *>(builtin_options()) : nullptr;
  7903. }
  7904. const opencv_tflite::ReverseSequenceOptions *builtin_options_as_ReverseSequenceOptions() const {
  7905. return builtin_options_type() == opencv_tflite::BuiltinOptions_ReverseSequenceOptions ? static_cast<const opencv_tflite::ReverseSequenceOptions *>(builtin_options()) : nullptr;
  7906. }
  7907. const opencv_tflite::MatrixDiagOptions *builtin_options_as_MatrixDiagOptions() const {
  7908. return builtin_options_type() == opencv_tflite::BuiltinOptions_MatrixDiagOptions ? static_cast<const opencv_tflite::MatrixDiagOptions *>(builtin_options()) : nullptr;
  7909. }
  7910. const opencv_tflite::QuantizeOptions *builtin_options_as_QuantizeOptions() const {
  7911. return builtin_options_type() == opencv_tflite::BuiltinOptions_QuantizeOptions ? static_cast<const opencv_tflite::QuantizeOptions *>(builtin_options()) : nullptr;
  7912. }
  7913. const opencv_tflite::MatrixSetDiagOptions *builtin_options_as_MatrixSetDiagOptions() const {
  7914. return builtin_options_type() == opencv_tflite::BuiltinOptions_MatrixSetDiagOptions ? static_cast<const opencv_tflite::MatrixSetDiagOptions *>(builtin_options()) : nullptr;
  7915. }
  7916. const opencv_tflite::HardSwishOptions *builtin_options_as_HardSwishOptions() const {
  7917. return builtin_options_type() == opencv_tflite::BuiltinOptions_HardSwishOptions ? static_cast<const opencv_tflite::HardSwishOptions *>(builtin_options()) : nullptr;
  7918. }
  7919. const opencv_tflite::IfOptions *builtin_options_as_IfOptions() const {
  7920. return builtin_options_type() == opencv_tflite::BuiltinOptions_IfOptions ? static_cast<const opencv_tflite::IfOptions *>(builtin_options()) : nullptr;
  7921. }
  7922. const opencv_tflite::WhileOptions *builtin_options_as_WhileOptions() const {
  7923. return builtin_options_type() == opencv_tflite::BuiltinOptions_WhileOptions ? static_cast<const opencv_tflite::WhileOptions *>(builtin_options()) : nullptr;
  7924. }
  7925. const opencv_tflite::DepthToSpaceOptions *builtin_options_as_DepthToSpaceOptions() const {
  7926. return builtin_options_type() == opencv_tflite::BuiltinOptions_DepthToSpaceOptions ? static_cast<const opencv_tflite::DepthToSpaceOptions *>(builtin_options()) : nullptr;
  7927. }
  7928. const opencv_tflite::NonMaxSuppressionV4Options *builtin_options_as_NonMaxSuppressionV4Options() const {
  7929. return builtin_options_type() == opencv_tflite::BuiltinOptions_NonMaxSuppressionV4Options ? static_cast<const opencv_tflite::NonMaxSuppressionV4Options *>(builtin_options()) : nullptr;
  7930. }
  7931. const opencv_tflite::NonMaxSuppressionV5Options *builtin_options_as_NonMaxSuppressionV5Options() const {
  7932. return builtin_options_type() == opencv_tflite::BuiltinOptions_NonMaxSuppressionV5Options ? static_cast<const opencv_tflite::NonMaxSuppressionV5Options *>(builtin_options()) : nullptr;
  7933. }
  7934. const opencv_tflite::ScatterNdOptions *builtin_options_as_ScatterNdOptions() const {
  7935. return builtin_options_type() == opencv_tflite::BuiltinOptions_ScatterNdOptions ? static_cast<const opencv_tflite::ScatterNdOptions *>(builtin_options()) : nullptr;
  7936. }
  7937. const opencv_tflite::SelectV2Options *builtin_options_as_SelectV2Options() const {
  7938. return builtin_options_type() == opencv_tflite::BuiltinOptions_SelectV2Options ? static_cast<const opencv_tflite::SelectV2Options *>(builtin_options()) : nullptr;
  7939. }
  7940. const opencv_tflite::DensifyOptions *builtin_options_as_DensifyOptions() const {
  7941. return builtin_options_type() == opencv_tflite::BuiltinOptions_DensifyOptions ? static_cast<const opencv_tflite::DensifyOptions *>(builtin_options()) : nullptr;
  7942. }
  7943. const opencv_tflite::SegmentSumOptions *builtin_options_as_SegmentSumOptions() const {
  7944. return builtin_options_type() == opencv_tflite::BuiltinOptions_SegmentSumOptions ? static_cast<const opencv_tflite::SegmentSumOptions *>(builtin_options()) : nullptr;
  7945. }
  7946. const opencv_tflite::BatchMatMulOptions *builtin_options_as_BatchMatMulOptions() const {
  7947. return builtin_options_type() == opencv_tflite::BuiltinOptions_BatchMatMulOptions ? static_cast<const opencv_tflite::BatchMatMulOptions *>(builtin_options()) : nullptr;
  7948. }
  7949. const opencv_tflite::CumsumOptions *builtin_options_as_CumsumOptions() const {
  7950. return builtin_options_type() == opencv_tflite::BuiltinOptions_CumsumOptions ? static_cast<const opencv_tflite::CumsumOptions *>(builtin_options()) : nullptr;
  7951. }
  7952. const opencv_tflite::CallOnceOptions *builtin_options_as_CallOnceOptions() const {
  7953. return builtin_options_type() == opencv_tflite::BuiltinOptions_CallOnceOptions ? static_cast<const opencv_tflite::CallOnceOptions *>(builtin_options()) : nullptr;
  7954. }
  7955. const opencv_tflite::BroadcastToOptions *builtin_options_as_BroadcastToOptions() const {
  7956. return builtin_options_type() == opencv_tflite::BuiltinOptions_BroadcastToOptions ? static_cast<const opencv_tflite::BroadcastToOptions *>(builtin_options()) : nullptr;
  7957. }
  7958. const opencv_tflite::Rfft2dOptions *builtin_options_as_Rfft2dOptions() const {
  7959. return builtin_options_type() == opencv_tflite::BuiltinOptions_Rfft2dOptions ? static_cast<const opencv_tflite::Rfft2dOptions *>(builtin_options()) : nullptr;
  7960. }
  7961. const opencv_tflite::Conv3DOptions *builtin_options_as_Conv3DOptions() const {
  7962. return builtin_options_type() == opencv_tflite::BuiltinOptions_Conv3DOptions ? static_cast<const opencv_tflite::Conv3DOptions *>(builtin_options()) : nullptr;
  7963. }
  7964. const opencv_tflite::HashtableOptions *builtin_options_as_HashtableOptions() const {
  7965. return builtin_options_type() == opencv_tflite::BuiltinOptions_HashtableOptions ? static_cast<const opencv_tflite::HashtableOptions *>(builtin_options()) : nullptr;
  7966. }
  7967. const opencv_tflite::HashtableFindOptions *builtin_options_as_HashtableFindOptions() const {
  7968. return builtin_options_type() == opencv_tflite::BuiltinOptions_HashtableFindOptions ? static_cast<const opencv_tflite::HashtableFindOptions *>(builtin_options()) : nullptr;
  7969. }
  7970. const opencv_tflite::HashtableImportOptions *builtin_options_as_HashtableImportOptions() const {
  7971. return builtin_options_type() == opencv_tflite::BuiltinOptions_HashtableImportOptions ? static_cast<const opencv_tflite::HashtableImportOptions *>(builtin_options()) : nullptr;
  7972. }
  7973. const opencv_tflite::HashtableSizeOptions *builtin_options_as_HashtableSizeOptions() const {
  7974. return builtin_options_type() == opencv_tflite::BuiltinOptions_HashtableSizeOptions ? static_cast<const opencv_tflite::HashtableSizeOptions *>(builtin_options()) : nullptr;
  7975. }
  7976. const opencv_tflite::VarHandleOptions *builtin_options_as_VarHandleOptions() const {
  7977. return builtin_options_type() == opencv_tflite::BuiltinOptions_VarHandleOptions ? static_cast<const opencv_tflite::VarHandleOptions *>(builtin_options()) : nullptr;
  7978. }
  7979. const opencv_tflite::ReadVariableOptions *builtin_options_as_ReadVariableOptions() const {
  7980. return builtin_options_type() == opencv_tflite::BuiltinOptions_ReadVariableOptions ? static_cast<const opencv_tflite::ReadVariableOptions *>(builtin_options()) : nullptr;
  7981. }
  7982. const opencv_tflite::AssignVariableOptions *builtin_options_as_AssignVariableOptions() const {
  7983. return builtin_options_type() == opencv_tflite::BuiltinOptions_AssignVariableOptions ? static_cast<const opencv_tflite::AssignVariableOptions *>(builtin_options()) : nullptr;
  7984. }
  7985. const opencv_tflite::RandomOptions *builtin_options_as_RandomOptions() const {
  7986. return builtin_options_type() == opencv_tflite::BuiltinOptions_RandomOptions ? static_cast<const opencv_tflite::RandomOptions *>(builtin_options()) : nullptr;
  7987. }
  7988. const opencv_tflite::BucketizeOptions *builtin_options_as_BucketizeOptions() const {
  7989. return builtin_options_type() == opencv_tflite::BuiltinOptions_BucketizeOptions ? static_cast<const opencv_tflite::BucketizeOptions *>(builtin_options()) : nullptr;
  7990. }
  7991. const opencv_tflite::GeluOptions *builtin_options_as_GeluOptions() const {
  7992. return builtin_options_type() == opencv_tflite::BuiltinOptions_GeluOptions ? static_cast<const opencv_tflite::GeluOptions *>(builtin_options()) : nullptr;
  7993. }
  7994. const opencv_tflite::DynamicUpdateSliceOptions *builtin_options_as_DynamicUpdateSliceOptions() const {
  7995. return builtin_options_type() == opencv_tflite::BuiltinOptions_DynamicUpdateSliceOptions ? static_cast<const opencv_tflite::DynamicUpdateSliceOptions *>(builtin_options()) : nullptr;
  7996. }
  7997. const opencv_tflite::UnsortedSegmentProdOptions *builtin_options_as_UnsortedSegmentProdOptions() const {
  7998. return builtin_options_type() == opencv_tflite::BuiltinOptions_UnsortedSegmentProdOptions ? static_cast<const opencv_tflite::UnsortedSegmentProdOptions *>(builtin_options()) : nullptr;
  7999. }
  8000. const opencv_tflite::UnsortedSegmentMaxOptions *builtin_options_as_UnsortedSegmentMaxOptions() const {
  8001. return builtin_options_type() == opencv_tflite::BuiltinOptions_UnsortedSegmentMaxOptions ? static_cast<const opencv_tflite::UnsortedSegmentMaxOptions *>(builtin_options()) : nullptr;
  8002. }
  8003. const opencv_tflite::UnsortedSegmentMinOptions *builtin_options_as_UnsortedSegmentMinOptions() const {
  8004. return builtin_options_type() == opencv_tflite::BuiltinOptions_UnsortedSegmentMinOptions ? static_cast<const opencv_tflite::UnsortedSegmentMinOptions *>(builtin_options()) : nullptr;
  8005. }
  8006. const opencv_tflite::UnsortedSegmentSumOptions *builtin_options_as_UnsortedSegmentSumOptions() const {
  8007. return builtin_options_type() == opencv_tflite::BuiltinOptions_UnsortedSegmentSumOptions ? static_cast<const opencv_tflite::UnsortedSegmentSumOptions *>(builtin_options()) : nullptr;
  8008. }
  8009. const opencv_tflite::ATan2Options *builtin_options_as_ATan2Options() const {
  8010. return builtin_options_type() == opencv_tflite::BuiltinOptions_ATan2Options ? static_cast<const opencv_tflite::ATan2Options *>(builtin_options()) : nullptr;
  8011. }
  8012. const opencv_tflite::SignOptions *builtin_options_as_SignOptions() const {
  8013. return builtin_options_type() == opencv_tflite::BuiltinOptions_SignOptions ? static_cast<const opencv_tflite::SignOptions *>(builtin_options()) : nullptr;
  8014. }
  8015. const ::flatbuffers::Vector<uint8_t> *custom_options() const {
  8016. return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_CUSTOM_OPTIONS);
  8017. }
  8018. opencv_tflite::CustomOptionsFormat custom_options_format() const {
  8019. return static_cast<opencv_tflite::CustomOptionsFormat>(GetField<int8_t>(VT_CUSTOM_OPTIONS_FORMAT, 0));
  8020. }
  8021. const ::flatbuffers::Vector<uint8_t> *mutating_variable_inputs() const {
  8022. return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_MUTATING_VARIABLE_INPUTS);
  8023. }
  8024. const ::flatbuffers::Vector<int32_t> *intermediates() const {
  8025. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_INTERMEDIATES);
  8026. }
  8027. bool Verify(::flatbuffers::Verifier &verifier) const {
  8028. return VerifyTableStart(verifier) &&
  8029. VerifyField<uint32_t>(verifier, VT_OPCODE_INDEX, 4) &&
  8030. VerifyOffset(verifier, VT_INPUTS) &&
  8031. verifier.VerifyVector(inputs()) &&
  8032. VerifyOffset(verifier, VT_OUTPUTS) &&
  8033. verifier.VerifyVector(outputs()) &&
  8034. VerifyField<uint8_t>(verifier, VT_BUILTIN_OPTIONS_TYPE, 1) &&
  8035. VerifyOffset(verifier, VT_BUILTIN_OPTIONS) &&
  8036. VerifyBuiltinOptions(verifier, builtin_options(), builtin_options_type()) &&
  8037. VerifyOffset(verifier, VT_CUSTOM_OPTIONS) &&
  8038. verifier.VerifyVector(custom_options()) &&
  8039. VerifyField<int8_t>(verifier, VT_CUSTOM_OPTIONS_FORMAT, 1) &&
  8040. VerifyOffset(verifier, VT_MUTATING_VARIABLE_INPUTS) &&
  8041. verifier.VerifyVector(mutating_variable_inputs()) &&
  8042. VerifyOffset(verifier, VT_INTERMEDIATES) &&
  8043. verifier.VerifyVector(intermediates()) &&
  8044. verifier.EndTable();
  8045. }
  8046. };
  8047. template<> inline const opencv_tflite::Conv2DOptions *Operator::builtin_options_as<opencv_tflite::Conv2DOptions>() const {
  8048. return builtin_options_as_Conv2DOptions();
  8049. }
  8050. template<> inline const opencv_tflite::DepthwiseConv2DOptions *Operator::builtin_options_as<opencv_tflite::DepthwiseConv2DOptions>() const {
  8051. return builtin_options_as_DepthwiseConv2DOptions();
  8052. }
  8053. template<> inline const opencv_tflite::ConcatEmbeddingsOptions *Operator::builtin_options_as<opencv_tflite::ConcatEmbeddingsOptions>() const {
  8054. return builtin_options_as_ConcatEmbeddingsOptions();
  8055. }
  8056. template<> inline const opencv_tflite::LSHProjectionOptions *Operator::builtin_options_as<opencv_tflite::LSHProjectionOptions>() const {
  8057. return builtin_options_as_LSHProjectionOptions();
  8058. }
  8059. template<> inline const opencv_tflite::Pool2DOptions *Operator::builtin_options_as<opencv_tflite::Pool2DOptions>() const {
  8060. return builtin_options_as_Pool2DOptions();
  8061. }
  8062. template<> inline const opencv_tflite::SVDFOptions *Operator::builtin_options_as<opencv_tflite::SVDFOptions>() const {
  8063. return builtin_options_as_SVDFOptions();
  8064. }
  8065. template<> inline const opencv_tflite::RNNOptions *Operator::builtin_options_as<opencv_tflite::RNNOptions>() const {
  8066. return builtin_options_as_RNNOptions();
  8067. }
  8068. template<> inline const opencv_tflite::FullyConnectedOptions *Operator::builtin_options_as<opencv_tflite::FullyConnectedOptions>() const {
  8069. return builtin_options_as_FullyConnectedOptions();
  8070. }
  8071. template<> inline const opencv_tflite::SoftmaxOptions *Operator::builtin_options_as<opencv_tflite::SoftmaxOptions>() const {
  8072. return builtin_options_as_SoftmaxOptions();
  8073. }
  8074. template<> inline const opencv_tflite::ConcatenationOptions *Operator::builtin_options_as<opencv_tflite::ConcatenationOptions>() const {
  8075. return builtin_options_as_ConcatenationOptions();
  8076. }
  8077. template<> inline const opencv_tflite::AddOptions *Operator::builtin_options_as<opencv_tflite::AddOptions>() const {
  8078. return builtin_options_as_AddOptions();
  8079. }
  8080. template<> inline const opencv_tflite::L2NormOptions *Operator::builtin_options_as<opencv_tflite::L2NormOptions>() const {
  8081. return builtin_options_as_L2NormOptions();
  8082. }
  8083. template<> inline const opencv_tflite::LocalResponseNormalizationOptions *Operator::builtin_options_as<opencv_tflite::LocalResponseNormalizationOptions>() const {
  8084. return builtin_options_as_LocalResponseNormalizationOptions();
  8085. }
  8086. template<> inline const opencv_tflite::LSTMOptions *Operator::builtin_options_as<opencv_tflite::LSTMOptions>() const {
  8087. return builtin_options_as_LSTMOptions();
  8088. }
  8089. template<> inline const opencv_tflite::ResizeBilinearOptions *Operator::builtin_options_as<opencv_tflite::ResizeBilinearOptions>() const {
  8090. return builtin_options_as_ResizeBilinearOptions();
  8091. }
  8092. template<> inline const opencv_tflite::CallOptions *Operator::builtin_options_as<opencv_tflite::CallOptions>() const {
  8093. return builtin_options_as_CallOptions();
  8094. }
  8095. template<> inline const opencv_tflite::ReshapeOptions *Operator::builtin_options_as<opencv_tflite::ReshapeOptions>() const {
  8096. return builtin_options_as_ReshapeOptions();
  8097. }
  8098. template<> inline const opencv_tflite::SkipGramOptions *Operator::builtin_options_as<opencv_tflite::SkipGramOptions>() const {
  8099. return builtin_options_as_SkipGramOptions();
  8100. }
  8101. template<> inline const opencv_tflite::SpaceToDepthOptions *Operator::builtin_options_as<opencv_tflite::SpaceToDepthOptions>() const {
  8102. return builtin_options_as_SpaceToDepthOptions();
  8103. }
  8104. template<> inline const opencv_tflite::EmbeddingLookupSparseOptions *Operator::builtin_options_as<opencv_tflite::EmbeddingLookupSparseOptions>() const {
  8105. return builtin_options_as_EmbeddingLookupSparseOptions();
  8106. }
  8107. template<> inline const opencv_tflite::MulOptions *Operator::builtin_options_as<opencv_tflite::MulOptions>() const {
  8108. return builtin_options_as_MulOptions();
  8109. }
  8110. template<> inline const opencv_tflite::PadOptions *Operator::builtin_options_as<opencv_tflite::PadOptions>() const {
  8111. return builtin_options_as_PadOptions();
  8112. }
  8113. template<> inline const opencv_tflite::GatherOptions *Operator::builtin_options_as<opencv_tflite::GatherOptions>() const {
  8114. return builtin_options_as_GatherOptions();
  8115. }
  8116. template<> inline const opencv_tflite::BatchToSpaceNDOptions *Operator::builtin_options_as<opencv_tflite::BatchToSpaceNDOptions>() const {
  8117. return builtin_options_as_BatchToSpaceNDOptions();
  8118. }
  8119. template<> inline const opencv_tflite::SpaceToBatchNDOptions *Operator::builtin_options_as<opencv_tflite::SpaceToBatchNDOptions>() const {
  8120. return builtin_options_as_SpaceToBatchNDOptions();
  8121. }
  8122. template<> inline const opencv_tflite::TransposeOptions *Operator::builtin_options_as<opencv_tflite::TransposeOptions>() const {
  8123. return builtin_options_as_TransposeOptions();
  8124. }
  8125. template<> inline const opencv_tflite::ReducerOptions *Operator::builtin_options_as<opencv_tflite::ReducerOptions>() const {
  8126. return builtin_options_as_ReducerOptions();
  8127. }
  8128. template<> inline const opencv_tflite::SubOptions *Operator::builtin_options_as<opencv_tflite::SubOptions>() const {
  8129. return builtin_options_as_SubOptions();
  8130. }
  8131. template<> inline const opencv_tflite::DivOptions *Operator::builtin_options_as<opencv_tflite::DivOptions>() const {
  8132. return builtin_options_as_DivOptions();
  8133. }
  8134. template<> inline const opencv_tflite::SqueezeOptions *Operator::builtin_options_as<opencv_tflite::SqueezeOptions>() const {
  8135. return builtin_options_as_SqueezeOptions();
  8136. }
  8137. template<> inline const opencv_tflite::SequenceRNNOptions *Operator::builtin_options_as<opencv_tflite::SequenceRNNOptions>() const {
  8138. return builtin_options_as_SequenceRNNOptions();
  8139. }
  8140. template<> inline const opencv_tflite::StridedSliceOptions *Operator::builtin_options_as<opencv_tflite::StridedSliceOptions>() const {
  8141. return builtin_options_as_StridedSliceOptions();
  8142. }
  8143. template<> inline const opencv_tflite::ExpOptions *Operator::builtin_options_as<opencv_tflite::ExpOptions>() const {
  8144. return builtin_options_as_ExpOptions();
  8145. }
  8146. template<> inline const opencv_tflite::TopKV2Options *Operator::builtin_options_as<opencv_tflite::TopKV2Options>() const {
  8147. return builtin_options_as_TopKV2Options();
  8148. }
  8149. template<> inline const opencv_tflite::SplitOptions *Operator::builtin_options_as<opencv_tflite::SplitOptions>() const {
  8150. return builtin_options_as_SplitOptions();
  8151. }
  8152. template<> inline const opencv_tflite::LogSoftmaxOptions *Operator::builtin_options_as<opencv_tflite::LogSoftmaxOptions>() const {
  8153. return builtin_options_as_LogSoftmaxOptions();
  8154. }
  8155. template<> inline const opencv_tflite::CastOptions *Operator::builtin_options_as<opencv_tflite::CastOptions>() const {
  8156. return builtin_options_as_CastOptions();
  8157. }
  8158. template<> inline const opencv_tflite::DequantizeOptions *Operator::builtin_options_as<opencv_tflite::DequantizeOptions>() const {
  8159. return builtin_options_as_DequantizeOptions();
  8160. }
  8161. template<> inline const opencv_tflite::MaximumMinimumOptions *Operator::builtin_options_as<opencv_tflite::MaximumMinimumOptions>() const {
  8162. return builtin_options_as_MaximumMinimumOptions();
  8163. }
  8164. template<> inline const opencv_tflite::ArgMaxOptions *Operator::builtin_options_as<opencv_tflite::ArgMaxOptions>() const {
  8165. return builtin_options_as_ArgMaxOptions();
  8166. }
  8167. template<> inline const opencv_tflite::LessOptions *Operator::builtin_options_as<opencv_tflite::LessOptions>() const {
  8168. return builtin_options_as_LessOptions();
  8169. }
  8170. template<> inline const opencv_tflite::NegOptions *Operator::builtin_options_as<opencv_tflite::NegOptions>() const {
  8171. return builtin_options_as_NegOptions();
  8172. }
  8173. template<> inline const opencv_tflite::PadV2Options *Operator::builtin_options_as<opencv_tflite::PadV2Options>() const {
  8174. return builtin_options_as_PadV2Options();
  8175. }
  8176. template<> inline const opencv_tflite::GreaterOptions *Operator::builtin_options_as<opencv_tflite::GreaterOptions>() const {
  8177. return builtin_options_as_GreaterOptions();
  8178. }
  8179. template<> inline const opencv_tflite::GreaterEqualOptions *Operator::builtin_options_as<opencv_tflite::GreaterEqualOptions>() const {
  8180. return builtin_options_as_GreaterEqualOptions();
  8181. }
  8182. template<> inline const opencv_tflite::LessEqualOptions *Operator::builtin_options_as<opencv_tflite::LessEqualOptions>() const {
  8183. return builtin_options_as_LessEqualOptions();
  8184. }
  8185. template<> inline const opencv_tflite::SelectOptions *Operator::builtin_options_as<opencv_tflite::SelectOptions>() const {
  8186. return builtin_options_as_SelectOptions();
  8187. }
  8188. template<> inline const opencv_tflite::SliceOptions *Operator::builtin_options_as<opencv_tflite::SliceOptions>() const {
  8189. return builtin_options_as_SliceOptions();
  8190. }
  8191. template<> inline const opencv_tflite::TransposeConvOptions *Operator::builtin_options_as<opencv_tflite::TransposeConvOptions>() const {
  8192. return builtin_options_as_TransposeConvOptions();
  8193. }
  8194. template<> inline const opencv_tflite::SparseToDenseOptions *Operator::builtin_options_as<opencv_tflite::SparseToDenseOptions>() const {
  8195. return builtin_options_as_SparseToDenseOptions();
  8196. }
  8197. template<> inline const opencv_tflite::TileOptions *Operator::builtin_options_as<opencv_tflite::TileOptions>() const {
  8198. return builtin_options_as_TileOptions();
  8199. }
  8200. template<> inline const opencv_tflite::ExpandDimsOptions *Operator::builtin_options_as<opencv_tflite::ExpandDimsOptions>() const {
  8201. return builtin_options_as_ExpandDimsOptions();
  8202. }
  8203. template<> inline const opencv_tflite::EqualOptions *Operator::builtin_options_as<opencv_tflite::EqualOptions>() const {
  8204. return builtin_options_as_EqualOptions();
  8205. }
  8206. template<> inline const opencv_tflite::NotEqualOptions *Operator::builtin_options_as<opencv_tflite::NotEqualOptions>() const {
  8207. return builtin_options_as_NotEqualOptions();
  8208. }
  8209. template<> inline const opencv_tflite::ShapeOptions *Operator::builtin_options_as<opencv_tflite::ShapeOptions>() const {
  8210. return builtin_options_as_ShapeOptions();
  8211. }
  8212. template<> inline const opencv_tflite::PowOptions *Operator::builtin_options_as<opencv_tflite::PowOptions>() const {
  8213. return builtin_options_as_PowOptions();
  8214. }
  8215. template<> inline const opencv_tflite::ArgMinOptions *Operator::builtin_options_as<opencv_tflite::ArgMinOptions>() const {
  8216. return builtin_options_as_ArgMinOptions();
  8217. }
  8218. template<> inline const opencv_tflite::FakeQuantOptions *Operator::builtin_options_as<opencv_tflite::FakeQuantOptions>() const {
  8219. return builtin_options_as_FakeQuantOptions();
  8220. }
  8221. template<> inline const opencv_tflite::PackOptions *Operator::builtin_options_as<opencv_tflite::PackOptions>() const {
  8222. return builtin_options_as_PackOptions();
  8223. }
  8224. template<> inline const opencv_tflite::LogicalOrOptions *Operator::builtin_options_as<opencv_tflite::LogicalOrOptions>() const {
  8225. return builtin_options_as_LogicalOrOptions();
  8226. }
  8227. template<> inline const opencv_tflite::OneHotOptions *Operator::builtin_options_as<opencv_tflite::OneHotOptions>() const {
  8228. return builtin_options_as_OneHotOptions();
  8229. }
  8230. template<> inline const opencv_tflite::LogicalAndOptions *Operator::builtin_options_as<opencv_tflite::LogicalAndOptions>() const {
  8231. return builtin_options_as_LogicalAndOptions();
  8232. }
  8233. template<> inline const opencv_tflite::LogicalNotOptions *Operator::builtin_options_as<opencv_tflite::LogicalNotOptions>() const {
  8234. return builtin_options_as_LogicalNotOptions();
  8235. }
  8236. template<> inline const opencv_tflite::UnpackOptions *Operator::builtin_options_as<opencv_tflite::UnpackOptions>() const {
  8237. return builtin_options_as_UnpackOptions();
  8238. }
  8239. template<> inline const opencv_tflite::FloorDivOptions *Operator::builtin_options_as<opencv_tflite::FloorDivOptions>() const {
  8240. return builtin_options_as_FloorDivOptions();
  8241. }
  8242. template<> inline const opencv_tflite::SquareOptions *Operator::builtin_options_as<opencv_tflite::SquareOptions>() const {
  8243. return builtin_options_as_SquareOptions();
  8244. }
  8245. template<> inline const opencv_tflite::ZerosLikeOptions *Operator::builtin_options_as<opencv_tflite::ZerosLikeOptions>() const {
  8246. return builtin_options_as_ZerosLikeOptions();
  8247. }
  8248. template<> inline const opencv_tflite::FillOptions *Operator::builtin_options_as<opencv_tflite::FillOptions>() const {
  8249. return builtin_options_as_FillOptions();
  8250. }
  8251. template<> inline const opencv_tflite::BidirectionalSequenceLSTMOptions *Operator::builtin_options_as<opencv_tflite::BidirectionalSequenceLSTMOptions>() const {
  8252. return builtin_options_as_BidirectionalSequenceLSTMOptions();
  8253. }
  8254. template<> inline const opencv_tflite::BidirectionalSequenceRNNOptions *Operator::builtin_options_as<opencv_tflite::BidirectionalSequenceRNNOptions>() const {
  8255. return builtin_options_as_BidirectionalSequenceRNNOptions();
  8256. }
  8257. template<> inline const opencv_tflite::UnidirectionalSequenceLSTMOptions *Operator::builtin_options_as<opencv_tflite::UnidirectionalSequenceLSTMOptions>() const {
  8258. return builtin_options_as_UnidirectionalSequenceLSTMOptions();
  8259. }
  8260. template<> inline const opencv_tflite::FloorModOptions *Operator::builtin_options_as<opencv_tflite::FloorModOptions>() const {
  8261. return builtin_options_as_FloorModOptions();
  8262. }
  8263. template<> inline const opencv_tflite::RangeOptions *Operator::builtin_options_as<opencv_tflite::RangeOptions>() const {
  8264. return builtin_options_as_RangeOptions();
  8265. }
  8266. template<> inline const opencv_tflite::ResizeNearestNeighborOptions *Operator::builtin_options_as<opencv_tflite::ResizeNearestNeighborOptions>() const {
  8267. return builtin_options_as_ResizeNearestNeighborOptions();
  8268. }
  8269. template<> inline const opencv_tflite::LeakyReluOptions *Operator::builtin_options_as<opencv_tflite::LeakyReluOptions>() const {
  8270. return builtin_options_as_LeakyReluOptions();
  8271. }
  8272. template<> inline const opencv_tflite::SquaredDifferenceOptions *Operator::builtin_options_as<opencv_tflite::SquaredDifferenceOptions>() const {
  8273. return builtin_options_as_SquaredDifferenceOptions();
  8274. }
  8275. template<> inline const opencv_tflite::MirrorPadOptions *Operator::builtin_options_as<opencv_tflite::MirrorPadOptions>() const {
  8276. return builtin_options_as_MirrorPadOptions();
  8277. }
  8278. template<> inline const opencv_tflite::AbsOptions *Operator::builtin_options_as<opencv_tflite::AbsOptions>() const {
  8279. return builtin_options_as_AbsOptions();
  8280. }
  8281. template<> inline const opencv_tflite::SplitVOptions *Operator::builtin_options_as<opencv_tflite::SplitVOptions>() const {
  8282. return builtin_options_as_SplitVOptions();
  8283. }
  8284. template<> inline const opencv_tflite::UniqueOptions *Operator::builtin_options_as<opencv_tflite::UniqueOptions>() const {
  8285. return builtin_options_as_UniqueOptions();
  8286. }
  8287. template<> inline const opencv_tflite::ReverseV2Options *Operator::builtin_options_as<opencv_tflite::ReverseV2Options>() const {
  8288. return builtin_options_as_ReverseV2Options();
  8289. }
  8290. template<> inline const opencv_tflite::AddNOptions *Operator::builtin_options_as<opencv_tflite::AddNOptions>() const {
  8291. return builtin_options_as_AddNOptions();
  8292. }
  8293. template<> inline const opencv_tflite::GatherNdOptions *Operator::builtin_options_as<opencv_tflite::GatherNdOptions>() const {
  8294. return builtin_options_as_GatherNdOptions();
  8295. }
  8296. template<> inline const opencv_tflite::CosOptions *Operator::builtin_options_as<opencv_tflite::CosOptions>() const {
  8297. return builtin_options_as_CosOptions();
  8298. }
  8299. template<> inline const opencv_tflite::WhereOptions *Operator::builtin_options_as<opencv_tflite::WhereOptions>() const {
  8300. return builtin_options_as_WhereOptions();
  8301. }
  8302. template<> inline const opencv_tflite::RankOptions *Operator::builtin_options_as<opencv_tflite::RankOptions>() const {
  8303. return builtin_options_as_RankOptions();
  8304. }
  8305. template<> inline const opencv_tflite::ReverseSequenceOptions *Operator::builtin_options_as<opencv_tflite::ReverseSequenceOptions>() const {
  8306. return builtin_options_as_ReverseSequenceOptions();
  8307. }
  8308. template<> inline const opencv_tflite::MatrixDiagOptions *Operator::builtin_options_as<opencv_tflite::MatrixDiagOptions>() const {
  8309. return builtin_options_as_MatrixDiagOptions();
  8310. }
  8311. template<> inline const opencv_tflite::QuantizeOptions *Operator::builtin_options_as<opencv_tflite::QuantizeOptions>() const {
  8312. return builtin_options_as_QuantizeOptions();
  8313. }
  8314. template<> inline const opencv_tflite::MatrixSetDiagOptions *Operator::builtin_options_as<opencv_tflite::MatrixSetDiagOptions>() const {
  8315. return builtin_options_as_MatrixSetDiagOptions();
  8316. }
  8317. template<> inline const opencv_tflite::HardSwishOptions *Operator::builtin_options_as<opencv_tflite::HardSwishOptions>() const {
  8318. return builtin_options_as_HardSwishOptions();
  8319. }
  8320. template<> inline const opencv_tflite::IfOptions *Operator::builtin_options_as<opencv_tflite::IfOptions>() const {
  8321. return builtin_options_as_IfOptions();
  8322. }
  8323. template<> inline const opencv_tflite::WhileOptions *Operator::builtin_options_as<opencv_tflite::WhileOptions>() const {
  8324. return builtin_options_as_WhileOptions();
  8325. }
  8326. template<> inline const opencv_tflite::DepthToSpaceOptions *Operator::builtin_options_as<opencv_tflite::DepthToSpaceOptions>() const {
  8327. return builtin_options_as_DepthToSpaceOptions();
  8328. }
  8329. template<> inline const opencv_tflite::NonMaxSuppressionV4Options *Operator::builtin_options_as<opencv_tflite::NonMaxSuppressionV4Options>() const {
  8330. return builtin_options_as_NonMaxSuppressionV4Options();
  8331. }
  8332. template<> inline const opencv_tflite::NonMaxSuppressionV5Options *Operator::builtin_options_as<opencv_tflite::NonMaxSuppressionV5Options>() const {
  8333. return builtin_options_as_NonMaxSuppressionV5Options();
  8334. }
  8335. template<> inline const opencv_tflite::ScatterNdOptions *Operator::builtin_options_as<opencv_tflite::ScatterNdOptions>() const {
  8336. return builtin_options_as_ScatterNdOptions();
  8337. }
  8338. template<> inline const opencv_tflite::SelectV2Options *Operator::builtin_options_as<opencv_tflite::SelectV2Options>() const {
  8339. return builtin_options_as_SelectV2Options();
  8340. }
  8341. template<> inline const opencv_tflite::DensifyOptions *Operator::builtin_options_as<opencv_tflite::DensifyOptions>() const {
  8342. return builtin_options_as_DensifyOptions();
  8343. }
  8344. template<> inline const opencv_tflite::SegmentSumOptions *Operator::builtin_options_as<opencv_tflite::SegmentSumOptions>() const {
  8345. return builtin_options_as_SegmentSumOptions();
  8346. }
  8347. template<> inline const opencv_tflite::BatchMatMulOptions *Operator::builtin_options_as<opencv_tflite::BatchMatMulOptions>() const {
  8348. return builtin_options_as_BatchMatMulOptions();
  8349. }
  8350. template<> inline const opencv_tflite::CumsumOptions *Operator::builtin_options_as<opencv_tflite::CumsumOptions>() const {
  8351. return builtin_options_as_CumsumOptions();
  8352. }
  8353. template<> inline const opencv_tflite::CallOnceOptions *Operator::builtin_options_as<opencv_tflite::CallOnceOptions>() const {
  8354. return builtin_options_as_CallOnceOptions();
  8355. }
  8356. template<> inline const opencv_tflite::BroadcastToOptions *Operator::builtin_options_as<opencv_tflite::BroadcastToOptions>() const {
  8357. return builtin_options_as_BroadcastToOptions();
  8358. }
  8359. template<> inline const opencv_tflite::Rfft2dOptions *Operator::builtin_options_as<opencv_tflite::Rfft2dOptions>() const {
  8360. return builtin_options_as_Rfft2dOptions();
  8361. }
  8362. template<> inline const opencv_tflite::Conv3DOptions *Operator::builtin_options_as<opencv_tflite::Conv3DOptions>() const {
  8363. return builtin_options_as_Conv3DOptions();
  8364. }
  8365. template<> inline const opencv_tflite::HashtableOptions *Operator::builtin_options_as<opencv_tflite::HashtableOptions>() const {
  8366. return builtin_options_as_HashtableOptions();
  8367. }
  8368. template<> inline const opencv_tflite::HashtableFindOptions *Operator::builtin_options_as<opencv_tflite::HashtableFindOptions>() const {
  8369. return builtin_options_as_HashtableFindOptions();
  8370. }
  8371. template<> inline const opencv_tflite::HashtableImportOptions *Operator::builtin_options_as<opencv_tflite::HashtableImportOptions>() const {
  8372. return builtin_options_as_HashtableImportOptions();
  8373. }
  8374. template<> inline const opencv_tflite::HashtableSizeOptions *Operator::builtin_options_as<opencv_tflite::HashtableSizeOptions>() const {
  8375. return builtin_options_as_HashtableSizeOptions();
  8376. }
  8377. template<> inline const opencv_tflite::VarHandleOptions *Operator::builtin_options_as<opencv_tflite::VarHandleOptions>() const {
  8378. return builtin_options_as_VarHandleOptions();
  8379. }
  8380. template<> inline const opencv_tflite::ReadVariableOptions *Operator::builtin_options_as<opencv_tflite::ReadVariableOptions>() const {
  8381. return builtin_options_as_ReadVariableOptions();
  8382. }
  8383. template<> inline const opencv_tflite::AssignVariableOptions *Operator::builtin_options_as<opencv_tflite::AssignVariableOptions>() const {
  8384. return builtin_options_as_AssignVariableOptions();
  8385. }
  8386. template<> inline const opencv_tflite::RandomOptions *Operator::builtin_options_as<opencv_tflite::RandomOptions>() const {
  8387. return builtin_options_as_RandomOptions();
  8388. }
  8389. template<> inline const opencv_tflite::BucketizeOptions *Operator::builtin_options_as<opencv_tflite::BucketizeOptions>() const {
  8390. return builtin_options_as_BucketizeOptions();
  8391. }
  8392. template<> inline const opencv_tflite::GeluOptions *Operator::builtin_options_as<opencv_tflite::GeluOptions>() const {
  8393. return builtin_options_as_GeluOptions();
  8394. }
  8395. template<> inline const opencv_tflite::DynamicUpdateSliceOptions *Operator::builtin_options_as<opencv_tflite::DynamicUpdateSliceOptions>() const {
  8396. return builtin_options_as_DynamicUpdateSliceOptions();
  8397. }
  8398. template<> inline const opencv_tflite::UnsortedSegmentProdOptions *Operator::builtin_options_as<opencv_tflite::UnsortedSegmentProdOptions>() const {
  8399. return builtin_options_as_UnsortedSegmentProdOptions();
  8400. }
  8401. template<> inline const opencv_tflite::UnsortedSegmentMaxOptions *Operator::builtin_options_as<opencv_tflite::UnsortedSegmentMaxOptions>() const {
  8402. return builtin_options_as_UnsortedSegmentMaxOptions();
  8403. }
  8404. template<> inline const opencv_tflite::UnsortedSegmentMinOptions *Operator::builtin_options_as<opencv_tflite::UnsortedSegmentMinOptions>() const {
  8405. return builtin_options_as_UnsortedSegmentMinOptions();
  8406. }
  8407. template<> inline const opencv_tflite::UnsortedSegmentSumOptions *Operator::builtin_options_as<opencv_tflite::UnsortedSegmentSumOptions>() const {
  8408. return builtin_options_as_UnsortedSegmentSumOptions();
  8409. }
  8410. template<> inline const opencv_tflite::ATan2Options *Operator::builtin_options_as<opencv_tflite::ATan2Options>() const {
  8411. return builtin_options_as_ATan2Options();
  8412. }
  8413. template<> inline const opencv_tflite::SignOptions *Operator::builtin_options_as<opencv_tflite::SignOptions>() const {
  8414. return builtin_options_as_SignOptions();
  8415. }
  8416. struct OperatorBuilder {
  8417. typedef Operator Table;
  8418. ::flatbuffers::FlatBufferBuilder &fbb_;
  8419. ::flatbuffers::uoffset_t start_;
  8420. void add_opcode_index(uint32_t opcode_index) {
  8421. fbb_.AddElement<uint32_t>(Operator::VT_OPCODE_INDEX, opcode_index, 0);
  8422. }
  8423. void add_inputs(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> inputs) {
  8424. fbb_.AddOffset(Operator::VT_INPUTS, inputs);
  8425. }
  8426. void add_outputs(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> outputs) {
  8427. fbb_.AddOffset(Operator::VT_OUTPUTS, outputs);
  8428. }
  8429. void add_builtin_options_type(opencv_tflite::BuiltinOptions builtin_options_type) {
  8430. fbb_.AddElement<uint8_t>(Operator::VT_BUILTIN_OPTIONS_TYPE, static_cast<uint8_t>(builtin_options_type), 0);
  8431. }
  8432. void add_builtin_options(::flatbuffers::Offset<void> builtin_options) {
  8433. fbb_.AddOffset(Operator::VT_BUILTIN_OPTIONS, builtin_options);
  8434. }
  8435. void add_custom_options(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> custom_options) {
  8436. fbb_.AddOffset(Operator::VT_CUSTOM_OPTIONS, custom_options);
  8437. }
  8438. void add_custom_options_format(opencv_tflite::CustomOptionsFormat custom_options_format) {
  8439. fbb_.AddElement<int8_t>(Operator::VT_CUSTOM_OPTIONS_FORMAT, static_cast<int8_t>(custom_options_format), 0);
  8440. }
  8441. void add_mutating_variable_inputs(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> mutating_variable_inputs) {
  8442. fbb_.AddOffset(Operator::VT_MUTATING_VARIABLE_INPUTS, mutating_variable_inputs);
  8443. }
  8444. void add_intermediates(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> intermediates) {
  8445. fbb_.AddOffset(Operator::VT_INTERMEDIATES, intermediates);
  8446. }
  8447. explicit OperatorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  8448. : fbb_(_fbb) {
  8449. start_ = fbb_.StartTable();
  8450. }
  8451. ::flatbuffers::Offset<Operator> Finish() {
  8452. const auto end = fbb_.EndTable(start_);
  8453. auto o = ::flatbuffers::Offset<Operator>(end);
  8454. return o;
  8455. }
  8456. };
  8457. inline ::flatbuffers::Offset<Operator> CreateOperator(
  8458. ::flatbuffers::FlatBufferBuilder &_fbb,
  8459. uint32_t opcode_index = 0,
  8460. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> inputs = 0,
  8461. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> outputs = 0,
  8462. opencv_tflite::BuiltinOptions builtin_options_type = opencv_tflite::BuiltinOptions_NONE,
  8463. ::flatbuffers::Offset<void> builtin_options = 0,
  8464. ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> custom_options = 0,
  8465. opencv_tflite::CustomOptionsFormat custom_options_format = opencv_tflite::CustomOptionsFormat_FLEXBUFFERS,
  8466. ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> mutating_variable_inputs = 0,
  8467. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> intermediates = 0) {
  8468. OperatorBuilder builder_(_fbb);
  8469. builder_.add_intermediates(intermediates);
  8470. builder_.add_mutating_variable_inputs(mutating_variable_inputs);
  8471. builder_.add_custom_options(custom_options);
  8472. builder_.add_builtin_options(builtin_options);
  8473. builder_.add_outputs(outputs);
  8474. builder_.add_inputs(inputs);
  8475. builder_.add_opcode_index(opcode_index);
  8476. builder_.add_custom_options_format(custom_options_format);
  8477. builder_.add_builtin_options_type(builtin_options_type);
  8478. return builder_.Finish();
  8479. }
  8480. inline ::flatbuffers::Offset<Operator> CreateOperatorDirect(
  8481. ::flatbuffers::FlatBufferBuilder &_fbb,
  8482. uint32_t opcode_index = 0,
  8483. const std::vector<int32_t> *inputs = nullptr,
  8484. const std::vector<int32_t> *outputs = nullptr,
  8485. opencv_tflite::BuiltinOptions builtin_options_type = opencv_tflite::BuiltinOptions_NONE,
  8486. ::flatbuffers::Offset<void> builtin_options = 0,
  8487. const std::vector<uint8_t> *custom_options = nullptr,
  8488. opencv_tflite::CustomOptionsFormat custom_options_format = opencv_tflite::CustomOptionsFormat_FLEXBUFFERS,
  8489. const std::vector<uint8_t> *mutating_variable_inputs = nullptr,
  8490. const std::vector<int32_t> *intermediates = nullptr) {
  8491. auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
  8492. auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
  8493. auto custom_options__ = custom_options ? _fbb.CreateVector<uint8_t>(*custom_options) : 0;
  8494. auto mutating_variable_inputs__ = mutating_variable_inputs ? _fbb.CreateVector<uint8_t>(*mutating_variable_inputs) : 0;
  8495. auto intermediates__ = intermediates ? _fbb.CreateVector<int32_t>(*intermediates) : 0;
  8496. return opencv_tflite::CreateOperator(
  8497. _fbb,
  8498. opcode_index,
  8499. inputs__,
  8500. outputs__,
  8501. builtin_options_type,
  8502. builtin_options,
  8503. custom_options__,
  8504. custom_options_format,
  8505. mutating_variable_inputs__,
  8506. intermediates__);
  8507. }
  8508. struct SubGraph FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  8509. typedef SubGraphBuilder Builder;
  8510. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8511. VT_TENSORS = 4,
  8512. VT_INPUTS = 6,
  8513. VT_OUTPUTS = 8,
  8514. VT_OPERATORS = 10,
  8515. VT_NAME = 12
  8516. };
  8517. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Tensor>> *tensors() const {
  8518. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Tensor>> *>(VT_TENSORS);
  8519. }
  8520. const ::flatbuffers::Vector<int32_t> *inputs() const {
  8521. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_INPUTS);
  8522. }
  8523. const ::flatbuffers::Vector<int32_t> *outputs() const {
  8524. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
  8525. }
  8526. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Operator>> *operators() const {
  8527. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Operator>> *>(VT_OPERATORS);
  8528. }
  8529. const ::flatbuffers::String *name() const {
  8530. return GetPointer<const ::flatbuffers::String *>(VT_NAME);
  8531. }
  8532. bool Verify(::flatbuffers::Verifier &verifier) const {
  8533. return VerifyTableStart(verifier) &&
  8534. VerifyOffset(verifier, VT_TENSORS) &&
  8535. verifier.VerifyVector(tensors()) &&
  8536. verifier.VerifyVectorOfTables(tensors()) &&
  8537. VerifyOffset(verifier, VT_INPUTS) &&
  8538. verifier.VerifyVector(inputs()) &&
  8539. VerifyOffset(verifier, VT_OUTPUTS) &&
  8540. verifier.VerifyVector(outputs()) &&
  8541. VerifyOffset(verifier, VT_OPERATORS) &&
  8542. verifier.VerifyVector(operators()) &&
  8543. verifier.VerifyVectorOfTables(operators()) &&
  8544. VerifyOffset(verifier, VT_NAME) &&
  8545. verifier.VerifyString(name()) &&
  8546. verifier.EndTable();
  8547. }
  8548. };
  8549. struct SubGraphBuilder {
  8550. typedef SubGraph Table;
  8551. ::flatbuffers::FlatBufferBuilder &fbb_;
  8552. ::flatbuffers::uoffset_t start_;
  8553. void add_tensors(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Tensor>>> tensors) {
  8554. fbb_.AddOffset(SubGraph::VT_TENSORS, tensors);
  8555. }
  8556. void add_inputs(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> inputs) {
  8557. fbb_.AddOffset(SubGraph::VT_INPUTS, inputs);
  8558. }
  8559. void add_outputs(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> outputs) {
  8560. fbb_.AddOffset(SubGraph::VT_OUTPUTS, outputs);
  8561. }
  8562. void add_operators(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Operator>>> operators) {
  8563. fbb_.AddOffset(SubGraph::VT_OPERATORS, operators);
  8564. }
  8565. void add_name(::flatbuffers::Offset<::flatbuffers::String> name) {
  8566. fbb_.AddOffset(SubGraph::VT_NAME, name);
  8567. }
  8568. explicit SubGraphBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  8569. : fbb_(_fbb) {
  8570. start_ = fbb_.StartTable();
  8571. }
  8572. ::flatbuffers::Offset<SubGraph> Finish() {
  8573. const auto end = fbb_.EndTable(start_);
  8574. auto o = ::flatbuffers::Offset<SubGraph>(end);
  8575. return o;
  8576. }
  8577. };
  8578. inline ::flatbuffers::Offset<SubGraph> CreateSubGraph(
  8579. ::flatbuffers::FlatBufferBuilder &_fbb,
  8580. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Tensor>>> tensors = 0,
  8581. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> inputs = 0,
  8582. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> outputs = 0,
  8583. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Operator>>> operators = 0,
  8584. ::flatbuffers::Offset<::flatbuffers::String> name = 0) {
  8585. SubGraphBuilder builder_(_fbb);
  8586. builder_.add_name(name);
  8587. builder_.add_operators(operators);
  8588. builder_.add_outputs(outputs);
  8589. builder_.add_inputs(inputs);
  8590. builder_.add_tensors(tensors);
  8591. return builder_.Finish();
  8592. }
  8593. inline ::flatbuffers::Offset<SubGraph> CreateSubGraphDirect(
  8594. ::flatbuffers::FlatBufferBuilder &_fbb,
  8595. const std::vector<::flatbuffers::Offset<opencv_tflite::Tensor>> *tensors = nullptr,
  8596. const std::vector<int32_t> *inputs = nullptr,
  8597. const std::vector<int32_t> *outputs = nullptr,
  8598. const std::vector<::flatbuffers::Offset<opencv_tflite::Operator>> *operators = nullptr,
  8599. const char *name = nullptr) {
  8600. auto tensors__ = tensors ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::Tensor>>(*tensors) : 0;
  8601. auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
  8602. auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
  8603. auto operators__ = operators ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::Operator>>(*operators) : 0;
  8604. auto name__ = name ? _fbb.CreateString(name) : 0;
  8605. return opencv_tflite::CreateSubGraph(
  8606. _fbb,
  8607. tensors__,
  8608. inputs__,
  8609. outputs__,
  8610. operators__,
  8611. name__);
  8612. }
  8613. struct Buffer FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  8614. typedef BufferBuilder Builder;
  8615. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8616. VT_DATA = 4
  8617. };
  8618. const ::flatbuffers::Vector<uint8_t> *data() const {
  8619. return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_DATA);
  8620. }
  8621. bool Verify(::flatbuffers::Verifier &verifier) const {
  8622. return VerifyTableStart(verifier) &&
  8623. VerifyOffset(verifier, VT_DATA) &&
  8624. verifier.VerifyVector(data()) &&
  8625. verifier.EndTable();
  8626. }
  8627. };
  8628. struct BufferBuilder {
  8629. typedef Buffer Table;
  8630. ::flatbuffers::FlatBufferBuilder &fbb_;
  8631. ::flatbuffers::uoffset_t start_;
  8632. void add_data(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data) {
  8633. fbb_.AddOffset(Buffer::VT_DATA, data);
  8634. }
  8635. explicit BufferBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  8636. : fbb_(_fbb) {
  8637. start_ = fbb_.StartTable();
  8638. }
  8639. ::flatbuffers::Offset<Buffer> Finish() {
  8640. const auto end = fbb_.EndTable(start_);
  8641. auto o = ::flatbuffers::Offset<Buffer>(end);
  8642. return o;
  8643. }
  8644. };
  8645. inline ::flatbuffers::Offset<Buffer> CreateBuffer(
  8646. ::flatbuffers::FlatBufferBuilder &_fbb,
  8647. ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data = 0) {
  8648. BufferBuilder builder_(_fbb);
  8649. builder_.add_data(data);
  8650. return builder_.Finish();
  8651. }
  8652. inline ::flatbuffers::Offset<Buffer> CreateBufferDirect(
  8653. ::flatbuffers::FlatBufferBuilder &_fbb,
  8654. const std::vector<uint8_t> *data = nullptr) {
  8655. if (data) { _fbb.ForceVectorAlignment(data->size(), sizeof(uint8_t), 16); }
  8656. auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
  8657. return opencv_tflite::CreateBuffer(
  8658. _fbb,
  8659. data__);
  8660. }
  8661. struct Metadata FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  8662. typedef MetadataBuilder Builder;
  8663. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8664. VT_NAME = 4,
  8665. VT_BUFFER = 6
  8666. };
  8667. const ::flatbuffers::String *name() const {
  8668. return GetPointer<const ::flatbuffers::String *>(VT_NAME);
  8669. }
  8670. uint32_t buffer() const {
  8671. return GetField<uint32_t>(VT_BUFFER, 0);
  8672. }
  8673. bool Verify(::flatbuffers::Verifier &verifier) const {
  8674. return VerifyTableStart(verifier) &&
  8675. VerifyOffset(verifier, VT_NAME) &&
  8676. verifier.VerifyString(name()) &&
  8677. VerifyField<uint32_t>(verifier, VT_BUFFER, 4) &&
  8678. verifier.EndTable();
  8679. }
  8680. };
  8681. struct MetadataBuilder {
  8682. typedef Metadata Table;
  8683. ::flatbuffers::FlatBufferBuilder &fbb_;
  8684. ::flatbuffers::uoffset_t start_;
  8685. void add_name(::flatbuffers::Offset<::flatbuffers::String> name) {
  8686. fbb_.AddOffset(Metadata::VT_NAME, name);
  8687. }
  8688. void add_buffer(uint32_t buffer) {
  8689. fbb_.AddElement<uint32_t>(Metadata::VT_BUFFER, buffer, 0);
  8690. }
  8691. explicit MetadataBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  8692. : fbb_(_fbb) {
  8693. start_ = fbb_.StartTable();
  8694. }
  8695. ::flatbuffers::Offset<Metadata> Finish() {
  8696. const auto end = fbb_.EndTable(start_);
  8697. auto o = ::flatbuffers::Offset<Metadata>(end);
  8698. return o;
  8699. }
  8700. };
  8701. inline ::flatbuffers::Offset<Metadata> CreateMetadata(
  8702. ::flatbuffers::FlatBufferBuilder &_fbb,
  8703. ::flatbuffers::Offset<::flatbuffers::String> name = 0,
  8704. uint32_t buffer = 0) {
  8705. MetadataBuilder builder_(_fbb);
  8706. builder_.add_buffer(buffer);
  8707. builder_.add_name(name);
  8708. return builder_.Finish();
  8709. }
  8710. inline ::flatbuffers::Offset<Metadata> CreateMetadataDirect(
  8711. ::flatbuffers::FlatBufferBuilder &_fbb,
  8712. const char *name = nullptr,
  8713. uint32_t buffer = 0) {
  8714. auto name__ = name ? _fbb.CreateString(name) : 0;
  8715. return opencv_tflite::CreateMetadata(
  8716. _fbb,
  8717. name__,
  8718. buffer);
  8719. }
  8720. struct TensorMap FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  8721. typedef TensorMapBuilder Builder;
  8722. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8723. VT_NAME = 4,
  8724. VT_TENSOR_INDEX = 6
  8725. };
  8726. const ::flatbuffers::String *name() const {
  8727. return GetPointer<const ::flatbuffers::String *>(VT_NAME);
  8728. }
  8729. uint32_t tensor_index() const {
  8730. return GetField<uint32_t>(VT_TENSOR_INDEX, 0);
  8731. }
  8732. bool Verify(::flatbuffers::Verifier &verifier) const {
  8733. return VerifyTableStart(verifier) &&
  8734. VerifyOffset(verifier, VT_NAME) &&
  8735. verifier.VerifyString(name()) &&
  8736. VerifyField<uint32_t>(verifier, VT_TENSOR_INDEX, 4) &&
  8737. verifier.EndTable();
  8738. }
  8739. };
  8740. struct TensorMapBuilder {
  8741. typedef TensorMap Table;
  8742. ::flatbuffers::FlatBufferBuilder &fbb_;
  8743. ::flatbuffers::uoffset_t start_;
  8744. void add_name(::flatbuffers::Offset<::flatbuffers::String> name) {
  8745. fbb_.AddOffset(TensorMap::VT_NAME, name);
  8746. }
  8747. void add_tensor_index(uint32_t tensor_index) {
  8748. fbb_.AddElement<uint32_t>(TensorMap::VT_TENSOR_INDEX, tensor_index, 0);
  8749. }
  8750. explicit TensorMapBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  8751. : fbb_(_fbb) {
  8752. start_ = fbb_.StartTable();
  8753. }
  8754. ::flatbuffers::Offset<TensorMap> Finish() {
  8755. const auto end = fbb_.EndTable(start_);
  8756. auto o = ::flatbuffers::Offset<TensorMap>(end);
  8757. return o;
  8758. }
  8759. };
  8760. inline ::flatbuffers::Offset<TensorMap> CreateTensorMap(
  8761. ::flatbuffers::FlatBufferBuilder &_fbb,
  8762. ::flatbuffers::Offset<::flatbuffers::String> name = 0,
  8763. uint32_t tensor_index = 0) {
  8764. TensorMapBuilder builder_(_fbb);
  8765. builder_.add_tensor_index(tensor_index);
  8766. builder_.add_name(name);
  8767. return builder_.Finish();
  8768. }
  8769. inline ::flatbuffers::Offset<TensorMap> CreateTensorMapDirect(
  8770. ::flatbuffers::FlatBufferBuilder &_fbb,
  8771. const char *name = nullptr,
  8772. uint32_t tensor_index = 0) {
  8773. auto name__ = name ? _fbb.CreateString(name) : 0;
  8774. return opencv_tflite::CreateTensorMap(
  8775. _fbb,
  8776. name__,
  8777. tensor_index);
  8778. }
  8779. struct SignatureDef FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  8780. typedef SignatureDefBuilder Builder;
  8781. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8782. VT_INPUTS = 4,
  8783. VT_OUTPUTS = 6,
  8784. VT_SIGNATURE_KEY = 8,
  8785. VT_SUBGRAPH_INDEX = 12
  8786. };
  8787. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>> *inputs() const {
  8788. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>> *>(VT_INPUTS);
  8789. }
  8790. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>> *outputs() const {
  8791. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>> *>(VT_OUTPUTS);
  8792. }
  8793. const ::flatbuffers::String *signature_key() const {
  8794. return GetPointer<const ::flatbuffers::String *>(VT_SIGNATURE_KEY);
  8795. }
  8796. uint32_t subgraph_index() const {
  8797. return GetField<uint32_t>(VT_SUBGRAPH_INDEX, 0);
  8798. }
  8799. bool Verify(::flatbuffers::Verifier &verifier) const {
  8800. return VerifyTableStart(verifier) &&
  8801. VerifyOffset(verifier, VT_INPUTS) &&
  8802. verifier.VerifyVector(inputs()) &&
  8803. verifier.VerifyVectorOfTables(inputs()) &&
  8804. VerifyOffset(verifier, VT_OUTPUTS) &&
  8805. verifier.VerifyVector(outputs()) &&
  8806. verifier.VerifyVectorOfTables(outputs()) &&
  8807. VerifyOffset(verifier, VT_SIGNATURE_KEY) &&
  8808. verifier.VerifyString(signature_key()) &&
  8809. VerifyField<uint32_t>(verifier, VT_SUBGRAPH_INDEX, 4) &&
  8810. verifier.EndTable();
  8811. }
  8812. };
  8813. struct SignatureDefBuilder {
  8814. typedef SignatureDef Table;
  8815. ::flatbuffers::FlatBufferBuilder &fbb_;
  8816. ::flatbuffers::uoffset_t start_;
  8817. void add_inputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>>> inputs) {
  8818. fbb_.AddOffset(SignatureDef::VT_INPUTS, inputs);
  8819. }
  8820. void add_outputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>>> outputs) {
  8821. fbb_.AddOffset(SignatureDef::VT_OUTPUTS, outputs);
  8822. }
  8823. void add_signature_key(::flatbuffers::Offset<::flatbuffers::String> signature_key) {
  8824. fbb_.AddOffset(SignatureDef::VT_SIGNATURE_KEY, signature_key);
  8825. }
  8826. void add_subgraph_index(uint32_t subgraph_index) {
  8827. fbb_.AddElement<uint32_t>(SignatureDef::VT_SUBGRAPH_INDEX, subgraph_index, 0);
  8828. }
  8829. explicit SignatureDefBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  8830. : fbb_(_fbb) {
  8831. start_ = fbb_.StartTable();
  8832. }
  8833. ::flatbuffers::Offset<SignatureDef> Finish() {
  8834. const auto end = fbb_.EndTable(start_);
  8835. auto o = ::flatbuffers::Offset<SignatureDef>(end);
  8836. return o;
  8837. }
  8838. };
  8839. inline ::flatbuffers::Offset<SignatureDef> CreateSignatureDef(
  8840. ::flatbuffers::FlatBufferBuilder &_fbb,
  8841. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>>> inputs = 0,
  8842. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::TensorMap>>> outputs = 0,
  8843. ::flatbuffers::Offset<::flatbuffers::String> signature_key = 0,
  8844. uint32_t subgraph_index = 0) {
  8845. SignatureDefBuilder builder_(_fbb);
  8846. builder_.add_subgraph_index(subgraph_index);
  8847. builder_.add_signature_key(signature_key);
  8848. builder_.add_outputs(outputs);
  8849. builder_.add_inputs(inputs);
  8850. return builder_.Finish();
  8851. }
  8852. inline ::flatbuffers::Offset<SignatureDef> CreateSignatureDefDirect(
  8853. ::flatbuffers::FlatBufferBuilder &_fbb,
  8854. const std::vector<::flatbuffers::Offset<opencv_tflite::TensorMap>> *inputs = nullptr,
  8855. const std::vector<::flatbuffers::Offset<opencv_tflite::TensorMap>> *outputs = nullptr,
  8856. const char *signature_key = nullptr,
  8857. uint32_t subgraph_index = 0) {
  8858. auto inputs__ = inputs ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::TensorMap>>(*inputs) : 0;
  8859. auto outputs__ = outputs ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::TensorMap>>(*outputs) : 0;
  8860. auto signature_key__ = signature_key ? _fbb.CreateString(signature_key) : 0;
  8861. return opencv_tflite::CreateSignatureDef(
  8862. _fbb,
  8863. inputs__,
  8864. outputs__,
  8865. signature_key__,
  8866. subgraph_index);
  8867. }
  8868. struct Model FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
  8869. typedef ModelBuilder Builder;
  8870. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8871. VT_VERSION = 4,
  8872. VT_OPERATOR_CODES = 6,
  8873. VT_SUBGRAPHS = 8,
  8874. VT_DESCRIPTION = 10,
  8875. VT_BUFFERS = 12,
  8876. VT_METADATA_BUFFER = 14,
  8877. VT_METADATA = 16,
  8878. VT_SIGNATURE_DEFS = 18
  8879. };
  8880. uint32_t version() const {
  8881. return GetField<uint32_t>(VT_VERSION, 0);
  8882. }
  8883. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::OperatorCode>> *operator_codes() const {
  8884. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::OperatorCode>> *>(VT_OPERATOR_CODES);
  8885. }
  8886. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SubGraph>> *subgraphs() const {
  8887. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SubGraph>> *>(VT_SUBGRAPHS);
  8888. }
  8889. const ::flatbuffers::String *description() const {
  8890. return GetPointer<const ::flatbuffers::String *>(VT_DESCRIPTION);
  8891. }
  8892. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Buffer>> *buffers() const {
  8893. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Buffer>> *>(VT_BUFFERS);
  8894. }
  8895. const ::flatbuffers::Vector<int32_t> *metadata_buffer() const {
  8896. return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_METADATA_BUFFER);
  8897. }
  8898. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Metadata>> *metadata() const {
  8899. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Metadata>> *>(VT_METADATA);
  8900. }
  8901. const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SignatureDef>> *signature_defs() const {
  8902. return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SignatureDef>> *>(VT_SIGNATURE_DEFS);
  8903. }
  8904. bool Verify(::flatbuffers::Verifier &verifier) const {
  8905. return VerifyTableStart(verifier) &&
  8906. VerifyField<uint32_t>(verifier, VT_VERSION, 4) &&
  8907. VerifyOffset(verifier, VT_OPERATOR_CODES) &&
  8908. verifier.VerifyVector(operator_codes()) &&
  8909. verifier.VerifyVectorOfTables(operator_codes()) &&
  8910. VerifyOffset(verifier, VT_SUBGRAPHS) &&
  8911. verifier.VerifyVector(subgraphs()) &&
  8912. verifier.VerifyVectorOfTables(subgraphs()) &&
  8913. VerifyOffset(verifier, VT_DESCRIPTION) &&
  8914. verifier.VerifyString(description()) &&
  8915. VerifyOffset(verifier, VT_BUFFERS) &&
  8916. verifier.VerifyVector(buffers()) &&
  8917. verifier.VerifyVectorOfTables(buffers()) &&
  8918. VerifyOffset(verifier, VT_METADATA_BUFFER) &&
  8919. verifier.VerifyVector(metadata_buffer()) &&
  8920. VerifyOffset(verifier, VT_METADATA) &&
  8921. verifier.VerifyVector(metadata()) &&
  8922. verifier.VerifyVectorOfTables(metadata()) &&
  8923. VerifyOffset(verifier, VT_SIGNATURE_DEFS) &&
  8924. verifier.VerifyVector(signature_defs()) &&
  8925. verifier.VerifyVectorOfTables(signature_defs()) &&
  8926. verifier.EndTable();
  8927. }
  8928. };
  8929. struct ModelBuilder {
  8930. typedef Model Table;
  8931. ::flatbuffers::FlatBufferBuilder &fbb_;
  8932. ::flatbuffers::uoffset_t start_;
  8933. void add_version(uint32_t version) {
  8934. fbb_.AddElement<uint32_t>(Model::VT_VERSION, version, 0);
  8935. }
  8936. void add_operator_codes(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::OperatorCode>>> operator_codes) {
  8937. fbb_.AddOffset(Model::VT_OPERATOR_CODES, operator_codes);
  8938. }
  8939. void add_subgraphs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SubGraph>>> subgraphs) {
  8940. fbb_.AddOffset(Model::VT_SUBGRAPHS, subgraphs);
  8941. }
  8942. void add_description(::flatbuffers::Offset<::flatbuffers::String> description) {
  8943. fbb_.AddOffset(Model::VT_DESCRIPTION, description);
  8944. }
  8945. void add_buffers(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Buffer>>> buffers) {
  8946. fbb_.AddOffset(Model::VT_BUFFERS, buffers);
  8947. }
  8948. void add_metadata_buffer(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> metadata_buffer) {
  8949. fbb_.AddOffset(Model::VT_METADATA_BUFFER, metadata_buffer);
  8950. }
  8951. void add_metadata(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Metadata>>> metadata) {
  8952. fbb_.AddOffset(Model::VT_METADATA, metadata);
  8953. }
  8954. void add_signature_defs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SignatureDef>>> signature_defs) {
  8955. fbb_.AddOffset(Model::VT_SIGNATURE_DEFS, signature_defs);
  8956. }
  8957. explicit ModelBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
  8958. : fbb_(_fbb) {
  8959. start_ = fbb_.StartTable();
  8960. }
  8961. ::flatbuffers::Offset<Model> Finish() {
  8962. const auto end = fbb_.EndTable(start_);
  8963. auto o = ::flatbuffers::Offset<Model>(end);
  8964. return o;
  8965. }
  8966. };
  8967. inline ::flatbuffers::Offset<Model> CreateModel(
  8968. ::flatbuffers::FlatBufferBuilder &_fbb,
  8969. uint32_t version = 0,
  8970. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::OperatorCode>>> operator_codes = 0,
  8971. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SubGraph>>> subgraphs = 0,
  8972. ::flatbuffers::Offset<::flatbuffers::String> description = 0,
  8973. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Buffer>>> buffers = 0,
  8974. ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> metadata_buffer = 0,
  8975. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::Metadata>>> metadata = 0,
  8976. ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<opencv_tflite::SignatureDef>>> signature_defs = 0) {
  8977. ModelBuilder builder_(_fbb);
  8978. builder_.add_signature_defs(signature_defs);
  8979. builder_.add_metadata(metadata);
  8980. builder_.add_metadata_buffer(metadata_buffer);
  8981. builder_.add_buffers(buffers);
  8982. builder_.add_description(description);
  8983. builder_.add_subgraphs(subgraphs);
  8984. builder_.add_operator_codes(operator_codes);
  8985. builder_.add_version(version);
  8986. return builder_.Finish();
  8987. }
  8988. inline ::flatbuffers::Offset<Model> CreateModelDirect(
  8989. ::flatbuffers::FlatBufferBuilder &_fbb,
  8990. uint32_t version = 0,
  8991. const std::vector<::flatbuffers::Offset<opencv_tflite::OperatorCode>> *operator_codes = nullptr,
  8992. const std::vector<::flatbuffers::Offset<opencv_tflite::SubGraph>> *subgraphs = nullptr,
  8993. const char *description = nullptr,
  8994. const std::vector<::flatbuffers::Offset<opencv_tflite::Buffer>> *buffers = nullptr,
  8995. const std::vector<int32_t> *metadata_buffer = nullptr,
  8996. const std::vector<::flatbuffers::Offset<opencv_tflite::Metadata>> *metadata = nullptr,
  8997. const std::vector<::flatbuffers::Offset<opencv_tflite::SignatureDef>> *signature_defs = nullptr) {
  8998. auto operator_codes__ = operator_codes ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::OperatorCode>>(*operator_codes) : 0;
  8999. auto subgraphs__ = subgraphs ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::SubGraph>>(*subgraphs) : 0;
  9000. auto description__ = description ? _fbb.CreateString(description) : 0;
  9001. auto buffers__ = buffers ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::Buffer>>(*buffers) : 0;
  9002. auto metadata_buffer__ = metadata_buffer ? _fbb.CreateVector<int32_t>(*metadata_buffer) : 0;
  9003. auto metadata__ = metadata ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::Metadata>>(*metadata) : 0;
  9004. auto signature_defs__ = signature_defs ? _fbb.CreateVector<::flatbuffers::Offset<opencv_tflite::SignatureDef>>(*signature_defs) : 0;
  9005. return opencv_tflite::CreateModel(
  9006. _fbb,
  9007. version,
  9008. operator_codes__,
  9009. subgraphs__,
  9010. description__,
  9011. buffers__,
  9012. metadata_buffer__,
  9013. metadata__,
  9014. signature_defs__);
  9015. }
  9016. inline bool VerifyQuantizationDetails(::flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type) {
  9017. switch (type) {
  9018. case QuantizationDetails_NONE: {
  9019. return true;
  9020. }
  9021. case QuantizationDetails_CustomQuantization: {
  9022. auto ptr = reinterpret_cast<const opencv_tflite::CustomQuantization *>(obj);
  9023. return verifier.VerifyTable(ptr);
  9024. }
  9025. default: return true;
  9026. }
  9027. }
  9028. inline bool VerifyQuantizationDetailsVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types) {
  9029. if (!values || !types) return !values && !types;
  9030. if (values->size() != types->size()) return false;
  9031. for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  9032. if (!VerifyQuantizationDetails(
  9033. verifier, values->Get(i), types->GetEnum<QuantizationDetails>(i))) {
  9034. return false;
  9035. }
  9036. }
  9037. return true;
  9038. }
  9039. inline bool VerifySparseIndexVector(::flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type) {
  9040. switch (type) {
  9041. case SparseIndexVector_NONE: {
  9042. return true;
  9043. }
  9044. case SparseIndexVector_Int32Vector: {
  9045. auto ptr = reinterpret_cast<const opencv_tflite::Int32Vector *>(obj);
  9046. return verifier.VerifyTable(ptr);
  9047. }
  9048. case SparseIndexVector_Uint16Vector: {
  9049. auto ptr = reinterpret_cast<const opencv_tflite::Uint16Vector *>(obj);
  9050. return verifier.VerifyTable(ptr);
  9051. }
  9052. case SparseIndexVector_Uint8Vector: {
  9053. auto ptr = reinterpret_cast<const opencv_tflite::Uint8Vector *>(obj);
  9054. return verifier.VerifyTable(ptr);
  9055. }
  9056. default: return true;
  9057. }
  9058. }
  9059. inline bool VerifySparseIndexVectorVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types) {
  9060. if (!values || !types) return !values && !types;
  9061. if (values->size() != types->size()) return false;
  9062. for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  9063. if (!VerifySparseIndexVector(
  9064. verifier, values->Get(i), types->GetEnum<SparseIndexVector>(i))) {
  9065. return false;
  9066. }
  9067. }
  9068. return true;
  9069. }
  9070. inline bool VerifyBuiltinOptions(::flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type) {
  9071. switch (type) {
  9072. case BuiltinOptions_NONE: {
  9073. return true;
  9074. }
  9075. case BuiltinOptions_Conv2DOptions: {
  9076. auto ptr = reinterpret_cast<const opencv_tflite::Conv2DOptions *>(obj);
  9077. return verifier.VerifyTable(ptr);
  9078. }
  9079. case BuiltinOptions_DepthwiseConv2DOptions: {
  9080. auto ptr = reinterpret_cast<const opencv_tflite::DepthwiseConv2DOptions *>(obj);
  9081. return verifier.VerifyTable(ptr);
  9082. }
  9083. case BuiltinOptions_ConcatEmbeddingsOptions: {
  9084. auto ptr = reinterpret_cast<const opencv_tflite::ConcatEmbeddingsOptions *>(obj);
  9085. return verifier.VerifyTable(ptr);
  9086. }
  9087. case BuiltinOptions_LSHProjectionOptions: {
  9088. auto ptr = reinterpret_cast<const opencv_tflite::LSHProjectionOptions *>(obj);
  9089. return verifier.VerifyTable(ptr);
  9090. }
  9091. case BuiltinOptions_Pool2DOptions: {
  9092. auto ptr = reinterpret_cast<const opencv_tflite::Pool2DOptions *>(obj);
  9093. return verifier.VerifyTable(ptr);
  9094. }
  9095. case BuiltinOptions_SVDFOptions: {
  9096. auto ptr = reinterpret_cast<const opencv_tflite::SVDFOptions *>(obj);
  9097. return verifier.VerifyTable(ptr);
  9098. }
  9099. case BuiltinOptions_RNNOptions: {
  9100. auto ptr = reinterpret_cast<const opencv_tflite::RNNOptions *>(obj);
  9101. return verifier.VerifyTable(ptr);
  9102. }
  9103. case BuiltinOptions_FullyConnectedOptions: {
  9104. auto ptr = reinterpret_cast<const opencv_tflite::FullyConnectedOptions *>(obj);
  9105. return verifier.VerifyTable(ptr);
  9106. }
  9107. case BuiltinOptions_SoftmaxOptions: {
  9108. auto ptr = reinterpret_cast<const opencv_tflite::SoftmaxOptions *>(obj);
  9109. return verifier.VerifyTable(ptr);
  9110. }
  9111. case BuiltinOptions_ConcatenationOptions: {
  9112. auto ptr = reinterpret_cast<const opencv_tflite::ConcatenationOptions *>(obj);
  9113. return verifier.VerifyTable(ptr);
  9114. }
  9115. case BuiltinOptions_AddOptions: {
  9116. auto ptr = reinterpret_cast<const opencv_tflite::AddOptions *>(obj);
  9117. return verifier.VerifyTable(ptr);
  9118. }
  9119. case BuiltinOptions_L2NormOptions: {
  9120. auto ptr = reinterpret_cast<const opencv_tflite::L2NormOptions *>(obj);
  9121. return verifier.VerifyTable(ptr);
  9122. }
  9123. case BuiltinOptions_LocalResponseNormalizationOptions: {
  9124. auto ptr = reinterpret_cast<const opencv_tflite::LocalResponseNormalizationOptions *>(obj);
  9125. return verifier.VerifyTable(ptr);
  9126. }
  9127. case BuiltinOptions_LSTMOptions: {
  9128. auto ptr = reinterpret_cast<const opencv_tflite::LSTMOptions *>(obj);
  9129. return verifier.VerifyTable(ptr);
  9130. }
  9131. case BuiltinOptions_ResizeBilinearOptions: {
  9132. auto ptr = reinterpret_cast<const opencv_tflite::ResizeBilinearOptions *>(obj);
  9133. return verifier.VerifyTable(ptr);
  9134. }
  9135. case BuiltinOptions_CallOptions: {
  9136. auto ptr = reinterpret_cast<const opencv_tflite::CallOptions *>(obj);
  9137. return verifier.VerifyTable(ptr);
  9138. }
  9139. case BuiltinOptions_ReshapeOptions: {
  9140. auto ptr = reinterpret_cast<const opencv_tflite::ReshapeOptions *>(obj);
  9141. return verifier.VerifyTable(ptr);
  9142. }
  9143. case BuiltinOptions_SkipGramOptions: {
  9144. auto ptr = reinterpret_cast<const opencv_tflite::SkipGramOptions *>(obj);
  9145. return verifier.VerifyTable(ptr);
  9146. }
  9147. case BuiltinOptions_SpaceToDepthOptions: {
  9148. auto ptr = reinterpret_cast<const opencv_tflite::SpaceToDepthOptions *>(obj);
  9149. return verifier.VerifyTable(ptr);
  9150. }
  9151. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  9152. auto ptr = reinterpret_cast<const opencv_tflite::EmbeddingLookupSparseOptions *>(obj);
  9153. return verifier.VerifyTable(ptr);
  9154. }
  9155. case BuiltinOptions_MulOptions: {
  9156. auto ptr = reinterpret_cast<const opencv_tflite::MulOptions *>(obj);
  9157. return verifier.VerifyTable(ptr);
  9158. }
  9159. case BuiltinOptions_PadOptions: {
  9160. auto ptr = reinterpret_cast<const opencv_tflite::PadOptions *>(obj);
  9161. return verifier.VerifyTable(ptr);
  9162. }
  9163. case BuiltinOptions_GatherOptions: {
  9164. auto ptr = reinterpret_cast<const opencv_tflite::GatherOptions *>(obj);
  9165. return verifier.VerifyTable(ptr);
  9166. }
  9167. case BuiltinOptions_BatchToSpaceNDOptions: {
  9168. auto ptr = reinterpret_cast<const opencv_tflite::BatchToSpaceNDOptions *>(obj);
  9169. return verifier.VerifyTable(ptr);
  9170. }
  9171. case BuiltinOptions_SpaceToBatchNDOptions: {
  9172. auto ptr = reinterpret_cast<const opencv_tflite::SpaceToBatchNDOptions *>(obj);
  9173. return verifier.VerifyTable(ptr);
  9174. }
  9175. case BuiltinOptions_TransposeOptions: {
  9176. auto ptr = reinterpret_cast<const opencv_tflite::TransposeOptions *>(obj);
  9177. return verifier.VerifyTable(ptr);
  9178. }
  9179. case BuiltinOptions_ReducerOptions: {
  9180. auto ptr = reinterpret_cast<const opencv_tflite::ReducerOptions *>(obj);
  9181. return verifier.VerifyTable(ptr);
  9182. }
  9183. case BuiltinOptions_SubOptions: {
  9184. auto ptr = reinterpret_cast<const opencv_tflite::SubOptions *>(obj);
  9185. return verifier.VerifyTable(ptr);
  9186. }
  9187. case BuiltinOptions_DivOptions: {
  9188. auto ptr = reinterpret_cast<const opencv_tflite::DivOptions *>(obj);
  9189. return verifier.VerifyTable(ptr);
  9190. }
  9191. case BuiltinOptions_SqueezeOptions: {
  9192. auto ptr = reinterpret_cast<const opencv_tflite::SqueezeOptions *>(obj);
  9193. return verifier.VerifyTable(ptr);
  9194. }
  9195. case BuiltinOptions_SequenceRNNOptions: {
  9196. auto ptr = reinterpret_cast<const opencv_tflite::SequenceRNNOptions *>(obj);
  9197. return verifier.VerifyTable(ptr);
  9198. }
  9199. case BuiltinOptions_StridedSliceOptions: {
  9200. auto ptr = reinterpret_cast<const opencv_tflite::StridedSliceOptions *>(obj);
  9201. return verifier.VerifyTable(ptr);
  9202. }
  9203. case BuiltinOptions_ExpOptions: {
  9204. auto ptr = reinterpret_cast<const opencv_tflite::ExpOptions *>(obj);
  9205. return verifier.VerifyTable(ptr);
  9206. }
  9207. case BuiltinOptions_TopKV2Options: {
  9208. auto ptr = reinterpret_cast<const opencv_tflite::TopKV2Options *>(obj);
  9209. return verifier.VerifyTable(ptr);
  9210. }
  9211. case BuiltinOptions_SplitOptions: {
  9212. auto ptr = reinterpret_cast<const opencv_tflite::SplitOptions *>(obj);
  9213. return verifier.VerifyTable(ptr);
  9214. }
  9215. case BuiltinOptions_LogSoftmaxOptions: {
  9216. auto ptr = reinterpret_cast<const opencv_tflite::LogSoftmaxOptions *>(obj);
  9217. return verifier.VerifyTable(ptr);
  9218. }
  9219. case BuiltinOptions_CastOptions: {
  9220. auto ptr = reinterpret_cast<const opencv_tflite::CastOptions *>(obj);
  9221. return verifier.VerifyTable(ptr);
  9222. }
  9223. case BuiltinOptions_DequantizeOptions: {
  9224. auto ptr = reinterpret_cast<const opencv_tflite::DequantizeOptions *>(obj);
  9225. return verifier.VerifyTable(ptr);
  9226. }
  9227. case BuiltinOptions_MaximumMinimumOptions: {
  9228. auto ptr = reinterpret_cast<const opencv_tflite::MaximumMinimumOptions *>(obj);
  9229. return verifier.VerifyTable(ptr);
  9230. }
  9231. case BuiltinOptions_ArgMaxOptions: {
  9232. auto ptr = reinterpret_cast<const opencv_tflite::ArgMaxOptions *>(obj);
  9233. return verifier.VerifyTable(ptr);
  9234. }
  9235. case BuiltinOptions_LessOptions: {
  9236. auto ptr = reinterpret_cast<const opencv_tflite::LessOptions *>(obj);
  9237. return verifier.VerifyTable(ptr);
  9238. }
  9239. case BuiltinOptions_NegOptions: {
  9240. auto ptr = reinterpret_cast<const opencv_tflite::NegOptions *>(obj);
  9241. return verifier.VerifyTable(ptr);
  9242. }
  9243. case BuiltinOptions_PadV2Options: {
  9244. auto ptr = reinterpret_cast<const opencv_tflite::PadV2Options *>(obj);
  9245. return verifier.VerifyTable(ptr);
  9246. }
  9247. case BuiltinOptions_GreaterOptions: {
  9248. auto ptr = reinterpret_cast<const opencv_tflite::GreaterOptions *>(obj);
  9249. return verifier.VerifyTable(ptr);
  9250. }
  9251. case BuiltinOptions_GreaterEqualOptions: {
  9252. auto ptr = reinterpret_cast<const opencv_tflite::GreaterEqualOptions *>(obj);
  9253. return verifier.VerifyTable(ptr);
  9254. }
  9255. case BuiltinOptions_LessEqualOptions: {
  9256. auto ptr = reinterpret_cast<const opencv_tflite::LessEqualOptions *>(obj);
  9257. return verifier.VerifyTable(ptr);
  9258. }
  9259. case BuiltinOptions_SelectOptions: {
  9260. auto ptr = reinterpret_cast<const opencv_tflite::SelectOptions *>(obj);
  9261. return verifier.VerifyTable(ptr);
  9262. }
  9263. case BuiltinOptions_SliceOptions: {
  9264. auto ptr = reinterpret_cast<const opencv_tflite::SliceOptions *>(obj);
  9265. return verifier.VerifyTable(ptr);
  9266. }
  9267. case BuiltinOptions_TransposeConvOptions: {
  9268. auto ptr = reinterpret_cast<const opencv_tflite::TransposeConvOptions *>(obj);
  9269. return verifier.VerifyTable(ptr);
  9270. }
  9271. case BuiltinOptions_SparseToDenseOptions: {
  9272. auto ptr = reinterpret_cast<const opencv_tflite::SparseToDenseOptions *>(obj);
  9273. return verifier.VerifyTable(ptr);
  9274. }
  9275. case BuiltinOptions_TileOptions: {
  9276. auto ptr = reinterpret_cast<const opencv_tflite::TileOptions *>(obj);
  9277. return verifier.VerifyTable(ptr);
  9278. }
  9279. case BuiltinOptions_ExpandDimsOptions: {
  9280. auto ptr = reinterpret_cast<const opencv_tflite::ExpandDimsOptions *>(obj);
  9281. return verifier.VerifyTable(ptr);
  9282. }
  9283. case BuiltinOptions_EqualOptions: {
  9284. auto ptr = reinterpret_cast<const opencv_tflite::EqualOptions *>(obj);
  9285. return verifier.VerifyTable(ptr);
  9286. }
  9287. case BuiltinOptions_NotEqualOptions: {
  9288. auto ptr = reinterpret_cast<const opencv_tflite::NotEqualOptions *>(obj);
  9289. return verifier.VerifyTable(ptr);
  9290. }
  9291. case BuiltinOptions_ShapeOptions: {
  9292. auto ptr = reinterpret_cast<const opencv_tflite::ShapeOptions *>(obj);
  9293. return verifier.VerifyTable(ptr);
  9294. }
  9295. case BuiltinOptions_PowOptions: {
  9296. auto ptr = reinterpret_cast<const opencv_tflite::PowOptions *>(obj);
  9297. return verifier.VerifyTable(ptr);
  9298. }
  9299. case BuiltinOptions_ArgMinOptions: {
  9300. auto ptr = reinterpret_cast<const opencv_tflite::ArgMinOptions *>(obj);
  9301. return verifier.VerifyTable(ptr);
  9302. }
  9303. case BuiltinOptions_FakeQuantOptions: {
  9304. auto ptr = reinterpret_cast<const opencv_tflite::FakeQuantOptions *>(obj);
  9305. return verifier.VerifyTable(ptr);
  9306. }
  9307. case BuiltinOptions_PackOptions: {
  9308. auto ptr = reinterpret_cast<const opencv_tflite::PackOptions *>(obj);
  9309. return verifier.VerifyTable(ptr);
  9310. }
  9311. case BuiltinOptions_LogicalOrOptions: {
  9312. auto ptr = reinterpret_cast<const opencv_tflite::LogicalOrOptions *>(obj);
  9313. return verifier.VerifyTable(ptr);
  9314. }
  9315. case BuiltinOptions_OneHotOptions: {
  9316. auto ptr = reinterpret_cast<const opencv_tflite::OneHotOptions *>(obj);
  9317. return verifier.VerifyTable(ptr);
  9318. }
  9319. case BuiltinOptions_LogicalAndOptions: {
  9320. auto ptr = reinterpret_cast<const opencv_tflite::LogicalAndOptions *>(obj);
  9321. return verifier.VerifyTable(ptr);
  9322. }
  9323. case BuiltinOptions_LogicalNotOptions: {
  9324. auto ptr = reinterpret_cast<const opencv_tflite::LogicalNotOptions *>(obj);
  9325. return verifier.VerifyTable(ptr);
  9326. }
  9327. case BuiltinOptions_UnpackOptions: {
  9328. auto ptr = reinterpret_cast<const opencv_tflite::UnpackOptions *>(obj);
  9329. return verifier.VerifyTable(ptr);
  9330. }
  9331. case BuiltinOptions_FloorDivOptions: {
  9332. auto ptr = reinterpret_cast<const opencv_tflite::FloorDivOptions *>(obj);
  9333. return verifier.VerifyTable(ptr);
  9334. }
  9335. case BuiltinOptions_SquareOptions: {
  9336. auto ptr = reinterpret_cast<const opencv_tflite::SquareOptions *>(obj);
  9337. return verifier.VerifyTable(ptr);
  9338. }
  9339. case BuiltinOptions_ZerosLikeOptions: {
  9340. auto ptr = reinterpret_cast<const opencv_tflite::ZerosLikeOptions *>(obj);
  9341. return verifier.VerifyTable(ptr);
  9342. }
  9343. case BuiltinOptions_FillOptions: {
  9344. auto ptr = reinterpret_cast<const opencv_tflite::FillOptions *>(obj);
  9345. return verifier.VerifyTable(ptr);
  9346. }
  9347. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  9348. auto ptr = reinterpret_cast<const opencv_tflite::BidirectionalSequenceLSTMOptions *>(obj);
  9349. return verifier.VerifyTable(ptr);
  9350. }
  9351. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  9352. auto ptr = reinterpret_cast<const opencv_tflite::BidirectionalSequenceRNNOptions *>(obj);
  9353. return verifier.VerifyTable(ptr);
  9354. }
  9355. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  9356. auto ptr = reinterpret_cast<const opencv_tflite::UnidirectionalSequenceLSTMOptions *>(obj);
  9357. return verifier.VerifyTable(ptr);
  9358. }
  9359. case BuiltinOptions_FloorModOptions: {
  9360. auto ptr = reinterpret_cast<const opencv_tflite::FloorModOptions *>(obj);
  9361. return verifier.VerifyTable(ptr);
  9362. }
  9363. case BuiltinOptions_RangeOptions: {
  9364. auto ptr = reinterpret_cast<const opencv_tflite::RangeOptions *>(obj);
  9365. return verifier.VerifyTable(ptr);
  9366. }
  9367. case BuiltinOptions_ResizeNearestNeighborOptions: {
  9368. auto ptr = reinterpret_cast<const opencv_tflite::ResizeNearestNeighborOptions *>(obj);
  9369. return verifier.VerifyTable(ptr);
  9370. }
  9371. case BuiltinOptions_LeakyReluOptions: {
  9372. auto ptr = reinterpret_cast<const opencv_tflite::LeakyReluOptions *>(obj);
  9373. return verifier.VerifyTable(ptr);
  9374. }
  9375. case BuiltinOptions_SquaredDifferenceOptions: {
  9376. auto ptr = reinterpret_cast<const opencv_tflite::SquaredDifferenceOptions *>(obj);
  9377. return verifier.VerifyTable(ptr);
  9378. }
  9379. case BuiltinOptions_MirrorPadOptions: {
  9380. auto ptr = reinterpret_cast<const opencv_tflite::MirrorPadOptions *>(obj);
  9381. return verifier.VerifyTable(ptr);
  9382. }
  9383. case BuiltinOptions_AbsOptions: {
  9384. auto ptr = reinterpret_cast<const opencv_tflite::AbsOptions *>(obj);
  9385. return verifier.VerifyTable(ptr);
  9386. }
  9387. case BuiltinOptions_SplitVOptions: {
  9388. auto ptr = reinterpret_cast<const opencv_tflite::SplitVOptions *>(obj);
  9389. return verifier.VerifyTable(ptr);
  9390. }
  9391. case BuiltinOptions_UniqueOptions: {
  9392. auto ptr = reinterpret_cast<const opencv_tflite::UniqueOptions *>(obj);
  9393. return verifier.VerifyTable(ptr);
  9394. }
  9395. case BuiltinOptions_ReverseV2Options: {
  9396. auto ptr = reinterpret_cast<const opencv_tflite::ReverseV2Options *>(obj);
  9397. return verifier.VerifyTable(ptr);
  9398. }
  9399. case BuiltinOptions_AddNOptions: {
  9400. auto ptr = reinterpret_cast<const opencv_tflite::AddNOptions *>(obj);
  9401. return verifier.VerifyTable(ptr);
  9402. }
  9403. case BuiltinOptions_GatherNdOptions: {
  9404. auto ptr = reinterpret_cast<const opencv_tflite::GatherNdOptions *>(obj);
  9405. return verifier.VerifyTable(ptr);
  9406. }
  9407. case BuiltinOptions_CosOptions: {
  9408. auto ptr = reinterpret_cast<const opencv_tflite::CosOptions *>(obj);
  9409. return verifier.VerifyTable(ptr);
  9410. }
  9411. case BuiltinOptions_WhereOptions: {
  9412. auto ptr = reinterpret_cast<const opencv_tflite::WhereOptions *>(obj);
  9413. return verifier.VerifyTable(ptr);
  9414. }
  9415. case BuiltinOptions_RankOptions: {
  9416. auto ptr = reinterpret_cast<const opencv_tflite::RankOptions *>(obj);
  9417. return verifier.VerifyTable(ptr);
  9418. }
  9419. case BuiltinOptions_ReverseSequenceOptions: {
  9420. auto ptr = reinterpret_cast<const opencv_tflite::ReverseSequenceOptions *>(obj);
  9421. return verifier.VerifyTable(ptr);
  9422. }
  9423. case BuiltinOptions_MatrixDiagOptions: {
  9424. auto ptr = reinterpret_cast<const opencv_tflite::MatrixDiagOptions *>(obj);
  9425. return verifier.VerifyTable(ptr);
  9426. }
  9427. case BuiltinOptions_QuantizeOptions: {
  9428. auto ptr = reinterpret_cast<const opencv_tflite::QuantizeOptions *>(obj);
  9429. return verifier.VerifyTable(ptr);
  9430. }
  9431. case BuiltinOptions_MatrixSetDiagOptions: {
  9432. auto ptr = reinterpret_cast<const opencv_tflite::MatrixSetDiagOptions *>(obj);
  9433. return verifier.VerifyTable(ptr);
  9434. }
  9435. case BuiltinOptions_HardSwishOptions: {
  9436. auto ptr = reinterpret_cast<const opencv_tflite::HardSwishOptions *>(obj);
  9437. return verifier.VerifyTable(ptr);
  9438. }
  9439. case BuiltinOptions_IfOptions: {
  9440. auto ptr = reinterpret_cast<const opencv_tflite::IfOptions *>(obj);
  9441. return verifier.VerifyTable(ptr);
  9442. }
  9443. case BuiltinOptions_WhileOptions: {
  9444. auto ptr = reinterpret_cast<const opencv_tflite::WhileOptions *>(obj);
  9445. return verifier.VerifyTable(ptr);
  9446. }
  9447. case BuiltinOptions_DepthToSpaceOptions: {
  9448. auto ptr = reinterpret_cast<const opencv_tflite::DepthToSpaceOptions *>(obj);
  9449. return verifier.VerifyTable(ptr);
  9450. }
  9451. case BuiltinOptions_NonMaxSuppressionV4Options: {
  9452. auto ptr = reinterpret_cast<const opencv_tflite::NonMaxSuppressionV4Options *>(obj);
  9453. return verifier.VerifyTable(ptr);
  9454. }
  9455. case BuiltinOptions_NonMaxSuppressionV5Options: {
  9456. auto ptr = reinterpret_cast<const opencv_tflite::NonMaxSuppressionV5Options *>(obj);
  9457. return verifier.VerifyTable(ptr);
  9458. }
  9459. case BuiltinOptions_ScatterNdOptions: {
  9460. auto ptr = reinterpret_cast<const opencv_tflite::ScatterNdOptions *>(obj);
  9461. return verifier.VerifyTable(ptr);
  9462. }
  9463. case BuiltinOptions_SelectV2Options: {
  9464. auto ptr = reinterpret_cast<const opencv_tflite::SelectV2Options *>(obj);
  9465. return verifier.VerifyTable(ptr);
  9466. }
  9467. case BuiltinOptions_DensifyOptions: {
  9468. auto ptr = reinterpret_cast<const opencv_tflite::DensifyOptions *>(obj);
  9469. return verifier.VerifyTable(ptr);
  9470. }
  9471. case BuiltinOptions_SegmentSumOptions: {
  9472. auto ptr = reinterpret_cast<const opencv_tflite::SegmentSumOptions *>(obj);
  9473. return verifier.VerifyTable(ptr);
  9474. }
  9475. case BuiltinOptions_BatchMatMulOptions: {
  9476. auto ptr = reinterpret_cast<const opencv_tflite::BatchMatMulOptions *>(obj);
  9477. return verifier.VerifyTable(ptr);
  9478. }
  9479. case BuiltinOptions_CumsumOptions: {
  9480. auto ptr = reinterpret_cast<const opencv_tflite::CumsumOptions *>(obj);
  9481. return verifier.VerifyTable(ptr);
  9482. }
  9483. case BuiltinOptions_CallOnceOptions: {
  9484. auto ptr = reinterpret_cast<const opencv_tflite::CallOnceOptions *>(obj);
  9485. return verifier.VerifyTable(ptr);
  9486. }
  9487. case BuiltinOptions_BroadcastToOptions: {
  9488. auto ptr = reinterpret_cast<const opencv_tflite::BroadcastToOptions *>(obj);
  9489. return verifier.VerifyTable(ptr);
  9490. }
  9491. case BuiltinOptions_Rfft2dOptions: {
  9492. auto ptr = reinterpret_cast<const opencv_tflite::Rfft2dOptions *>(obj);
  9493. return verifier.VerifyTable(ptr);
  9494. }
  9495. case BuiltinOptions_Conv3DOptions: {
  9496. auto ptr = reinterpret_cast<const opencv_tflite::Conv3DOptions *>(obj);
  9497. return verifier.VerifyTable(ptr);
  9498. }
  9499. case BuiltinOptions_HashtableOptions: {
  9500. auto ptr = reinterpret_cast<const opencv_tflite::HashtableOptions *>(obj);
  9501. return verifier.VerifyTable(ptr);
  9502. }
  9503. case BuiltinOptions_HashtableFindOptions: {
  9504. auto ptr = reinterpret_cast<const opencv_tflite::HashtableFindOptions *>(obj);
  9505. return verifier.VerifyTable(ptr);
  9506. }
  9507. case BuiltinOptions_HashtableImportOptions: {
  9508. auto ptr = reinterpret_cast<const opencv_tflite::HashtableImportOptions *>(obj);
  9509. return verifier.VerifyTable(ptr);
  9510. }
  9511. case BuiltinOptions_HashtableSizeOptions: {
  9512. auto ptr = reinterpret_cast<const opencv_tflite::HashtableSizeOptions *>(obj);
  9513. return verifier.VerifyTable(ptr);
  9514. }
  9515. case BuiltinOptions_VarHandleOptions: {
  9516. auto ptr = reinterpret_cast<const opencv_tflite::VarHandleOptions *>(obj);
  9517. return verifier.VerifyTable(ptr);
  9518. }
  9519. case BuiltinOptions_ReadVariableOptions: {
  9520. auto ptr = reinterpret_cast<const opencv_tflite::ReadVariableOptions *>(obj);
  9521. return verifier.VerifyTable(ptr);
  9522. }
  9523. case BuiltinOptions_AssignVariableOptions: {
  9524. auto ptr = reinterpret_cast<const opencv_tflite::AssignVariableOptions *>(obj);
  9525. return verifier.VerifyTable(ptr);
  9526. }
  9527. case BuiltinOptions_RandomOptions: {
  9528. auto ptr = reinterpret_cast<const opencv_tflite::RandomOptions *>(obj);
  9529. return verifier.VerifyTable(ptr);
  9530. }
  9531. case BuiltinOptions_BucketizeOptions: {
  9532. auto ptr = reinterpret_cast<const opencv_tflite::BucketizeOptions *>(obj);
  9533. return verifier.VerifyTable(ptr);
  9534. }
  9535. case BuiltinOptions_GeluOptions: {
  9536. auto ptr = reinterpret_cast<const opencv_tflite::GeluOptions *>(obj);
  9537. return verifier.VerifyTable(ptr);
  9538. }
  9539. case BuiltinOptions_DynamicUpdateSliceOptions: {
  9540. auto ptr = reinterpret_cast<const opencv_tflite::DynamicUpdateSliceOptions *>(obj);
  9541. return verifier.VerifyTable(ptr);
  9542. }
  9543. case BuiltinOptions_UnsortedSegmentProdOptions: {
  9544. auto ptr = reinterpret_cast<const opencv_tflite::UnsortedSegmentProdOptions *>(obj);
  9545. return verifier.VerifyTable(ptr);
  9546. }
  9547. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  9548. auto ptr = reinterpret_cast<const opencv_tflite::UnsortedSegmentMaxOptions *>(obj);
  9549. return verifier.VerifyTable(ptr);
  9550. }
  9551. case BuiltinOptions_UnsortedSegmentMinOptions: {
  9552. auto ptr = reinterpret_cast<const opencv_tflite::UnsortedSegmentMinOptions *>(obj);
  9553. return verifier.VerifyTable(ptr);
  9554. }
  9555. case BuiltinOptions_UnsortedSegmentSumOptions: {
  9556. auto ptr = reinterpret_cast<const opencv_tflite::UnsortedSegmentSumOptions *>(obj);
  9557. return verifier.VerifyTable(ptr);
  9558. }
  9559. case BuiltinOptions_ATan2Options: {
  9560. auto ptr = reinterpret_cast<const opencv_tflite::ATan2Options *>(obj);
  9561. return verifier.VerifyTable(ptr);
  9562. }
  9563. case BuiltinOptions_SignOptions: {
  9564. auto ptr = reinterpret_cast<const opencv_tflite::SignOptions *>(obj);
  9565. return verifier.VerifyTable(ptr);
  9566. }
  9567. default: return true;
  9568. }
  9569. }
  9570. inline bool VerifyBuiltinOptionsVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types) {
  9571. if (!values || !types) return !values && !types;
  9572. if (values->size() != types->size()) return false;
  9573. for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  9574. if (!VerifyBuiltinOptions(
  9575. verifier, values->Get(i), types->GetEnum<BuiltinOptions>(i))) {
  9576. return false;
  9577. }
  9578. }
  9579. return true;
  9580. }
  9581. inline const opencv_tflite::Model *GetModel(const void *buf) {
  9582. return ::flatbuffers::GetRoot<opencv_tflite::Model>(buf);
  9583. }
  9584. inline const opencv_tflite::Model *GetSizePrefixedModel(const void *buf) {
  9585. return ::flatbuffers::GetSizePrefixedRoot<opencv_tflite::Model>(buf);
  9586. }
  9587. inline const char *ModelIdentifier() {
  9588. return "TFL3";
  9589. }
  9590. inline bool ModelBufferHasIdentifier(const void *buf) {
  9591. return ::flatbuffers::BufferHasIdentifier(
  9592. buf, ModelIdentifier());
  9593. }
  9594. inline bool SizePrefixedModelBufferHasIdentifier(const void *buf) {
  9595. return ::flatbuffers::BufferHasIdentifier(
  9596. buf, ModelIdentifier(), true);
  9597. }
  9598. inline bool VerifyModelBuffer(
  9599. ::flatbuffers::Verifier &verifier) {
  9600. return verifier.VerifyBuffer<opencv_tflite::Model>(ModelIdentifier());
  9601. }
  9602. inline bool VerifySizePrefixedModelBuffer(
  9603. ::flatbuffers::Verifier &verifier) {
  9604. return verifier.VerifySizePrefixedBuffer<opencv_tflite::Model>(ModelIdentifier());
  9605. }
  9606. inline const char *ModelExtension() {
  9607. return "tflite";
  9608. }
  9609. inline void FinishModelBuffer(
  9610. ::flatbuffers::FlatBufferBuilder &fbb,
  9611. ::flatbuffers::Offset<opencv_tflite::Model> root) {
  9612. fbb.Finish(root, ModelIdentifier());
  9613. }
  9614. inline void FinishSizePrefixedModelBuffer(
  9615. ::flatbuffers::FlatBufferBuilder &fbb,
  9616. ::flatbuffers::Offset<opencv_tflite::Model> root) {
  9617. fbb.FinishSizePrefixed(root, ModelIdentifier());
  9618. }
  9619. } // namespace opencv_tflite
  9620. #endif // FLATBUFFERS_GENERATED_SCHEMA_OPENCV_TFLITE_H_