smart_mtp_2p2_gamma.h 64 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351
  1. /*
  2. * =================================================================
  3. *
  4. * Filename: smart_mtp_2p2_gamma.h
  5. *
  6. * Description: Smart dimming algorithm implementation
  7. *
  8. * Author: jb09.kim
  9. * Company: Samsung Electronics
  10. *
  11. * ================================================================
  12. */
  13. /*
  14. <one line to give the program's name and a brief idea of what it does.>
  15. Copyright (C) 2012, Samsung Electronics. All rights reserved.
  16. *
  17. * This program is free software; you can redistribute it and/or modify
  18. * it under the terms of the GNU General Public License version 2 and
  19. * only version 2 as published by the Free Software Foundation.
  20. *
  21. * This program is distributed in the hope that it will be useful,
  22. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  23. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  24. * GNU General Public License for more details.
  25. *
  26. * You should have received a copy of the GNU General Public License
  27. * along with this program; if not, write to the Free Software
  28. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
  29. * 02110-1301, USA.
  30. *
  31. */
  32. #ifndef _SMART_MTP_2P2_GAMMA_H_
  33. #define _SMART_MTP_2P2_GAMMA_H_
  34. /*
  35. * index : 0 ~ 255
  36. * ((index/255)^2.25)*4194304
  37. */
  38. static int candela_coeff_2p25[] = {
  39. 0 ,
  40. 16 ,
  41. 77 ,
  42. 191 ,
  43. 365 ,
  44. 603 ,
  45. 909 ,
  46. 1287 ,
  47. 1737 ,
  48. 2265 ,
  49. 2870 ,
  50. 3557 ,
  51. 4326 ,
  52. 5180 ,
  53. 6120 ,
  54. 7147 ,
  55. 8264 ,
  56. 9472 ,
  57. 10772 ,
  58. 12166 ,
  59. 13654 ,
  60. 15238 ,
  61. 16920 ,
  62. 18700 ,
  63. 20579 ,
  64. 22558 ,
  65. 24640 ,
  66. 26823 ,
  67. 29111 ,
  68. 31502 ,
  69. 33999 ,
  70. 36602 ,
  71. 39313 ,
  72. 42131 ,
  73. 45058 ,
  74. 48095 ,
  75. 51242 ,
  76. 54500 ,
  77. 57871 ,
  78. 61354 ,
  79. 64950 ,
  80. 68661 ,
  81. 72486 ,
  82. 76427 ,
  83. 80485 ,
  84. 84659 ,
  85. 88951 ,
  86. 93361 ,
  87. 97890 ,
  88. 102538 ,
  89. 107307 ,
  90. 112196 ,
  91. 117207 ,
  92. 122339 ,
  93. 127594 ,
  94. 132972 ,
  95. 138474 ,
  96. 144100 ,
  97. 149850 ,
  98. 155726 ,
  99. 161728 ,
  100. 167856 ,
  101. 174111 ,
  102. 180493 ,
  103. 187003 ,
  104. 193642 ,
  105. 200410 ,
  106. 207306 ,
  107. 214333 ,
  108. 221490 ,
  109. 228778 ,
  110. 236198 ,
  111. 243749 ,
  112. 251432 ,
  113. 259248 ,
  114. 267197 ,
  115. 275280 ,
  116. 283497 ,
  117. 291848 ,
  118. 300335 ,
  119. 308956 ,
  120. 317714 ,
  121. 326607 ,
  122. 335637 ,
  123. 344804 ,
  124. 354109 ,
  125. 363552 ,
  126. 373132 ,
  127. 382852 ,
  128. 392710 ,
  129. 402708 ,
  130. 412846 ,
  131. 423123 ,
  132. 433542 ,
  133. 444101 ,
  134. 454802 ,
  135. 465645 ,
  136. 476629 ,
  137. 487757 ,
  138. 499027 ,
  139. 510440 ,
  140. 521996 ,
  141. 533697 ,
  142. 545542 ,
  143. 557532 ,
  144. 569666 ,
  145. 581946 ,
  146. 594372 ,
  147. 606943 ,
  148. 619661 ,
  149. 632526 ,
  150. 645537 ,
  151. 658696 ,
  152. 672003 ,
  153. 685457 ,
  154. 699060 ,
  155. 712812 ,
  156. 726713 ,
  157. 740763 ,
  158. 754962 ,
  159. 769312 ,
  160. 783811 ,
  161. 798462 ,
  162. 813263 ,
  163. 828215 ,
  164. 843319 ,
  165. 858575 ,
  166. 873983 ,
  167. 889543 ,
  168. 905256 ,
  169. 921122 ,
  170. 937141 ,
  171. 953314 ,
  172. 969640 ,
  173. 986121 ,
  174. 1002756 ,
  175. 1019547 ,
  176. 1036492 ,
  177. 1053592 ,
  178. 1070848 ,
  179. 1088260 ,
  180. 1105828 ,
  181. 1123552 ,
  182. 1141433 ,
  183. 1159472 ,
  184. 1177667 ,
  185. 1196020 ,
  186. 1214531 ,
  187. 1233200 ,
  188. 1252027 ,
  189. 1271013 ,
  190. 1290157 ,
  191. 1309461 ,
  192. 1328924 ,
  193. 1348547 ,
  194. 1368330 ,
  195. 1388273 ,
  196. 1408376 ,
  197. 1428640 ,
  198. 1449066 ,
  199. 1469652 ,
  200. 1490400 ,
  201. 1511309 ,
  202. 1532380 ,
  203. 1553614 ,
  204. 1575010 ,
  205. 1596569 ,
  206. 1618291 ,
  207. 1640176 ,
  208. 1662224 ,
  209. 1684436 ,
  210. 1706812 ,
  211. 1729352 ,
  212. 1752057 ,
  213. 1774926 ,
  214. 1797960 ,
  215. 1821160 ,
  216. 1844524 ,
  217. 1868054 ,
  218. 1891750 ,
  219. 1915612 ,
  220. 1939641 ,
  221. 1963836 ,
  222. 1988197 ,
  223. 2012726 ,
  224. 2037422 ,
  225. 2062285 ,
  226. 2087316 ,
  227. 2112514 ,
  228. 2137881 ,
  229. 2163416 ,
  230. 2189120 ,
  231. 2214993 ,
  232. 2241034 ,
  233. 2267245 ,
  234. 2293625 ,
  235. 2320175 ,
  236. 2346894 ,
  237. 2373784 ,
  238. 2400844 ,
  239. 2428074 ,
  240. 2455476 ,
  241. 2483048 ,
  242. 2510791 ,
  243. 2538706 ,
  244. 2566792 ,
  245. 2595050 ,
  246. 2623480 ,
  247. 2652082 ,
  248. 2680857 ,
  249. 2709804 ,
  250. 2738924 ,
  251. 2768217 ,
  252. 2797684 ,
  253. 2827323 ,
  254. 2857137 ,
  255. 2887124 ,
  256. 2917285 ,
  257. 2947621 ,
  258. 2978131 ,
  259. 3008815 ,
  260. 3039675 ,
  261. 3070709 ,
  262. 3101919 ,
  263. 3133304 ,
  264. 3164865 ,
  265. 3196601 ,
  266. 3228514 ,
  267. 3260603 ,
  268. 3292868 ,
  269. 3325310 ,
  270. 3357929 ,
  271. 3390724 ,
  272. 3423697 ,
  273. 3456847 ,
  274. 3490175 ,
  275. 3523680 ,
  276. 3557364 ,
  277. 3591225 ,
  278. 3625265 ,
  279. 3659483 ,
  280. 3693881 ,
  281. 3728456 ,
  282. 3763211 ,
  283. 3798146 ,
  284. 3833259 ,
  285. 3868552 ,
  286. 3904025 ,
  287. 3939678 ,
  288. 3975512 ,
  289. 4011525 ,
  290. 4047719 ,
  291. 4084094 ,
  292. 4120649 ,
  293. 4157386 ,
  294. 4194304 ,
  295. };
  296. /*
  297. * index : 0 ~ 255
  298. * ((index/255)^2.1)*4194304
  299. */
  300. static int candela_coeff_2p1[] = {
  301. 0 ,
  302. 37 ,
  303. 159 ,
  304. 372 ,
  305. 681 ,
  306. 1088 ,
  307. 1596 ,
  308. 2206 ,
  309. 2920 ,
  310. 3740 ,
  311. 4666 ,
  312. 5700 ,
  313. 6842 ,
  314. 8095 ,
  315. 9458 ,
  316. 10932 ,
  317. 12519 ,
  318. 14219 ,
  319. 16032 ,
  320. 17960 ,
  321. 20003 ,
  322. 22161 ,
  323. 24435 ,
  324. 26826 ,
  325. 29334 ,
  326. 31959 ,
  327. 34703 ,
  328. 37566 ,
  329. 40547 ,
  330. 43648 ,
  331. 46868 ,
  332. 50209 ,
  333. 53671 ,
  334. 57254 ,
  335. 60958 ,
  336. 64784 ,
  337. 68732 ,
  338. 72803 ,
  339. 76997 ,
  340. 81313 ,
  341. 85753 ,
  342. 90317 ,
  343. 95006 ,
  344. 99818 ,
  345. 104755 ,
  346. 109818 ,
  347. 115005 ,
  348. 120318 ,
  349. 125757 ,
  350. 131322 ,
  351. 137013 ,
  352. 142831 ,
  353. 148776 ,
  354. 154848 ,
  355. 161047 ,
  356. 167374 ,
  357. 173828 ,
  358. 180411 ,
  359. 187122 ,
  360. 193961 ,
  361. 200929 ,
  362. 208026 ,
  363. 215252 ,
  364. 222608 ,
  365. 230093 ,
  366. 237708 ,
  367. 245453 ,
  368. 253328 ,
  369. 261333 ,
  370. 269469 ,
  371. 277736 ,
  372. 286133 ,
  373. 294662 ,
  374. 303322 ,
  375. 312113 ,
  376. 321036 ,
  377. 330091 ,
  378. 339278 ,
  379. 348597 ,
  380. 358049 ,
  381. 367633 ,
  382. 377350 ,
  383. 387199 ,
  384. 397182 ,
  385. 407298 ,
  386. 417547 ,
  387. 427930 ,
  388. 438446 ,
  389. 449096 ,
  390. 459880 ,
  391. 470798 ,
  392. 481851 ,
  393. 493038 ,
  394. 504359 ,
  395. 515815 ,
  396. 527406 ,
  397. 539132 ,
  398. 550993 ,
  399. 562989 ,
  400. 575121 ,
  401. 587389 ,
  402. 599792 ,
  403. 612330 ,
  404. 625005 ,
  405. 637816 ,
  406. 650763 ,
  407. 663847 ,
  408. 677067 ,
  409. 690423 ,
  410. 703917 ,
  411. 717547 ,
  412. 731314 ,
  413. 745218 ,
  414. 759260 ,
  415. 773438 ,
  416. 787755 ,
  417. 802209 ,
  418. 816800 ,
  419. 831530 ,
  420. 846397 ,
  421. 861403 ,
  422. 876546 ,
  423. 891828 ,
  424. 907249 ,
  425. 922807 ,
  426. 938505 ,
  427. 954341 ,
  428. 970316 ,
  429. 986430 ,
  430. 1002684 ,
  431. 1019076 ,
  432. 1035608 ,
  433. 1052279 ,
  434. 1069089 ,
  435. 1086039 ,
  436. 1103129 ,
  437. 1120359 ,
  438. 1137729 ,
  439. 1155238 ,
  440. 1172888 ,
  441. 1190678 ,
  442. 1208609 ,
  443. 1226679 ,
  444. 1244891 ,
  445. 1263243 ,
  446. 1281735 ,
  447. 1300369 ,
  448. 1319143 ,
  449. 1338059 ,
  450. 1357115 ,
  451. 1376313 ,
  452. 1395652 ,
  453. 1415132 ,
  454. 1434754 ,
  455. 1454518 ,
  456. 1474423 ,
  457. 1494470 ,
  458. 1514659 ,
  459. 1534989 ,
  460. 1555462 ,
  461. 1576077 ,
  462. 1596834 ,
  463. 1617734 ,
  464. 1638776 ,
  465. 1659960 ,
  466. 1681287 ,
  467. 1702756 ,
  468. 1724369 ,
  469. 1746124 ,
  470. 1768022 ,
  471. 1790063 ,
  472. 1812247 ,
  473. 1834574 ,
  474. 1857045 ,
  475. 1879658 ,
  476. 1902416 ,
  477. 1925316 ,
  478. 1948361 ,
  479. 1971549 ,
  480. 1994881 ,
  481. 2018356 ,
  482. 2041976 ,
  483. 2065739 ,
  484. 2089646 ,
  485. 2113698 ,
  486. 2137894 ,
  487. 2162234 ,
  488. 2186719 ,
  489. 2211348 ,
  490. 2236121 ,
  491. 2261039 ,
  492. 2286102 ,
  493. 2311310 ,
  494. 2336662 ,
  495. 2362159 ,
  496. 2387801 ,
  497. 2413589 ,
  498. 2439521 ,
  499. 2465599 ,
  500. 2491822 ,
  501. 2518190 ,
  502. 2544704 ,
  503. 2571363 ,
  504. 2598168 ,
  505. 2625118 ,
  506. 2652214 ,
  507. 2679456 ,
  508. 2706844 ,
  509. 2734378 ,
  510. 2762058 ,
  511. 2789883 ,
  512. 2817855 ,
  513. 2845973 ,
  514. 2874238 ,
  515. 2902649 ,
  516. 2931206 ,
  517. 2959909 ,
  518. 2988759 ,
  519. 3017756 ,
  520. 3046900 ,
  521. 3076190 ,
  522. 3105627 ,
  523. 3135211 ,
  524. 3164942 ,
  525. 3194820 ,
  526. 3224845 ,
  527. 3255017 ,
  528. 3285336 ,
  529. 3315803 ,
  530. 3346417 ,
  531. 3377178 ,
  532. 3408087 ,
  533. 3439143 ,
  534. 3470347 ,
  535. 3501699 ,
  536. 3533198 ,
  537. 3564846 ,
  538. 3596641 ,
  539. 3628584 ,
  540. 3660675 ,
  541. 3692913 ,
  542. 3725301 ,
  543. 3757836 ,
  544. 3790519 ,
  545. 3823351 ,
  546. 3856331 ,
  547. 3889459 ,
  548. 3922736 ,
  549. 3956162 ,
  550. 3989736 ,
  551. 4023459 ,
  552. 4057330 ,
  553. 4091350 ,
  554. 4125519 ,
  555. 4159837 ,
  556. 4194304 ,
  557. };
  558. /*
  559. * index : 0 ~ 255
  560. * ((index/255)^2.05)*4194304
  561. */
  562. static int candela_coeff_2p05[] = {
  563. 0 ,
  564. 49 ,
  565. 202 ,
  566. 465 ,
  567. 838 ,
  568. 1325 ,
  569. 1925 ,
  570. 2641 ,
  571. 3472 ,
  572. 4420 ,
  573. 5486 ,
  574. 6670 ,
  575. 7972 ,
  576. 9394 ,
  577. 10935 ,
  578. 12596 ,
  579. 14378 ,
  580. 16281 ,
  581. 18305 ,
  582. 20450 ,
  583. 22718 ,
  584. 25107 ,
  585. 27620 ,
  586. 30255 ,
  587. 33013 ,
  588. 35895 ,
  589. 38900 ,
  590. 42029 ,
  591. 45282 ,
  592. 48660 ,
  593. 52162 ,
  594. 55788 ,
  595. 59540 ,
  596. 63417 ,
  597. 67419 ,
  598. 71547 ,
  599. 75801 ,
  600. 80180 ,
  601. 84685 ,
  602. 89317 ,
  603. 94075 ,
  604. 98960 ,
  605. 103971 ,
  606. 109110 ,
  607. 114375 ,
  608. 119767 ,
  609. 125287 ,
  610. 130934 ,
  611. 136709 ,
  612. 142611 ,
  613. 148642 ,
  614. 154800 ,
  615. 161087 ,
  616. 167501 ,
  617. 174044 ,
  618. 180716 ,
  619. 187516 ,
  620. 194445 ,
  621. 201502 ,
  622. 208689 ,
  623. 216004 ,
  624. 223449 ,
  625. 231023 ,
  626. 238727 ,
  627. 246559 ,
  628. 254522 ,
  629. 262614 ,
  630. 270836 ,
  631. 279187 ,
  632. 287669 ,
  633. 296281 ,
  634. 305023 ,
  635. 313895 ,
  636. 322897 ,
  637. 332030 ,
  638. 341294 ,
  639. 350688 ,
  640. 360212 ,
  641. 369868 ,
  642. 379654 ,
  643. 389571 ,
  644. 399620 ,
  645. 409799 ,
  646. 420110 ,
  647. 430551 ,
  648. 441125 ,
  649. 451829 ,
  650. 462665 ,
  651. 473633 ,
  652. 484732 ,
  653. 495963 ,
  654. 507326 ,
  655. 518821 ,
  656. 530448 ,
  657. 542206 ,
  658. 554097 ,
  659. 566120 ,
  660. 578275 ,
  661. 590563 ,
  662. 602982 ,
  663. 615535 ,
  664. 628219 ,
  665. 641037 ,
  666. 653987 ,
  667. 667069 ,
  668. 680285 ,
  669. 693633 ,
  670. 707114 ,
  671. 720728 ,
  672. 734475 ,
  673. 748355 ,
  674. 762368 ,
  675. 776514 ,
  676. 790794 ,
  677. 805207 ,
  678. 819753 ,
  679. 834433 ,
  680. 849246 ,
  681. 864193 ,
  682. 879273 ,
  683. 894487 ,
  684. 909835 ,
  685. 925316 ,
  686. 940932 ,
  687. 956681 ,
  688. 972564 ,
  689. 988581 ,
  690. 1004732 ,
  691. 1021017 ,
  692. 1037436 ,
  693. 1053990 ,
  694. 1070678 ,
  695. 1087500 ,
  696. 1104456 ,
  697. 1121547 ,
  698. 1138772 ,
  699. 1156132 ,
  700. 1173626 ,
  701. 1191255 ,
  702. 1209018 ,
  703. 1226917 ,
  704. 1244949 ,
  705. 1263117 ,
  706. 1281420 ,
  707. 1299857 ,
  708. 1318430 ,
  709. 1337137 ,
  710. 1355979 ,
  711. 1374957 ,
  712. 1394069 ,
  713. 1413317 ,
  714. 1432700 ,
  715. 1452218 ,
  716. 1471872 ,
  717. 1491661 ,
  718. 1511585 ,
  719. 1531644 ,
  720. 1551840 ,
  721. 1572170 ,
  722. 1592636 ,
  723. 1613238 ,
  724. 1633976 ,
  725. 1654849 ,
  726. 1675858 ,
  727. 1697002 ,
  728. 1718283 ,
  729. 1739699 ,
  730. 1761251 ,
  731. 1782939 ,
  732. 1804763 ,
  733. 1826724 ,
  734. 1848820 ,
  735. 1871052 ,
  736. 1893420 ,
  737. 1915925 ,
  738. 1938566 ,
  739. 1961343 ,
  740. 1984256 ,
  741. 2007306 ,
  742. 2030492 ,
  743. 2053814 ,
  744. 2077273 ,
  745. 2100869 ,
  746. 2124600 ,
  747. 2148469 ,
  748. 2172474 ,
  749. 2196616 ,
  750. 2220894 ,
  751. 2245309 ,
  752. 2269861 ,
  753. 2294549 ,
  754. 2319375 ,
  755. 2344337 ,
  756. 2369436 ,
  757. 2394672 ,
  758. 2420045 ,
  759. 2445555 ,
  760. 2471202 ,
  761. 2496986 ,
  762. 2522908 ,
  763. 2548966 ,
  764. 2575161 ,
  765. 2601494 ,
  766. 2627964 ,
  767. 2654571 ,
  768. 2681316 ,
  769. 2708198 ,
  770. 2735217 ,
  771. 2762373 ,
  772. 2789667 ,
  773. 2817099 ,
  774. 2844668 ,
  775. 2872374 ,
  776. 2900219 ,
  777. 2928200 ,
  778. 2956320 ,
  779. 2984577 ,
  780. 3012971 ,
  781. 3041504 ,
  782. 3070174 ,
  783. 3098982 ,
  784. 3127928 ,
  785. 3157011 ,
  786. 3186233 ,
  787. 3215592 ,
  788. 3245090 ,
  789. 3274725 ,
  790. 3304498 ,
  791. 3334410 ,
  792. 3364459 ,
  793. 3394647 ,
  794. 3424973 ,
  795. 3455436 ,
  796. 3486038 ,
  797. 3516779 ,
  798. 3547657 ,
  799. 3578674 ,
  800. 3609829 ,
  801. 3641123 ,
  802. 3672554 ,
  803. 3704125 ,
  804. 3735833 ,
  805. 3767680 ,
  806. 3799666 ,
  807. 3831790 ,
  808. 3864052 ,
  809. 3896454 ,
  810. 3928993 ,
  811. 3961672 ,
  812. 3994489 ,
  813. 4027444 ,
  814. 4060539 ,
  815. 4093772 ,
  816. 4127144 ,
  817. 4160655 ,
  818. 4194304 ,
  819. };
  820. /*
  821. * index : 0 ~ 255
  822. * ((index/255)^2.0)*4194304
  823. */
  824. static int candela_coeff_2p0[] = {
  825. 0 ,
  826. 65 ,
  827. 258 ,
  828. 581 ,
  829. 1032 ,
  830. 1613 ,
  831. 2322 ,
  832. 3161 ,
  833. 4128 ,
  834. 5225 ,
  835. 6450 ,
  836. 7805 ,
  837. 9288 ,
  838. 10901 ,
  839. 12643 ,
  840. 14513 ,
  841. 16513 ,
  842. 18641 ,
  843. 20899 ,
  844. 23286 ,
  845. 25801 ,
  846. 28446 ,
  847. 31219 ,
  848. 34122 ,
  849. 37154 ,
  850. 40314 ,
  851. 43604 ,
  852. 47023 ,
  853. 50570 ,
  854. 54247 ,
  855. 58053 ,
  856. 61987 ,
  857. 66051 ,
  858. 70244 ,
  859. 74565 ,
  860. 79016 ,
  861. 83596 ,
  862. 88305 ,
  863. 93142 ,
  864. 98109 ,
  865. 103205 ,
  866. 108429 ,
  867. 113783 ,
  868. 119266 ,
  869. 124878 ,
  870. 130618 ,
  871. 136488 ,
  872. 142487 ,
  873. 148615 ,
  874. 154872 ,
  875. 161257 ,
  876. 167772 ,
  877. 174416 ,
  878. 181189 ,
  879. 188091 ,
  880. 195121 ,
  881. 202281 ,
  882. 209570 ,
  883. 216988 ,
  884. 224535 ,
  885. 232211 ,
  886. 240015 ,
  887. 247949 ,
  888. 256012 ,
  889. 264204 ,
  890. 272525 ,
  891. 280975 ,
  892. 289554 ,
  893. 298262 ,
  894. 307099 ,
  895. 316064 ,
  896. 325159 ,
  897. 334383 ,
  898. 343736 ,
  899. 353218 ,
  900. 362829 ,
  901. 372569 ,
  902. 382438 ,
  903. 392436 ,
  904. 402563 ,
  905. 412819 ,
  906. 423204 ,
  907. 433718 ,
  908. 444361 ,
  909. 455133 ,
  910. 466034 ,
  911. 477064 ,
  912. 488223 ,
  913. 499511 ,
  914. 510928 ,
  915. 522474 ,
  916. 534149 ,
  917. 545953 ,
  918. 557886 ,
  919. 569948 ,
  920. 582139 ,
  921. 594459 ,
  922. 606908 ,
  923. 619486 ,
  924. 632193 ,
  925. 645029 ,
  926. 657995 ,
  927. 671089 ,
  928. 684312 ,
  929. 697664 ,
  930. 711145 ,
  931. 724755 ,
  932. 738494 ,
  933. 752362 ,
  934. 766359 ,
  935. 780486 ,
  936. 794741 ,
  937. 809125 ,
  938. 823638 ,
  939. 838280 ,
  940. 853051 ,
  941. 867952 ,
  942. 882981 ,
  943. 898139 ,
  944. 913426 ,
  945. 928842 ,
  946. 944388 ,
  947. 960062 ,
  948. 975865 ,
  949. 991797 ,
  950. 1007859 ,
  951. 1024049 ,
  952. 1040368 ,
  953. 1056816 ,
  954. 1073394 ,
  955. 1090100 ,
  956. 1106935 ,
  957. 1123899 ,
  958. 1140993 ,
  959. 1158215 ,
  960. 1175566 ,
  961. 1193046 ,
  962. 1210656 ,
  963. 1228394 ,
  964. 1246261 ,
  965. 1264258 ,
  966. 1282383 ,
  967. 1300637 ,
  968. 1319021 ,
  969. 1337533 ,
  970. 1356174 ,
  971. 1374945 ,
  972. 1393844 ,
  973. 1412873 ,
  974. 1432030 ,
  975. 1451316 ,
  976. 1470732 ,
  977. 1490276 ,
  978. 1509949 ,
  979. 1529752 ,
  980. 1549683 ,
  981. 1569744 ,
  982. 1589933 ,
  983. 1610252 ,
  984. 1630699 ,
  985. 1651275 ,
  986. 1671981 ,
  987. 1692815 ,
  988. 1713779 ,
  989. 1734871 ,
  990. 1756093 ,
  991. 1777443 ,
  992. 1798923 ,
  993. 1820531 ,
  994. 1842269 ,
  995. 1864135 ,
  996. 1886131 ,
  997. 1908255 ,
  998. 1930509 ,
  999. 1952891 ,
  1000. 1975403 ,
  1001. 1998043 ,
  1002. 2020813 ,
  1003. 2043711 ,
  1004. 2066739 ,
  1005. 2089895 ,
  1006. 2113181 ,
  1007. 2136596 ,
  1008. 2160139 ,
  1009. 2183812 ,
  1010. 2207613 ,
  1011. 2231544 ,
  1012. 2255603 ,
  1013. 2279792 ,
  1014. 2304110 ,
  1015. 2328556 ,
  1016. 2353132 ,
  1017. 2377837 ,
  1018. 2402670 ,
  1019. 2427633 ,
  1020. 2452724 ,
  1021. 2477945 ,
  1022. 2503295 ,
  1023. 2528773 ,
  1024. 2554381 ,
  1025. 2580118 ,
  1026. 2605983 ,
  1027. 2631978 ,
  1028. 2658102 ,
  1029. 2684355 ,
  1030. 2710736 ,
  1031. 2737247 ,
  1032. 2763887 ,
  1033. 2790655 ,
  1034. 2817553 ,
  1035. 2844580 ,
  1036. 2871736 ,
  1037. 2899020 ,
  1038. 2926434 ,
  1039. 2953977 ,
  1040. 2981649 ,
  1041. 3009449 ,
  1042. 3037379 ,
  1043. 3065438 ,
  1044. 3093626 ,
  1045. 3121943 ,
  1046. 3150388 ,
  1047. 3178963 ,
  1048. 3207667 ,
  1049. 3236500 ,
  1050. 3265462 ,
  1051. 3294552 ,
  1052. 3323772 ,
  1053. 3353121 ,
  1054. 3382599 ,
  1055. 3412206 ,
  1056. 3441942 ,
  1057. 3471807 ,
  1058. 3501800 ,
  1059. 3531923 ,
  1060. 3562175 ,
  1061. 3592556 ,
  1062. 3623066 ,
  1063. 3653705 ,
  1064. 3684473 ,
  1065. 3715370 ,
  1066. 3746396 ,
  1067. 3777550 ,
  1068. 3808834 ,
  1069. 3840247 ,
  1070. 3871789 ,
  1071. 3903460 ,
  1072. 3935260 ,
  1073. 3967189 ,
  1074. 3999247 ,
  1075. 4031434 ,
  1076. 4063750 ,
  1077. 4096195 ,
  1078. 4128769 ,
  1079. 4161472 ,
  1080. 4194304 ,
  1081. };
  1082. /*
  1083. * index : 0 ~ 255
  1084. * ((index/255)^1.95)*4194304
  1085. */
  1086. static int candela_coeff_1p95[] = {
  1087. 0 ,
  1088. 85 ,
  1089. 329 ,
  1090. 725 ,
  1091. 1270 ,
  1092. 1963 ,
  1093. 2801 ,
  1094. 3783 ,
  1095. 4908 ,
  1096. 6176 ,
  1097. 7584 ,
  1098. 9133 ,
  1099. 10822 ,
  1100. 12650 ,
  1101. 14617 ,
  1102. 16722 ,
  1103. 18964 ,
  1104. 21344 ,
  1105. 23861 ,
  1106. 26514 ,
  1107. 29303 ,
  1108. 32228 ,
  1109. 35288 ,
  1110. 38484 ,
  1111. 41814 ,
  1112. 45278 ,
  1113. 48877 ,
  1114. 52610 ,
  1115. 56476 ,
  1116. 60476 ,
  1117. 64609 ,
  1118. 68875 ,
  1119. 73274 ,
  1120. 77805 ,
  1121. 82469 ,
  1122. 87265 ,
  1123. 92193 ,
  1124. 97252 ,
  1125. 102444 ,
  1126. 107766 ,
  1127. 113220 ,
  1128. 118805 ,
  1129. 124521 ,
  1130. 130368 ,
  1131. 136345 ,
  1132. 142453 ,
  1133. 148691 ,
  1134. 155059 ,
  1135. 161557 ,
  1136. 168186 ,
  1137. 174944 ,
  1138. 181831 ,
  1139. 188848 ,
  1140. 195995 ,
  1141. 203271 ,
  1142. 210675 ,
  1143. 218209 ,
  1144. 225872 ,
  1145. 233664 ,
  1146. 241584 ,
  1147. 249633 ,
  1148. 257810 ,
  1149. 266116 ,
  1150. 274549 ,
  1151. 283111 ,
  1152. 291802 ,
  1153. 300620 ,
  1154. 309565 ,
  1155. 318639 ,
  1156. 327840 ,
  1157. 337169 ,
  1158. 346625 ,
  1159. 356209 ,
  1160. 365920 ,
  1161. 375758 ,
  1162. 385723 ,
  1163. 395816 ,
  1164. 406035 ,
  1165. 416381 ,
  1166. 426854 ,
  1167. 437454 ,
  1168. 448180 ,
  1169. 459033 ,
  1170. 470012 ,
  1171. 481118 ,
  1172. 492349 ,
  1173. 503708 ,
  1174. 515192 ,
  1175. 526802 ,
  1176. 538539 ,
  1177. 550401 ,
  1178. 562390 ,
  1179. 574504 ,
  1180. 586744 ,
  1181. 599109 ,
  1182. 611600 ,
  1183. 624217 ,
  1184. 636959 ,
  1185. 649826 ,
  1186. 662819 ,
  1187. 675938 ,
  1188. 689181 ,
  1189. 702549 ,
  1190. 716043 ,
  1191. 729662 ,
  1192. 743405 ,
  1193. 757274 ,
  1194. 771267 ,
  1195. 785385 ,
  1196. 799628 ,
  1197. 813996 ,
  1198. 828488 ,
  1199. 843105 ,
  1200. 857846 ,
  1201. 872712 ,
  1202. 887702 ,
  1203. 902817 ,
  1204. 918056 ,
  1205. 933419 ,
  1206. 948906 ,
  1207. 964517 ,
  1208. 980253 ,
  1209. 996112 ,
  1210. 1012096 ,
  1211. 1028203 ,
  1212. 1044434 ,
  1213. 1060789 ,
  1214. 1077268 ,
  1215. 1093871 ,
  1216. 1110597 ,
  1217. 1127447 ,
  1218. 1144420 ,
  1219. 1161517 ,
  1220. 1178738 ,
  1221. 1196082 ,
  1222. 1213549 ,
  1223. 1231140 ,
  1224. 1248854 ,
  1225. 1266691 ,
  1226. 1284652 ,
  1227. 1302735 ,
  1228. 1320942 ,
  1229. 1339272 ,
  1230. 1357725 ,
  1231. 1376301 ,
  1232. 1395000 ,
  1233. 1413822 ,
  1234. 1432766 ,
  1235. 1451834 ,
  1236. 1471024 ,
  1237. 1490337 ,
  1238. 1509773 ,
  1239. 1529331 ,
  1240. 1549012 ,
  1241. 1568816 ,
  1242. 1588742 ,
  1243. 1608791 ,
  1244. 1628962 ,
  1245. 1649255 ,
  1246. 1669671 ,
  1247. 1690209 ,
  1248. 1710870 ,
  1249. 1731653 ,
  1250. 1752558 ,
  1251. 1773585 ,
  1252. 1794735 ,
  1253. 1816006 ,
  1254. 1837400 ,
  1255. 1858916 ,
  1256. 1880553 ,
  1257. 1902313 ,
  1258. 1924194 ,
  1259. 1946198 ,
  1260. 1968323 ,
  1261. 1990571 ,
  1262. 2012940 ,
  1263. 2035430 ,
  1264. 2058043 ,
  1265. 2080777 ,
  1266. 2103633 ,
  1267. 2126610 ,
  1268. 2149709 ,
  1269. 2172930 ,
  1270. 2196272 ,
  1271. 2219736 ,
  1272. 2243321 ,
  1273. 2267028 ,
  1274. 2290855 ,
  1275. 2314805 ,
  1276. 2338875 ,
  1277. 2363067 ,
  1278. 2387380 ,
  1279. 2411815 ,
  1280. 2436370 ,
  1281. 2461047 ,
  1282. 2485845 ,
  1283. 2510764 ,
  1284. 2535804 ,
  1285. 2560965 ,
  1286. 2586247 ,
  1287. 2611650 ,
  1288. 2637174 ,
  1289. 2662819 ,
  1290. 2688585 ,
  1291. 2714472 ,
  1292. 2740480 ,
  1293. 2766608 ,
  1294. 2792857 ,
  1295. 2819227 ,
  1296. 2845718 ,
  1297. 2872329 ,
  1298. 2899061 ,
  1299. 2925913 ,
  1300. 2952887 ,
  1301. 2979980 ,
  1302. 3007195 ,
  1303. 3034530 ,
  1304. 3061985 ,
  1305. 3089561 ,
  1306. 3117257 ,
  1307. 3145073 ,
  1308. 3173010 ,
  1309. 3201068 ,
  1310. 3229245 ,
  1311. 3257543 ,
  1312. 3285961 ,
  1313. 3314500 ,
  1314. 3343159 ,
  1315. 3371937 ,
  1316. 3400836 ,
  1317. 3429856 ,
  1318. 3458995 ,
  1319. 3488254 ,
  1320. 3517634 ,
  1321. 3547133 ,
  1322. 3576752 ,
  1323. 3606492 ,
  1324. 3636351 ,
  1325. 3666331 ,
  1326. 3696430 ,
  1327. 3726649 ,
  1328. 3756988 ,
  1329. 3787447 ,
  1330. 3818025 ,
  1331. 3848724 ,
  1332. 3879542 ,
  1333. 3910479 ,
  1334. 3941537 ,
  1335. 3972714 ,
  1336. 4004011 ,
  1337. 4035428 ,
  1338. 4066964 ,
  1339. 4098620 ,
  1340. 4130395 ,
  1341. 4162290 ,
  1342. 4194304 ,
  1343. };
  1344. /*
  1345. * index : 0 ~ 255
  1346. * ((index/255)^1.9)*4194304
  1347. */
  1348. static int candela_coeff_1p9[] = {
  1349. 0 ,
  1350. 112 ,
  1351. 419 ,
  1352. 905 ,
  1353. 1564 ,
  1354. 2389 ,
  1355. 3378 ,
  1356. 4528 ,
  1357. 5836 ,
  1358. 7300 ,
  1359. 8917 ,
  1360. 10688 ,
  1361. 12609 ,
  1362. 14680 ,
  1363. 16900 ,
  1364. 19267 ,
  1365. 21780 ,
  1366. 24439 ,
  1367. 27243 ,
  1368. 30190 ,
  1369. 33281 ,
  1370. 36513 ,
  1371. 39887 ,
  1372. 43403 ,
  1373. 47058 ,
  1374. 50853 ,
  1375. 54788 ,
  1376. 58861 ,
  1377. 63072 ,
  1378. 67420 ,
  1379. 71906 ,
  1380. 76528 ,
  1381. 81287 ,
  1382. 86181 ,
  1383. 91210 ,
  1384. 96375 ,
  1385. 101674 ,
  1386. 107107 ,
  1387. 112674 ,
  1388. 118374 ,
  1389. 124207 ,
  1390. 130174 ,
  1391. 136272 ,
  1392. 142503 ,
  1393. 148865 ,
  1394. 155359 ,
  1395. 161984 ,
  1396. 168741 ,
  1397. 175627 ,
  1398. 182644 ,
  1399. 189791 ,
  1400. 197068 ,
  1401. 204475 ,
  1402. 212011 ,
  1403. 219676 ,
  1404. 227469 ,
  1405. 235392 ,
  1406. 243442 ,
  1407. 251621 ,
  1408. 259928 ,
  1409. 268362 ,
  1410. 276924 ,
  1411. 285613 ,
  1412. 294429 ,
  1413. 303372 ,
  1414. 312442 ,
  1415. 321638 ,
  1416. 330960 ,
  1417. 340409 ,
  1418. 349983 ,
  1419. 359683 ,
  1420. 369508 ,
  1421. 379459 ,
  1422. 389535 ,
  1423. 399737 ,
  1424. 410062 ,
  1425. 420513 ,
  1426. 431088 ,
  1427. 441787 ,
  1428. 452611 ,
  1429. 463558 ,
  1430. 474630 ,
  1431. 485825 ,
  1432. 497144 ,
  1433. 508586 ,
  1434. 520151 ,
  1435. 531840 ,
  1436. 543651 ,
  1437. 555585 ,
  1438. 567642 ,
  1439. 579822 ,
  1440. 592123 ,
  1441. 604548 ,
  1442. 617094 ,
  1443. 629762 ,
  1444. 642552 ,
  1445. 655464 ,
  1446. 668498 ,
  1447. 681653 ,
  1448. 694929 ,
  1449. 708327 ,
  1450. 721845 ,
  1451. 735485 ,
  1452. 749246 ,
  1453. 763127 ,
  1454. 777129 ,
  1455. 791252 ,
  1456. 805495 ,
  1457. 819858 ,
  1458. 834342 ,
  1459. 848945 ,
  1460. 863669 ,
  1461. 878512 ,
  1462. 893475 ,
  1463. 908558 ,
  1464. 923761 ,
  1465. 939082 ,
  1466. 954524 ,
  1467. 970084 ,
  1468. 985764 ,
  1469. 1001562 ,
  1470. 1017480 ,
  1471. 1033516 ,
  1472. 1049671 ,
  1473. 1065945 ,
  1474. 1082337 ,
  1475. 1098848 ,
  1476. 1115477 ,
  1477. 1132224 ,
  1478. 1149090 ,
  1479. 1166074 ,
  1480. 1183175 ,
  1481. 1200395 ,
  1482. 1217732 ,
  1483. 1235187 ,
  1484. 1252760 ,
  1485. 1270450 ,
  1486. 1288257 ,
  1487. 1306182 ,
  1488. 1324225 ,
  1489. 1342384 ,
  1490. 1360661 ,
  1491. 1379054 ,
  1492. 1397565 ,
  1493. 1416193 ,
  1494. 1434937 ,
  1495. 1453798 ,
  1496. 1472775 ,
  1497. 1491869 ,
  1498. 1511080 ,
  1499. 1530407 ,
  1500. 1549850 ,
  1501. 1569410 ,
  1502. 1589086 ,
  1503. 1608877 ,
  1504. 1628785 ,
  1505. 1648809 ,
  1506. 1668948 ,
  1507. 1689204 ,
  1508. 1709575 ,
  1509. 1730061 ,
  1510. 1750664 ,
  1511. 1771381 ,
  1512. 1792215 ,
  1513. 1813163 ,
  1514. 1834227 ,
  1515. 1855406 ,
  1516. 1876700 ,
  1517. 1898109 ,
  1518. 1919633 ,
  1519. 1941273 ,
  1520. 1963027 ,
  1521. 1984895 ,
  1522. 2006879 ,
  1523. 2028977 ,
  1524. 2051190 ,
  1525. 2073517 ,
  1526. 2095959 ,
  1527. 2118515 ,
  1528. 2141186 ,
  1529. 2163970 ,
  1530. 2186869 ,
  1531. 2209883 ,
  1532. 2233010 ,
  1533. 2256251 ,
  1534. 2279606 ,
  1535. 2303075 ,
  1536. 2326658 ,
  1537. 2350355 ,
  1538. 2374165 ,
  1539. 2398090 ,
  1540. 2422127 ,
  1541. 2446278 ,
  1542. 2470543 ,
  1543. 2494921 ,
  1544. 2519413 ,
  1545. 2544018 ,
  1546. 2568736 ,
  1547. 2593567 ,
  1548. 2618511 ,
  1549. 2643568 ,
  1550. 2668739 ,
  1551. 2694022 ,
  1552. 2719418 ,
  1553. 2744928 ,
  1554. 2770549 ,
  1555. 2796284 ,
  1556. 2822131 ,
  1557. 2848091 ,
  1558. 2874164 ,
  1559. 2900349 ,
  1560. 2926646 ,
  1561. 2953056 ,
  1562. 2979578 ,
  1563. 3006213 ,
  1564. 3032960 ,
  1565. 3059819 ,
  1566. 3086790 ,
  1567. 3113873 ,
  1568. 3141068 ,
  1569. 3168376 ,
  1570. 3195795 ,
  1571. 3223326 ,
  1572. 3250969 ,
  1573. 3278724 ,
  1574. 3306590 ,
  1575. 3334568 ,
  1576. 3362658 ,
  1577. 3390859 ,
  1578. 3419172 ,
  1579. 3447597 ,
  1580. 3476133 ,
  1581. 3504780 ,
  1582. 3533538 ,
  1583. 3562408 ,
  1584. 3591389 ,
  1585. 3620482 ,
  1586. 3649685 ,
  1587. 3679000 ,
  1588. 3708426 ,
  1589. 3737962 ,
  1590. 3767610 ,
  1591. 3797369 ,
  1592. 3827238 ,
  1593. 3857218 ,
  1594. 3887310 ,
  1595. 3917511 ,
  1596. 3947824 ,
  1597. 3978247 ,
  1598. 4008781 ,
  1599. 4039425 ,
  1600. 4070180 ,
  1601. 4101046 ,
  1602. 4132021 ,
  1603. 4163107 ,
  1604. 4194304 ,
  1605. };
  1606. /*
  1607. * index : 0 ~ 255
  1608. * ((index/255)^1.85)*4194304
  1609. */
  1610. static int candela_coeff_1p85[] = {
  1611. 0 ,
  1612. 148 ,
  1613. 534 ,
  1614. 1130 ,
  1615. 1925 ,
  1616. 2908 ,
  1617. 4075 ,
  1618. 5420 ,
  1619. 6939 ,
  1620. 8628 ,
  1621. 10485 ,
  1622. 12507 ,
  1623. 14691 ,
  1624. 17036 ,
  1625. 19539 ,
  1626. 22199 ,
  1627. 25014 ,
  1628. 27983 ,
  1629. 31104 ,
  1630. 34376 ,
  1631. 37798 ,
  1632. 41368 ,
  1633. 45086 ,
  1634. 48950 ,
  1635. 52960 ,
  1636. 57115 ,
  1637. 61413 ,
  1638. 65854 ,
  1639. 70437 ,
  1640. 75162 ,
  1641. 80027 ,
  1642. 85031 ,
  1643. 90175 ,
  1644. 95458 ,
  1645. 100878 ,
  1646. 106435 ,
  1647. 112130 ,
  1648. 117960 ,
  1649. 123925 ,
  1650. 130026 ,
  1651. 136261 ,
  1652. 142630 ,
  1653. 149132 ,
  1654. 155768 ,
  1655. 162535 ,
  1656. 169435 ,
  1657. 176467 ,
  1658. 183629 ,
  1659. 190922 ,
  1660. 198346 ,
  1661. 205899 ,
  1662. 213582 ,
  1663. 221394 ,
  1664. 229335 ,
  1665. 237405 ,
  1666. 245602 ,
  1667. 253927 ,
  1668. 262379 ,
  1669. 270958 ,
  1670. 279664 ,
  1671. 288496 ,
  1672. 297455 ,
  1673. 306539 ,
  1674. 315748 ,
  1675. 325082 ,
  1676. 334542 ,
  1677. 344125 ,
  1678. 353834 ,
  1679. 363665 ,
  1680. 373621 ,
  1681. 383700 ,
  1682. 393902 ,
  1683. 404227 ,
  1684. 414675 ,
  1685. 425245 ,
  1686. 435937 ,
  1687. 446751 ,
  1688. 457687 ,
  1689. 468744 ,
  1690. 479922 ,
  1691. 491221 ,
  1692. 502641 ,
  1693. 514181 ,
  1694. 525842 ,
  1695. 537622 ,
  1696. 549523 ,
  1697. 561543 ,
  1698. 573682 ,
  1699. 585940 ,
  1700. 598318 ,
  1701. 610814 ,
  1702. 623429 ,
  1703. 636162 ,
  1704. 649014 ,
  1705. 661983 ,
  1706. 675071 ,
  1707. 688276 ,
  1708. 701598 ,
  1709. 715037 ,
  1710. 728594 ,
  1711. 742268 ,
  1712. 756058 ,
  1713. 769965 ,
  1714. 783988 ,
  1715. 798127 ,
  1716. 812383 ,
  1717. 826754 ,
  1718. 841241 ,
  1719. 855844 ,
  1720. 870562 ,
  1721. 885395 ,
  1722. 900343 ,
  1723. 915406 ,
  1724. 930584 ,
  1725. 945877 ,
  1726. 961284 ,
  1727. 976805 ,
  1728. 992440 ,
  1729. 1008190 ,
  1730. 1024053 ,
  1731. 1040030 ,
  1732. 1056121 ,
  1733. 1072325 ,
  1734. 1088642 ,
  1735. 1105072 ,
  1736. 1121616 ,
  1737. 1138272 ,
  1738. 1155041 ,
  1739. 1171923 ,
  1740. 1188917 ,
  1741. 1206024 ,
  1742. 1223242 ,
  1743. 1240573 ,
  1744. 1258016 ,
  1745. 1275570 ,
  1746. 1293237 ,
  1747. 1311015 ,
  1748. 1328904 ,
  1749. 1346905 ,
  1750. 1365017 ,
  1751. 1383240 ,
  1752. 1401574 ,
  1753. 1420019 ,
  1754. 1438574 ,
  1755. 1457240 ,
  1756. 1476017 ,
  1757. 1494904 ,
  1758. 1513902 ,
  1759. 1533009 ,
  1760. 1552227 ,
  1761. 1571554 ,
  1762. 1590992 ,
  1763. 1610539 ,
  1764. 1630196 ,
  1765. 1649962 ,
  1766. 1669838 ,
  1767. 1689822 ,
  1768. 1709917 ,
  1769. 1730120 ,
  1770. 1750432 ,
  1771. 1770853 ,
  1772. 1791383 ,
  1773. 1812022 ,
  1774. 1832769 ,
  1775. 1853624 ,
  1776. 1874588 ,
  1777. 1895660 ,
  1778. 1916841 ,
  1779. 1938129 ,
  1780. 1959526 ,
  1781. 1981030 ,
  1782. 2002642 ,
  1783. 2024362 ,
  1784. 2046190 ,
  1785. 2068125 ,
  1786. 2090167 ,
  1787. 2112317 ,
  1788. 2134574 ,
  1789. 2156938 ,
  1790. 2179409 ,
  1791. 2201987 ,
  1792. 2224672 ,
  1793. 2247463 ,
  1794. 2270362 ,
  1795. 2293367 ,
  1796. 2316478 ,
  1797. 2339696 ,
  1798. 2363021 ,
  1799. 2386451 ,
  1800. 2409988 ,
  1801. 2433631 ,
  1802. 2457380 ,
  1803. 2481235 ,
  1804. 2505195 ,
  1805. 2529262 ,
  1806. 2553434 ,
  1807. 2577711 ,
  1808. 2602095 ,
  1809. 2626583 ,
  1810. 2651177 ,
  1811. 2675876 ,
  1812. 2700681 ,
  1813. 2725590 ,
  1814. 2750605 ,
  1815. 2775725 ,
  1816. 2800949 ,
  1817. 2826278 ,
  1818. 2851712 ,
  1819. 2877251 ,
  1820. 2902894 ,
  1821. 2928642 ,
  1822. 2954494 ,
  1823. 2980451 ,
  1824. 3006511 ,
  1825. 3032676 ,
  1826. 3058945 ,
  1827. 3085319 ,
  1828. 3111796 ,
  1829. 3138377 ,
  1830. 3165062 ,
  1831. 3191850 ,
  1832. 3218743 ,
  1833. 3245739 ,
  1834. 3272838 ,
  1835. 3300042 ,
  1836. 3327348 ,
  1837. 3354758 ,
  1838. 3382271 ,
  1839. 3409887 ,
  1840. 3437607 ,
  1841. 3465429 ,
  1842. 3493355 ,
  1843. 3521384 ,
  1844. 3549515 ,
  1845. 3577749 ,
  1846. 3606086 ,
  1847. 3634526 ,
  1848. 3663068 ,
  1849. 3691713 ,
  1850. 3720460 ,
  1851. 3749310 ,
  1852. 3778262 ,
  1853. 3807317 ,
  1854. 3836473 ,
  1855. 3865732 ,
  1856. 3895093 ,
  1857. 3924556 ,
  1858. 3954121 ,
  1859. 3983788 ,
  1860. 4013556 ,
  1861. 4043427 ,
  1862. 4073399 ,
  1863. 4103473 ,
  1864. 4133648 ,
  1865. 4163925 ,
  1866. 4194304 ,
  1867. };
  1868. /*
  1869. * index : 0 ~ 255
  1870. * ((index/255)^1.8)*4194304
  1871. */
  1872. static int candela_coeff_1p8[] = {
  1873. 0 ,
  1874. 195 ,
  1875. 680 ,
  1876. 1412 ,
  1877. 2369 ,
  1878. 3540 ,
  1879. 4915 ,
  1880. 6487 ,
  1881. 8250 ,
  1882. 10198 ,
  1883. 12328 ,
  1884. 14635 ,
  1885. 17116 ,
  1886. 19769 ,
  1887. 22590 ,
  1888. 25577 ,
  1889. 28728 ,
  1890. 32040 ,
  1891. 35512 ,
  1892. 39142 ,
  1893. 42928 ,
  1894. 46869 ,
  1895. 50962 ,
  1896. 55207 ,
  1897. 59603 ,
  1898. 64147 ,
  1899. 68840 ,
  1900. 73679 ,
  1901. 78663 ,
  1902. 83792 ,
  1903. 89065 ,
  1904. 94480 ,
  1905. 100036 ,
  1906. 105734 ,
  1907. 111571 ,
  1908. 117547 ,
  1909. 123661 ,
  1910. 129912 ,
  1911. 136301 ,
  1912. 142825 ,
  1913. 149484 ,
  1914. 156278 ,
  1915. 163206 ,
  1916. 170267 ,
  1917. 177461 ,
  1918. 184786 ,
  1919. 192244 ,
  1920. 199831 ,
  1921. 207550 ,
  1922. 215397 ,
  1923. 223374 ,
  1924. 231480 ,
  1925. 239714 ,
  1926. 248076 ,
  1927. 256564 ,
  1928. 265180 ,
  1929. 273921 ,
  1930. 282789 ,
  1931. 291782 ,
  1932. 300899 ,
  1933. 310141 ,
  1934. 319508 ,
  1935. 328998 ,
  1936. 338611 ,
  1937. 348347 ,
  1938. 358205 ,
  1939. 368185 ,
  1940. 378288 ,
  1941. 388511 ,
  1942. 398856 ,
  1943. 409321 ,
  1944. 419907 ,
  1945. 430612 ,
  1946. 441437 ,
  1947. 452381 ,
  1948. 463445 ,
  1949. 474627 ,
  1950. 485927 ,
  1951. 497345 ,
  1952. 508881 ,
  1953. 520535 ,
  1954. 532305 ,
  1955. 544192 ,
  1956. 556196 ,
  1957. 568317 ,
  1958. 580553 ,
  1959. 592905 ,
  1960. 605372 ,
  1961. 617954 ,
  1962. 630652 ,
  1963. 643464 ,
  1964. 656390 ,
  1965. 669431 ,
  1966. 682585 ,
  1967. 695853 ,
  1968. 709235 ,
  1969. 722730 ,
  1970. 736337 ,
  1971. 750057 ,
  1972. 763890 ,
  1973. 777835 ,
  1974. 791892 ,
  1975. 806061 ,
  1976. 820341 ,
  1977. 834733 ,
  1978. 849236 ,
  1979. 863850 ,
  1980. 878574 ,
  1981. 893409 ,
  1982. 908354 ,
  1983. 923410 ,
  1984. 938575 ,
  1985. 953850 ,
  1986. 969234 ,
  1987. 984728 ,
  1988. 1000331 ,
  1989. 1016043 ,
  1990. 1031863 ,
  1991. 1047792 ,
  1992. 1063830 ,
  1993. 1079975 ,
  1994. 1096229 ,
  1995. 1112590 ,
  1996. 1129059 ,
  1997. 1145636 ,
  1998. 1162320 ,
  1999. 1179111 ,
  2000. 1196009 ,
  2001. 1213013 ,
  2002. 1230124 ,
  2003. 1247342 ,
  2004. 1264666 ,
  2005. 1282096 ,
  2006. 1299632 ,
  2007. 1317274 ,
  2008. 1335022 ,
  2009. 1352875 ,
  2010. 1370833 ,
  2011. 1388897 ,
  2012. 1407065 ,
  2013. 1425339 ,
  2014. 1443717 ,
  2015. 1462199 ,
  2016. 1480787 ,
  2017. 1499478 ,
  2018. 1518273 ,
  2019. 1537173 ,
  2020. 1556176 ,
  2021. 1575283 ,
  2022. 1594494 ,
  2023. 1613808 ,
  2024. 1633225 ,
  2025. 1652746 ,
  2026. 1672369 ,
  2027. 1692096 ,
  2028. 1711925 ,
  2029. 1731856 ,
  2030. 1751890 ,
  2031. 1772027 ,
  2032. 1792266 ,
  2033. 1812607 ,
  2034. 1833049 ,
  2035. 1853594 ,
  2036. 1874240 ,
  2037. 1894988 ,
  2038. 1915838 ,
  2039. 1936788 ,
  2040. 1957840 ,
  2041. 1978993 ,
  2042. 2000247 ,
  2043. 2021602 ,
  2044. 2043057 ,
  2045. 2064614 ,
  2046. 2086270 ,
  2047. 2108027 ,
  2048. 2129885 ,
  2049. 2151842 ,
  2050. 2173899 ,
  2051. 2196057 ,
  2052. 2218314 ,
  2053. 2240671 ,
  2054. 2263127 ,
  2055. 2285683 ,
  2056. 2308339 ,
  2057. 2331093 ,
  2058. 2353947 ,
  2059. 2376900 ,
  2060. 2399952 ,
  2061. 2423102 ,
  2062. 2446351 ,
  2063. 2469699 ,
  2064. 2493146 ,
  2065. 2516690 ,
  2066. 2540334 ,
  2067. 2564075 ,
  2068. 2587914 ,
  2069. 2611852 ,
  2070. 2635887 ,
  2071. 2660020 ,
  2072. 2684251 ,
  2073. 2708579 ,
  2074. 2733005 ,
  2075. 2757529 ,
  2076. 2782149 ,
  2077. 2806867 ,
  2078. 2831682 ,
  2079. 2856594 ,
  2080. 2881603 ,
  2081. 2906709 ,
  2082. 2931912 ,
  2083. 2957211 ,
  2084. 2982607 ,
  2085. 3008099 ,
  2086. 3033688 ,
  2087. 3059373 ,
  2088. 3085154 ,
  2089. 3111031 ,
  2090. 3137004 ,
  2091. 3163073 ,
  2092. 3189238 ,
  2093. 3215499 ,
  2094. 3241856 ,
  2095. 3268308 ,
  2096. 3294855 ,
  2097. 3321498 ,
  2098. 3348236 ,
  2099. 3375070 ,
  2100. 3401999 ,
  2101. 3429022 ,
  2102. 3456141 ,
  2103. 3483355 ,
  2104. 3510663 ,
  2105. 3538066 ,
  2106. 3565564 ,
  2107. 3593156 ,
  2108. 3620843 ,
  2109. 3648625 ,
  2110. 3676500 ,
  2111. 3704470 ,
  2112. 3732534 ,
  2113. 3760692 ,
  2114. 3788945 ,
  2115. 3817291 ,
  2116. 3845731 ,
  2117. 3874265 ,
  2118. 3902892 ,
  2119. 3931613 ,
  2120. 3960428 ,
  2121. 3989336 ,
  2122. 4018337 ,
  2123. 4047432 ,
  2124. 4076620 ,
  2125. 4105902 ,
  2126. 4135276 ,
  2127. 4164744 ,
  2128. 4194304 ,
  2129. };
  2130. /*
  2131. * index : 0 ~ 255
  2132. * ((index/255)^1.75)*4194304
  2133. */
  2134. static int candela_coeff_1p75[] = {
  2135. 0 ,
  2136. 258 ,
  2137. 867 ,
  2138. 1763 ,
  2139. 2916 ,
  2140. 4309 ,
  2141. 5929 ,
  2142. 7765 ,
  2143. 9809 ,
  2144. 12054 ,
  2145. 14495 ,
  2146. 17126 ,
  2147. 19943 ,
  2148. 22941 ,
  2149. 26118 ,
  2150. 29470 ,
  2151. 32993 ,
  2152. 36686 ,
  2153. 40545 ,
  2154. 44569 ,
  2155. 48755 ,
  2156. 53100 ,
  2157. 57604 ,
  2158. 62264 ,
  2159. 67079 ,
  2160. 72046 ,
  2161. 77165 ,
  2162. 82433 ,
  2163. 87850 ,
  2164. 93414 ,
  2165. 99124 ,
  2166. 104978 ,
  2167. 110975 ,
  2168. 117115 ,
  2169. 123396 ,
  2170. 129818 ,
  2171. 136378 ,
  2172. 143076 ,
  2173. 149912 ,
  2174. 156884 ,
  2175. 163991 ,
  2176. 171233 ,
  2177. 178608 ,
  2178. 186116 ,
  2179. 193757 ,
  2180. 201529 ,
  2181. 209431 ,
  2182. 217463 ,
  2183. 225625 ,
  2184. 233915 ,
  2185. 242333 ,
  2186. 250878 ,
  2187. 259550 ,
  2188. 268347 ,
  2189. 277271 ,
  2190. 286318 ,
  2191. 295491 ,
  2192. 304786 ,
  2193. 314205 ,
  2194. 323747 ,
  2195. 333411 ,
  2196. 343196 ,
  2197. 353102 ,
  2198. 363129 ,
  2199. 373276 ,
  2200. 383542 ,
  2201. 393928 ,
  2202. 404432 ,
  2203. 415055 ,
  2204. 425795 ,
  2205. 436653 ,
  2206. 447627 ,
  2207. 458719 ,
  2208. 469926 ,
  2209. 481249 ,
  2210. 492688 ,
  2211. 504241 ,
  2212. 515909 ,
  2213. 527692 ,
  2214. 539588 ,
  2215. 551597 ,
  2216. 563720 ,
  2217. 575955 ,
  2218. 588303 ,
  2219. 600763 ,
  2220. 613335 ,
  2221. 626018 ,
  2222. 638812 ,
  2223. 651717 ,
  2224. 664733 ,
  2225. 677858 ,
  2226. 691094 ,
  2227. 704439 ,
  2228. 717893 ,
  2229. 731456 ,
  2230. 745128 ,
  2231. 758908 ,
  2232. 772796 ,
  2233. 786793 ,
  2234. 800896 ,
  2235. 815107 ,
  2236. 829425 ,
  2237. 843849 ,
  2238. 858380 ,
  2239. 873017 ,
  2240. 887761 ,
  2241. 902609 ,
  2242. 917564 ,
  2243. 932623 ,
  2244. 947787 ,
  2245. 963057 ,
  2246. 978430 ,
  2247. 993908 ,
  2248. 1009490 ,
  2249. 1025175 ,
  2250. 1040964 ,
  2251. 1056857 ,
  2252. 1072852 ,
  2253. 1088950 ,
  2254. 1105151 ,
  2255. 1121455 ,
  2256. 1137860 ,
  2257. 1154368 ,
  2258. 1170977 ,
  2259. 1187688 ,
  2260. 1204501 ,
  2261. 1221414 ,
  2262. 1238429 ,
  2263. 1255544 ,
  2264. 1272760 ,
  2265. 1290076 ,
  2266. 1307493 ,
  2267. 1325009 ,
  2268. 1342626 ,
  2269. 1360342 ,
  2270. 1378157 ,
  2271. 1396072 ,
  2272. 1414085 ,
  2273. 1432198 ,
  2274. 1450409 ,
  2275. 1468719 ,
  2276. 1487127 ,
  2277. 1505633 ,
  2278. 1524238 ,
  2279. 1542940 ,
  2280. 1561739 ,
  2281. 1580637 ,
  2282. 1599631 ,
  2283. 1618723 ,
  2284. 1637912 ,
  2285. 1657198 ,
  2286. 1676580 ,
  2287. 1696059 ,
  2288. 1715634 ,
  2289. 1735305 ,
  2290. 1755072 ,
  2291. 1774936 ,
  2292. 1794895 ,
  2293. 1814949 ,
  2294. 1835099 ,
  2295. 1855344 ,
  2296. 1875685 ,
  2297. 1896120 ,
  2298. 1916650 ,
  2299. 1937275 ,
  2300. 1957995 ,
  2301. 1978808 ,
  2302. 1999716 ,
  2303. 2020719 ,
  2304. 2041815 ,
  2305. 2063005 ,
  2306. 2084288 ,
  2307. 2105665 ,
  2308. 2127136 ,
  2309. 2148700 ,
  2310. 2170357 ,
  2311. 2192107 ,
  2312. 2213950 ,
  2313. 2235886 ,
  2314. 2257914 ,
  2315. 2280035 ,
  2316. 2302248 ,
  2317. 2324553 ,
  2318. 2346951 ,
  2319. 2369440 ,
  2320. 2392022 ,
  2321. 2414695 ,
  2322. 2437459 ,
  2323. 2460316 ,
  2324. 2483263 ,
  2325. 2506302 ,
  2326. 2529432 ,
  2327. 2552653 ,
  2328. 2575965 ,
  2329. 2599367 ,
  2330. 2622860 ,
  2331. 2646444 ,
  2332. 2670118 ,
  2333. 2693883 ,
  2334. 2717737 ,
  2335. 2741682 ,
  2336. 2765717 ,
  2337. 2789841 ,
  2338. 2814055 ,
  2339. 2838359 ,
  2340. 2862753 ,
  2341. 2887236 ,
  2342. 2911808 ,
  2343. 2936469 ,
  2344. 2961219 ,
  2345. 2986059 ,
  2346. 3010987 ,
  2347. 3036004 ,
  2348. 3061110 ,
  2349. 3086304 ,
  2350. 3111587 ,
  2351. 3136958 ,
  2352. 3162417 ,
  2353. 3187964 ,
  2354. 3213600 ,
  2355. 3239323 ,
  2356. 3265134 ,
  2357. 3291033 ,
  2358. 3317020 ,
  2359. 3343094 ,
  2360. 3369256 ,
  2361. 3395505 ,
  2362. 3421841 ,
  2363. 3448265 ,
  2364. 3474775 ,
  2365. 3501372 ,
  2366. 3528057 ,
  2367. 3554828 ,
  2368. 3581686 ,
  2369. 3608630 ,
  2370. 3635661 ,
  2371. 3662778 ,
  2372. 3689982 ,
  2373. 3717271 ,
  2374. 3744647 ,
  2375. 3772109 ,
  2376. 3799657 ,
  2377. 3827291 ,
  2378. 3855011 ,
  2379. 3882816 ,
  2380. 3910707 ,
  2381. 3938683 ,
  2382. 3966745 ,
  2383. 3994892 ,
  2384. 4023124 ,
  2385. 4051442 ,
  2386. 4079844 ,
  2387. 4108332 ,
  2388. 4136905 ,
  2389. 4165562 ,
  2390. 4194304 ,
  2391. };
  2392. /*
  2393. * index : 0 ~ 255
  2394. * ((index/255)^1.7)*4194304
  2395. */
  2396. static int candela_coeff_1p7[] = {
  2397. 0 ,
  2398. 340 ,
  2399. 1105 ,
  2400. 2201 ,
  2401. 3590 ,
  2402. 5246 ,
  2403. 7152 ,
  2404. 9294 ,
  2405. 11663 ,
  2406. 14248 ,
  2407. 17043 ,
  2408. 20041 ,
  2409. 23235 ,
  2410. 26622 ,
  2411. 30197 ,
  2412. 33954 ,
  2413. 37892 ,
  2414. 42005 ,
  2415. 46292 ,
  2416. 50748 ,
  2417. 55372 ,
  2418. 60161 ,
  2419. 65112 ,
  2420. 70223 ,
  2421. 75492 ,
  2422. 80917 ,
  2423. 86496 ,
  2424. 92227 ,
  2425. 98109 ,
  2426. 104140 ,
  2427. 110318 ,
  2428. 116642 ,
  2429. 123111 ,
  2430. 129722 ,
  2431. 136476 ,
  2432. 143370 ,
  2433. 150403 ,
  2434. 157574 ,
  2435. 164882 ,
  2436. 172326 ,
  2437. 179905 ,
  2438. 187618 ,
  2439. 195463 ,
  2440. 203441 ,
  2441. 211549 ,
  2442. 219787 ,
  2443. 228155 ,
  2444. 236651 ,
  2445. 245274 ,
  2446. 254024 ,
  2447. 262900 ,
  2448. 271901 ,
  2449. 281027 ,
  2450. 290276 ,
  2451. 299648 ,
  2452. 309142 ,
  2453. 318758 ,
  2454. 328495 ,
  2455. 338352 ,
  2456. 348329 ,
  2457. 358425 ,
  2458. 368640 ,
  2459. 378972 ,
  2460. 389422 ,
  2461. 399989 ,
  2462. 410671 ,
  2463. 421470 ,
  2464. 432383 ,
  2465. 443411 ,
  2466. 454554 ,
  2467. 465809 ,
  2468. 477178 ,
  2469. 488660 ,
  2470. 500254 ,
  2471. 511959 ,
  2472. 523776 ,
  2473. 535704 ,
  2474. 547742 ,
  2475. 559890 ,
  2476. 572147 ,
  2477. 584514 ,
  2478. 596989 ,
  2479. 609572 ,
  2480. 622264 ,
  2481. 635062 ,
  2482. 647968 ,
  2483. 660981 ,
  2484. 674100 ,
  2485. 687325 ,
  2486. 700656 ,
  2487. 714092 ,
  2488. 727632 ,
  2489. 741278 ,
  2490. 755027 ,
  2491. 768881 ,
  2492. 782838 ,
  2493. 796898 ,
  2494. 811061 ,
  2495. 825327 ,
  2496. 839695 ,
  2497. 854165 ,
  2498. 868736 ,
  2499. 883409 ,
  2500. 898183 ,
  2501. 913058 ,
  2502. 928033 ,
  2503. 943108 ,
  2504. 958284 ,
  2505. 973558 ,
  2506. 988932 ,
  2507. 1004406 ,
  2508. 1019978 ,
  2509. 1035648 ,
  2510. 1051417 ,
  2511. 1067284 ,
  2512. 1083248 ,
  2513. 1099310 ,
  2514. 1115469 ,
  2515. 1131725 ,
  2516. 1148078 ,
  2517. 1164527 ,
  2518. 1181073 ,
  2519. 1197715 ,
  2520. 1214452 ,
  2521. 1231285 ,
  2522. 1248213 ,
  2523. 1265236 ,
  2524. 1282354 ,
  2525. 1299567 ,
  2526. 1316874 ,
  2527. 1334275 ,
  2528. 1351770 ,
  2529. 1369359 ,
  2530. 1387041 ,
  2531. 1404817 ,
  2532. 1422686 ,
  2533. 1440648 ,
  2534. 1458702 ,
  2535. 1476849 ,
  2536. 1495088 ,
  2537. 1513419 ,
  2538. 1531842 ,
  2539. 1550357 ,
  2540. 1568964 ,
  2541. 1587661 ,
  2542. 1606450 ,
  2543. 1625330 ,
  2544. 1644300 ,
  2545. 1663361 ,
  2546. 1682512 ,
  2547. 1701754 ,
  2548. 1721085 ,
  2549. 1740507 ,
  2550. 1760018 ,
  2551. 1779618 ,
  2552. 1799308 ,
  2553. 1819087 ,
  2554. 1838955 ,
  2555. 1858911 ,
  2556. 1878956 ,
  2557. 1899090 ,
  2558. 1919312 ,
  2559. 1939622 ,
  2560. 1960020 ,
  2561. 1980506 ,
  2562. 2001079 ,
  2563. 2021740 ,
  2564. 2042488 ,
  2565. 2063324 ,
  2566. 2084246 ,
  2567. 2105255 ,
  2568. 2126351 ,
  2569. 2147534 ,
  2570. 2168802 ,
  2571. 2190157 ,
  2572. 2211598 ,
  2573. 2233126 ,
  2574. 2254738 ,
  2575. 2276437 ,
  2576. 2298221 ,
  2577. 2320090 ,
  2578. 2342045 ,
  2579. 2364084 ,
  2580. 2386209 ,
  2581. 2408418 ,
  2582. 2430712 ,
  2583. 2453091 ,
  2584. 2475554 ,
  2585. 2498101 ,
  2586. 2520732 ,
  2587. 2543447 ,
  2588. 2566246 ,
  2589. 2589129 ,
  2590. 2612095 ,
  2591. 2635145 ,
  2592. 2658278 ,
  2593. 2681495 ,
  2594. 2704794 ,
  2595. 2728176 ,
  2596. 2751641 ,
  2597. 2775189 ,
  2598. 2798820 ,
  2599. 2822532 ,
  2600. 2846327 ,
  2601. 2870205 ,
  2602. 2894164 ,
  2603. 2918206 ,
  2604. 2942329 ,
  2605. 2966534 ,
  2606. 2990820 ,
  2607. 3015188 ,
  2608. 3039637 ,
  2609. 3064168 ,
  2610. 3088780 ,
  2611. 3113472 ,
  2612. 3138246 ,
  2613. 3163100 ,
  2614. 3188035 ,
  2615. 3213051 ,
  2616. 3238147 ,
  2617. 3263324 ,
  2618. 3288580 ,
  2619. 3313917 ,
  2620. 3339334 ,
  2621. 3364831 ,
  2622. 3390407 ,
  2623. 3416064 ,
  2624. 3441799 ,
  2625. 3467615 ,
  2626. 3493509 ,
  2627. 3519483 ,
  2628. 3545537 ,
  2629. 3571669 ,
  2630. 3597880 ,
  2631. 3624170 ,
  2632. 3650539 ,
  2633. 3676986 ,
  2634. 3703512 ,
  2635. 3730117 ,
  2636. 3756800 ,
  2637. 3783561 ,
  2638. 3810400 ,
  2639. 3837317 ,
  2640. 3864313 ,
  2641. 3891386 ,
  2642. 3918537 ,
  2643. 3945766 ,
  2644. 3973072 ,
  2645. 4000456 ,
  2646. 4027917 ,
  2647. 4055455 ,
  2648. 4083071 ,
  2649. 4110764 ,
  2650. 4138534 ,
  2651. 4166380 ,
  2652. 4194304 ,
  2653. };
  2654. /*
  2655. * index : 0 ~ 255
  2656. * ((index/255)^1.65)*4194304
  2657. */
  2658. static int candela_coeff_1p65[] = {
  2659. 0 ,
  2660. 449 ,
  2661. 1408 ,
  2662. 2749 ,
  2663. 4418 ,
  2664. 6385 ,
  2665. 8626 ,
  2666. 11124 ,
  2667. 13867 ,
  2668. 16841 ,
  2669. 20039 ,
  2670. 23451 ,
  2671. 27072 ,
  2672. 30894 ,
  2673. 34912 ,
  2674. 39122 ,
  2675. 43518 ,
  2676. 48096 ,
  2677. 52853 ,
  2678. 57785 ,
  2679. 62888 ,
  2680. 68160 ,
  2681. 73598 ,
  2682. 79199 ,
  2683. 84961 ,
  2684. 90880 ,
  2685. 96956 ,
  2686. 103186 ,
  2687. 109567 ,
  2688. 116098 ,
  2689. 122777 ,
  2690. 129603 ,
  2691. 136573 ,
  2692. 143687 ,
  2693. 150942 ,
  2694. 158336 ,
  2695. 165870 ,
  2696. 173541 ,
  2697. 181347 ,
  2698. 189289 ,
  2699. 197364 ,
  2700. 205571 ,
  2701. 213909 ,
  2702. 222378 ,
  2703. 230975 ,
  2704. 239701 ,
  2705. 248553 ,
  2706. 257531 ,
  2707. 266635 ,
  2708. 275862 ,
  2709. 285213 ,
  2710. 294686 ,
  2711. 304281 ,
  2712. 313996 ,
  2713. 323831 ,
  2714. 333785 ,
  2715. 343858 ,
  2716. 354048 ,
  2717. 364355 ,
  2718. 374778 ,
  2719. 385317 ,
  2720. 395971 ,
  2721. 406738 ,
  2722. 417619 ,
  2723. 428613 ,
  2724. 439719 ,
  2725. 450937 ,
  2726. 462266 ,
  2727. 473705 ,
  2728. 485255 ,
  2729. 496913 ,
  2730. 508680 ,
  2731. 520556 ,
  2732. 532539 ,
  2733. 544629 ,
  2734. 556826 ,
  2735. 569129 ,
  2736. 581538 ,
  2737. 594052 ,
  2738. 606671 ,
  2739. 619394 ,
  2740. 632221 ,
  2741. 645151 ,
  2742. 658184 ,
  2743. 671320 ,
  2744. 684557 ,
  2745. 697897 ,
  2746. 711337 ,
  2747. 724878 ,
  2748. 738520 ,
  2749. 752261 ,
  2750. 766103 ,
  2751. 780043 ,
  2752. 794082 ,
  2753. 808220 ,
  2754. 822456 ,
  2755. 836789 ,
  2756. 851220 ,
  2757. 865748 ,
  2758. 880373 ,
  2759. 895094 ,
  2760. 909911 ,
  2761. 924824 ,
  2762. 939832 ,
  2763. 954935 ,
  2764. 970132 ,
  2765. 985424 ,
  2766. 1000810 ,
  2767. 1016290 ,
  2768. 1031864 ,
  2769. 1047530 ,
  2770. 1063289 ,
  2771. 1079141 ,
  2772. 1095086 ,
  2773. 1111122 ,
  2774. 1127249 ,
  2775. 1143469 ,
  2776. 1159779 ,
  2777. 1176180 ,
  2778. 1192672 ,
  2779. 1209254 ,
  2780. 1225927 ,
  2781. 1242689 ,
  2782. 1259540 ,
  2783. 1276481 ,
  2784. 1293511 ,
  2785. 1310630 ,
  2786. 1327837 ,
  2787. 1345132 ,
  2788. 1362516 ,
  2789. 1379987 ,
  2790. 1397546 ,
  2791. 1415193 ,
  2792. 1432926 ,
  2793. 1450746 ,
  2794. 1468653 ,
  2795. 1486647 ,
  2796. 1504726 ,
  2797. 1522892 ,
  2798. 1541143 ,
  2799. 1559480 ,
  2800. 1577902 ,
  2801. 1596410 ,
  2802. 1615002 ,
  2803. 1633679 ,
  2804. 1652440 ,
  2805. 1671286 ,
  2806. 1690216 ,
  2807. 1709230 ,
  2808. 1728327 ,
  2809. 1747508 ,
  2810. 1766772 ,
  2811. 1786120 ,
  2812. 1805550 ,
  2813. 1825063 ,
  2814. 1844658 ,
  2815. 1864336 ,
  2816. 1884096 ,
  2817. 1903938 ,
  2818. 1923862 ,
  2819. 1943867 ,
  2820. 1963954 ,
  2821. 1984122 ,
  2822. 2004371 ,
  2823. 2024701 ,
  2824. 2045112 ,
  2825. 2065603 ,
  2826. 2086175 ,
  2827. 2106827 ,
  2828. 2127559 ,
  2829. 2148371 ,
  2830. 2169263 ,
  2831. 2190234 ,
  2832. 2211285 ,
  2833. 2232415 ,
  2834. 2253624 ,
  2835. 2274912 ,
  2836. 2296278 ,
  2837. 2317723 ,
  2838. 2339247 ,
  2839. 2360849 ,
  2840. 2382529 ,
  2841. 2404287 ,
  2842. 2426124 ,
  2843. 2448037 ,
  2844. 2470028 ,
  2845. 2492097 ,
  2846. 2514243 ,
  2847. 2536466 ,
  2848. 2558766 ,
  2849. 2581143 ,
  2850. 2603596 ,
  2851. 2626126 ,
  2852. 2648733 ,
  2853. 2671416 ,
  2854. 2694174 ,
  2855. 2717009 ,
  2856. 2739920 ,
  2857. 2762906 ,
  2858. 2785968 ,
  2859. 2809106 ,
  2860. 2832319 ,
  2861. 2855607 ,
  2862. 2878970 ,
  2863. 2902407 ,
  2864. 2925920 ,
  2865. 2949508 ,
  2866. 2973170 ,
  2867. 2996906 ,
  2868. 3020717 ,
  2869. 3044601 ,
  2870. 3068560 ,
  2871. 3092593 ,
  2872. 3116700 ,
  2873. 3140880 ,
  2874. 3165134 ,
  2875. 3189461 ,
  2876. 3213862 ,
  2877. 3238335 ,
  2878. 3262882 ,
  2879. 3287502 ,
  2880. 3312195 ,
  2881. 3336960 ,
  2882. 3361798 ,
  2883. 3386709 ,
  2884. 3411692 ,
  2885. 3436747 ,
  2886. 3461874 ,
  2887. 3487074 ,
  2888. 3512345 ,
  2889. 3537688 ,
  2890. 3563103 ,
  2891. 3588589 ,
  2892. 3614148 ,
  2893. 3639777 ,
  2894. 3665478 ,
  2895. 3691250 ,
  2896. 3717093 ,
  2897. 3743007 ,
  2898. 3768991 ,
  2899. 3795047 ,
  2900. 3821173 ,
  2901. 3847370 ,
  2902. 3873637 ,
  2903. 3899975 ,
  2904. 3926383 ,
  2905. 3952861 ,
  2906. 3979409 ,
  2907. 4006027 ,
  2908. 4032715 ,
  2909. 4059473 ,
  2910. 4086300 ,
  2911. 4113197 ,
  2912. 4140163 ,
  2913. 4167199 ,
  2914. 4194304 ,
  2915. };
  2916. /*
  2917. * index : 0 ~ 255
  2918. * ((index/255)^1.6)*4194304
  2919. */
  2920. static int candela_coeff_1p6[] = {
  2921. 0 ,
  2922. 592 ,
  2923. 1794 ,
  2924. 3432 ,
  2925. 5439 ,
  2926. 7772 ,
  2927. 10405 ,
  2928. 13315 ,
  2929. 16487 ,
  2930. 19906 ,
  2931. 23561 ,
  2932. 27443 ,
  2933. 31542 ,
  2934. 35851 ,
  2935. 40365 ,
  2936. 45076 ,
  2937. 49979 ,
  2938. 55070 ,
  2939. 60344 ,
  2940. 65796 ,
  2941. 71424 ,
  2942. 77223 ,
  2943. 83190 ,
  2944. 89322 ,
  2945. 95617 ,
  2946. 102070 ,
  2947. 108681 ,
  2948. 115446 ,
  2949. 122363 ,
  2950. 129429 ,
  2951. 136644 ,
  2952. 144004 ,
  2953. 151508 ,
  2954. 159154 ,
  2955. 166941 ,
  2956. 174866 ,
  2957. 182928 ,
  2958. 191125 ,
  2959. 199457 ,
  2960. 207921 ,
  2961. 216517 ,
  2962. 225242 ,
  2963. 234096 ,
  2964. 243078 ,
  2965. 252185 ,
  2966. 261418 ,
  2967. 270775 ,
  2968. 280254 ,
  2969. 289856 ,
  2970. 299578 ,
  2971. 309419 ,
  2972. 319380 ,
  2973. 329459 ,
  2974. 339654 ,
  2975. 349966 ,
  2976. 360393 ,
  2977. 370934 ,
  2978. 381589 ,
  2979. 392356 ,
  2980. 403236 ,
  2981. 414226 ,
  2982. 425327 ,
  2983. 436538 ,
  2984. 447858 ,
  2985. 459286 ,
  2986. 470822 ,
  2987. 482465 ,
  2988. 494214 ,
  2989. 506069 ,
  2990. 518029 ,
  2991. 530094 ,
  2992. 542262 ,
  2993. 554533 ,
  2994. 566907 ,
  2995. 579384 ,
  2996. 591962 ,
  2997. 604641 ,
  2998. 617420 ,
  2999. 630300 ,
  3000. 643278 ,
  3001. 656356 ,
  3002. 669532 ,
  3003. 682807 ,
  3004. 696178 ,
  3005. 709647 ,
  3006. 723212 ,
  3007. 736874 ,
  3008. 750631 ,
  3009. 764483 ,
  3010. 778430 ,
  3011. 792471 ,
  3012. 806607 ,
  3013. 820836 ,
  3014. 835157 ,
  3015. 849572 ,
  3016. 864079 ,
  3017. 878678 ,
  3018. 893368 ,
  3019. 908149 ,
  3020. 923022 ,
  3021. 937984 ,
  3022. 953037 ,
  3023. 968180 ,
  3024. 983411 ,
  3025. 998732 ,
  3026. 1014141 ,
  3027. 1029639 ,
  3028. 1045225 ,
  3029. 1060898 ,
  3030. 1076659 ,
  3031. 1092506 ,
  3032. 1108440 ,
  3033. 1124461 ,
  3034. 1140568 ,
  3035. 1156760 ,
  3036. 1173038 ,
  3037. 1189401 ,
  3038. 1205849 ,
  3039. 1222382 ,
  3040. 1238998 ,
  3041. 1255699 ,
  3042. 1272484 ,
  3043. 1289352 ,
  3044. 1306303 ,
  3045. 1323337 ,
  3046. 1340453 ,
  3047. 1357652 ,
  3048. 1374933 ,
  3049. 1392296 ,
  3050. 1409740 ,
  3051. 1427266 ,
  3052. 1444873 ,
  3053. 1462561 ,
  3054. 1480329 ,
  3055. 1498178 ,
  3056. 1516106 ,
  3057. 1534115 ,
  3058. 1552203 ,
  3059. 1570371 ,
  3060. 1588617 ,
  3061. 1606943 ,
  3062. 1625347 ,
  3063. 1643830 ,
  3064. 1662391 ,
  3065. 1681031 ,
  3066. 1699748 ,
  3067. 1718542 ,
  3068. 1737414 ,
  3069. 1756363 ,
  3070. 1775389 ,
  3071. 1794492 ,
  3072. 1813672 ,
  3073. 1832928 ,
  3074. 1852260 ,
  3075. 1871668 ,
  3076. 1891152 ,
  3077. 1910711 ,
  3078. 1930346 ,
  3079. 1950055 ,
  3080. 1969840 ,
  3081. 1989700 ,
  3082. 2009634 ,
  3083. 2029643 ,
  3084. 2049726 ,
  3085. 2069883 ,
  3086. 2090114 ,
  3087. 2110418 ,
  3088. 2130796 ,
  3089. 2151248 ,
  3090. 2171773 ,
  3091. 2192370 ,
  3092. 2213041 ,
  3093. 2233784 ,
  3094. 2254599 ,
  3095. 2275487 ,
  3096. 2296447 ,
  3097. 2317479 ,
  3098. 2338583 ,
  3099. 2359759 ,
  3100. 2381006 ,
  3101. 2402324 ,
  3102. 2423714 ,
  3103. 2445174 ,
  3104. 2466706 ,
  3105. 2488308 ,
  3106. 2509981 ,
  3107. 2531724 ,
  3108. 2553537 ,
  3109. 2575421 ,
  3110. 2597374 ,
  3111. 2619397 ,
  3112. 2641490 ,
  3113. 2663653 ,
  3114. 2685884 ,
  3115. 2708185 ,
  3116. 2730555 ,
  3117. 2752994 ,
  3118. 2775502 ,
  3119. 2798079 ,
  3120. 2820724 ,
  3121. 2843437 ,
  3122. 2866219 ,
  3123. 2889068 ,
  3124. 2911986 ,
  3125. 2934971 ,
  3126. 2958025 ,
  3127. 2981145 ,
  3128. 3004334 ,
  3129. 3027589 ,
  3130. 3050912 ,
  3131. 3074302 ,
  3132. 3097758 ,
  3133. 3121282 ,
  3134. 3144872 ,
  3135. 3168529 ,
  3136. 3192252 ,
  3137. 3216041 ,
  3138. 3239897 ,
  3139. 3263819 ,
  3140. 3287806 ,
  3141. 3311860 ,
  3142. 3335979 ,
  3143. 3360163 ,
  3144. 3384413 ,
  3145. 3408729 ,
  3146. 3433109 ,
  3147. 3457555 ,
  3148. 3482066 ,
  3149. 3506642 ,
  3150. 3531282 ,
  3151. 3555987 ,
  3152. 3580756 ,
  3153. 3605590 ,
  3154. 3630489 ,
  3155. 3655451 ,
  3156. 3680478 ,
  3157. 3705568 ,
  3158. 3730723 ,
  3159. 3755941 ,
  3160. 3781223 ,
  3161. 3806568 ,
  3162. 3831977 ,
  3163. 3857449 ,
  3164. 3882984 ,
  3165. 3908583 ,
  3166. 3934245 ,
  3167. 3959969 ,
  3168. 3985756 ,
  3169. 4011606 ,
  3170. 4037519 ,
  3171. 4063494 ,
  3172. 4089532 ,
  3173. 4115631 ,
  3174. 4141794 ,
  3175. 4168018 ,
  3176. 4194304 ,
  3177. };
  3178. static int s6e63m0_candela_coeff[] = {
  3179. 0 ,
  3180. 0 ,
  3181. 0 ,
  3182. 0 ,
  3183. 0 ,
  3184. 0 ,
  3185. 0 ,
  3186. 0 ,
  3187. 0 ,
  3188. 0 ,
  3189. 0 ,
  3190. 0 ,
  3191. 1 ,
  3192. 1 ,
  3193. 1 ,
  3194. 2 ,
  3195. 2 ,
  3196. 3 ,
  3197. 4 ,
  3198. 5 ,
  3199. 6 ,
  3200. 8 ,
  3201. 11 ,
  3202. 13 ,
  3203. 16 ,
  3204. 20 ,
  3205. 24 ,
  3206. 29 ,
  3207. 35 ,
  3208. 41 ,
  3209. 49 ,
  3210. 58 ,
  3211. 67 ,
  3212. 78 ,
  3213. 89 ,
  3214. 103 ,
  3215. 118 ,
  3216. 135 ,
  3217. 153 ,
  3218. 173 ,
  3219. 199 ,
  3220. 223 ,
  3221. 238 ,
  3222. 252 ,
  3223. 272 ,
  3224. 291 ,
  3225. 308 ,
  3226. 326 ,
  3227. 340 ,
  3228. 360 ,
  3229. 382 ,
  3230. 402 ,
  3231. 419 ,
  3232. 443 ,
  3233. 467 ,
  3234. 494 ,
  3235. 516 ,
  3236. 538 ,
  3237. 568 ,
  3238. 592 ,
  3239. 615 ,
  3240. 640 ,
  3241. 670 ,
  3242. 693 ,
  3243. 718 ,
  3244. 748 ,
  3245. 780 ,
  3246. 812 ,
  3247. 836 ,
  3248. 869 ,
  3249. 901 ,
  3250. 929 ,
  3251. 961 ,
  3252. 991 ,
  3253. 1025 ,
  3254. 1063 ,
  3255. 1096 ,
  3256. 1130 ,
  3257. 1164 ,
  3258. 1199 ,
  3259. 1235 ,
  3260. 1274 ,
  3261. 1316 ,
  3262. 1350 ,
  3263. 1394 ,
  3264. 1435 ,
  3265. 1473 ,
  3266. 1515 ,
  3267. 1553 ,
  3268. 1596 ,
  3269. 1640 ,
  3270. 1680 ,
  3271. 1720 ,
  3272. 1761 ,
  3273. 1806 ,
  3274. 1854 ,
  3275. 1902 ,
  3276. 1944 ,
  3277. 1992 ,
  3278. 2042 ,
  3279. 2087 ,
  3280. 2141 ,
  3281. 2188 ,
  3282. 2236 ,
  3283. 2291 ,
  3284. 2339 ,
  3285. 2388 ,
  3286. 2437 ,
  3287. 2488 ,
  3288. 2538 ,
  3289. 2590 ,
  3290. 2645 ,
  3291. 2699 ,
  3292. 2759 ,
  3293. 2815 ,
  3294. 2867 ,
  3295. 2924 ,
  3296. 2982 ,
  3297. 3036 ,
  3298. 3095 ,
  3299. 3158 ,
  3300. 3220 ,
  3301. 3283 ,
  3302. 3341 ,
  3303. 3403 ,
  3304. 3468 ,
  3305. 3534 ,
  3306. 3592 ,
  3307. 3659 ,
  3308. 3722 ,
  3309. 3785 ,
  3310. 3857 ,
  3311. 3922 ,
  3312. 3987 ,
  3313. 4053 ,
  3314. 4120 ,
  3315. 4188 ,
  3316. 4260 ,
  3317. 4329 ,
  3318. 4405 ,
  3319. 4478 ,
  3320. 4551 ,
  3321. 4625 ,
  3322. 4695 ,
  3323. 4769 ,
  3324. 4844 ,
  3325. 4916 ,
  3326. 4989 ,
  3327. 5062 ,
  3328. 5135 ,
  3329. 5206 ,
  3330. 5282 ,
  3331. 5366 ,
  3332. 5445 ,
  3333. 5522 ,
  3334. 5604 ,
  3335. 5686 ,
  3336. 5764 ,
  3337. 5844 ,
  3338. 5923 ,
  3339. 6004 ,
  3340. 6085 ,
  3341. 6167 ,
  3342. 6249 ,
  3343. 6332 ,
  3344. 6419 ,
  3345. 6505 ,
  3346. 6593 ,
  3347. 6680 ,
  3348. 6764 ,
  3349. 6854 ,
  3350. 6943 ,
  3351. 7030 ,
  3352. 7113 ,
  3353. 7196 ,
  3354. 7284 ,
  3355. 7379 ,
  3356. 7472 ,
  3357. 7566 ,
  3358. 7660 ,
  3359. 7752 ,
  3360. 7847 ,
  3361. 7943 ,
  3362. 8036 ,
  3363. 8130 ,
  3364. 8224 ,
  3365. 8319 ,
  3366. 8416 ,
  3367. 8514 ,
  3368. 8618 ,
  3369. 8719 ,
  3370. 8815 ,
  3371. 8916 ,
  3372. 9019 ,
  3373. 9117 ,
  3374. 9216 ,
  3375. 9316 ,
  3376. 9421 ,
  3377. 9530 ,
  3378. 9637 ,
  3379. 9742 ,
  3380. 9853 ,
  3381. 9962 ,
  3382. 10066 ,
  3383. 10173 ,
  3384. 10284 ,
  3385. 10391 ,
  3386. 10500 ,
  3387. 10610 ,
  3388. 10721 ,
  3389. 10831 ,
  3390. 10937 ,
  3391. 11050 ,
  3392. 11161 ,
  3393. 11268 ,
  3394. 11375 ,
  3395. 11495 ,
  3396. 11610 ,
  3397. 11724 ,
  3398. 11840 ,
  3399. 11956 ,
  3400. 12073 ,
  3401. 12183 ,
  3402. 12300 ,
  3403. 12420 ,
  3404. 12540 ,
  3405. 12665 ,
  3406. 12786 ,
  3407. 12907 ,
  3408. 13028 ,
  3409. 13149 ,
  3410. 13271 ,
  3411. 13394 ,
  3412. 13521 ,
  3413. 13644 ,
  3414. 13770 ,
  3415. 13894 ,
  3416. 14021 ,
  3417. 14147 ,
  3418. 14271 ,
  3419. 14395 ,
  3420. 14527 ,
  3421. 14661 ,
  3422. 14795 ,
  3423. 14930 ,
  3424. 15066 ,
  3425. 15199 ,
  3426. 15331 ,
  3427. 15465 ,
  3428. 15596 ,
  3429. 15727 ,
  3430. 15859 ,
  3431. 15991 ,
  3432. 16124 ,
  3433. 16258 ,
  3434. 16384 ,
  3435. };
  3436. static int s6e63m0_curve_2p2[] = {
  3437. 0 ,
  3438. 1 ,
  3439. 3 ,
  3440. 7 ,
  3441. 12 ,
  3442. 20 ,
  3443. 30 ,
  3444. 43 ,
  3445. 57 ,
  3446. 74 ,
  3447. 94 ,
  3448. 116 ,
  3449. 181 ,
  3450. 261 ,
  3451. 357 ,
  3452. 470 ,
  3453. 638 ,
  3454. 873 ,
  3455. 1149 ,
  3456. 1505 ,
  3457. 1948 ,
  3458. 2462 ,
  3459. 3187 ,
  3460. 4014 ,
  3461. 4947 ,
  3462. 5998 ,
  3463. 7322 ,
  3464. 8790 ,
  3465. 10406 ,
  3466. 12406 ,
  3467. 14785 ,
  3468. 17393 ,
  3469. 20233 ,
  3470. 23309 ,
  3471. 26624 ,
  3472. 30843 ,
  3473. 35530 ,
  3474. 40580 ,
  3475. 45998 ,
  3476. 51943 ,
  3477. 59567 ,
  3478. 66992 ,
  3479. 71281 ,
  3480. 75715 ,
  3481. 81627 ,
  3482. 87360 ,
  3483. 92307 ,
  3484. 97789 ,
  3485. 101994 ,
  3486. 107916 ,
  3487. 114544 ,
  3488. 120609 ,
  3489. 125563 ,
  3490. 132753 ,
  3491. 139989 ,
  3492. 148171 ,
  3493. 154830 ,
  3494. 161459 ,
  3495. 170491 ,
  3496. 177474 ,
  3497. 184610 ,
  3498. 191900 ,
  3499. 200851 ,
  3500. 208025 ,
  3501. 215268 ,
  3502. 224525 ,
  3503. 233995 ,
  3504. 243502 ,
  3505. 250903 ,
  3506. 260832 ,
  3507. 270407 ,
  3508. 278624 ,
  3509. 288448 ,
  3510. 297172 ,
  3511. 307582 ,
  3512. 318888 ,
  3513. 328847 ,
  3514. 338973 ,
  3515. 349266 ,
  3516. 359728 ,
  3517. 370358 ,
  3518. 382346 ,
  3519. 394839 ,
  3520. 405107 ,
  3521. 418139 ,
  3522. 430542 ,
  3523. 442024 ,
  3524. 454514 ,
  3525. 466020 ,
  3526. 478816 ,
  3527. 491918 ,
  3528. 503929 ,
  3529. 516097 ,
  3530. 528425 ,
  3531. 541772 ,
  3532. 556091 ,
  3533. 570614 ,
  3534. 583274 ,
  3535. 597584 ,
  3536. 612685 ,
  3537. 626209 ,
  3538. 642334 ,
  3539. 656324 ,
  3540. 670784 ,
  3541. 687212 ,
  3542. 701724 ,
  3543. 716402 ,
  3544. 731246 ,
  3545. 746256 ,
  3546. 761433 ,
  3547. 776925 ,
  3548. 793649 ,
  3549. 809625 ,
  3550. 827588 ,
  3551. 844406 ,
  3552. 860145 ,
  3553. 877239 ,
  3554. 894489 ,
  3555. 910729 ,
  3556. 928472 ,
  3557. 947330 ,
  3558. 966066 ,
  3559. 985002 ,
  3560. 1002167 ,
  3561. 1020903 ,
  3562. 1040415 ,
  3563. 1060129 ,
  3564. 1077595 ,
  3565. 1097643 ,
  3566. 1116505 ,
  3567. 1135562 ,
  3568. 1157162 ,
  3569. 1176573 ,
  3570. 1196160 ,
  3571. 1215924 ,
  3572. 1235865 ,
  3573. 1256295 ,
  3574. 1278087 ,
  3575. 1298760 ,
  3576. 1321576 ,
  3577. 1343524 ,
  3578. 1365222 ,
  3579. 1387352 ,
  3580. 1408362 ,
  3581. 1430792 ,
  3582. 1453323 ,
  3583. 1474871 ,
  3584. 1496592 ,
  3585. 1518486 ,
  3586. 1540554 ,
  3587. 1561718 ,
  3588. 1584466 ,
  3589. 1609667 ,
  3590. 1633642 ,
  3591. 1656693 ,
  3592. 1681320 ,
  3593. 1705704 ,
  3594. 1729303 ,
  3595. 1753078 ,
  3596. 1777031 ,
  3597. 1801161 ,
  3598. 1825469 ,
  3599. 1849954 ,
  3600. 1874618 ,
  3601. 1899643 ,
  3602. 1925558 ,
  3603. 1951427 ,
  3604. 1977817 ,
  3605. 2003972 ,
  3606. 2029340 ,
  3607. 2056321 ,
  3608. 2083012 ,
  3609. 2108920 ,
  3610. 2133761 ,
  3611. 2158798 ,
  3612. 2185215 ,
  3613. 2213663 ,
  3614. 2241712 ,
  3615. 2269787 ,
  3616. 2298149 ,
  3617. 2325479 ,
  3618. 2354122 ,
  3619. 2383050 ,
  3620. 2410925 ,
  3621. 2438977 ,
  3622. 2467207 ,
  3623. 2495613 ,
  3624. 2524928 ,
  3625. 2554282 ,
  3626. 2585355 ,
  3627. 2615560 ,
  3628. 2644608 ,
  3629. 2674730 ,
  3630. 2705583 ,
  3631. 2735171 ,
  3632. 2764934 ,
  3633. 2794872 ,
  3634. 2826365 ,
  3635. 2859063 ,
  3636. 2891124 ,
  3637. 2922619 ,
  3638. 2955919 ,
  3639. 2988470 ,
  3640. 3019761 ,
  3641. 3052021 ,
  3642. 3085226 ,
  3643. 3117156 ,
  3644. 3150042 ,
  3645. 3183115 ,
  3646. 3216377 ,
  3647. 3249187 ,
  3648. 3281038 ,
  3649. 3314853 ,
  3650. 3348429 ,
  3651. 3380335 ,
  3652. 3412468 ,
  3653. 3448603 ,
  3654. 3482883 ,
  3655. 3517348 ,
  3656. 3551998 ,
  3657. 3586833 ,
  3658. 3621854 ,
  3659. 3654959 ,
  3660. 3690035 ,
  3661. 3725943 ,
  3662. 3761880 ,
  3663. 3799549 ,
  3664. 3835852 ,
  3665. 3871969 ,
  3666. 3908271 ,
  3667. 3944757 ,
  3668. 3981429 ,
  3669. 4018286 ,
  3670. 4056410 ,
  3671. 4093256 ,
  3672. 4130995 ,
  3673. 4168337 ,
  3674. 4206323 ,
  3675. 4244164 ,
  3676. 4281201 ,
  3677. 4318413 ,
  3678. 4358189 ,
  3679. 4398275 ,
  3680. 4438561 ,
  3681. 4479048 ,
  3682. 4519735 ,
  3683. 4559566 ,
  3684. 4599306 ,
  3685. 4639620 ,
  3686. 4678786 ,
  3687. 4718131 ,
  3688. 4757656 ,
  3689. 4797361 ,
  3690. 4837246 ,
  3691. 4877311 ,
  3692. 4915200 ,
  3693. };
  3694. /*
  3695. * index : 0 ~ 255
  3696. * 300 is max CANDELA
  3697. * (300*((index/255)^2.2))*4194304
  3698. */
  3699. static int curve_2p2[] = {
  3700. 0 ,
  3701. 6388 ,
  3702. 29353 ,
  3703. 71624 ,
  3704. 134873 ,
  3705. 220357 ,
  3706. 329098 ,
  3707. 461964 ,
  3708. 619713 ,
  3709. 803020 ,
  3710. 1012495 ,
  3711. 1248696 ,
  3712. 1512138 ,
  3713. 1803301 ,
  3714. 2122631 ,
  3715. 2470549 ,
  3716. 2847454 ,
  3717. 3253722 ,
  3718. 3689710 ,
  3719. 4155762 ,
  3720. 4652204 ,
  3721. 5179349 ,
  3722. 5737499 ,
  3723. 6326944 ,
  3724. 6947963 ,
  3725. 7600826 ,
  3726. 8285794 ,
  3727. 9003120 ,
  3728. 9753050 ,
  3729. 10535820 ,
  3730. 11351664 ,
  3731. 12200805 ,
  3732. 13083463 ,
  3733. 13999852 ,
  3734. 14950179 ,
  3735. 15934647 ,
  3736. 16953457 ,
  3737. 18006801 ,
  3738. 19094869 ,
  3739. 20217847 ,
  3740. 21375916 ,
  3741. 22569256 ,
  3742. 23798041 ,
  3743. 25062441 ,
  3744. 26362625 ,
  3745. 27698758 ,
  3746. 29071001 ,
  3747. 30479515 ,
  3748. 31924454 ,
  3749. 33405974 ,
  3750. 34924225 ,
  3751. 36479355 ,
  3752. 38071511 ,
  3753. 39700838 ,
  3754. 41367477 ,
  3755. 43071568 ,
  3756. 44813248 ,
  3757. 46592654 ,
  3758. 48409918 ,
  3759. 50265174 ,
  3760. 52158550 ,
  3761. 54090177 ,
  3762. 56060179 ,
  3763. 58068682 ,
  3764. 60115810 ,
  3765. 62201685 ,
  3766. 64326426 ,
  3767. 66490152 ,
  3768. 68692982 ,
  3769. 70935031 ,
  3770. 73216413 ,
  3771. 75537243 ,
  3772. 77897632 ,
  3773. 80297691 ,
  3774. 82737529 ,
  3775. 85217255 ,
  3776. 87736977 ,
  3777. 90296800 ,
  3778. 92896829 ,
  3779. 95537168 ,
  3780. 98217920 ,
  3781. 100939187 ,
  3782. 103701070 ,
  3783. 106503668 ,
  3784. 109347080 ,
  3785. 112231405 ,
  3786. 115156738 ,
  3787. 118123177 ,
  3788. 121130816 ,
  3789. 124179749 ,
  3790. 127270070 ,
  3791. 130401872 ,
  3792. 133575246 ,
  3793. 136790283 ,
  3794. 140047074 ,
  3795. 143345708 ,
  3796. 146686273 ,
  3797. 150068858 ,
  3798. 153493549 ,
  3799. 156960434 ,
  3800. 160469597 ,
  3801. 164021124 ,
  3802. 167615100 ,
  3803. 171251607 ,
  3804. 174930730 ,
  3805. 178652550 ,
  3806. 182417150 ,
  3807. 186224610 ,
  3808. 190075011 ,
  3809. 193968433 ,
  3810. 197904956 ,
  3811. 201884658 ,
  3812. 205907617 ,
  3813. 209973911 ,
  3814. 214083618 ,
  3815. 218236813 ,
  3816. 222433573 ,
  3817. 226673974 ,
  3818. 230958090 ,
  3819. 235285995 ,
  3820. 239657764 ,
  3821. 244073471 ,
  3822. 248533188 ,
  3823. 253036987 ,
  3824. 257584941 ,
  3825. 262177122 ,
  3826. 266813599 ,
  3827. 271494445 ,
  3828. 276219729 ,
  3829. 280989522 ,
  3830. 285803891 ,
  3831. 290662907 ,
  3832. 295566638 ,
  3833. 300515151 ,
  3834. 305508515 ,
  3835. 310546796 ,
  3836. 315630062 ,
  3837. 320758379 ,
  3838. 325931813 ,
  3839. 331150430 ,
  3840. 336414294 ,
  3841. 341723472 ,
  3842. 347078027 ,
  3843. 352478024 ,
  3844. 357923526 ,
  3845. 363414597 ,
  3846. 368951300 ,
  3847. 374533698 ,
  3848. 380161853 ,
  3849. 385835828 ,
  3850. 391555684 ,
  3851. 397321482 ,
  3852. 403133283 ,
  3853. 408991150 ,
  3854. 414895141 ,
  3855. 420845316 ,
  3856. 426841737 ,
  3857. 432884462 ,
  3858. 438973551 ,
  3859. 445109062 ,
  3860. 451291054 ,
  3861. 457519585 ,
  3862. 463794714 ,
  3863. 470116498 ,
  3864. 476484994 ,
  3865. 482900260 ,
  3866. 489362353 ,
  3867. 495871330 ,
  3868. 502427245 ,
  3869. 509030157 ,
  3870. 515680120 ,
  3871. 522377190 ,
  3872. 529121423 ,
  3873. 535912873 ,
  3874. 542751595 ,
  3875. 549637644 ,
  3876. 556571074 ,
  3877. 563551939 ,
  3878. 570580293 ,
  3879. 577656189 ,
  3880. 584779680 ,
  3881. 591950821 ,
  3882. 599169663 ,
  3883. 606436259 ,
  3884. 613750661 ,
  3885. 621112922 ,
  3886. 628523094 ,
  3887. 635981228 ,
  3888. 643487375 ,
  3889. 651041588 ,
  3890. 658643916 ,
  3891. 666294411 ,
  3892. 673993123 ,
  3893. 681740103 ,
  3894. 689535401 ,
  3895. 697379067 ,
  3896. 705271151 ,
  3897. 713211701 ,
  3898. 721200769 ,
  3899. 729238402 ,
  3900. 737324649 ,
  3901. 745459560 ,
  3902. 753643183 ,
  3903. 761875566 ,
  3904. 770156758 ,
  3905. 778486806 ,
  3906. 786865759 ,
  3907. 795293664 ,
  3908. 803770568 ,
  3909. 812296518 ,
  3910. 820871563 ,
  3911. 829495748 ,
  3912. 838169120 ,
  3913. 846891726 ,
  3914. 855663612 ,
  3915. 864484825 ,
  3916. 873355410 ,
  3917. 882275413 ,
  3918. 891244881 ,
  3919. 900263857 ,
  3920. 909332389 ,
  3921. 918450520 ,
  3922. 927618297 ,
  3923. 936835763 ,
  3924. 946102963 ,
  3925. 955419943 ,
  3926. 964786746 ,
  3927. 974203416 ,
  3928. 983669998 ,
  3929. 993186536 ,
  3930. 1002753073 ,
  3931. 1012369653 ,
  3932. 1022036319 ,
  3933. 1031753115 ,
  3934. 1041520083 ,
  3935. 1051337267 ,
  3936. 1061204710 ,
  3937. 1071122454 ,
  3938. 1081090542 ,
  3939. 1091109016 ,
  3940. 1101177919 ,
  3941. 1111297292 ,
  3942. 1121467178 ,
  3943. 1131687618 ,
  3944. 1141958655 ,
  3945. 1152280329 ,
  3946. 1162652683 ,
  3947. 1173075757 ,
  3948. 1183549592 ,
  3949. 1194074231 ,
  3950. 1204649713 ,
  3951. 1215276079 ,
  3952. 1225953371 ,
  3953. 1236681628 ,
  3954. 1247460891 ,
  3955. 1258291200 ,
  3956. };
  3957. /*
  3958. * index : 0 ~ 255
  3959. * 300 is max CANDELA
  3960. * (300*((index/255)^1.9))*4194304
  3961. */
  3962. static int curve_1p9[] = {
  3963. 0 ,
  3964. 33679 ,
  3965. 125693 ,
  3966. 271572 ,
  3967. 469104 ,
  3968. 716800 ,
  3969. 1013543 ,
  3970. 1358442 ,
  3971. 1750757 ,
  3972. 2189856 ,
  3973. 2675191 ,
  3974. 3206276 ,
  3975. 3782676 ,
  3976. 4403999 ,
  3977. 5069885 ,
  3978. 5780005 ,
  3979. 6534055 ,
  3980. 7331752 ,
  3981. 8172832 ,
  3982. 9057048 ,
  3983. 9984166 ,
  3984. 10953968 ,
  3985. 11966246 ,
  3986. 13020801 ,
  3987. 14117447 ,
  3988. 15256005 ,
  3989. 16436304 ,
  3990. 17658181 ,
  3991. 18921479 ,
  3992. 20226047 ,
  3993. 21571741 ,
  3994. 22958422 ,
  3995. 24385955 ,
  3996. 25854212 ,
  3997. 27363066 ,
  3998. 28912397 ,
  3999. 30502088 ,
  4000. 32132025 ,
  4001. 33802097 ,
  4002. 35512199 ,
  4003. 37262226 ,
  4004. 39052078 ,
  4005. 40881655 ,
  4006. 42750863 ,
  4007. 44659607 ,
  4008. 46607799 ,
  4009. 48595348 ,
  4010. 50622169 ,
  4011. 52688176 ,
  4012. 54793289 ,
  4013. 56937425 ,
  4014. 59120507 ,
  4015. 61342457 ,
  4016. 63603200 ,
  4017. 65902662 ,
  4018. 68240771 ,
  4019. 70617456 ,
  4020. 73032647 ,
  4021. 75486277 ,
  4022. 77978278 ,
  4023. 80508585 ,
  4024. 83077133 ,
  4025. 85683861 ,
  4026. 88328704 ,
  4027. 91011604 ,
  4028. 93732499 ,
  4029. 96491330 ,
  4030. 99288041 ,
  4031. 102122574 ,
  4032. 104994872 ,
  4033. 107904882 ,
  4034. 110852548 ,
  4035. 113837817 ,
  4036. 116860637 ,
  4037. 119920957 ,
  4038. 123018724 ,
  4039. 126153889 ,
  4040. 129326402 ,
  4041. 132536214 ,
  4042. 135783278 ,
  4043. 139067546 ,
  4044. 142388971 ,
  4045. 145747507 ,
  4046. 149143109 ,
  4047. 152575731 ,
  4048. 156045330 ,
  4049. 159551861 ,
  4050. 163095281 ,
  4051. 166675549 ,
  4052. 170292621 ,
  4053. 173946456 ,
  4054. 177637013 ,
  4055. 181364252 ,
  4056. 185128132 ,
  4057. 188928614 ,
  4058. 192765659 ,
  4059. 196639227 ,
  4060. 200549282 ,
  4061. 204495785 ,
  4062. 208478698 ,
  4063. 212497985 ,
  4064. 216553609 ,
  4065. 220645535 ,
  4066. 224773725 ,
  4067. 228938146 ,
  4068. 233138761 ,
  4069. 237375537 ,
  4070. 241648439 ,
  4071. 245957433 ,
  4072. 250302486 ,
  4073. 254683564 ,
  4074. 259100634 ,
  4075. 263553665 ,
  4076. 268042623 ,
  4077. 272567477 ,
  4078. 277128195 ,
  4079. 281724746 ,
  4080. 286357099 ,
  4081. 291025223 ,
  4082. 295729087 ,
  4083. 300468663 ,
  4084. 305243919 ,
  4085. 310054825 ,
  4086. 314901354 ,
  4087. 319783476 ,
  4088. 324701161 ,
  4089. 329654381 ,
  4090. 334643109 ,
  4091. 339667315 ,
  4092. 344726973 ,
  4093. 349822054 ,
  4094. 354952532 ,
  4095. 360118378 ,
  4096. 365319567 ,
  4097. 370556071 ,
  4098. 375827865 ,
  4099. 381134921 ,
  4100. 386477214 ,
  4101. 391854718 ,
  4102. 397267408 ,
  4103. 402715258 ,
  4104. 408198243 ,
  4105. 413716337 ,
  4106. 419269517 ,
  4107. 424857757 ,
  4108. 430481033 ,
  4109. 436139320 ,
  4110. 441832596 ,
  4111. 447560835 ,
  4112. 453324015 ,
  4113. 459122111 ,
  4114. 464955101 ,
  4115. 470822960 ,
  4116. 476725667 ,
  4117. 482663198 ,
  4118. 488635531 ,
  4119. 494642642 ,
  4120. 500684511 ,
  4121. 506761113 ,
  4122. 512872429 ,
  4123. 519018435 ,
  4124. 525199109 ,
  4125. 531414431 ,
  4126. 537664379 ,
  4127. 543948931 ,
  4128. 550268067 ,
  4129. 556621765 ,
  4130. 563010004 ,
  4131. 569432764 ,
  4132. 575890024 ,
  4133. 582381763 ,
  4134. 588907962 ,
  4135. 595468600 ,
  4136. 602063657 ,
  4137. 608693113 ,
  4138. 615356949 ,
  4139. 622055143 ,
  4140. 628787678 ,
  4141. 635554533 ,
  4142. 642355690 ,
  4143. 649191128 ,
  4144. 656060830 ,
  4145. 662964775 ,
  4146. 669902945 ,
  4147. 676875321 ,
  4148. 683881886 ,
  4149. 690922619 ,
  4150. 697997503 ,
  4151. 705106519 ,
  4152. 712249650 ,
  4153. 719426877 ,
  4154. 726638181 ,
  4155. 733883547 ,
  4156. 741162954 ,
  4157. 748476386 ,
  4158. 755823826 ,
  4159. 763205255 ,
  4160. 770620657 ,
  4161. 778070013 ,
  4162. 785553308 ,
  4163. 793070523 ,
  4164. 800621642 ,
  4165. 808206648 ,
  4166. 815825524 ,
  4167. 823478253 ,
  4168. 831164819 ,
  4169. 838885205 ,
  4170. 846639395 ,
  4171. 854427372 ,
  4172. 862249121 ,
  4173. 870104624 ,
  4174. 877993866 ,
  4175. 885916830 ,
  4176. 893873502 ,
  4177. 901863864 ,
  4178. 909887901 ,
  4179. 917945598 ,
  4180. 926036939 ,
  4181. 934161908 ,
  4182. 942320490 ,
  4183. 950512670 ,
  4184. 958738431 ,
  4185. 966997760 ,
  4186. 975290640 ,
  4187. 983617057 ,
  4188. 991976996 ,
  4189. 1000370441 ,
  4190. 1008797379 ,
  4191. 1017257794 ,
  4192. 1025751671 ,
  4193. 1034278995 ,
  4194. 1042839753 ,
  4195. 1051433930 ,
  4196. 1060061511 ,
  4197. 1068722482 ,
  4198. 1077416829 ,
  4199. 1086144537 ,
  4200. 1094905592 ,
  4201. 1103699981 ,
  4202. 1112527688 ,
  4203. 1121388701 ,
  4204. 1130283005 ,
  4205. 1139210586 ,
  4206. 1148171431 ,
  4207. 1157165525 ,
  4208. 1166192856 ,
  4209. 1175253410 ,
  4210. 1184347173 ,
  4211. 1193474131 ,
  4212. 1202634272 ,
  4213. 1211827582 ,
  4214. 1221054047 ,
  4215. 1230313654 ,
  4216. 1239606391 ,
  4217. 1248932244 ,
  4218. 1258291200 ,
  4219. };
  4220. /*
  4221. * index : 0 ~ 255
  4222. * ((index/255)^2.2)*4194304
  4223. */
  4224. static int candela_coeff_2p2[] = {
  4225. 0 ,
  4226. 21 ,
  4227. 98 ,
  4228. 239 ,
  4229. 450 ,
  4230. 735 ,
  4231. 1097 ,
  4232. 1540 ,
  4233. 2066 ,
  4234. 2677 ,
  4235. 3375 ,
  4236. 4162 ,
  4237. 5040 ,
  4238. 6011 ,
  4239. 7075 ,
  4240. 8235 ,
  4241. 9492 ,
  4242. 10846 ,
  4243. 12299 ,
  4244. 13853 ,
  4245. 15507 ,
  4246. 17264 ,
  4247. 19125 ,
  4248. 21090 ,
  4249. 23160 ,
  4250. 25336 ,
  4251. 27619 ,
  4252. 30010 ,
  4253. 32510 ,
  4254. 35119 ,
  4255. 37839 ,
  4256. 40669 ,
  4257. 43612 ,
  4258. 46666 ,
  4259. 49834 ,
  4260. 53115 ,
  4261. 56512 ,
  4262. 60023 ,
  4263. 63650 ,
  4264. 67393 ,
  4265. 71253 ,
  4266. 75231 ,
  4267. 79327 ,
  4268. 83541 ,
  4269. 87875 ,
  4270. 92329 ,
  4271. 96903 ,
  4272. 101598 ,
  4273. 106415 ,
  4274. 111353 ,
  4275. 116414 ,
  4276. 121598 ,
  4277. 126905 ,
  4278. 132336 ,
  4279. 137892 ,
  4280. 143572 ,
  4281. 149377 ,
  4282. 155309 ,
  4283. 161366 ,
  4284. 167551 ,
  4285. 173862 ,
  4286. 180301 ,
  4287. 186867 ,
  4288. 193562 ,
  4289. 200386 ,
  4290. 207339 ,
  4291. 214421 ,
  4292. 221634 ,
  4293. 228977 ,
  4294. 236450 ,
  4295. 244055 ,
  4296. 251791 ,
  4297. 259659 ,
  4298. 267659 ,
  4299. 275792 ,
  4300. 284058 ,
  4301. 292457 ,
  4302. 300989 ,
  4303. 309656 ,
  4304. 318457 ,
  4305. 327393 ,
  4306. 336464 ,
  4307. 345670 ,
  4308. 355012 ,
  4309. 364490 ,
  4310. 374105 ,
  4311. 383856 ,
  4312. 393744 ,
  4313. 403769 ,
  4314. 413932 ,
  4315. 424234 ,
  4316. 434673 ,
  4317. 445251 ,
  4318. 455968 ,
  4319. 466824 ,
  4320. 477819 ,
  4321. 488954 ,
  4322. 500230 ,
  4323. 511645 ,
  4324. 523201 ,
  4325. 534899 ,
  4326. 546737 ,
  4327. 558717 ,
  4328. 570839 ,
  4329. 583102 ,
  4330. 595509 ,
  4331. 608057 ,
  4332. 620749 ,
  4333. 633583 ,
  4334. 646561 ,
  4335. 659683 ,
  4336. 672949 ,
  4337. 686359 ,
  4338. 699913 ,
  4339. 713612 ,
  4340. 727456 ,
  4341. 741445 ,
  4342. 755580 ,
  4343. 769860 ,
  4344. 784287 ,
  4345. 798859 ,
  4346. 813578 ,
  4347. 828444 ,
  4348. 843457 ,
  4349. 858616 ,
  4350. 873924 ,
  4351. 889379 ,
  4352. 904981 ,
  4353. 920732 ,
  4354. 936632 ,
  4355. 952680 ,
  4356. 968876 ,
  4357. 985222 ,
  4358. 1001717 ,
  4359. 1018362 ,
  4360. 1035156 ,
  4361. 1052100 ,
  4362. 1069195 ,
  4363. 1086439 ,
  4364. 1103835 ,
  4365. 1121381 ,
  4366. 1139078 ,
  4367. 1156927 ,
  4368. 1174927 ,
  4369. 1193078 ,
  4370. 1211382 ,
  4371. 1229838 ,
  4372. 1248446 ,
  4373. 1267206 ,
  4374. 1286119 ,
  4375. 1305186 ,
  4376. 1324405 ,
  4377. 1343778 ,
  4378. 1363304 ,
  4379. 1382984 ,
  4380. 1402818 ,
  4381. 1422806 ,
  4382. 1442948 ,
  4383. 1463245 ,
  4384. 1483697 ,
  4385. 1504304 ,
  4386. 1525065 ,
  4387. 1545982 ,
  4388. 1567055 ,
  4389. 1588283 ,
  4390. 1609668 ,
  4391. 1631208 ,
  4392. 1652904 ,
  4393. 1674757 ,
  4394. 1696767 ,
  4395. 1718934 ,
  4396. 1741257 ,
  4397. 1763738 ,
  4398. 1786376 ,
  4399. 1809172 ,
  4400. 1832125 ,
  4401. 1855237 ,
  4402. 1878506 ,
  4403. 1901934 ,
  4404. 1925521 ,
  4405. 1949266 ,
  4406. 1973169 ,
  4407. 1997232 ,
  4408. 2021454 ,
  4409. 2045836 ,
  4410. 2070376 ,
  4411. 2095077 ,
  4412. 2119937 ,
  4413. 2144958 ,
  4414. 2170139 ,
  4415. 2195480 ,
  4416. 2220981 ,
  4417. 2246644 ,
  4418. 2272467 ,
  4419. 2298451 ,
  4420. 2324597 ,
  4421. 2350904 ,
  4422. 2377372 ,
  4423. 2404003 ,
  4424. 2430795 ,
  4425. 2457749 ,
  4426. 2484865 ,
  4427. 2512144 ,
  4428. 2539585 ,
  4429. 2567189 ,
  4430. 2594956 ,
  4431. 2622886 ,
  4432. 2650979 ,
  4433. 2679235 ,
  4434. 2707655 ,
  4435. 2736239 ,
  4436. 2764986 ,
  4437. 2793897 ,
  4438. 2822972 ,
  4439. 2852212 ,
  4440. 2881616 ,
  4441. 2911185 ,
  4442. 2940918 ,
  4443. 2970816 ,
  4444. 3000880 ,
  4445. 3031108 ,
  4446. 3061502 ,
  4447. 3092061 ,
  4448. 3122786 ,
  4449. 3153677 ,
  4450. 3184733 ,
  4451. 3215956 ,
  4452. 3247345 ,
  4453. 3278900 ,
  4454. 3310622 ,
  4455. 3342510 ,
  4456. 3374566 ,
  4457. 3406788 ,
  4458. 3439177 ,
  4459. 3471734 ,
  4460. 3504458 ,
  4461. 3537349 ,
  4462. 3570408 ,
  4463. 3603635 ,
  4464. 3637030 ,
  4465. 3670593 ,
  4466. 3704324 ,
  4467. 3738224 ,
  4468. 3772292 ,
  4469. 3806529 ,
  4470. 3840934 ,
  4471. 3875509 ,
  4472. 3910253 ,
  4473. 3945165 ,
  4474. 3980247 ,
  4475. 4015499 ,
  4476. 4050920 ,
  4477. 4086511 ,
  4478. 4122272 ,
  4479. 4158203 ,
  4480. 4194304 ,
  4481. };
  4482. /*
  4483. * index : 0 ~ 255
  4484. * ((index/255)^2.15)*4194304
  4485. */
  4486. static int candela_coeff_2p15[] = {
  4487. 0 ,
  4488. 28 ,
  4489. 125 ,
  4490. 298 ,
  4491. 553 ,
  4492. 894 ,
  4493. 1323 ,
  4494. 1843 ,
  4495. 2456 ,
  4496. 3164 ,
  4497. 3968 ,
  4498. 4871 ,
  4499. 5873 ,
  4500. 6976 ,
  4501. 8180 ,
  4502. 9488 ,
  4503. 10901 ,
  4504. 12418 ,
  4505. 14042 ,
  4506. 15773 ,
  4507. 17612 ,
  4508. 19560 ,
  4509. 21618 ,
  4510. 23786 ,
  4511. 26065 ,
  4512. 28456 ,
  4513. 30959 ,
  4514. 33576 ,
  4515. 36307 ,
  4516. 39152 ,
  4517. 42112 ,
  4518. 45188 ,
  4519. 48381 ,
  4520. 51690 ,
  4521. 55116 ,
  4522. 58660 ,
  4523. 62323 ,
  4524. 66105 ,
  4525. 70006 ,
  4526. 74027 ,
  4527. 78168 ,
  4528. 82430 ,
  4529. 86813 ,
  4530. 91318 ,
  4531. 95945 ,
  4532. 100694 ,
  4533. 105567 ,
  4534. 110563 ,
  4535. 115682 ,
  4536. 120926 ,
  4537. 126294 ,
  4538. 131788 ,
  4539. 137406 ,
  4540. 143150 ,
  4541. 149020 ,
  4542. 155017 ,
  4543. 161140 ,
  4544. 167390 ,
  4545. 173768 ,
  4546. 180273 ,
  4547. 186906 ,
  4548. 193668 ,
  4549. 200558 ,
  4550. 207578 ,
  4551. 214726 ,
  4552. 222005 ,
  4553. 229413 ,
  4554. 236951 ,
  4555. 244620 ,
  4556. 252420 ,
  4557. 260351 ,
  4558. 268413 ,
  4559. 276607 ,
  4560. 284933 ,
  4561. 293391 ,
  4562. 301981 ,
  4563. 310705 ,
  4564. 319561 ,
  4565. 328550 ,
  4566. 337673 ,
  4567. 346930 ,
  4568. 356321 ,
  4569. 365846 ,
  4570. 375506 ,
  4571. 385300 ,
  4572. 395229 ,
  4573. 405294 ,
  4574. 415494 ,
  4575. 425830 ,
  4576. 436302 ,
  4577. 446910 ,
  4578. 457654 ,
  4579. 468535 ,
  4580. 479553 ,
  4581. 490708 ,
  4582. 502001 ,
  4583. 513431 ,
  4584. 524998 ,
  4585. 536704 ,
  4586. 548547 ,
  4587. 560530 ,
  4588. 572650 ,
  4589. 584910 ,
  4590. 597308 ,
  4591. 609846 ,
  4592. 622523 ,
  4593. 635340 ,
  4594. 648296 ,
  4595. 661393 ,
  4596. 674630 ,
  4597. 688007 ,
  4598. 701525 ,
  4599. 715183 ,
  4600. 728983 ,
  4601. 742923 ,
  4602. 757005 ,
  4603. 771229 ,
  4604. 785594 ,
  4605. 800101 ,
  4606. 814750 ,
  4607. 829542 ,
  4608. 844476 ,
  4609. 859552 ,
  4610. 874771 ,
  4611. 890133 ,
  4612. 905639 ,
  4613. 921288 ,
  4614. 937080 ,
  4615. 953015 ,
  4616. 969095 ,
  4617. 985319 ,
  4618. 1001686 ,
  4619. 1018199 ,
  4620. 1034855 ,
  4621. 1051656 ,
  4622. 1068602 ,
  4623. 1085693 ,
  4624. 1102929 ,
  4625. 1120311 ,
  4626. 1137838 ,
  4627. 1155510 ,
  4628. 1173328 ,
  4629. 1191293 ,
  4630. 1209403 ,
  4631. 1227659 ,
  4632. 1246062 ,
  4633. 1264612 ,
  4634. 1283308 ,
  4635. 1302151 ,
  4636. 1321140 ,
  4637. 1340277 ,
  4638. 1359562 ,
  4639. 1378994 ,
  4640. 1398573 ,
  4641. 1418300 ,
  4642. 1438175 ,
  4643. 1458198 ,
  4644. 1478369 ,
  4645. 1498688 ,
  4646. 1519156 ,
  4647. 1539772 ,
  4648. 1560537 ,
  4649. 1581451 ,
  4650. 1602514 ,
  4651. 1623726 ,
  4652. 1645087 ,
  4653. 1666598 ,
  4654. 1688258 ,
  4655. 1710068 ,
  4656. 1732028 ,
  4657. 1754138 ,
  4658. 1776398 ,
  4659. 1798807 ,
  4660. 1821368 ,
  4661. 1844078 ,
  4662. 1866940 ,
  4663. 1889952 ,
  4664. 1913115 ,
  4665. 1936429 ,
  4666. 1959894 ,
  4667. 1983510 ,
  4668. 2007278 ,
  4669. 2031197 ,
  4670. 2055268 ,
  4671. 2079490 ,
  4672. 2103864 ,
  4673. 2128391 ,
  4674. 2153069 ,
  4675. 2177900 ,
  4676. 2202883 ,
  4677. 2228018 ,
  4678. 2253306 ,
  4679. 2278747 ,
  4680. 2304341 ,
  4681. 2330088 ,
  4682. 2355987 ,
  4683. 2382040 ,
  4684. 2408246 ,
  4685. 2434606 ,
  4686. 2461119 ,
  4687. 2487786 ,
  4688. 2514607 ,
  4689. 2541581 ,
  4690. 2568710 ,
  4691. 2595992 ,
  4692. 2623429 ,
  4693. 2651020 ,
  4694. 2678766 ,
  4695. 2706666 ,
  4696. 2734721 ,
  4697. 2762931 ,
  4698. 2791295 ,
  4699. 2819815 ,
  4700. 2848490 ,
  4701. 2877320 ,
  4702. 2906305 ,
  4703. 2935446 ,
  4704. 2964742 ,
  4705. 2994194 ,
  4706. 3023802 ,
  4707. 3053566 ,
  4708. 3083485 ,
  4709. 3113561 ,
  4710. 3143793 ,
  4711. 3174181 ,
  4712. 3204726 ,
  4713. 3235427 ,
  4714. 3266285 ,
  4715. 3297300 ,
  4716. 3328471 ,
  4717. 3359800 ,
  4718. 3391285 ,
  4719. 3422927 ,
  4720. 3454727 ,
  4721. 3486684 ,
  4722. 3518799 ,
  4723. 3551071 ,
  4724. 3583500 ,
  4725. 3616088 ,
  4726. 3648833 ,
  4727. 3681736 ,
  4728. 3714798 ,
  4729. 3748017 ,
  4730. 3781395 ,
  4731. 3814931 ,
  4732. 3848625 ,
  4733. 3882478 ,
  4734. 3916489 ,
  4735. 3950660 ,
  4736. 3984989 ,
  4737. 4019477 ,
  4738. 4054124 ,
  4739. 4088930 ,
  4740. 4123895 ,
  4741. 4159020 ,
  4742. 4194304 ,
  4743. };
  4744. /*
  4745. * index : 0 ~ 255
  4746. * 350 is max CANDELA
  4747. * (350*((index/255)^1.9))*4194304
  4748. */
  4749. static int curve_1p9_350[] = {
  4750. 0 ,
  4751. 39292 ,
  4752. 146642 ,
  4753. 316834 ,
  4754. 547288 ,
  4755. 836266 ,
  4756. 1182467 ,
  4757. 1584849 ,
  4758. 2042549 ,
  4759. 2554832 ,
  4760. 3121056 ,
  4761. 3740655 ,
  4762. 4413122 ,
  4763. 5137999 ,
  4764. 5914866 ,
  4765. 6743339 ,
  4766. 7623064 ,
  4767. 8553711 ,
  4768. 9534971 ,
  4769. 10566556 ,
  4770. 11648194 ,
  4771. 12779630 ,
  4772. 13960620 ,
  4773. 15190935 ,
  4774. 16470355 ,
  4775. 17798673 ,
  4776. 19175689 ,
  4777. 20601211 ,
  4778. 22075059 ,
  4779. 23597055 ,
  4780. 25167031 ,
  4781. 26784826 ,
  4782. 28450281 ,
  4783. 30163247 ,
  4784. 31923577 ,
  4785. 33731130 ,
  4786. 35585769 ,
  4787. 37487362 ,
  4788. 39435780 ,
  4789. 41430899 ,
  4790. 43472597 ,
  4791. 45560757 ,
  4792. 47695264 ,
  4793. 49876006 ,
  4794. 52102875 ,
  4795. 54375765 ,
  4796. 56694573 ,
  4797. 59059197 ,
  4798. 61469539 ,
  4799. 63925504 ,
  4800. 66426996 ,
  4801. 68973925 ,
  4802. 71566200 ,
  4803. 74203734 ,
  4804. 76886439 ,
  4805. 79614233 ,
  4806. 82387032 ,
  4807. 85204755 ,
  4808. 88067323 ,
  4809. 90974657 ,
  4810. 93926682 ,
  4811. 96923322 ,
  4812. 99964504 ,
  4813. 103050155 ,
  4814. 106180204 ,
  4815. 109354582 ,
  4816. 112573219 ,
  4817. 115836048 ,
  4818. 119143002 ,
  4819. 122494017 ,
  4820. 125889029 ,
  4821. 129327972 ,
  4822. 132810787 ,
  4823. 136337410 ,
  4824. 139907783 ,
  4825. 143521844 ,
  4826. 147179537 ,
  4827. 150880802 ,
  4828. 154625583 ,
  4829. 158413825 ,
  4830. 162245471 ,
  4831. 166120466 ,
  4832. 170038759 ,
  4833. 174000294 ,
  4834. 178005020 ,
  4835. 182052885 ,
  4836. 186143838 ,
  4837. 190277828 ,
  4838. 194454807 ,
  4839. 198674724 ,
  4840. 202937532 ,
  4841. 207243182 ,
  4842. 211591627 ,
  4843. 215982821 ,
  4844. 220416716 ,
  4845. 224893268 ,
  4846. 229412432 ,
  4847. 233974162 ,
  4848. 238578416 ,
  4849. 243225148 ,
  4850. 247914316 ,
  4851. 252645878 ,
  4852. 257419790 ,
  4853. 262236013 ,
  4854. 267094503 ,
  4855. 271995222 ,
  4856. 276938127 ,
  4857. 281923179 ,
  4858. 286950339 ,
  4859. 292019567 ,
  4860. 297130824 ,
  4861. 302284073 ,
  4862. 307479276 ,
  4863. 312716393 ,
  4864. 317995390 ,
  4865. 323316228 ,
  4866. 328678870 ,
  4867. 334083282 ,
  4868. 339529427 ,
  4869. 345017269 ,
  4870. 350546773 ,
  4871. 356117905 ,
  4872. 361730630 ,
  4873. 367384913 ,
  4874. 373080721 ,
  4875. 378818021 ,
  4876. 384596778 ,
  4877. 390416960 ,
  4878. 396278535 ,
  4879. 402181469 ,
  4880. 408125730 ,
  4881. 414111287 ,
  4882. 420138108 ,
  4883. 426206162 ,
  4884. 432315417 ,
  4885. 438465842 ,
  4886. 444657408 ,
  4887. 450890083 ,
  4888. 457163838 ,
  4889. 463478643 ,
  4890. 469834468 ,
  4891. 476231283 ,
  4892. 482669060 ,
  4893. 489147769 ,
  4894. 495667383 ,
  4895. 502227871 ,
  4896. 508829207 ,
  4897. 515471362 ,
  4898. 522154308 ,
  4899. 528878017 ,
  4900. 535642463 ,
  4901. 542447617 ,
  4902. 549293454 ,
  4903. 556179945 ,
  4904. 563107064 ,
  4905. 570074786 ,
  4906. 577083083 ,
  4907. 584131929 ,
  4908. 591221299 ,
  4909. 598351167 ,
  4910. 605521507 ,
  4911. 612732294 ,
  4912. 619983503 ,
  4913. 627275109 ,
  4914. 634607086 ,
  4915. 641979411 ,
  4916. 649392059 ,
  4917. 656845004 ,
  4918. 664338224 ,
  4919. 671871694 ,
  4920. 679445391 ,
  4921. 687059289 ,
  4922. 694713367 ,
  4923. 702407600 ,
  4924. 710141966 ,
  4925. 717916440 ,
  4926. 725731001 ,
  4927. 733585625 ,
  4928. 741480289 ,
  4929. 749414971 ,
  4930. 757389650 ,
  4931. 765404301 ,
  4932. 773458904 ,
  4933. 781553436 ,
  4934. 789687875 ,
  4935. 797862200 ,
  4936. 806076389 ,
  4937. 814330420 ,
  4938. 822624273 ,
  4939. 830957925 ,
  4940. 839331356 ,
  4941. 847744545 ,
  4942. 856197471 ,
  4943. 864690113 ,
  4944. 873222451 ,
  4945. 881794464 ,
  4946. 890406131 ,
  4947. 899057433 ,
  4948. 907748349 ,
  4949. 916478859 ,
  4950. 925248944 ,
  4951. 934058582 ,
  4952. 942907756 ,
  4953. 951796445 ,
  4954. 960724629 ,
  4955. 969692289 ,
  4956. 978699406 ,
  4957. 987745961 ,
  4958. 996831934 ,
  4959. 1005957307 ,
  4960. 1015122061 ,
  4961. 1024326177 ,
  4962. 1033569635 ,
  4963. 1042852419 ,
  4964. 1052174508 ,
  4965. 1061535885 ,
  4966. 1070936531 ,
  4967. 1080376429 ,
  4968. 1089855560 ,
  4969. 1099373905 ,
  4970. 1108931448 ,
  4971. 1118528170 ,
  4972. 1128164053 ,
  4973. 1137839080 ,
  4974. 1147553233 ,
  4975. 1157306495 ,
  4976. 1167098848 ,
  4977. 1176930275 ,
  4978. 1186800759 ,
  4979. 1196710282 ,
  4980. 1206658828 ,
  4981. 1216646379 ,
  4982. 1226672919 ,
  4983. 1236738430 ,
  4984. 1246842896 ,
  4985. 1256986300 ,
  4986. 1267168626 ,
  4987. 1277389858 ,
  4988. 1287649977 ,
  4989. 1297948969 ,
  4990. 1308286817 ,
  4991. 1318663505 ,
  4992. 1329079017 ,
  4993. 1339533336 ,
  4994. 1350026446 ,
  4995. 1360558332 ,
  4996. 1371128978 ,
  4997. 1381738368 ,
  4998. 1392386487 ,
  4999. 1403073317 ,
  5000. 1413798845 ,
  5001. 1424563055 ,
  5002. 1435365930 ,
  5003. 1446207456 ,
  5004. 1457087618 ,
  5005. 1468006400 ,
  5006. };
  5007. /*
  5008. * index : 0 ~ 255
  5009. * 350 is max CANDELA
  5010. * (350*((index/255)^2.15))*4194304
  5011. */
  5012. static int curve_2p15_350[] = {
  5013. 0 ,
  5014. 9833 ,
  5015. 43640 ,
  5016. 104346 ,
  5017. 193685 ,
  5018. 312934 ,
  5019. 463118 ,
  5020. 645100 ,
  5021. 859627 ,
  5022. 1107358 ,
  5023. 1388886 ,
  5024. 1704751 ,
  5025. 2055447 ,
  5026. 2441433 ,
  5027. 2863135 ,
  5028. 3320953 ,
  5029. 3815263 ,
  5030. 4346421 ,
  5031. 4914761 ,
  5032. 5520607 ,
  5033. 6164261 ,
  5034. 6846018 ,
  5035. 7566157 ,
  5036. 8324946 ,
  5037. 9122644 ,
  5038. 9959501 ,
  5039. 10835757 ,
  5040. 11751645 ,
  5041. 12707389 ,
  5042. 13703208 ,
  5043. 14739314 ,
  5044. 15815911 ,
  5045. 16933199 ,
  5046. 18091373 ,
  5047. 19290622 ,
  5048. 20531130 ,
  5049. 21813077 ,
  5050. 23136639 ,
  5051. 24501986 ,
  5052. 25909287 ,
  5053. 27358705 ,
  5054. 28850401 ,
  5055. 30384531 ,
  5056. 31961249 ,
  5057. 33580705 ,
  5058. 35243048 ,
  5059. 36948422 ,
  5060. 38696970 ,
  5061. 40488829 ,
  5062. 42324139 ,
  5063. 44203033 ,
  5064. 46125644 ,
  5065. 48092101 ,
  5066. 50102533 ,
  5067. 52157065 ,
  5068. 54255821 ,
  5069. 56398924 ,
  5070. 58586493 ,
  5071. 60818646 ,
  5072. 63095500 ,
  5073. 65417170 ,
  5074. 67783768 ,
  5075. 70195407 ,
  5076. 72652195 ,
  5077. 75154243 ,
  5078. 77701657 ,
  5079. 80294541 ,
  5080. 82933002 ,
  5081. 85617141 ,
  5082. 88347061 ,
  5083. 91122861 ,
  5084. 93944641 ,
  5085. 96812498 ,
  5086. 99726531 ,
  5087. 102686833 ,
  5088. 105693499 ,
  5089. 108746624 ,
  5090. 111846300 ,
  5091. 114992617 ,
  5092. 118185666 ,
  5093. 121425537 ,
  5094. 124712318 ,
  5095. 128046097 ,
  5096. 131426959 ,
  5097. 134854992 ,
  5098. 138330279 ,
  5099. 141852904 ,
  5100. 145422951 ,
  5101. 149040503 ,
  5102. 152705639 ,
  5103. 156418442 ,
  5104. 160178991 ,
  5105. 163987366 ,
  5106. 167843644 ,
  5107. 171747904 ,
  5108. 175700223 ,
  5109. 179700677 ,
  5110. 183749341 ,
  5111. 187846291 ,
  5112. 191991601 ,
  5113. 196185344 ,
  5114. 200427595 ,
  5115. 204718424 ,
  5116. 209057905 ,
  5117. 213446108 ,
  5118. 217883104 ,
  5119. 222368963 ,
  5120. 226903755 ,
  5121. 231487548 ,
  5122. 236120412 ,
  5123. 240802413 ,
  5124. 245533619 ,
  5125. 250314098 ,
  5126. 255143915 ,
  5127. 260023136 ,
  5128. 264951827 ,
  5129. 269930052 ,
  5130. 274957876 ,
  5131. 280035362 ,
  5132. 285162575 ,
  5133. 290339577 ,
  5134. 295566431 ,
  5135. 300843198 ,
  5136. 306169941 ,
  5137. 311546721 ,
  5138. 316973598 ,
  5139. 322450632 ,
  5140. 327977885 ,
  5141. 333555415 ,
  5142. 339183282 ,
  5143. 344861544 ,
  5144. 350590260 ,
  5145. 356369488 ,
  5146. 362199285 ,
  5147. 368079710 ,
  5148. 374010817 ,
  5149. 379992665 ,
  5150. 386025310 ,
  5151. 392108807 ,
  5152. 398243212 ,
  5153. 404428579 ,
  5154. 410664965 ,
  5155. 416952423 ,
  5156. 423291007 ,
  5157. 429680771 ,
  5158. 436121770 ,
  5159. 442614055 ,
  5160. 449157681 ,
  5161. 455752699 ,
  5162. 462399162 ,
  5163. 469097121 ,
  5164. 475846630 ,
  5165. 482647738 ,
  5166. 489500497 ,
  5167. 496404958 ,
  5168. 503361172 ,
  5169. 510369188 ,
  5170. 517429057 ,
  5171. 524540829 ,
  5172. 531704552 ,
  5173. 538920276 ,
  5174. 546188051 ,
  5175. 553507924 ,
  5176. 560879944 ,
  5177. 568304159 ,
  5178. 575780617 ,
  5179. 583309367 ,
  5180. 590890454 ,
  5181. 598523927 ,
  5182. 606209832 ,
  5183. 613948216 ,
  5184. 621739126 ,
  5185. 629582607 ,
  5186. 637478707 ,
  5187. 645427469 ,
  5188. 653428941 ,
  5189. 661483167 ,
  5190. 669590192 ,
  5191. 677750062 ,
  5192. 685962821 ,
  5193. 694228513 ,
  5194. 702547183 ,
  5195. 710918875 ,
  5196. 719343633 ,
  5197. 727821500 ,
  5198. 736352519 ,
  5199. 744936735 ,
  5200. 753574189 ,
  5201. 762264926 ,
  5202. 771008986 ,
  5203. 779806414 ,
  5204. 788657251 ,
  5205. 797561539 ,
  5206. 806519320 ,
  5207. 815530636 ,
  5208. 824595529 ,
  5209. 833714039 ,
  5210. 842886207 ,
  5211. 852112076 ,
  5212. 861391685 ,
  5213. 870725076 ,
  5214. 880112288 ,
  5215. 889553362 ,
  5216. 899048338 ,
  5217. 908597256 ,
  5218. 918200156 ,
  5219. 927857078 ,
  5220. 937568060 ,
  5221. 947333142 ,
  5222. 957152364 ,
  5223. 967025763 ,
  5224. 976953380 ,
  5225. 986935253 ,
  5226. 996971419 ,
  5227. 1007061919 ,
  5228. 1017206788 ,
  5229. 1027406067 ,
  5230. 1037659792 ,
  5231. 1047968002 ,
  5232. 1058330733 ,
  5233. 1068748024 ,
  5234. 1079219912 ,
  5235. 1089746433 ,
  5236. 1100327625 ,
  5237. 1110963525 ,
  5238. 1121654169 ,
  5239. 1132399595 ,
  5240. 1143199837 ,
  5241. 1154054934 ,
  5242. 1164964921 ,
  5243. 1175929833 ,
  5244. 1186949708 ,
  5245. 1198024580 ,
  5246. 1209154485 ,
  5247. 1220339460 ,
  5248. 1231579538 ,
  5249. 1242874757 ,
  5250. 1254225150 ,
  5251. 1265630752 ,
  5252. 1277091599 ,
  5253. 1288607725 ,
  5254. 1300179166 ,
  5255. 1311805954 ,
  5256. 1323488126 ,
  5257. 1335225715 ,
  5258. 1347018754 ,
  5259. 1358867280 ,
  5260. 1370771324 ,
  5261. 1382730921 ,
  5262. 1394746105 ,
  5263. 1406816909 ,
  5264. 1418943367 ,
  5265. 1431125512 ,
  5266. 1443363377 ,
  5267. 1455656995 ,
  5268. 1468006400 ,
  5269. };
  5270. /*
  5271. * index : 0 ~ 255
  5272. * 350 is max CANDELA
  5273. * (350*((index/255)^2.2))*4194304
  5274. */
  5275. static int curve_2p2_350[] = {
  5276. 0 ,
  5277. 7453 ,
  5278. 34246 ,
  5279. 83562 ,
  5280. 157352 ,
  5281. 257083 ,
  5282. 383948 ,
  5283. 538958 ,
  5284. 722999 ,
  5285. 936856 ,
  5286. 1181244 ,
  5287. 1456812 ,
  5288. 1764161 ,
  5289. 2103851 ,
  5290. 2476402 ,
  5291. 2882308 ,
  5292. 3322030 ,
  5293. 3796009 ,
  5294. 4304662 ,
  5295. 4848389 ,
  5296. 5427571 ,
  5297. 6042574 ,
  5298. 6693749 ,
  5299. 7381435 ,
  5300. 8105957 ,
  5301. 8867630 ,
  5302. 9666760 ,
  5303. 10503640 ,
  5304. 11378558 ,
  5305. 12291790 ,
  5306. 13243608 ,
  5307. 14234273 ,
  5308. 15264040 ,
  5309. 16333160 ,
  5310. 17441875 ,
  5311. 18590422 ,
  5312. 19779033 ,
  5313. 21007934 ,
  5314. 22277347 ,
  5315. 23587488 ,
  5316. 24938569 ,
  5317. 26330799 ,
  5318. 27764381 ,
  5319. 29239514 ,
  5320. 30756396 ,
  5321. 32315217 ,
  5322. 33916168 ,
  5323. 35559434 ,
  5324. 37245197 ,
  5325. 38973636 ,
  5326. 40744929 ,
  5327. 42559247 ,
  5328. 44416763 ,
  5329. 46317645 ,
  5330. 48262056 ,
  5331. 50250162 ,
  5332. 52282123 ,
  5333. 54358096 ,
  5334. 56478238 ,
  5335. 58642703 ,
  5336. 60851642 ,
  5337. 63105206 ,
  5338. 65403542 ,
  5339. 67746796 ,
  5340. 70135112 ,
  5341. 72568632 ,
  5342. 75047497 ,
  5343. 77571844 ,
  5344. 80141812 ,
  5345. 82757536 ,
  5346. 85419149 ,
  5347. 88126783 ,
  5348. 90880570 ,
  5349. 93680639 ,
  5350. 96527117 ,
  5351. 99420131 ,
  5352. 102359806 ,
  5353. 105346266 ,
  5354. 108379633 ,
  5355. 111460029 ,
  5356. 114587574 ,
  5357. 117762385 ,
  5358. 120984582 ,
  5359. 124254279 ,
  5360. 127571594 ,
  5361. 130936639 ,
  5362. 134349528 ,
  5363. 137810373 ,
  5364. 141319285 ,
  5365. 144876374 ,
  5366. 148481748 ,
  5367. 152135517 ,
  5368. 155837787 ,
  5369. 159588664 ,
  5370. 163388253 ,
  5371. 167236659 ,
  5372. 171133986 ,
  5373. 175080334 ,
  5374. 179075808 ,
  5375. 183120506 ,
  5376. 187214530 ,
  5377. 191357978 ,
  5378. 195550950 ,
  5379. 199793542 ,
  5380. 204085852 ,
  5381. 208427975 ,
  5382. 212820008 ,
  5383. 217262045 ,
  5384. 221754180 ,
  5385. 226296505 ,
  5386. 230889115 ,
  5387. 235532101 ,
  5388. 240225553 ,
  5389. 244969563 ,
  5390. 249764221 ,
  5391. 254609615 ,
  5392. 259505836 ,
  5393. 264452969 ,
  5394. 269451104 ,
  5395. 274500328 ,
  5396. 279600725 ,
  5397. 284752383 ,
  5398. 289955385 ,
  5399. 295209818 ,
  5400. 300515765 ,
  5401. 305873308 ,
  5402. 311282533 ,
  5403. 316743520 ,
  5404. 322256351 ,
  5405. 327821109 ,
  5406. 333437873 ,
  5407. 339106725 ,
  5408. 344827744 ,
  5409. 350601009 ,
  5410. 356426600 ,
  5411. 362304595 ,
  5412. 368235072 ,
  5413. 374218109 ,
  5414. 380253782 ,
  5415. 386342168 ,
  5416. 392483343 ,
  5417. 398677384 ,
  5418. 404924365 ,
  5419. 411224361 ,
  5420. 417577447 ,
  5421. 423983696 ,
  5422. 430443184 ,
  5423. 436955981 ,
  5424. 443522162 ,
  5425. 450141799 ,
  5426. 456814964 ,
  5427. 463541729 ,
  5428. 470322164 ,
  5429. 477156341 ,
  5430. 484044331 ,
  5431. 490986203 ,
  5432. 497982027 ,
  5433. 505031873 ,
  5434. 512135809 ,
  5435. 519293905 ,
  5436. 526506229 ,
  5437. 533772849 ,
  5438. 541093833 ,
  5439. 548469247 ,
  5440. 555899160 ,
  5441. 563383637 ,
  5442. 570922746 ,
  5443. 578516551 ,
  5444. 586165120 ,
  5445. 593868517 ,
  5446. 601626807 ,
  5447. 609440055 ,
  5448. 617308327 ,
  5449. 625231685 ,
  5450. 633210194 ,
  5451. 641243918 ,
  5452. 649332920 ,
  5453. 657477262 ,
  5454. 665677008 ,
  5455. 673932220 ,
  5456. 682242960 ,
  5457. 690609291 ,
  5458. 699031273 ,
  5459. 707508968 ,
  5460. 716042438 ,
  5461. 724631743 ,
  5462. 733276943 ,
  5463. 741978099 ,
  5464. 750735271 ,
  5465. 759548519 ,
  5466. 768417902 ,
  5467. 777343479 ,
  5468. 786325311 ,
  5469. 795363454 ,
  5470. 804457968 ,
  5471. 813608912 ,
  5472. 822816343 ,
  5473. 832080318 ,
  5474. 841400897 ,
  5475. 850778135 ,
  5476. 860212091 ,
  5477. 869702820 ,
  5478. 879250380 ,
  5479. 888854827 ,
  5480. 898516218 ,
  5481. 908234608 ,
  5482. 918010052 ,
  5483. 927842608 ,
  5484. 937732329 ,
  5485. 947679272 ,
  5486. 957683490 ,
  5487. 967745039 ,
  5488. 977863973 ,
  5489. 988040347 ,
  5490. 998274214 ,
  5491. 1008565629 ,
  5492. 1018914645 ,
  5493. 1029321316 ,
  5494. 1039785694 ,
  5495. 1050307834 ,
  5496. 1060887787 ,
  5497. 1071525607 ,
  5498. 1082221346 ,
  5499. 1092975056 ,
  5500. 1103786790 ,
  5501. 1114656600 ,
  5502. 1125584537 ,
  5503. 1136570652 ,
  5504. 1147614998 ,
  5505. 1158717625 ,
  5506. 1169878585 ,
  5507. 1181097928 ,
  5508. 1192375706 ,
  5509. 1203711967 ,
  5510. 1215106764 ,
  5511. 1226560145 ,
  5512. 1238072162 ,
  5513. 1249642863 ,
  5514. 1261272299 ,
  5515. 1272960519 ,
  5516. 1284707572 ,
  5517. 1296513507 ,
  5518. 1308378374 ,
  5519. 1320302221 ,
  5520. 1332285097 ,
  5521. 1344327051 ,
  5522. 1356428130 ,
  5523. 1368588383 ,
  5524. 1380807858 ,
  5525. 1393086603 ,
  5526. 1405424665 ,
  5527. 1417822093 ,
  5528. 1430278933 ,
  5529. 1442795233 ,
  5530. 1455371039 ,
  5531. 1468006400 ,
  5532. };
  5533. /*
  5534. * index : 0 ~ 255
  5535. * 360 is max CANDELA
  5536. * (360*((index/255)^1.9))*4194304
  5537. */
  5538. static int curve_1p9_360[] = {
  5539. 0 ,
  5540. 40414 ,
  5541. 150832 ,
  5542. 325887 ,
  5543. 562924 ,
  5544. 860160 ,
  5545. 1216252 ,
  5546. 1630130 ,
  5547. 2100908 ,
  5548. 2627827 ,
  5549. 3210229 ,
  5550. 3847531 ,
  5551. 4539212 ,
  5552. 5284798 ,
  5553. 6083862 ,
  5554. 6936006 ,
  5555. 7840866 ,
  5556. 8798102 ,
  5557. 9807399 ,
  5558. 10868457 ,
  5559. 11981000 ,
  5560. 13144762 ,
  5561. 14359495 ,
  5562. 15624961 ,
  5563. 16940937 ,
  5564. 18307206 ,
  5565. 19723565 ,
  5566. 21189817 ,
  5567. 22705775 ,
  5568. 24271256 ,
  5569. 25886089 ,
  5570. 27550106 ,
  5571. 29263146 ,
  5572. 31025054 ,
  5573. 32835679 ,
  5574. 34694877 ,
  5575. 36602505 ,
  5576. 38558430 ,
  5577. 40562517 ,
  5578. 42614639 ,
  5579. 44714672 ,
  5580. 46862493 ,
  5581. 49057986 ,
  5582. 51301035 ,
  5583. 53591529 ,
  5584. 55929359 ,
  5585. 58314418 ,
  5586. 60746602 ,
  5587. 63225812 ,
  5588. 65751947 ,
  5589. 68324910 ,
  5590. 70944609 ,
  5591. 73610949 ,
  5592. 76323840 ,
  5593. 79083195 ,
  5594. 81888926 ,
  5595. 84740947 ,
  5596. 87639177 ,
  5597. 90583532 ,
  5598. 93573933 ,
  5599. 96610302 ,
  5600. 99692560 ,
  5601. 102820633 ,
  5602. 105994445 ,
  5603. 109213924 ,
  5604. 112478998 ,
  5605. 115789596 ,
  5606. 119145649 ,
  5607. 122547088 ,
  5608. 125993847 ,
  5609. 129485858 ,
  5610. 133023057 ,
  5611. 136605381 ,
  5612. 140232765 ,
  5613. 143905148 ,
  5614. 147622468 ,
  5615. 151384666 ,
  5616. 155191682 ,
  5617. 159043457 ,
  5618. 162939934 ,
  5619. 166881055 ,
  5620. 170866766 ,
  5621. 174897009 ,
  5622. 178971731 ,
  5623. 183090877 ,
  5624. 187254396 ,
  5625. 191462233 ,
  5626. 195714338 ,
  5627. 200010658 ,
  5628. 204351145 ,
  5629. 208735747 ,
  5630. 213164416 ,
  5631. 217637102 ,
  5632. 222153758 ,
  5633. 226714337 ,
  5634. 231318790 ,
  5635. 235967073 ,
  5636. 240659138 ,
  5637. 245394942 ,
  5638. 250174438 ,
  5639. 254997582 ,
  5640. 259864331 ,
  5641. 264774642 ,
  5642. 269728470 ,
  5643. 274725775 ,
  5644. 279766514 ,
  5645. 284850645 ,
  5646. 289978127 ,
  5647. 295148920 ,
  5648. 300362983 ,
  5649. 305620277 ,
  5650. 310920761 ,
  5651. 316264398 ,
  5652. 321651148 ,
  5653. 327080972 ,
  5654. 332553834 ,
  5655. 338069695 ,
  5656. 343628519 ,
  5657. 349230267 ,
  5658. 354874905 ,
  5659. 360562395 ,
  5660. 366292702 ,
  5661. 372065791 ,
  5662. 377881625 ,
  5663. 383740171 ,
  5664. 389641393 ,
  5665. 395585258 ,
  5666. 401571731 ,
  5667. 407600779 ,
  5668. 413672368 ,
  5669. 419786465 ,
  5670. 425943038 ,
  5671. 432142054 ,
  5672. 438383481 ,
  5673. 444667286 ,
  5674. 450993438 ,
  5675. 457361905 ,
  5676. 463772657 ,
  5677. 470225662 ,
  5678. 476720890 ,
  5679. 483258309 ,
  5680. 489837891 ,
  5681. 496459604 ,
  5682. 503123420 ,
  5683. 509829308 ,
  5684. 516577239 ,
  5685. 523367184 ,
  5686. 530199115 ,
  5687. 537073002 ,
  5688. 543988818 ,
  5689. 550946533 ,
  5690. 557946121 ,
  5691. 564987552 ,
  5692. 572070800 ,
  5693. 579195838 ,
  5694. 586362637 ,
  5695. 593571171 ,
  5696. 600821413 ,
  5697. 608113336 ,
  5698. 615446915 ,
  5699. 622822122 ,
  5700. 630238931 ,
  5701. 637697318 ,
  5702. 645197255 ,
  5703. 652738718 ,
  5704. 660321680 ,
  5705. 667946118 ,
  5706. 675612005 ,
  5707. 683319317 ,
  5708. 691068029 ,
  5709. 698858116 ,
  5710. 706689555 ,
  5711. 714562320 ,
  5712. 722476389 ,
  5713. 730431736 ,
  5714. 738428338 ,
  5715. 746466172 ,
  5716. 754545214 ,
  5717. 762665440 ,
  5718. 770826828 ,
  5719. 779029354 ,
  5720. 787272995 ,
  5721. 795557730 ,
  5722. 803883534 ,
  5723. 812250386 ,
  5724. 820658263 ,
  5725. 829107143 ,
  5726. 837597003 ,
  5727. 846127823 ,
  5728. 854699580 ,
  5729. 863312252 ,
  5730. 871965818 ,
  5731. 880660256 ,
  5732. 889395545 ,
  5733. 898171664 ,
  5734. 906988591 ,
  5735. 915846306 ,
  5736. 924744788 ,
  5737. 933684016 ,
  5738. 942663969 ,
  5739. 951684628 ,
  5740. 960745970 ,
  5741. 969847978 ,
  5742. 978990629 ,
  5743. 988173904 ,
  5744. 997397783 ,
  5745. 1006662246 ,
  5746. 1015967274 ,
  5747. 1025312847 ,
  5748. 1034698945 ,
  5749. 1044125548 ,
  5750. 1053592639 ,
  5751. 1063100196 ,
  5752. 1072648202 ,
  5753. 1082236637 ,
  5754. 1091865482 ,
  5755. 1101534718 ,
  5756. 1111244327 ,
  5757. 1120994290 ,
  5758. 1130784588 ,
  5759. 1140615204 ,
  5760. 1150486117 ,
  5761. 1160397312 ,
  5762. 1170348768 ,
  5763. 1180340469 ,
  5764. 1190372395 ,
  5765. 1200444530 ,
  5766. 1210556855 ,
  5767. 1220709352 ,
  5768. 1230902005 ,
  5769. 1241134795 ,
  5770. 1251407704 ,
  5771. 1261720716 ,
  5772. 1272073814 ,
  5773. 1282466979 ,
  5774. 1292900195 ,
  5775. 1303373444 ,
  5776. 1313886711 ,
  5777. 1324439977 ,
  5778. 1335033226 ,
  5779. 1345666441 ,
  5780. 1356339605 ,
  5781. 1367052703 ,
  5782. 1377805717 ,
  5783. 1388598630 ,
  5784. 1399431428 ,
  5785. 1410304092 ,
  5786. 1421216607 ,
  5787. 1432168958 ,
  5788. 1443161126 ,
  5789. 1454193098 ,
  5790. 1465264856 ,
  5791. 1476376385 ,
  5792. 1487527669 ,
  5793. 1498718693 ,
  5794. 1509949440 ,
  5795. };
  5796. /*
  5797. * index : 0 ~ 255
  5798. * 360 is max CANDELA
  5799. * (360*((index/255)^2.15))*4194304
  5800. */
  5801. static int curve_2p15_360[] = {
  5802. 0,
  5803. 10113 ,
  5804. 44886 ,
  5805. 107328 ,
  5806. 199219 ,
  5807. 321874 ,
  5808. 476350 ,
  5809. 663532 ,
  5810. 884188 ,
  5811. 1138997 ,
  5812. 1428568 ,
  5813. 1753458 ,
  5814. 2114174 ,
  5815. 2511188 ,
  5816. 2944939 ,
  5817. 3415838 ,
  5818. 3924271 ,
  5819. 4470604 ,
  5820. 5055183 ,
  5821. 5678338 ,
  5822. 6340383 ,
  5823. 7041619 ,
  5824. 7782332 ,
  5825. 8562801 ,
  5826. 9383291 ,
  5827. 10244058 ,
  5828. 11145350 ,
  5829. 12087406 ,
  5830. 13070457 ,
  5831. 14094728 ,
  5832. 15160437 ,
  5833. 16267794 ,
  5834. 17417005 ,
  5835. 18608270 ,
  5836. 19841783 ,
  5837. 21117734 ,
  5838. 22436308 ,
  5839. 23797686 ,
  5840. 25202043 ,
  5841. 26649553 ,
  5842. 28140383 ,
  5843. 29674698 ,
  5844. 31252660 ,
  5845. 32874427 ,
  5846. 34540154 ,
  5847. 36249993 ,
  5848. 38004092 ,
  5849. 39802597 ,
  5850. 41645653 ,
  5851. 43533400 ,
  5852. 45465977 ,
  5853. 47443519 ,
  5854. 49466161 ,
  5855. 51534034 ,
  5856. 53647267 ,
  5857. 55805988 ,
  5858. 58010322 ,
  5859. 60260393 ,
  5860. 62556322 ,
  5861. 64898229 ,
  5862. 67286232 ,
  5863. 69720447 ,
  5864. 72200990 ,
  5865. 74727972 ,
  5866. 77301507 ,
  5867. 79921704 ,
  5868. 82588671 ,
  5869. 85302516 ,
  5870. 88063345 ,
  5871. 90871263 ,
  5872. 93726371 ,
  5873. 96628774 ,
  5874. 99578570 ,
  5875. 102575860 ,
  5876. 105620742 ,
  5877. 108713314 ,
  5878. 111853671 ,
  5879. 115041908 ,
  5880. 118278120 ,
  5881. 121562399 ,
  5882. 124894838 ,
  5883. 128275527 ,
  5884. 131704556 ,
  5885. 135182015 ,
  5886. 138707991 ,
  5887. 142282572 ,
  5888. 145905844 ,
  5889. 149577893 ,
  5890. 153298803 ,
  5891. 157068657 ,
  5892. 160887541 ,
  5893. 164755534 ,
  5894. 168672719 ,
  5895. 172639177 ,
  5896. 176654987 ,
  5897. 180720229 ,
  5898. 184834982 ,
  5899. 188999322 ,
  5900. 193213328 ,
  5901. 197477075 ,
  5902. 201790640 ,
  5903. 206154097 ,
  5904. 210567522 ,
  5905. 215030988 ,
  5906. 219544568 ,
  5907. 224108336 ,
  5908. 228722362 ,
  5909. 233386719 ,
  5910. 238101478 ,
  5911. 242866709 ,
  5912. 247682482 ,
  5913. 252548865 ,
  5914. 257465929 ,
  5915. 262433741 ,
  5916. 267452368 ,
  5917. 272521879 ,
  5918. 277642339 ,
  5919. 282813815 ,
  5920. 288036373 ,
  5921. 293310077 ,
  5922. 298634994 ,
  5923. 304011186 ,
  5924. 309438718 ,
  5925. 314917654 ,
  5926. 320448055 ,
  5927. 326029986 ,
  5928. 331663508 ,
  5929. 337348682 ,
  5930. 343085570 ,
  5931. 348874233 ,
  5932. 354714731 ,
  5933. 360607125 ,
  5934. 366551473 ,
  5935. 372547836 ,
  5936. 378596273 ,
  5937. 384696841 ,
  5938. 390849599 ,
  5939. 397054605 ,
  5940. 403311916 ,
  5941. 409621589 ,
  5942. 415983681 ,
  5943. 422398249 ,
  5944. 428865349 ,
  5945. 435385036 ,
  5946. 441957365 ,
  5947. 448582392 ,
  5948. 455260171 ,
  5949. 461990757 ,
  5950. 468774205 ,
  5951. 475610566 ,
  5952. 482499896 ,
  5953. 489442248 ,
  5954. 496437673 ,
  5955. 503486226 ,
  5956. 510587957 ,
  5957. 517742920 ,
  5958. 524951165 ,
  5959. 532212745 ,
  5960. 539527709 ,
  5961. 546896111 ,
  5962. 554317998 ,
  5963. 561793423 ,
  5964. 569322436 ,
  5965. 576905085 ,
  5966. 584541421 ,
  5967. 592231492 ,
  5968. 599975349 ,
  5969. 607773039 ,
  5970. 615624611 ,
  5971. 623530113 ,
  5972. 631489594 ,
  5973. 639503101 ,
  5974. 647570682 ,
  5975. 655692384 ,
  5976. 663868254 ,
  5977. 672098339 ,
  5978. 680382686 ,
  5979. 688721341 ,
  5980. 697114349 ,
  5981. 705561759 ,
  5982. 714063614 ,
  5983. 722619960 ,
  5984. 731230843 ,
  5985. 739896308 ,
  5986. 748616400 ,
  5987. 757391163 ,
  5988. 766220642 ,
  5989. 775104881 ,
  5990. 784043924 ,
  5991. 793037815 ,
  5992. 802086597 ,
  5993. 811190315 ,
  5994. 820349012 ,
  5995. 829562729 ,
  5996. 838831512 ,
  5997. 848155401 ,
  5998. 857534440 ,
  5999. 866968670 ,
  6000. 876458135 ,
  6001. 886002876 ,
  6002. 895602935 ,
  6003. 905258353 ,
  6004. 914969172 ,
  6005. 924735433 ,
  6006. 934557178 ,
  6007. 944434446 ,
  6008. 954367280 ,
  6009. 964355719 ,
  6010. 974399803 ,
  6011. 984499574 ,
  6012. 994655071 ,
  6013. 1004866334 ,
  6014. 1015133403 ,
  6015. 1025456317 ,
  6016. 1035835116 ,
  6017. 1046269840 ,
  6018. 1056760526 ,
  6019. 1067307215 ,
  6020. 1077909945 ,
  6021. 1088568754 ,
  6022. 1099283682 ,
  6023. 1110054766 ,
  6024. 1120882045 ,
  6025. 1131765557 ,
  6026. 1142705340 ,
  6027. 1153701431 ,
  6028. 1164753869 ,
  6029. 1175862690 ,
  6030. 1187027932 ,
  6031. 1198249633 ,
  6032. 1209527828 ,
  6033. 1220862556 ,
  6034. 1232253854 ,
  6035. 1243701756 ,
  6036. 1255206302 ,
  6037. 1266767525 ,
  6038. 1278385464 ,
  6039. 1290060154 ,
  6040. 1301791631 ,
  6041. 1313579931 ,
  6042. 1325425089 ,
  6043. 1337327142 ,
  6044. 1349286125 ,
  6045. 1361302072 ,
  6046. 1373375021 ,
  6047. 1385505005 ,
  6048. 1397692059 ,
  6049. 1409936219 ,
  6050. 1422237519 ,
  6051. 1434595994 ,
  6052. 1447011678 ,
  6053. 1459484606 ,
  6054. 1472014812 ,
  6055. 1484602331 ,
  6056. 1497247195 ,
  6057. 1509949440 ,
  6058. };
  6059. /*
  6060. * index : 0 ~ 255
  6061. * 360 is max CANDELA
  6062. * (360*((index/255)^2.2))*4194304
  6063. */
  6064. static int curve_2p2_360[] = {
  6065. 0 ,
  6066. 7666 ,
  6067. 35224 ,
  6068. 85949 ,
  6069. 161847 ,
  6070. 264428 ,
  6071. 394918 ,
  6072. 554357 ,
  6073. 743656 ,
  6074. 963624 ,
  6075. 1214994 ,
  6076. 1498435 ,
  6077. 1814566 ,
  6078. 2163961 ,
  6079. 2547157 ,
  6080. 2964659 ,
  6081. 3416945 ,
  6082. 3904466 ,
  6083. 4427652 ,
  6084. 4986915 ,
  6085. 5582645 ,
  6086. 6215219 ,
  6087. 6884999 ,
  6088. 7592333 ,
  6089. 8337556 ,
  6090. 9120991 ,
  6091. 9942953 ,
  6092. 10803744 ,
  6093. 11703659 ,
  6094. 12642984 ,
  6095. 13621997 ,
  6096. 14640966 ,
  6097. 15700156 ,
  6098. 16799822 ,
  6099. 17940214 ,
  6100. 19121577 ,
  6101. 20344148 ,
  6102. 21608161 ,
  6103. 22913842 ,
  6104. 24261416 ,
  6105. 25651100 ,
  6106. 27083107 ,
  6107. 28557649 ,
  6108. 30074929 ,
  6109. 31635150 ,
  6110. 33238509 ,
  6111. 34885202 ,
  6112. 36575418 ,
  6113. 38309345 ,
  6114. 40087169 ,
  6115. 41909069 ,
  6116. 43775226 ,
  6117. 45685814 ,
  6118. 47641006 ,
  6119. 49640972 ,
  6120. 51685881 ,
  6121. 53775898 ,
  6122. 55911184 ,
  6123. 58091902 ,
  6124. 60318208 ,
  6125. 62590261 ,
  6126. 64908212 ,
  6127. 67272215 ,
  6128. 69682419 ,
  6129. 72138972 ,
  6130. 74642022 ,
  6131. 77191711 ,
  6132. 79788183 ,
  6133. 82431579 ,
  6134. 85122037 ,
  6135. 87859696 ,
  6136. 90644692 ,
  6137. 93477158 ,
  6138. 96357229 ,
  6139. 99285035 ,
  6140. 102260706 ,
  6141. 105284372 ,
  6142. 108356159 ,
  6143. 111476194 ,
  6144. 114644602 ,
  6145. 117861504 ,
  6146. 121127025 ,
  6147. 124441284 ,
  6148. 127804402 ,
  6149. 131216496 ,
  6150. 134677686 ,
  6151. 138188086 ,
  6152. 141747812 ,
  6153. 145356979 ,
  6154. 149015699 ,
  6155. 152724084 ,
  6156. 156482246 ,
  6157. 160290295 ,
  6158. 164148340 ,
  6159. 168056489 ,
  6160. 172014850 ,
  6161. 176023528 ,
  6162. 180082630 ,
  6163. 184192259 ,
  6164. 188352521 ,
  6165. 192563517 ,
  6166. 196825349 ,
  6167. 201138120 ,
  6168. 205501929 ,
  6169. 209916876 ,
  6170. 214383060 ,
  6171. 218900580 ,
  6172. 223469532 ,
  6173. 228090013 ,
  6174. 232762120 ,
  6175. 237485947 ,
  6176. 242261589 ,
  6177. 247089140 ,
  6178. 251968693 ,
  6179. 256900341 ,
  6180. 261884176 ,
  6181. 266920288 ,
  6182. 272008769 ,
  6183. 277149707 ,
  6184. 282343194 ,
  6185. 287589317 ,
  6186. 292888165 ,
  6187. 298239825 ,
  6188. 303644384 ,
  6189. 309101929 ,
  6190. 314612546 ,
  6191. 320176319 ,
  6192. 325793334 ,
  6193. 331463675 ,
  6194. 337187426 ,
  6195. 342964669 ,
  6196. 348795488 ,
  6197. 354679965 ,
  6198. 360618181 ,
  6199. 366610218 ,
  6200. 372656155 ,
  6201. 378756075 ,
  6202. 384910055 ,
  6203. 391118176 ,
  6204. 397380516 ,
  6205. 403697153 ,
  6206. 410068166 ,
  6207. 416493632 ,
  6208. 422973628 ,
  6209. 429508231 ,
  6210. 436097516 ,
  6211. 442741560 ,
  6212. 449440438 ,
  6213. 456194224 ,
  6214. 463002994 ,
  6215. 469866820 ,
  6216. 476785778 ,
  6217. 483759940 ,
  6218. 490789380 ,
  6219. 497874169 ,
  6220. 505014380 ,
  6221. 512210085 ,
  6222. 519461355 ,
  6223. 526768261 ,
  6224. 534130874 ,
  6225. 541549264 ,
  6226. 549023502 ,
  6227. 556553657 ,
  6228. 564139797 ,
  6229. 571781993 ,
  6230. 579480313 ,
  6231. 587234824 ,
  6232. 595045596 ,
  6233. 602912695 ,
  6234. 610836188 ,
  6235. 618816144 ,
  6236. 626852629 ,
  6237. 634945708 ,
  6238. 643095448 ,
  6239. 651301914 ,
  6240. 659565173 ,
  6241. 667885289 ,
  6242. 676262327 ,
  6243. 684696351 ,
  6244. 693187426 ,
  6245. 701735616 ,
  6246. 710340985 ,
  6247. 719003595 ,
  6248. 727723510 ,
  6249. 736500793 ,
  6250. 745335507 ,
  6251. 754227713 ,
  6252. 763177473 ,
  6253. 772184850 ,
  6254. 781249905 ,
  6255. 790372699 ,
  6256. 799553293 ,
  6257. 808791748 ,
  6258. 818088124 ,
  6259. 827442482 ,
  6260. 836854881 ,
  6261. 846325381 ,
  6262. 855854042 ,
  6263. 865440922 ,
  6264. 875086082 ,
  6265. 884789579 ,
  6266. 894551472 ,
  6267. 904371820 ,
  6268. 914250680 ,
  6269. 924188110 ,
  6270. 934184168 ,
  6271. 944238911 ,
  6272. 954352397 ,
  6273. 964524681 ,
  6274. 974755822 ,
  6275. 985045875 ,
  6276. 995394897 ,
  6277. 1005802944 ,
  6278. 1016270071 ,
  6279. 1026796335 ,
  6280. 1037381790 ,
  6281. 1048026492 ,
  6282. 1058730496 ,
  6283. 1069493857 ,
  6284. 1080316629 ,
  6285. 1091198867 ,
  6286. 1102140624 ,
  6287. 1113141956 ,
  6288. 1124202915 ,
  6289. 1135323556 ,
  6290. 1146503931 ,
  6291. 1157744095 ,
  6292. 1169044100 ,
  6293. 1180403998 ,
  6294. 1191823843 ,
  6295. 1203303688 ,
  6296. 1214843583 ,
  6297. 1226443583 ,
  6298. 1238103738 ,
  6299. 1249824100 ,
  6300. 1261604721 ,
  6301. 1273445652 ,
  6302. 1285346945 ,
  6303. 1297308650 ,
  6304. 1309330819 ,
  6305. 1321413502 ,
  6306. 1333556750 ,
  6307. 1345760613 ,
  6308. 1358025142 ,
  6309. 1370350386 ,
  6310. 1382736395 ,
  6311. 1395183219 ,
  6312. 1407690908 ,
  6313. 1420259511 ,
  6314. 1432889077 ,
  6315. 1445579655 ,
  6316. 1458331295 ,
  6317. 1471144045 ,
  6318. 1484017953 ,
  6319. 1496953069 ,
  6320. 1509949440 ,
  6321. };
  6322. #endif /* START_MTP_2P2_GAMMA_H */