smart_mtp_gamma_s6e8aa4.h 18 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622
  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.2)*4194304
  37. */
  38. static int candela_coeff_2p2[] = {
  39. 0 ,
  40. 21 ,
  41. 98 ,
  42. 239 ,
  43. 450 ,
  44. 735 ,
  45. 1097 ,
  46. 1540 ,
  47. 2066 ,
  48. 2677 ,
  49. 3375 ,
  50. 4162 ,
  51. 5040 ,
  52. 6011 ,
  53. 7075 ,
  54. 8235 ,
  55. 9492 ,
  56. 10846 ,
  57. 12299 ,
  58. 13853 ,
  59. 15507 ,
  60. 17264 ,
  61. 19125 ,
  62. 21090 ,
  63. 23160 ,
  64. 25336 ,
  65. 27619 ,
  66. 30010 ,
  67. 32510 ,
  68. 35119 ,
  69. 37839 ,
  70. 40669 ,
  71. 43612 ,
  72. 46666 ,
  73. 49834 ,
  74. 53115 ,
  75. 56512 ,
  76. 60023 ,
  77. 63650 ,
  78. 67393 ,
  79. 71253 ,
  80. 75231 ,
  81. 79327 ,
  82. 83541 ,
  83. 87875 ,
  84. 92329 ,
  85. 96903 ,
  86. 101598 ,
  87. 106415 ,
  88. 111353 ,
  89. 116414 ,
  90. 121598 ,
  91. 126905 ,
  92. 132336 ,
  93. 137892 ,
  94. 143572 ,
  95. 149377 ,
  96. 155309 ,
  97. 161366 ,
  98. 167551 ,
  99. 173862 ,
  100. 180301 ,
  101. 186867 ,
  102. 193562 ,
  103. 200386 ,
  104. 207339 ,
  105. 214421 ,
  106. 221634 ,
  107. 228977 ,
  108. 236450 ,
  109. 244055 ,
  110. 251791 ,
  111. 259659 ,
  112. 267659 ,
  113. 275792 ,
  114. 284058 ,
  115. 292457 ,
  116. 300989 ,
  117. 309656 ,
  118. 318457 ,
  119. 327393 ,
  120. 336464 ,
  121. 345670 ,
  122. 355012 ,
  123. 364490 ,
  124. 374105 ,
  125. 383856 ,
  126. 393744 ,
  127. 403769 ,
  128. 413932 ,
  129. 424234 ,
  130. 434673 ,
  131. 445251 ,
  132. 455968 ,
  133. 466824 ,
  134. 477819 ,
  135. 488954 ,
  136. 500230 ,
  137. 511645 ,
  138. 523201 ,
  139. 534899 ,
  140. 546737 ,
  141. 558717 ,
  142. 570839 ,
  143. 583102 ,
  144. 595509 ,
  145. 608057 ,
  146. 620749 ,
  147. 633583 ,
  148. 646561 ,
  149. 659683 ,
  150. 672949 ,
  151. 686359 ,
  152. 699913 ,
  153. 713612 ,
  154. 727456 ,
  155. 741445 ,
  156. 755580 ,
  157. 769860 ,
  158. 784287 ,
  159. 798859 ,
  160. 813578 ,
  161. 828444 ,
  162. 843457 ,
  163. 858616 ,
  164. 873924 ,
  165. 889379 ,
  166. 904981 ,
  167. 920732 ,
  168. 936632 ,
  169. 952680 ,
  170. 968876 ,
  171. 985222 ,
  172. 1001717 ,
  173. 1018362 ,
  174. 1035156 ,
  175. 1052100 ,
  176. 1069195 ,
  177. 1086439 ,
  178. 1103835 ,
  179. 1121381 ,
  180. 1139078 ,
  181. 1156927 ,
  182. 1174927 ,
  183. 1193078 ,
  184. 1211382 ,
  185. 1229838 ,
  186. 1248446 ,
  187. 1267206 ,
  188. 1286119 ,
  189. 1305186 ,
  190. 1324405 ,
  191. 1343778 ,
  192. 1363304 ,
  193. 1382984 ,
  194. 1402818 ,
  195. 1422806 ,
  196. 1442948 ,
  197. 1463245 ,
  198. 1483697 ,
  199. 1504304 ,
  200. 1525065 ,
  201. 1545982 ,
  202. 1567055 ,
  203. 1588283 ,
  204. 1609668 ,
  205. 1631208 ,
  206. 1652904 ,
  207. 1674757 ,
  208. 1696767 ,
  209. 1718934 ,
  210. 1741257 ,
  211. 1763738 ,
  212. 1786376 ,
  213. 1809172 ,
  214. 1832125 ,
  215. 1855237 ,
  216. 1878506 ,
  217. 1901934 ,
  218. 1925521 ,
  219. 1949266 ,
  220. 1973169 ,
  221. 1997232 ,
  222. 2021454 ,
  223. 2045836 ,
  224. 2070376 ,
  225. 2095077 ,
  226. 2119937 ,
  227. 2144958 ,
  228. 2170139 ,
  229. 2195480 ,
  230. 2220981 ,
  231. 2246644 ,
  232. 2272467 ,
  233. 2298451 ,
  234. 2324597 ,
  235. 2350904 ,
  236. 2377372 ,
  237. 2404003 ,
  238. 2430795 ,
  239. 2457749 ,
  240. 2484865 ,
  241. 2512144 ,
  242. 2539585 ,
  243. 2567189 ,
  244. 2594956 ,
  245. 2622886 ,
  246. 2650979 ,
  247. 2679235 ,
  248. 2707655 ,
  249. 2736239 ,
  250. 2764986 ,
  251. 2793897 ,
  252. 2822972 ,
  253. 2852212 ,
  254. 2881616 ,
  255. 2911185 ,
  256. 2940918 ,
  257. 2970816 ,
  258. 3000880 ,
  259. 3031108 ,
  260. 3061502 ,
  261. 3092061 ,
  262. 3122786 ,
  263. 3153677 ,
  264. 3184733 ,
  265. 3215956 ,
  266. 3247345 ,
  267. 3278900 ,
  268. 3310622 ,
  269. 3342510 ,
  270. 3374566 ,
  271. 3406788 ,
  272. 3439177 ,
  273. 3471734 ,
  274. 3504458 ,
  275. 3537349 ,
  276. 3570408 ,
  277. 3603635 ,
  278. 3637030 ,
  279. 3670593 ,
  280. 3704324 ,
  281. 3738224 ,
  282. 3772292 ,
  283. 3806529 ,
  284. 3840934 ,
  285. 3875509 ,
  286. 3910253 ,
  287. 3945165 ,
  288. 3980247 ,
  289. 4015499 ,
  290. 4050920 ,
  291. 4086511 ,
  292. 4122272 ,
  293. 4158203 ,
  294. 4194304 ,
  295. };
  296. /*
  297. * index : 0 ~ 255
  298. * ((index/255)^2.15)*4194304
  299. */
  300. static int candela_coeff_2p15[] = {
  301. 0 ,
  302. 28 ,
  303. 125 ,
  304. 298 ,
  305. 553 ,
  306. 894 ,
  307. 1323 ,
  308. 1843 ,
  309. 2456 ,
  310. 3164 ,
  311. 3968 ,
  312. 4871 ,
  313. 5873 ,
  314. 6976 ,
  315. 8180 ,
  316. 9488 ,
  317. 10901 ,
  318. 12418 ,
  319. 14042 ,
  320. 15773 ,
  321. 17612 ,
  322. 19560 ,
  323. 21618 ,
  324. 23786 ,
  325. 26065 ,
  326. 28456 ,
  327. 30959 ,
  328. 33576 ,
  329. 36307 ,
  330. 39152 ,
  331. 42112 ,
  332. 45188 ,
  333. 48381 ,
  334. 51690 ,
  335. 55116 ,
  336. 58660 ,
  337. 62323 ,
  338. 66105 ,
  339. 70006 ,
  340. 74027 ,
  341. 78168 ,
  342. 82430 ,
  343. 86813 ,
  344. 91318 ,
  345. 95945 ,
  346. 100694 ,
  347. 105567 ,
  348. 110563 ,
  349. 115682 ,
  350. 120926 ,
  351. 126294 ,
  352. 131788 ,
  353. 137406 ,
  354. 143150 ,
  355. 149020 ,
  356. 155017 ,
  357. 161140 ,
  358. 167390 ,
  359. 173768 ,
  360. 180273 ,
  361. 186906 ,
  362. 193668 ,
  363. 200558 ,
  364. 207578 ,
  365. 214726 ,
  366. 222005 ,
  367. 229413 ,
  368. 236951 ,
  369. 244620 ,
  370. 252420 ,
  371. 260351 ,
  372. 268413 ,
  373. 276607 ,
  374. 284933 ,
  375. 293391 ,
  376. 301981 ,
  377. 310705 ,
  378. 319561 ,
  379. 328550 ,
  380. 337673 ,
  381. 346930 ,
  382. 356321 ,
  383. 365846 ,
  384. 375506 ,
  385. 385300 ,
  386. 395229 ,
  387. 405294 ,
  388. 415494 ,
  389. 425830 ,
  390. 436302 ,
  391. 446910 ,
  392. 457654 ,
  393. 468535 ,
  394. 479553 ,
  395. 490708 ,
  396. 502001 ,
  397. 513431 ,
  398. 524998 ,
  399. 536704 ,
  400. 548547 ,
  401. 560530 ,
  402. 572650 ,
  403. 584910 ,
  404. 597308 ,
  405. 609846 ,
  406. 622523 ,
  407. 635340 ,
  408. 648296 ,
  409. 661393 ,
  410. 674630 ,
  411. 688007 ,
  412. 701525 ,
  413. 715183 ,
  414. 728983 ,
  415. 742923 ,
  416. 757005 ,
  417. 771229 ,
  418. 785594 ,
  419. 800101 ,
  420. 814750 ,
  421. 829542 ,
  422. 844476 ,
  423. 859552 ,
  424. 874771 ,
  425. 890133 ,
  426. 905639 ,
  427. 921288 ,
  428. 937080 ,
  429. 953015 ,
  430. 969095 ,
  431. 985319 ,
  432. 1001686 ,
  433. 1018199 ,
  434. 1034855 ,
  435. 1051656 ,
  436. 1068602 ,
  437. 1085693 ,
  438. 1102929 ,
  439. 1120311 ,
  440. 1137838 ,
  441. 1155510 ,
  442. 1173328 ,
  443. 1191293 ,
  444. 1209403 ,
  445. 1227659 ,
  446. 1246062 ,
  447. 1264612 ,
  448. 1283308 ,
  449. 1302151 ,
  450. 1321140 ,
  451. 1340277 ,
  452. 1359562 ,
  453. 1378994 ,
  454. 1398573 ,
  455. 1418300 ,
  456. 1438175 ,
  457. 1458198 ,
  458. 1478369 ,
  459. 1498688 ,
  460. 1519156 ,
  461. 1539772 ,
  462. 1560537 ,
  463. 1581451 ,
  464. 1602514 ,
  465. 1623726 ,
  466. 1645087 ,
  467. 1666598 ,
  468. 1688258 ,
  469. 1710068 ,
  470. 1732028 ,
  471. 1754138 ,
  472. 1776398 ,
  473. 1798807 ,
  474. 1821368 ,
  475. 1844078 ,
  476. 1866940 ,
  477. 1889952 ,
  478. 1913115 ,
  479. 1936429 ,
  480. 1959894 ,
  481. 1983510 ,
  482. 2007278 ,
  483. 2031197 ,
  484. 2055268 ,
  485. 2079490 ,
  486. 2103864 ,
  487. 2128391 ,
  488. 2153069 ,
  489. 2177900 ,
  490. 2202883 ,
  491. 2228018 ,
  492. 2253306 ,
  493. 2278747 ,
  494. 2304341 ,
  495. 2330088 ,
  496. 2355987 ,
  497. 2382040 ,
  498. 2408246 ,
  499. 2434606 ,
  500. 2461119 ,
  501. 2487786 ,
  502. 2514607 ,
  503. 2541581 ,
  504. 2568710 ,
  505. 2595992 ,
  506. 2623429 ,
  507. 2651020 ,
  508. 2678766 ,
  509. 2706666 ,
  510. 2734721 ,
  511. 2762931 ,
  512. 2791295 ,
  513. 2819815 ,
  514. 2848490 ,
  515. 2877320 ,
  516. 2906305 ,
  517. 2935446 ,
  518. 2964742 ,
  519. 2994194 ,
  520. 3023802 ,
  521. 3053566 ,
  522. 3083485 ,
  523. 3113561 ,
  524. 3143793 ,
  525. 3174181 ,
  526. 3204726 ,
  527. 3235427 ,
  528. 3266285 ,
  529. 3297300 ,
  530. 3328471 ,
  531. 3359800 ,
  532. 3391285 ,
  533. 3422927 ,
  534. 3454727 ,
  535. 3486684 ,
  536. 3518799 ,
  537. 3551071 ,
  538. 3583500 ,
  539. 3616088 ,
  540. 3648833 ,
  541. 3681736 ,
  542. 3714798 ,
  543. 3748017 ,
  544. 3781395 ,
  545. 3814931 ,
  546. 3848625 ,
  547. 3882478 ,
  548. 3916489 ,
  549. 3950660 ,
  550. 3984989 ,
  551. 4019477 ,
  552. 4054124 ,
  553. 4088930 ,
  554. 4123895 ,
  555. 4159020 ,
  556. 4194304 ,
  557. };
  558. /*
  559. * index : 0 ~ 255
  560. * 350 is max CANDELA
  561. * (350*((index/255)^2.2))*4194304
  562. */
  563. static int curve_2p2_350[] = {
  564. 0 ,
  565. 7453 ,
  566. 34246 ,
  567. 83562 ,
  568. 157352 ,
  569. 257083 ,
  570. 383948 ,
  571. 538958 ,
  572. 722999 ,
  573. 936856 ,
  574. 1181244 ,
  575. 1456812 ,
  576. 1764161 ,
  577. 2103851 ,
  578. 2476402 ,
  579. 2882308 ,
  580. 3322030 ,
  581. 3796009 ,
  582. 4304662 ,
  583. 4848389 ,
  584. 5427571 ,
  585. 6042574 ,
  586. 6693749 ,
  587. 7381435 ,
  588. 8105957 ,
  589. 8867630 ,
  590. 9666760 ,
  591. 10503640 ,
  592. 11378558 ,
  593. 12291790 ,
  594. 13243608 ,
  595. 14234273 ,
  596. 15264040 ,
  597. 16333160 ,
  598. 17441875 ,
  599. 18590422 ,
  600. 19779033 ,
  601. 21007934 ,
  602. 22277347 ,
  603. 23587488 ,
  604. 24938569 ,
  605. 26330799 ,
  606. 27764381 ,
  607. 29239514 ,
  608. 30756396 ,
  609. 32315217 ,
  610. 33916168 ,
  611. 35559434 ,
  612. 37245197 ,
  613. 38973636 ,
  614. 40744929 ,
  615. 42559247 ,
  616. 44416763 ,
  617. 46317645 ,
  618. 48262056 ,
  619. 50250162 ,
  620. 52282123 ,
  621. 54358096 ,
  622. 56478238 ,
  623. 58642703 ,
  624. 60851642 ,
  625. 63105206 ,
  626. 65403542 ,
  627. 67746796 ,
  628. 70135112 ,
  629. 72568632 ,
  630. 75047497 ,
  631. 77571844 ,
  632. 80141812 ,
  633. 82757536 ,
  634. 85419149 ,
  635. 88126783 ,
  636. 90880570 ,
  637. 93680639 ,
  638. 96527117 ,
  639. 99420131 ,
  640. 102359806 ,
  641. 105346266 ,
  642. 108379633 ,
  643. 111460029 ,
  644. 114587574 ,
  645. 117762385 ,
  646. 120984582 ,
  647. 124254279 ,
  648. 127571594 ,
  649. 130936639 ,
  650. 134349528 ,
  651. 137810373 ,
  652. 141319285 ,
  653. 144876374 ,
  654. 148481748 ,
  655. 152135517 ,
  656. 155837787 ,
  657. 159588664 ,
  658. 163388253 ,
  659. 167236659 ,
  660. 171133986 ,
  661. 175080334 ,
  662. 179075808 ,
  663. 183120506 ,
  664. 187214530 ,
  665. 191357978 ,
  666. 195550950 ,
  667. 199793542 ,
  668. 204085852 ,
  669. 208427975 ,
  670. 212820008 ,
  671. 217262045 ,
  672. 221754180 ,
  673. 226296505 ,
  674. 230889115 ,
  675. 235532101 ,
  676. 240225553 ,
  677. 244969563 ,
  678. 249764221 ,
  679. 254609615 ,
  680. 259505836 ,
  681. 264452969 ,
  682. 269451104 ,
  683. 274500328 ,
  684. 279600725 ,
  685. 284752383 ,
  686. 289955385 ,
  687. 295209818 ,
  688. 300515765 ,
  689. 305873308 ,
  690. 311282533 ,
  691. 316743520 ,
  692. 322256351 ,
  693. 327821109 ,
  694. 333437873 ,
  695. 339106725 ,
  696. 344827744 ,
  697. 350601009 ,
  698. 356426600 ,
  699. 362304595 ,
  700. 368235072 ,
  701. 374218109 ,
  702. 380253782 ,
  703. 386342168 ,
  704. 392483343 ,
  705. 398677384 ,
  706. 404924365 ,
  707. 411224361 ,
  708. 417577447 ,
  709. 423983696 ,
  710. 430443184 ,
  711. 436955981 ,
  712. 443522162 ,
  713. 450141799 ,
  714. 456814964 ,
  715. 463541729 ,
  716. 470322164 ,
  717. 477156341 ,
  718. 484044331 ,
  719. 490986203 ,
  720. 497982027 ,
  721. 505031873 ,
  722. 512135809 ,
  723. 519293905 ,
  724. 526506229 ,
  725. 533772849 ,
  726. 541093833 ,
  727. 548469247 ,
  728. 555899160 ,
  729. 563383637 ,
  730. 570922746 ,
  731. 578516551 ,
  732. 586165120 ,
  733. 593868517 ,
  734. 601626807 ,
  735. 609440055 ,
  736. 617308327 ,
  737. 625231685 ,
  738. 633210194 ,
  739. 641243918 ,
  740. 649332920 ,
  741. 657477262 ,
  742. 665677008 ,
  743. 673932220 ,
  744. 682242960 ,
  745. 690609291 ,
  746. 699031273 ,
  747. 707508968 ,
  748. 716042438 ,
  749. 724631743 ,
  750. 733276943 ,
  751. 741978099 ,
  752. 750735271 ,
  753. 759548519 ,
  754. 768417902 ,
  755. 777343479 ,
  756. 786325311 ,
  757. 795363454 ,
  758. 804457968 ,
  759. 813608912 ,
  760. 822816343 ,
  761. 832080318 ,
  762. 841400897 ,
  763. 850778135 ,
  764. 860212091 ,
  765. 869702820 ,
  766. 879250380 ,
  767. 888854827 ,
  768. 898516218 ,
  769. 908234608 ,
  770. 918010052 ,
  771. 927842608 ,
  772. 937732329 ,
  773. 947679272 ,
  774. 957683490 ,
  775. 967745039 ,
  776. 977863973 ,
  777. 988040347 ,
  778. 998274214 ,
  779. 1008565629 ,
  780. 1018914645 ,
  781. 1029321316 ,
  782. 1039785694 ,
  783. 1050307834 ,
  784. 1060887787 ,
  785. 1071525607 ,
  786. 1082221346 ,
  787. 1092975056 ,
  788. 1103786790 ,
  789. 1114656600 ,
  790. 1125584537 ,
  791. 1136570652 ,
  792. 1147614998 ,
  793. 1158717625 ,
  794. 1169878585 ,
  795. 1181097928 ,
  796. 1192375706 ,
  797. 1203711967 ,
  798. 1215106764 ,
  799. 1226560145 ,
  800. 1238072162 ,
  801. 1249642863 ,
  802. 1261272299 ,
  803. 1272960519 ,
  804. 1284707572 ,
  805. 1296513507 ,
  806. 1308378374 ,
  807. 1320302221 ,
  808. 1332285097 ,
  809. 1344327051 ,
  810. 1356428130 ,
  811. 1368588383 ,
  812. 1380807858 ,
  813. 1393086603 ,
  814. 1405424665 ,
  815. 1417822093 ,
  816. 1430278933 ,
  817. 1442795233 ,
  818. 1455371039 ,
  819. 1468006400 ,
  820. };
  821. /*
  822. * index : 0 ~ 255
  823. * 350 is max CANDELA
  824. * (350*((index/255)^1.9))*4194304
  825. */
  826. static int curve_1p9_350[] = {
  827. 0 ,
  828. 39292 ,
  829. 146642 ,
  830. 316834 ,
  831. 547288 ,
  832. 836266 ,
  833. 1182467 ,
  834. 1584849 ,
  835. 2042549 ,
  836. 2554832 ,
  837. 3121056 ,
  838. 3740655 ,
  839. 4413122 ,
  840. 5137999 ,
  841. 5914866 ,
  842. 6743339 ,
  843. 7623064 ,
  844. 8553711 ,
  845. 9534971 ,
  846. 10566556 ,
  847. 11648194 ,
  848. 12779630 ,
  849. 13960620 ,
  850. 15190935 ,
  851. 16470355 ,
  852. 17798673 ,
  853. 19175689 ,
  854. 20601211 ,
  855. 22075059 ,
  856. 23597055 ,
  857. 25167031 ,
  858. 26784826 ,
  859. 28450281 ,
  860. 30163247 ,
  861. 31923577 ,
  862. 33731130 ,
  863. 35585769 ,
  864. 37487362 ,
  865. 39435780 ,
  866. 41430899 ,
  867. 43472597 ,
  868. 45560757 ,
  869. 47695264 ,
  870. 49876006 ,
  871. 52102875 ,
  872. 54375765 ,
  873. 56694573 ,
  874. 59059197 ,
  875. 61469539 ,
  876. 63925504 ,
  877. 66426996 ,
  878. 68973925 ,
  879. 71566200 ,
  880. 74203734 ,
  881. 76886439 ,
  882. 79614233 ,
  883. 82387032 ,
  884. 85204755 ,
  885. 88067323 ,
  886. 90974657 ,
  887. 93926682 ,
  888. 96923322 ,
  889. 99964504 ,
  890. 103050155 ,
  891. 106180204 ,
  892. 109354582 ,
  893. 112573219 ,
  894. 115836048 ,
  895. 119143002 ,
  896. 122494017 ,
  897. 125889029 ,
  898. 129327972 ,
  899. 132810787 ,
  900. 136337410 ,
  901. 139907783 ,
  902. 143521844 ,
  903. 147179537 ,
  904. 150880802 ,
  905. 154625583 ,
  906. 158413825 ,
  907. 162245471 ,
  908. 166120466 ,
  909. 170038759 ,
  910. 174000294 ,
  911. 178005020 ,
  912. 182052885 ,
  913. 186143838 ,
  914. 190277828 ,
  915. 194454807 ,
  916. 198674724 ,
  917. 202937532 ,
  918. 207243182 ,
  919. 211591627 ,
  920. 215982821 ,
  921. 220416716 ,
  922. 224893268 ,
  923. 229412432 ,
  924. 233974162 ,
  925. 238578416 ,
  926. 243225148 ,
  927. 247914316 ,
  928. 252645878 ,
  929. 257419790 ,
  930. 262236013 ,
  931. 267094503 ,
  932. 271995222 ,
  933. 276938127 ,
  934. 281923179 ,
  935. 286950339 ,
  936. 292019567 ,
  937. 297130824 ,
  938. 302284073 ,
  939. 307479276 ,
  940. 312716393 ,
  941. 317995390 ,
  942. 323316228 ,
  943. 328678870 ,
  944. 334083282 ,
  945. 339529427 ,
  946. 345017269 ,
  947. 350546773 ,
  948. 356117905 ,
  949. 361730630 ,
  950. 367384913 ,
  951. 373080721 ,
  952. 378818021 ,
  953. 384596778 ,
  954. 390416960 ,
  955. 396278535 ,
  956. 402181469 ,
  957. 408125730 ,
  958. 414111287 ,
  959. 420138108 ,
  960. 426206162 ,
  961. 432315417 ,
  962. 438465842 ,
  963. 444657408 ,
  964. 450890083 ,
  965. 457163838 ,
  966. 463478643 ,
  967. 469834468 ,
  968. 476231283 ,
  969. 482669060 ,
  970. 489147769 ,
  971. 495667383 ,
  972. 502227871 ,
  973. 508829207 ,
  974. 515471362 ,
  975. 522154308 ,
  976. 528878017 ,
  977. 535642463 ,
  978. 542447617 ,
  979. 549293454 ,
  980. 556179945 ,
  981. 563107064 ,
  982. 570074786 ,
  983. 577083083 ,
  984. 584131929 ,
  985. 591221299 ,
  986. 598351167 ,
  987. 605521507 ,
  988. 612732294 ,
  989. 619983503 ,
  990. 627275109 ,
  991. 634607086 ,
  992. 641979411 ,
  993. 649392059 ,
  994. 656845004 ,
  995. 664338224 ,
  996. 671871694 ,
  997. 679445391 ,
  998. 687059289 ,
  999. 694713367 ,
  1000. 702407600 ,
  1001. 710141966 ,
  1002. 717916440 ,
  1003. 725731001 ,
  1004. 733585625 ,
  1005. 741480289 ,
  1006. 749414971 ,
  1007. 757389650 ,
  1008. 765404301 ,
  1009. 773458904 ,
  1010. 781553436 ,
  1011. 789687875 ,
  1012. 797862200 ,
  1013. 806076389 ,
  1014. 814330420 ,
  1015. 822624273 ,
  1016. 830957925 ,
  1017. 839331356 ,
  1018. 847744545 ,
  1019. 856197471 ,
  1020. 864690113 ,
  1021. 873222451 ,
  1022. 881794464 ,
  1023. 890406131 ,
  1024. 899057433 ,
  1025. 907748349 ,
  1026. 916478859 ,
  1027. 925248944 ,
  1028. 934058582 ,
  1029. 942907756 ,
  1030. 951796445 ,
  1031. 960724629 ,
  1032. 969692289 ,
  1033. 978699406 ,
  1034. 987745961 ,
  1035. 996831934 ,
  1036. 1005957307 ,
  1037. 1015122061 ,
  1038. 1024326177 ,
  1039. 1033569635 ,
  1040. 1042852419 ,
  1041. 1052174508 ,
  1042. 1061535885 ,
  1043. 1070936531 ,
  1044. 1080376429 ,
  1045. 1089855560 ,
  1046. 1099373905 ,
  1047. 1108931448 ,
  1048. 1118528170 ,
  1049. 1128164053 ,
  1050. 1137839080 ,
  1051. 1147553233 ,
  1052. 1157306495 ,
  1053. 1167098848 ,
  1054. 1176930275 ,
  1055. 1186800759 ,
  1056. 1196710282 ,
  1057. 1206658828 ,
  1058. 1216646379 ,
  1059. 1226672919 ,
  1060. 1236738430 ,
  1061. 1246842896 ,
  1062. 1256986300 ,
  1063. 1267168626 ,
  1064. 1277389858 ,
  1065. 1287649977 ,
  1066. 1297948969 ,
  1067. 1308286817 ,
  1068. 1318663505 ,
  1069. 1329079017 ,
  1070. 1339533336 ,
  1071. 1350026446 ,
  1072. 1360558332 ,
  1073. 1371128978 ,
  1074. 1381738368 ,
  1075. 1392386487 ,
  1076. 1403073317 ,
  1077. 1413798845 ,
  1078. 1424563055 ,
  1079. 1435365930 ,
  1080. 1446207456 ,
  1081. 1457087618 ,
  1082. 1468006400 ,
  1083. };
  1084. /*
  1085. * index : 0 ~ 255
  1086. * 300 is max CANDELA
  1087. * (300*((index/255)^2.2))*4194304
  1088. */
  1089. static int curve_2p2[] = {
  1090. 0 ,
  1091. 6388 ,
  1092. 29353 ,
  1093. 71624 ,
  1094. 134873 ,
  1095. 220357 ,
  1096. 329098 ,
  1097. 461964 ,
  1098. 619713 ,
  1099. 803020 ,
  1100. 1012495 ,
  1101. 1248696 ,
  1102. 1512138 ,
  1103. 1803301 ,
  1104. 2122631 ,
  1105. 2470549 ,
  1106. 2847454 ,
  1107. 3253722 ,
  1108. 3689710 ,
  1109. 4155762 ,
  1110. 4652204 ,
  1111. 5179349 ,
  1112. 5737499 ,
  1113. 6326944 ,
  1114. 6947963 ,
  1115. 7600826 ,
  1116. 8285794 ,
  1117. 9003120 ,
  1118. 9753050 ,
  1119. 10535820 ,
  1120. 11351664 ,
  1121. 12200805 ,
  1122. 13083463 ,
  1123. 13999852 ,
  1124. 14950179 ,
  1125. 15934647 ,
  1126. 16953457 ,
  1127. 18006801 ,
  1128. 19094869 ,
  1129. 20217847 ,
  1130. 21375916 ,
  1131. 22569256 ,
  1132. 23798041 ,
  1133. 25062441 ,
  1134. 26362625 ,
  1135. 27698758 ,
  1136. 29071001 ,
  1137. 30479515 ,
  1138. 31924454 ,
  1139. 33405974 ,
  1140. 34924225 ,
  1141. 36479355 ,
  1142. 38071511 ,
  1143. 39700838 ,
  1144. 41367477 ,
  1145. 43071568 ,
  1146. 44813248 ,
  1147. 46592654 ,
  1148. 48409918 ,
  1149. 50265174 ,
  1150. 52158550 ,
  1151. 54090177 ,
  1152. 56060179 ,
  1153. 58068682 ,
  1154. 60115810 ,
  1155. 62201685 ,
  1156. 64326426 ,
  1157. 66490152 ,
  1158. 68692982 ,
  1159. 70935031 ,
  1160. 73216413 ,
  1161. 75537243 ,
  1162. 77897632 ,
  1163. 80297691 ,
  1164. 82737529 ,
  1165. 85217255 ,
  1166. 87736977 ,
  1167. 90296800 ,
  1168. 92896829 ,
  1169. 95537168 ,
  1170. 98217920 ,
  1171. 100939187 ,
  1172. 103701070 ,
  1173. 106503668 ,
  1174. 109347080 ,
  1175. 112231405 ,
  1176. 115156738 ,
  1177. 118123177 ,
  1178. 121130816 ,
  1179. 124179749 ,
  1180. 127270070 ,
  1181. 130401872 ,
  1182. 133575246 ,
  1183. 136790283 ,
  1184. 140047074 ,
  1185. 143345708 ,
  1186. 146686273 ,
  1187. 150068858 ,
  1188. 153493549 ,
  1189. 156960434 ,
  1190. 160469597 ,
  1191. 164021124 ,
  1192. 167615100 ,
  1193. 171251607 ,
  1194. 174930730 ,
  1195. 178652550 ,
  1196. 182417150 ,
  1197. 186224610 ,
  1198. 190075011 ,
  1199. 193968433 ,
  1200. 197904956 ,
  1201. 201884658 ,
  1202. 205907617 ,
  1203. 209973911 ,
  1204. 214083618 ,
  1205. 218236813 ,
  1206. 222433573 ,
  1207. 226673974 ,
  1208. 230958090 ,
  1209. 235285995 ,
  1210. 239657764 ,
  1211. 244073471 ,
  1212. 248533188 ,
  1213. 253036987 ,
  1214. 257584941 ,
  1215. 262177122 ,
  1216. 266813599 ,
  1217. 271494445 ,
  1218. 276219729 ,
  1219. 280989522 ,
  1220. 285803891 ,
  1221. 290662907 ,
  1222. 295566638 ,
  1223. 300515151 ,
  1224. 305508515 ,
  1225. 310546796 ,
  1226. 315630062 ,
  1227. 320758379 ,
  1228. 325931813 ,
  1229. 331150430 ,
  1230. 336414294 ,
  1231. 341723472 ,
  1232. 347078027 ,
  1233. 352478024 ,
  1234. 357923526 ,
  1235. 363414597 ,
  1236. 368951300 ,
  1237. 374533698 ,
  1238. 380161853 ,
  1239. 385835828 ,
  1240. 391555684 ,
  1241. 397321482 ,
  1242. 403133283 ,
  1243. 408991150 ,
  1244. 414895141 ,
  1245. 420845316 ,
  1246. 426841737 ,
  1247. 432884462 ,
  1248. 438973551 ,
  1249. 445109062 ,
  1250. 451291054 ,
  1251. 457519585 ,
  1252. 463794714 ,
  1253. 470116498 ,
  1254. 476484994 ,
  1255. 482900260 ,
  1256. 489362353 ,
  1257. 495871330 ,
  1258. 502427245 ,
  1259. 509030157 ,
  1260. 515680120 ,
  1261. 522377190 ,
  1262. 529121423 ,
  1263. 535912873 ,
  1264. 542751595 ,
  1265. 549637644 ,
  1266. 556571074 ,
  1267. 563551939 ,
  1268. 570580293 ,
  1269. 577656189 ,
  1270. 584779680 ,
  1271. 591950821 ,
  1272. 599169663 ,
  1273. 606436259 ,
  1274. 613750661 ,
  1275. 621112922 ,
  1276. 628523094 ,
  1277. 635981228 ,
  1278. 643487375 ,
  1279. 651041588 ,
  1280. 658643916 ,
  1281. 666294411 ,
  1282. 673993123 ,
  1283. 681740103 ,
  1284. 689535401 ,
  1285. 697379067 ,
  1286. 705271151 ,
  1287. 713211701 ,
  1288. 721200769 ,
  1289. 729238402 ,
  1290. 737324649 ,
  1291. 745459560 ,
  1292. 753643183 ,
  1293. 761875566 ,
  1294. 770156758 ,
  1295. 778486806 ,
  1296. 786865759 ,
  1297. 795293664 ,
  1298. 803770568 ,
  1299. 812296518 ,
  1300. 820871563 ,
  1301. 829495748 ,
  1302. 838169120 ,
  1303. 846891726 ,
  1304. 855663612 ,
  1305. 864484825 ,
  1306. 873355410 ,
  1307. 882275413 ,
  1308. 891244881 ,
  1309. 900263857 ,
  1310. 909332389 ,
  1311. 918450520 ,
  1312. 927618297 ,
  1313. 936835763 ,
  1314. 946102963 ,
  1315. 955419943 ,
  1316. 964786746 ,
  1317. 974203416 ,
  1318. 983669998 ,
  1319. 993186536 ,
  1320. 1002753073 ,
  1321. 1012369653 ,
  1322. 1022036319 ,
  1323. 1031753115 ,
  1324. 1041520083 ,
  1325. 1051337267 ,
  1326. 1061204710 ,
  1327. 1071122454 ,
  1328. 1081090542 ,
  1329. 1091109016 ,
  1330. 1101177919 ,
  1331. 1111297292 ,
  1332. 1121467178 ,
  1333. 1131687618 ,
  1334. 1141958655 ,
  1335. 1152280329 ,
  1336. 1162652683 ,
  1337. 1173075757 ,
  1338. 1183549592 ,
  1339. 1194074231 ,
  1340. 1204649713 ,
  1341. 1215276079 ,
  1342. 1225953371 ,
  1343. 1236681628 ,
  1344. 1247460891 ,
  1345. 1258291200 ,
  1346. };
  1347. /*
  1348. * index : 0 ~ 255
  1349. * 300 is max CANDELA
  1350. * (300*((index/255)^1.9))*4194304
  1351. */
  1352. static int curve_1p9[] = {
  1353. 0 ,
  1354. 33679 ,
  1355. 125693 ,
  1356. 271572 ,
  1357. 469104 ,
  1358. 716800 ,
  1359. 1013543 ,
  1360. 1358442 ,
  1361. 1750757 ,
  1362. 2189856 ,
  1363. 2675191 ,
  1364. 3206276 ,
  1365. 3782676 ,
  1366. 4403999 ,
  1367. 5069885 ,
  1368. 5780005 ,
  1369. 6534055 ,
  1370. 7331752 ,
  1371. 8172832 ,
  1372. 9057048 ,
  1373. 9984166 ,
  1374. 10953968 ,
  1375. 11966246 ,
  1376. 13020801 ,
  1377. 14117447 ,
  1378. 15256005 ,
  1379. 16436304 ,
  1380. 17658181 ,
  1381. 18921479 ,
  1382. 20226047 ,
  1383. 21571741 ,
  1384. 22958422 ,
  1385. 24385955 ,
  1386. 25854212 ,
  1387. 27363066 ,
  1388. 28912397 ,
  1389. 30502088 ,
  1390. 32132025 ,
  1391. 33802097 ,
  1392. 35512199 ,
  1393. 37262226 ,
  1394. 39052078 ,
  1395. 40881655 ,
  1396. 42750863 ,
  1397. 44659607 ,
  1398. 46607799 ,
  1399. 48595348 ,
  1400. 50622169 ,
  1401. 52688176 ,
  1402. 54793289 ,
  1403. 56937425 ,
  1404. 59120507 ,
  1405. 61342457 ,
  1406. 63603200 ,
  1407. 65902662 ,
  1408. 68240771 ,
  1409. 70617456 ,
  1410. 73032647 ,
  1411. 75486277 ,
  1412. 77978278 ,
  1413. 80508585 ,
  1414. 83077133 ,
  1415. 85683861 ,
  1416. 88328704 ,
  1417. 91011604 ,
  1418. 93732499 ,
  1419. 96491330 ,
  1420. 99288041 ,
  1421. 102122574 ,
  1422. 104994872 ,
  1423. 107904882 ,
  1424. 110852548 ,
  1425. 113837817 ,
  1426. 116860637 ,
  1427. 119920957 ,
  1428. 123018724 ,
  1429. 126153889 ,
  1430. 129326402 ,
  1431. 132536214 ,
  1432. 135783278 ,
  1433. 139067546 ,
  1434. 142388971 ,
  1435. 145747507 ,
  1436. 149143109 ,
  1437. 152575731 ,
  1438. 156045330 ,
  1439. 159551861 ,
  1440. 163095281 ,
  1441. 166675549 ,
  1442. 170292621 ,
  1443. 173946456 ,
  1444. 177637013 ,
  1445. 181364252 ,
  1446. 185128132 ,
  1447. 188928614 ,
  1448. 192765659 ,
  1449. 196639227 ,
  1450. 200549282 ,
  1451. 204495785 ,
  1452. 208478698 ,
  1453. 212497985 ,
  1454. 216553609 ,
  1455. 220645535 ,
  1456. 224773725 ,
  1457. 228938146 ,
  1458. 233138761 ,
  1459. 237375537 ,
  1460. 241648439 ,
  1461. 245957433 ,
  1462. 250302486 ,
  1463. 254683564 ,
  1464. 259100634 ,
  1465. 263553665 ,
  1466. 268042623 ,
  1467. 272567477 ,
  1468. 277128195 ,
  1469. 281724746 ,
  1470. 286357099 ,
  1471. 291025223 ,
  1472. 295729087 ,
  1473. 300468663 ,
  1474. 305243919 ,
  1475. 310054825 ,
  1476. 314901354 ,
  1477. 319783476 ,
  1478. 324701161 ,
  1479. 329654381 ,
  1480. 334643109 ,
  1481. 339667315 ,
  1482. 344726973 ,
  1483. 349822054 ,
  1484. 354952532 ,
  1485. 360118378 ,
  1486. 365319567 ,
  1487. 370556071 ,
  1488. 375827865 ,
  1489. 381134921 ,
  1490. 386477214 ,
  1491. 391854718 ,
  1492. 397267408 ,
  1493. 402715258 ,
  1494. 408198243 ,
  1495. 413716337 ,
  1496. 419269517 ,
  1497. 424857757 ,
  1498. 430481033 ,
  1499. 436139320 ,
  1500. 441832596 ,
  1501. 447560835 ,
  1502. 453324015 ,
  1503. 459122111 ,
  1504. 464955101 ,
  1505. 470822960 ,
  1506. 476725667 ,
  1507. 482663198 ,
  1508. 488635531 ,
  1509. 494642642 ,
  1510. 500684511 ,
  1511. 506761113 ,
  1512. 512872429 ,
  1513. 519018435 ,
  1514. 525199109 ,
  1515. 531414431 ,
  1516. 537664379 ,
  1517. 543948931 ,
  1518. 550268067 ,
  1519. 556621765 ,
  1520. 563010004 ,
  1521. 569432764 ,
  1522. 575890024 ,
  1523. 582381763 ,
  1524. 588907962 ,
  1525. 595468600 ,
  1526. 602063657 ,
  1527. 608693113 ,
  1528. 615356949 ,
  1529. 622055143 ,
  1530. 628787678 ,
  1531. 635554533 ,
  1532. 642355690 ,
  1533. 649191128 ,
  1534. 656060830 ,
  1535. 662964775 ,
  1536. 669902945 ,
  1537. 676875321 ,
  1538. 683881886 ,
  1539. 690922619 ,
  1540. 697997503 ,
  1541. 705106519 ,
  1542. 712249650 ,
  1543. 719426877 ,
  1544. 726638181 ,
  1545. 733883547 ,
  1546. 741162954 ,
  1547. 748476386 ,
  1548. 755823826 ,
  1549. 763205255 ,
  1550. 770620657 ,
  1551. 778070013 ,
  1552. 785553308 ,
  1553. 793070523 ,
  1554. 800621642 ,
  1555. 808206648 ,
  1556. 815825524 ,
  1557. 823478253 ,
  1558. 831164819 ,
  1559. 838885205 ,
  1560. 846639395 ,
  1561. 854427372 ,
  1562. 862249121 ,
  1563. 870104624 ,
  1564. 877993866 ,
  1565. 885916830 ,
  1566. 893873502 ,
  1567. 901863864 ,
  1568. 909887901 ,
  1569. 917945598 ,
  1570. 926036939 ,
  1571. 934161908 ,
  1572. 942320490 ,
  1573. 950512670 ,
  1574. 958738431 ,
  1575. 966997760 ,
  1576. 975290640 ,
  1577. 983617057 ,
  1578. 991976996 ,
  1579. 1000370441 ,
  1580. 1008797379 ,
  1581. 1017257794 ,
  1582. 1025751671 ,
  1583. 1034278995 ,
  1584. 1042839753 ,
  1585. 1051433930 ,
  1586. 1060061511 ,
  1587. 1068722482 ,
  1588. 1077416829 ,
  1589. 1086144537 ,
  1590. 1094905592 ,
  1591. 1103699981 ,
  1592. 1112527688 ,
  1593. 1121388701 ,
  1594. 1130283005 ,
  1595. 1139210586 ,
  1596. 1148171431 ,
  1597. 1157165525 ,
  1598. 1166192856 ,
  1599. 1175253410 ,
  1600. 1184347173 ,
  1601. 1193474131 ,
  1602. 1202634272 ,
  1603. 1211827582 ,
  1604. 1221054047 ,
  1605. 1230313654 ,
  1606. 1239606391 ,
  1607. 1248932244 ,
  1608. 1258291200 ,
  1609. };
  1610. #endif /* START_MTP_2P2_GAMMA_H */