Olena-patches
Threads by month
- ----- 2025 -----
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
April 2013
- 7 participants
- 363 discussions
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Olena, a generic and efficient image processing platform".
The branch exp/newdoc has been updated
via b14fad47f31cd31e47452c2997c4e80377eb7669 (commit)
via 1cd17e32b4fc61239195c688394cd92c3fc44167 (commit)
via efabb3bcb01ae366f463abf4fa14303efce4cda7 (commit)
via 276ad3db3217651981534e7a5908c0b8954d2502 (commit)
via bd478ecf1a53fd1c42b3c267f220aab3f146c4ca (commit)
via 81824c6b2a74d526744302b38a5479989c961f76 (commit)
via 92344248afe3b83428d1db46b156e745451e5ce5 (commit)
via ce97be8f1743324174f965410d1249994eba3e8d (commit)
via 289bcac105fb22c53d37d73a32c1f1402bc5c358 (commit)
via 83d9bff14f8b49b346c6342855d612a37c58cfd0 (commit)
via aa8db8d1be7bdf624312762a1630355d3fec543a (commit)
via e2f4e925bc23a4698abe15108d0ec754bbf67c29 (commit)
via 07333d2c000f65cfabcc4702b704b5abf4126278 (commit)
via 1a302adfd37c3aebe33a477d64cb0304150e37c9 (commit)
via b0051dcaccff406bf3176e17f4abfb95a71822dd (commit)
via 13b61491d6933f69e26cb421e1448f094351cae9 (commit)
via 77d7b3a938fe16dc7216117a80158007706e1236 (commit)
via 9cf87e52f51dbc3344e7aca36a884b8ae0892bed (commit)
via ce8691742261a97e214f5e99024e319cc9e761e2 (commit)
via 9df9980fe8d9d1b2e7cd68ef41aa6bad00f261c0 (commit)
via 002e0e957be01c8a22605d884b9b1dd591e1ee5b (commit)
via 592a16814171acc776241e80db25673125619bda (commit)
via 979d54b458e41fc3bac8f347742d6a42a03df2a1 (commit)
via 22f1827a91aba6dd05a98e784d53d4e76a1498cd (commit)
via 733ef50fa2606d41c09badbe0f2204d16a806d61 (commit)
via 02fa89bb503205bdda6c35b477db63d637e36d31 (commit)
via 1b8c3754d59e04b11e38b19232b138e8cc42f8eb (commit)
via 11438e15a022b02513161e8191679c4409d6b4be (commit)
via 07973346bd57c8bef7e0346c28b6469da5db91e2 (commit)
via b3c468886a96090e094f3c7d79e48e489954997f (commit)
via 81e04f2a8a3166a165634524c0a73d7e9dc4f952 (commit)
via 0987e7f285f366e8129e1c1d439367e269932279 (commit)
via 17105bad97c497797a9f5ac257aca1b25c9a3678 (commit)
via 1c93a61f5b62f6ca9d96b8349d5140874adc0bce (commit)
via 3a7edf0e93669104e45a36ee5face28103dd3cd8 (commit)
via cfaf93d08cc8b366906aeffc7fca9a4a3ee7ec72 (commit)
via 7b919388ab17f9e0f6ce5b6c19755a05760737da (commit)
via 61a8584dff43f330bab0a81207b4326d2c73ab1e (commit)
via 57c088c4a0139017d368dfe6f82c85108645daba (commit)
via 26507619401189aa3f0009a4e90f288028806930 (commit)
via ab7704c3b8725fe5526f0c04ddd89f5058aeec90 (commit)
via 720b4ac09e8e1ce997da5f3a3055dd5e9506a310 (commit)
via d76275d6454849a89f1a8e443856b39ddb889efd (commit)
via fec02485ded083e6fa7220192b53aaf82c587da9 (commit)
via 87a4a347258b9acf3cb1c662e5327a15250c642c (commit)
via ac8d6ba7597e20b07f1b7401cdcf5e926c22dca1 (commit)
via dde0e23d75e77e157992b656322044fad5c1f9e1 (commit)
via 6750f67b683f4d2a3d77f2413f8282466806807b (commit)
via 26b7669e890316c16cdf04ef1ccd8bdcd68b00f1 (commit)
via af9984876b7de257a610bfddec7b20235b026850 (commit)
via a35bff38b91abc202b9a18ba45922423c3c85662 (commit)
via 5a67b47545170fd6ad5ce94bd1cb5b7edca55e9b (commit)
via 731ab1a14efd7c99632127b3f7515bfb2d53c98b (commit)
via 375b4e61b2c1bf292088f7ff3b5f020180a72770 (commit)
via 6487a9dba1b813f2d50df08d397ec3080e0be7bb (commit)
via 90aac13355f5f5518d291a41a81550471d75c97a (commit)
via 5afba3842bb7cf3e22d63a13326e3907a4a9c972 (commit)
via 4a0ee16f50566efb2180ae81764141bed236563b (commit)
via a1c740d02538ff9dd3f68b07cd561c67af3cabdc (commit)
via d6ac69cac5c35e0a47ace3f3b749c661e4c235b0 (commit)
via bc91dfb5dd05ce8b4f6b68f7f4eec1926b3aef0f (commit)
via 73774f40bae141b0b7cf507d6df8893279a46ea7 (commit)
via c173d75dba1a8d8a03c8fee43947145d2570ab64 (commit)
via 52ab07c654f83ee4968524f7e372599b762df21d (commit)
via 6a7f9e5a35954f24d74bd276193ddd257b230cac (commit)
via 8b40c86f5258ba437638b5e5d5d538ff3dcbe1c1 (commit)
via 3e5f8ace4ca6039eb22a587f463ec41014c66eec (commit)
via e048c0b0d60d75ca4458f7235179dfa283580fb2 (commit)
via 7c236c79dc621193afcf23c2ad0689a280b9e868 (commit)
via 42ff098b62214a8e3ff9984c6c554b051a93ad2e (commit)
via 04402f0a54a522e695cb3e492edc9cc9d280daf4 (commit)
via 0b442682e8f59c4e411ff0590b203bb1dcf04668 (commit)
via 5528729cfe130744aa8aa7d317af9d3a58146a2b (commit)
via cf3ad8f314f476fcac9768d2663d9afcd7661ef4 (commit)
via c57275b2a386c1fc291b4e1e800023eed552942d (commit)
via 409c1433fbb3845715a9f5b817f65d70ad161d90 (commit)
via 09c6148c1a2c9eda201e638b1ab6f5ebc7082745 (commit)
via c72cffc104bdffa902ebbdedc993ad5ddae8af5d (commit)
via cdcfe668b182ed328bae6dbd0d14528f72c50d4d (commit)
via c0f8681d2958afb11d3b4f5585de4804bc6524d4 (commit)
via 2f40e47c6660deb2d8f12c2ad403fffff6b44eb1 (commit)
via e3089252d712c2b0839f9798a98a99f690f959e2 (commit)
via b5d61ebe4059d8e89e1a40d7fd26545219172813 (commit)
via 5e4d3053fa3f8c92e02cbef811673b7c2a79040a (commit)
via 272ccdacb752b2352c26decdd648cbcf85b42b53 (commit)
via 73c3a74aea4d833e899baf0d69cd88e2c597908f (commit)
via dc7c3b9944d4b691b2099f10fba965714f82014f (commit)
via 5cd01f612dd0d318156ed7f7d369153f52a084d9 (commit)
via 5f3a088f08e99c16191c8e9461ae7052e9db8562 (commit)
via ea9c608068f019514e068fa629b18e53085ae5a3 (commit)
via d7ed1add8edcb87c4f347ad8ba4857057b3e05dc (commit)
via 2d4989772890ec1e0cb12f9036e8965066eaa866 (commit)
via 13dc18679d5dc70e9e678d0ea653e67254ecadb2 (commit)
via dac3105f148502b55ddf0130389af6c099e07a16 (commit)
via 6323abc221199973f4ba5e85e8ca4f8def31a374 (commit)
via 973a00494322c776a9dff16acce72f0f52480039 (commit)
via 1a77aaae579961af4febf45e7210595753a1d155 (commit)
via 66f08d0c354d1d55afd75438f6a0b1a4552b5ad2 (commit)
via 22dd51887a8e6df6a74c5e3249a815265e974572 (commit)
via d86fc9a3c534f3b71711d1daea4c46a081863f41 (commit)
via 055f40a10996f1d64c9c2577f395a46409b49e2c (commit)
via a74409363a9941dec0c4a86205cb5f22bdc2dab2 (commit)
via e0089be56aed528efb113d4f804adc7b0eeca65d (commit)
via c6262b2dd178ba0b4cb6e6b9135d3006b287b98b (commit)
via d8058ce8214e68759c706366cb5d331d9eb38f91 (commit)
via fd193702df57265383453bbf942b1fa651ed3caf (commit)
via 5d57444eef6406777b20a7ea545a2491d58ea0d0 (commit)
via 00f9215f95b48cba5b7518eb0ec8c2ccc50368dd (commit)
via c1877f8b356b8a6ba234852313828f06b61bf771 (commit)
via 62fccd14b6863c79ec96ef7102ff0f2bd38b4812 (commit)
via 2fe026c16ad4d9df4266c16993684576ba8b495d (commit)
via f92264244ca22751936f2f909ab911a2e6d9753f (commit)
via 81bdc8aae8645f38551682ac4ac8e2657cc7b3d9 (commit)
via b375ab3e82b52e4a07a4590c02272c718f8ffa6c (commit)
via 4938c8d839f9d4994cf577d8dd57906636d9d25d (commit)
via 1a432a30f9344628f2082772d29ac4b8f03a0cd3 (commit)
via 27abe98ff8779d1e01e11c55f740b079f69b3c35 (commit)
via e5b58eb213b3a88a2be6934e9e8f1e3e55d8bd64 (commit)
via 7e08fb78a5055a9adf5fba277a9a0c429b20ce5f (commit)
via 2d8786ecfd45afcdf0bac86ddbcb0e3029f17f2f (commit)
via 9a0159551ff9e29e5c8c52e1f791db137f44c670 (commit)
via 66cb484adc91ca65c034f198baae67fe20e83262 (commit)
via eef02666ee55a78e5c4fe8510149b26718f43f65 (commit)
via 1750bc523cdc01e1717bc168644a16524b77fa1e (commit)
via 961ef463d342b373a63c1c570568e44e564012b9 (commit)
via ae155c6e37215fcd722f44a82573729e89647108 (commit)
via 92262d2499f2eb25a2aa6919ac58c240d66a10d4 (commit)
via 5dd49fd54cb0aefc62307d2c44bb2aa2bad9bc13 (commit)
via 16506fd482cea6aae09c272d70c0cd12c9d11703 (commit)
via ca6ca83dc3fae9efe685fe774df68ddf6793acbe (commit)
via 48849ed3b8a9749bb310f12cccf70bdc8429c61a (commit)
via 1ec09726a5670c541c9ea5f57b832a6374ca09c0 (commit)
via 9a540a39c053b5a730edb6ccff5d9871bdfa1274 (commit)
via c621ab07ea277fd211c6905aa581918891ba2174 (commit)
via 7c5e9ccb89f6f8b2d9ca6a2531386aef2201bd1a (commit)
via b6f55689cb59716f61c6331c3e3483185c42a410 (commit)
via 28448a695a1c10a090f7d03c395fdf203fe6cb7e (commit)
via ce984130f0fcb7959a6b62dd0f1e819e5d66728e (commit)
via 357035117860ee79ae50a628f4e91e496905e6fc (commit)
via 4b986216fbc85d5f86db7b55a85a28a9d25608f2 (commit)
via 1995b37c1c05412c38ae84ba0528e5510d379409 (commit)
via e45787c19b8816a54b4a57f514eae3a7c0a5a219 (commit)
via 3164abc5750dc9dbf92c86a4b6d006a26126c8ec (commit)
via e435b9ba61dddbb786e339dbef3d593316c0d3e8 (commit)
via d48b8a4ae1e70487c3d8cd3370090e8ab132eb98 (commit)
via 24d3d373e86a8db51b64e2b2ff640cbec1486455 (commit)
via 153144dc8928d799662d0398a48e06eec842a8ed (commit)
via 4da0078b5a812846e1d6be5a78b22dcb15b2c448 (commit)
via e4ad8e3807e7e42cdeeb9e24cd0419b87852dd3c (commit)
via 64b6e9d0c557c719707c6ee057fc96160a1fd38e (commit)
via 40eaf23f6c4f0798ff624b6efd24214f63ccc947 (commit)
via 65886835663c0a8f85aa56071b1ca0b61dfee5dc (commit)
via 2a9b240ff2100b6f9d02969deb754f58d701e251 (commit)
via 62dbacde6331505524aa418e00c4ec111f679799 (commit)
via effa1b7572027494c649d84e43bd0d066b8317e4 (commit)
via 1d131cfacc87cbe0485582a92da949908d46f41f (commit)
via af1e2e373ae8d18c3ccef3297aa00547af4ba28e (commit)
via cb4de64dddfb5e43bc9a5ba57ffede6cb54a8256 (commit)
via 85cf60236cf2f22ca0a263056bb0952321275174 (commit)
via 59845993406e6a7db4a4dee30fc2798011d63931 (commit)
via 57bfad3c334cbb4e891bf3330531f68b739b5c4a (commit)
via 3f878aba04012c1069a3ecc4f240a7c87f76729c (commit)
via 22a49ac2882aba28798e8eaf02e8f161f4f0edc3 (commit)
via 9352b4dd5c97cc913eabcc31277270c7aa2b9729 (commit)
via 993220a95e21a684ee0a378873f8702b45d8a852 (commit)
via 766aeea463fc2ec7c091dae0e300f9baa9716675 (commit)
via 1ee4cecf9d02cb75521fb65fc734c27a0c7d9592 (commit)
from 8587fe0a3705ed9c0d0c13fe4920e1fd2be79166 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
b14fad4 Make template parameter name more consistant with naming conventions.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 194 ++++-
GScribo/BUGS | 1 -
GScribo/GScribo.pro | 83 --
GScribo/GScribo.pro.user | 405 -------
GScribo/GScribo.pro.user.1.3 | 283 -----
GScribo/PagesWidget/pagesdelegate.cpp | 20 -
GScribo/PagesWidget/pagesdelegate.h | 18 -
GScribo/PagesWidget/pagesmodel.cpp | 55 -
GScribo/PagesWidget/pagesmodel.h | 43 -
GScribo/PagesWidget/pageswidget.cpp | 49 -
GScribo/PagesWidget/pageswidget.h | 55 -
GScribo/Preferences/generaloptions.cpp | 44 -
GScribo/Preferences/generaloptions.h | 34 -
GScribo/Preferences/generaloptions.ui | 100 --
GScribo/Preferences/ocroptions.cpp | 53 -
GScribo/Preferences/ocroptions.h | 33 -
GScribo/Preferences/ocroptions.ui | 62 --
GScribo/Preferences/optionwidget.h | 15 -
GScribo/Preferences/preferencesdialog.cpp | 98 --
GScribo/Preferences/preferencesdialog.h | 42 -
GScribo/Preferences/preferencesdialog.ui | 121 --
GScribo/Preferences/preprocessingoptions.cpp | 45 -
GScribo/Preferences/preprocessingoptions.h | 32 -
GScribo/Preferences/preprocessingoptions.ui | 76 --
GScribo/Preferences/segmentationoptions.cpp | 33 -
GScribo/Preferences/segmentationoptions.h | 31 -
GScribo/Preferences/segmentationoptions.ui | 52 -
GScribo/Processing/preprocess.cpp | 11 -
GScribo/Processing/preprocess.h | 26 -
GScribo/Processing/process.cpp | 21 -
GScribo/Processing/process.h | 29 -
GScribo/Processing/progressdialog.cpp | 16 -
GScribo/Processing/progressdialog.h | 22 -
GScribo/Processing/runner.cpp | 183 ----
GScribo/Processing/runner.h | 58 -
GScribo/Rendering/abstractregionitem.h | 13 -
GScribo/Rendering/backgroundtexture.h | 12 -
GScribo/Rendering/graphicsview.cpp | 150 ---
GScribo/Rendering/graphicsview.h | 43 -
GScribo/Rendering/regionitem.cpp | 59 -
GScribo/Rendering/regionitem.h | 80 --
GScribo/Rendering/rootgraphicsitem.h | 30 -
GScribo/Rendering/scene.cpp | 273 -----
GScribo/Rendering/scene.h | 118 --
GScribo/Rendering/selection.cpp | 36 -
GScribo/Rendering/selection.h | 20 -
GScribo/TODO | 100 --
GScribo/XmlWidget/attributesmodel.cpp | 69 --
GScribo/XmlWidget/attributesmodel.h | 48 -
GScribo/XmlWidget/selectionproxy.h | 47 -
GScribo/XmlWidget/xmlattributes.cpp | 23 -
GScribo/XmlWidget/xmlattributes.h | 33 -
GScribo/XmlWidget/xmldelegate.h | 30 -
GScribo/XmlWidget/xmlitem.cpp | 43 -
GScribo/XmlWidget/xmlitem.h | 90 --
GScribo/XmlWidget/xmlmodel.cpp | 87 --
GScribo/XmlWidget/xmlmodel.h | 44 -
GScribo/XmlWidget/xmlview.cpp | 88 --
GScribo/XmlWidget/xmlview.h | 79 --
GScribo/XmlWidget/xmlwidget.cpp | 34 -
GScribo/XmlWidget/xmlwidget.h | 54 -
GScribo/aboutdialog.h | 25 -
GScribo/aboutdialog.ui | 136 ---
GScribo/configs.h | 134 ---
GScribo/dir.h | 7 -
GScribo/dockwidget.h | 22 -
GScribo/main.cpp | 23 -
GScribo/mainwindow.cpp | 415 -------
GScribo/mainwindow.h | 120 --
GScribo/mainwindow.ui | 35 -
GScribo/region.h | 56 -
GScribo/regionwidget.cpp | 70 --
GScribo/regionwidget.h | 40 -
GScribo/variantpointer.h | 19 -
GScribo/xml.cpp | 206 ----
GScribo/xml.h | 93 --
Makefile.am | 30 +-
NEWS | 18 +-
configure.ac | 19 +-
distrib/macports/Portfile.in | 4 +-
doc/Doxyfile.in | 8 +-
doc/Makefile.am | 25 +-
doc/doc.bib | 40 +-
doc/header.html | 2 +-
doc/mainpage.dox | 4 +-
milena/ChangeLog | 1147 ++++++++++++++++++++
milena/apps/mesh-segm-skel/Makefile.am | 2 +-
.../mesh-segm-skel/mesh-complex-max-curv-segm.cc | 7 +-
milena/apps/mesh-segm-skel/mesh-complex-segm.cc | 7 +-
milena/apps/morphers/Makefile.am | 2 +
milena/apps/morphers/image2d-skel.hh | 8 +-
.../apps/papers/levillain.09.ismm/classif-graph.cc | 4 +-
milena/apps/papers/levillain.09.ismm/io.hh | 4 -
milena/doc/Doxyfile.in | 60 +-
milena/doc/DoxygenLayout.xml | 4 +-
milena/doc/Makefile.am | 80 +-
milena/doc/benchmark/canvas.cc | 6 +-
milena/doc/examples.dox | 14 +
milena/doc/examples/multi_files_f1.cc.raw | 6 +
milena/doc/examples/multi_files_f2.cc.raw | 6 +
milena/doc/examples/multi_files_main.cc.raw | 16 +
milena/doc/examples/multiple_def.cc.raw | 9 +
.../examples/split/tuto3_first_routine-1.cc.raw | 3 +-
.../examples/split/tuto3_first_routine-3.cc.raw | 2 +-
.../examples/split/tuto3_first_routine-8.cc.raw | 1 -
milena/doc/examples/split/tuto3_trace-1.cc.raw | 2 +-
milena/doc/examples/split/tuto3_trace-2.cc.raw | 2 +-
milena/doc/examples/trash/tuto_bis.cc | 11 +-
milena/doc/examples/trash/tuto_one.cc | 4 +-
milena/doc/examples/tuto3/first_routine.cc | 6 +-
milena/doc/examples/tuto3/trace.cc | 6 +-
milena/doc/examples/typenametemplate.cc.raw | 1 +
milena/doc/examples/undef_global_vars.cc.raw | 1 +
milena/doc/examples/wrongvaluetype.cc.raw | 2 +
milena/doc/img/2dgrid.png | Bin 0 -> 6092 bytes
milena/doc/mainpage.dox | 1 -
milena/doc/mln/convert.dox | 13 +
milena/doc/mln/core/alias/box1d.dox | 25 +
milena/doc/mln/core/alias/box2d.dox | 25 +
milena/doc/mln/core/alias/box2d_h.dox | 25 +
milena/doc/mln/core/alias/box3d.dox | 26 +
milena/doc/mln/core/alias/complex_geometry.dox | 31 +
milena/doc/mln/core/alias/complex_image.dox | 88 ++
milena/doc/mln/core/alias/dpoint1d.dox | 30 +
milena/doc/mln/core/alias/dpoint2d.dox | 27 +
milena/doc/mln/core/alias/dpoint3d.dox | 27 +
milena/doc/mln/core/alias/neighb1d.dox | 16 +
milena/doc/mln/core/alias/neighb2d.dox | 16 +
milena/doc/mln/core/alias/neighb3d.dox | 16 +
milena/doc/mln/core/alias/p_run2d.dox | 18 +
milena/doc/mln/core/alias/p_runs2d.dox | 12 +
milena/doc/mln/core/alias/point1d.dox | 61 +
milena/doc/mln/core/alias/point2d.dox | 61 +
milena/doc/mln/core/alias/point2d_h.dox | 63 ++
milena/doc/mln/core/alias/point3d.dox | 62 ++
milena/doc/mln/core/alias/vec2d.dox | 48 +
milena/doc/mln/core/alias/vec3d.dox | 48 +
milena/doc/mln/core/alias/w_window1d_float.dox | 12 +
milena/doc/mln/core/alias/w_window1d_int.dox | 12 +
milena/doc/mln/core/alias/w_window2d_float.dox | 12 +
milena/doc/mln/core/alias/w_window2d_int.dox | 12 +
milena/doc/mln/core/alias/w_window3d_float.dox | 12 +
milena/doc/mln/core/alias/w_window3d_int.dox | 12 +
milena/doc/mln/core/alias/window1d.dox | 12 +
milena/doc/mln/core/alias/window2d.dox | 12 +
milena/doc/mln/core/alias/window3d.dox | 12 +
milena/doc/mln/core/concept/concept.dox | 6 +
milena/doc/mln/io/io.dox | 7 +
milena/doc/mln/labeling/labeling.dox | 6 +
milena/doc/mln/value/hsl.dox | 37 +
milena/doc/mln/value/int_s16.dox | 24 +
milena/doc/mln/value/int_s24.dox | 24 +
milena/doc/mln/value/int_s32.dox | 24 +
milena/doc/mln/value/int_s8.dox | 24 +
milena/doc/mln/value/int_u12.dox | 24 +
milena/doc/mln/value/int_u16.dox | 24 +
milena/doc/mln/value/int_u24.dox | 24 +
milena/doc/mln/value/int_u32.dox | 24 +
milena/doc/mln/value/int_u8.dox | 24 +
milena/doc/mln/value/label_16.dox | 21 +
milena/doc/mln/value/label_32.dox | 21 +
milena/doc/mln/value/label_8.dox | 21 +
milena/doc/mln/value/rgb16.dox | 69 ++
milena/doc/mln/value/rgb8.dox | 69 ++
milena/doc/mln/value/value.dox | 43 +
milena/doc/mln/win/disk2d.dox | 17 +
milena/doc/mln/win/hline2d.dox | 17 +
milena/doc/mln/win/segment1d.dox | 17 +
milena/doc/mln/win/sline3d.dox | 17 +
milena/doc/mln/win/sphere3d.dox | 17 +
milena/doc/mln/win/vline2d.dox | 17 +
milena/doc/ref-guide.tex | 69 +-
milena/headers.mk | 22 +-
milena/mln/accu/compute.hh | 9 +-
milena/mln/accu/image/init.hh | 9 +-
milena/mln/accu/image/set_value.hh | 18 +-
milena/mln/accu/image/take.hh | 18 +-
milena/mln/accu/image/take_as_init.hh | 18 +-
milena/mln/accu/image/take_n_times.hh | 18 +-
milena/mln/accu/image/to_result.hh | 9 +-
milena/mln/accu/image/untake.hh | 18 +-
milena/mln/accu/stat/histo3d_rgb.hh | 13 +-
milena/mln/accu/transform.hh | 12 +-
milena/mln/accu/transform_diagonal.hh | 6 +-
milena/mln/accu/transform_directional.hh | 6 +-
milena/mln/accu/transform_line.hh | 15 +-
milena/mln/accu/transform_snake.hh | 6 +-
milena/mln/accu/transform_stop.hh | 12 +-
milena/mln/all.hh | 2 +-
milena/mln/arith/diff_abs.hh | 3 +-
milena/mln/arith/div.hh | 18 +-
milena/mln/arith/div.spe.hh | 6 +-
milena/mln/arith/min.hh | 16 +-
milena/mln/arith/min.spe.hh | 6 +-
milena/mln/arith/minus.hh | 33 +-
milena/mln/arith/plus.hh | 36 +-
milena/mln/arith/revert.hh | 9 +-
milena/mln/arith/revert.spe.hh | 8 +-
milena/mln/arith/times.hh | 18 +-
milena/mln/arith/times.spe.hh | 6 +-
milena/mln/binarization/binarization.hh | 6 +-
milena/mln/binarization/threshold.hh | 3 +-
milena/mln/border/adjust.hh | 3 +-
milena/mln/border/duplicate.hh | 12 +-
milena/mln/border/equalize.hh | 6 +-
milena/mln/border/fill.hh | 9 +-
milena/mln/border/find.hh | 3 +-
milena/mln/border/get.hh | 9 +-
milena/mln/border/mirror.hh | 15 +-
milena/mln/border/resize.hh | 3 +-
milena/mln/border/resize_equal.hh | 3 +-
milena/mln/canvas/browsing/backdiagonal2d.hh | 10 +-
milena/mln/canvas/browsing/diagonal2d.hh | 3 +-
.../canvas/browsing/dir_struct_elt_incr_update.hh | 3 +-
milena/mln/canvas/browsing/directional.hh | 3 +-
milena/mln/canvas/browsing/fwd.hh | 3 +-
milena/mln/canvas/browsing/hyper_directional.hh | 3 +-
.../canvas/browsing/internal/graph_first_search.hh | 3 +-
milena/mln/canvas/browsing/snake_fwd.hh | 3 +-
milena/mln/canvas/browsing/snake_generic.hh | 3 +-
milena/mln/canvas/browsing/snake_vert.hh | 3 +-
milena/mln/canvas/distance_front.hh | 9 +-
milena/mln/canvas/distance_geodesic.hh | 9 +-
milena/mln/canvas/labeling/blobs.hh | 7 +-
milena/mln/canvas/labeling/generic.hh | 12 +-
milena/mln/canvas/labeling/sorted.hh | 8 +-
milena/mln/canvas/labeling/video.hh | 10 +-
milena/mln/canvas/morpho/attribute_filter.hh | 6 +-
milena/mln/clustering/kmean_rgb.hh | 61 +-
milena/mln/convert/to.hh | 7 +-
milena/mln/convert/to_image.hh | 10 +-
milena/mln/convert/to_qimage.hh | 3 +-
milena/mln/convert/to_qimage_nocopy.hh | 3 +-
milena/mln/core/alias/box1d.hh | 43 +-
milena/mln/core/alias/box2d.hh | 50 +-
milena/mln/core/alias/box3d.hh | 53 +-
milena/mln/core/alias/complex_geometry.hh | 35 +-
milena/mln/core/alias/complex_image.hh | 121 ++-
milena/mln/core/alias/dpoint1d.hh | 39 +-
milena/mln/core/alias/dpoint2d.hh | 42 +-
milena/mln/core/alias/dpoint3d.hh | 42 +-
milena/mln/core/alias/neighb1d.hh | 71 ++-
milena/mln/core/alias/neighb2d.hh | 97 ++-
milena/mln/core/alias/neighb3d.hh | 98 ++-
milena/mln/core/alias/p_run2d.hh | 14 +-
milena/mln/core/alias/p_runs2d.hh | 14 +-
milena/mln/core/alias/point1d.hh | 28 +-
milena/mln/core/alias/point2d.hh | 30 +-
milena/mln/core/alias/point3d.hh | 30 +-
milena/mln/core/alias/vec2d.hh | 26 +-
milena/mln/core/alias/vec3d.hh | 25 +-
milena/mln/core/alias/w_window1d_float.hh | 19 +-
milena/mln/core/alias/w_window1d_int.hh | 19 +-
milena/mln/core/alias/w_window2d_float.hh | 19 +-
milena/mln/core/alias/w_window2d_int.hh | 19 +-
milena/mln/core/alias/w_window3d_float.hh | 19 +-
milena/mln/core/alias/w_window3d_int.hh | 19 +-
milena/mln/core/alias/window1d.hh | 55 +-
milena/mln/core/alias/window2d.hh | 55 +-
milena/mln/core/alias/window3d.hh | 59 +-
milena/mln/core/box_runend_piter.hh | 11 +-
milena/mln/core/box_runstart_piter.hh | 8 +
milena/mln/core/concept/accumulator.hh | 55 +-
milena/mln/core/concept/box.hh | 15 +-
milena/mln/core/concept/browsing.hh | 14 +-
milena/mln/core/concept/delta_point_site.hh | 15 +-
milena/mln/core/concept/dpoint.hh | 10 +-
milena/mln/core/concept/function.hh | 33 +-
milena/mln/core/concept/gdpoint.hh | 23 +-
milena/mln/core/concept/generalized_pixel.hh | 25 +-
milena/mln/core/concept/gpoint.hh | 26 +-
milena/mln/core/concept/graph.hh | 17 +-
milena/mln/core/concept/image.hh | 24 +-
milena/mln/core/concept/iterator.hh | 13 +-
milena/mln/core/concept/literal.hh | 14 +-
milena/mln/core/concept/mesh.hh | 11 +-
milena/mln/core/concept/meta_accumulator.hh | 16 +-
milena/mln/core/concept/meta_function.hh | 20 +-
milena/mln/core/concept/neighborhood.hh | 27 +-
milena/mln/core/concept/object.hh | 19 +-
milena/mln/core/concept/pixel_iterator.hh | 19 +-
milena/mln/core/concept/point.hh | 22 +-
milena/mln/core/concept/point_site.hh | 53 +-
milena/mln/core/concept/proxy.hh | 19 +-
milena/mln/core/concept/pseudo_site.hh | 21 +-
milena/mln/core/concept/regular_grid.hh | 8 +-
milena/mln/core/concept/site.hh | 13 +-
milena/mln/core/concept/site_iterator.hh | 22 +-
milena/mln/core/concept/site_proxy.hh | 23 +-
milena/mln/core/concept/site_set.hh | 21 +-
milena/mln/core/concept/value.hh | 17 +-
milena/mln/core/concept/value_iterator.hh | 20 +-
milena/mln/core/concept/value_set.hh | 19 +-
milena/mln/core/concept/weighted_window.hh | 21 +-
milena/mln/core/concept/window.hh | 28 +-
milena/mln/core/dpoints_pixter.hh | 16 +-
milena/mln/core/dpsites_piter.hh | 14 +-
milena/mln/core/faces_psite.hh | 7 +-
milena/mln/core/image/ch_piter.hh | 6 +-
milena/mln/core/image/complex_image.hh | 8 +-
.../mln/core/image/complex_neighborhood_piter.hh | 6 +-
milena/mln/core/image/complex_window_piter.hh | 6 +-
milena/mln/core/image/dmorph/extended.hh | 10 +-
milena/mln/core/image/dmorph/extension_fun.hh | 11 +-
milena/mln/core/image/dmorph/extension_ima.hh | 10 +-
milena/mln/core/image/dmorph/extension_val.hh | 9 +-
milena/mln/core/image/dmorph/hexa.hh | 9 +-
milena/mln/core/image/dmorph/hexa_piter.hh | 7 +-
milena/mln/core/image/dmorph/image_if.hh | 7 +-
milena/mln/core/image/dmorph/p2p_image.hh | 5 +-
milena/mln/core/image/dmorph/slice_image.hh | 7 +-
milena/mln/core/image/dmorph/sub_image.hh | 11 +-
milena/mln/core/image/dmorph/sub_image_if.hh | 8 +-
milena/mln/core/image/dmorph/transformed_image.hh | 5 +-
milena/mln/core/image/dmorph/unproject_image.hh | 7 +-
milena/mln/core/image/edge_image.hh | 9 +-
milena/mln/core/image/flat_image.hh | 12 +-
milena/mln/core/image/graph_window_if_piter.hh | 13 +-
milena/mln/core/image/graph_window_piter.hh | 10 +-
milena/mln/core/image/image1d.hh | 288 +++---
milena/mln/core/image/image2d.hh | 316 +++---
milena/mln/core/image/image3d.hh | 304 +++---
milena/mln/core/image/imorph/decorated_image.hh | 9 +-
milena/mln/core/image/imorph/interpolated.hh | 7 +-
milena/mln/core/image/imorph/labeled_image.hh | 11 +-
milena/mln/core/image/imorph/lazy_image.hh | 5 +-
milena/mln/core/image/imorph/plain.hh | 5 +-
milena/mln/core/image/imorph/safe.hh | 5 +-
milena/mln/core/image/imorph/tr_image.hh | 5 +-
milena/mln/core/image/vertex_image.hh | 7 +-
milena/mln/core/image/vmorph/cast_image.hh | 7 +-
milena/mln/core/image/vmorph/fun_image.hh | 5 +-
milena/mln/core/image/vmorph/thru_image.hh | 7 +-
milena/mln/core/image/vmorph/violent_cast_image.hh | 5 +-
milena/mln/core/internal/check/image_fastest.hh | 26 +-
milena/mln/core/internal/classical_window_base.hh | 5 +-
milena/mln/core/internal/coord_impl.hh | 40 +-
milena/mln/core/internal/graph_psite_base.hh | 5 +-
milena/mln/core/internal/image_base.hh | 15 +-
milena/mln/core/internal/image_identity.hh | 5 +-
milena/mln/core/internal/image_morpher.hh | 13 +-
milena/mln/core/internal/labeled_image_base.hh | 4 +-
milena/mln/core/internal/neighb_base.hh | 8 +-
milena/mln/core/internal/neighb_niter_base.hh | 8 +-
milena/mln/core/internal/p_complex_piter_base.hh | 5 +-
milena/mln/core/internal/piter_adaptor.hh | 13 +-
milena/mln/core/internal/pseudo_site_base.hh | 3 +-
milena/mln/core/internal/run_image.hh | 5 +-
milena/mln/core/internal/set_of.hh | 7 +-
milena/mln/core/internal/site_iterator_base.hh | 7 +-
.../core/internal/site_relative_iterator_base.hh | 9 +-
milena/mln/core/internal/site_set_base.hh | 5 +-
milena/mln/core/internal/site_set_impl.hh | 3 +-
milena/mln/core/internal/site_set_iterator_base.hh | 12 +-
milena/mln/core/internal/window_base.hh | 12 +-
milena/mln/core/mixed_neighb.hh | 11 +-
milena/mln/core/neighb.hh | 10 +-
milena/mln/core/pixter1d.hh | 8 +-
milena/mln/core/pixter2d.hh | 12 +-
milena/mln/core/pixter3d.hh | 10 +-
milena/mln/core/point.hh | 12 +-
milena/mln/core/routine/duplicate.hh | 3 +-
milena/mln/core/routine/init.hh | 3 +-
milena/mln/core/routine/initialize.hh | 7 +-
milena/mln/core/site_set/box.hh | 3 +-
milena/mln/core/site_set/box_piter.hh | 10 +-
milena/mln/core/site_set/complex_psite.hh | 14 +-
milena/mln/core/site_set/p_array.hh | 25 +-
milena/mln/core/site_set/p_centered.hh | 6 +-
milena/mln/core/site_set/p_complex_piter.hh | 6 +-
milena/mln/core/site_set/p_double.hh | 15 +-
milena/mln/core/site_set/p_edges_psite.hh | 6 +-
milena/mln/core/site_set/p_faces.hh | 4 +-
milena/mln/core/site_set/p_graph_piter.hh | 9 +-
milena/mln/core/site_set/p_if.hh | 5 +-
milena/mln/core/site_set/p_if_piter.hh | 7 +-
milena/mln/core/site_set/p_image.hh | 11 +-
milena/mln/core/site_set/p_key.hh | 10 +-
milena/mln/core/site_set/p_line2d.hh | 3 +-
milena/mln/core/site_set/p_mutable_array_of.hh | 10 +-
milena/mln/core/site_set/p_priority.hh | 8 +-
milena/mln/core/site_set/p_run.hh | 7 +-
milena/mln/core/site_set/p_run_piter.hh | 10 +-
milena/mln/core/site_set/p_set_of.hh | 7 +-
milena/mln/core/site_set/p_transformed.hh | 6 +-
milena/mln/core/site_set/p_transformed_piter.hh | 7 +-
milena/mln/core/site_set/p_vaccess.hh | 6 +-
milena/mln/core/site_set/p_vertices_psite.hh | 6 +-
milena/mln/core/w_window.hh | 11 +-
milena/mln/core/window.hh | 8 +-
milena/mln/data/abs.hh | 6 +-
milena/mln/data/apply.hh | 6 +-
milena/mln/data/apply.spe.hh | 3 +-
milena/mln/data/approx/median.hh | 6 +-
milena/mln/data/compare.hh | 9 +-
milena/mln/data/compute.hh | 3 +-
milena/mln/data/compute_in_window.hh | 23 +-
milena/mln/data/convert.hh | 9 +-
milena/mln/data/fill.hh | 3 +-
milena/mln/data/fill_with_image.hh | 6 +-
milena/mln/data/fill_with_image.spe.hh | 12 +-
milena/mln/data/fill_with_value.hh | 6 +-
milena/mln/data/fill_with_value.spe.hh | 9 +-
milena/mln/data/median.hh | 9 +-
milena/mln/data/memcpy_.hh | 6 +-
milena/mln/data/memset_.hh | 9 +-
milena/mln/data/paste.hh | 6 +-
milena/mln/data/paste.spe.hh | 12 +-
milena/mln/data/paste_without_localization.hh | 15 +-
milena/mln/data/replace.hh | 6 +-
milena/mln/data/saturate.hh | 9 +-
milena/mln/data/sort_offsets.hh | 18 +-
milena/mln/data/split.hh | 3 +-
milena/mln/data/stretch.hh | 12 +-
milena/mln/data/to_enc.hh | 3 +-
milena/mln/data/transform.hh | 12 +-
milena/mln/data/transform.spe.hh | 24 +-
milena/mln/data/transform_inplace.hh | 30 +-
milena/mln/data/update.hh | 9 +-
milena/mln/data/wrap.hh | 3 +-
milena/mln/debug/draw_graph.hh | 26 +-
milena/mln/debug/iota.hh | 3 +-
milena/mln/debug/mosaic.hh | 3 +-
milena/mln/debug/println.hh | 3 +-
milena/mln/debug/put_word.hh | 4 +-
milena/mln/debug/slices_2d.hh | 6 +-
milena/mln/debug/superpose.hh | 3 +-
milena/mln/debug/trace.hh | 218 ++++
milena/mln/debug/z_order.hh | 3 +-
milena/mln/draw/dashed_line.hh | 8 +-
milena/mln/draw/line.hh | 8 +-
milena/mln/essential/routine.hh | 5 +-
milena/mln/extension/adjust.hh | 12 +-
milena/mln/extension/adjust_duplicate.hh | 12 +-
milena/mln/extension/adjust_fill.hh | 12 +-
milena/mln/extension/duplicate.hh | 3 +-
milena/mln/extension/fill.hh | 3 +-
milena/mln/fun/v2b/always_false.hh | 74 ++
milena/mln/fun/v2b/always_true.hh | 74 ++
milena/mln/fun/v2v/round_sat.hh | 4 +-
milena/mln/fun/x2x/composed.hh | 3 +-
milena/mln/geom/chamfer.hh | 3 +-
milena/mln/geom/crop.hh | 3 +-
milena/mln/geom/crop_without_localization.hh | 3 +-
milena/mln/geom/horizontal_symmetry.hh | 3 +-
milena/mln/geom/max_ind.hh | 3 +-
milena/mln/geom/min_ind.hh | 3 +-
milena/mln/geom/ninds.hh | 3 +-
milena/mln/geom/nsites.hh | 3 +-
milena/mln/geom/rotate.hh | 6 +-
milena/mln/geom/seeds2tiling.hh | 6 +-
milena/mln/geom/seeds2tiling_roundness.hh | 6 +-
milena/mln/geom/translate.hh | 3 +-
milena/mln/geom/vertical_symmetry.hh | 3 +-
milena/mln/graph/compute.hh | 3 +-
milena/mln/graph/labeling.hh | 3 +-
milena/mln/graph/to_neighb.hh | 3 +-
milena/mln/graph/to_win.hh | 3 +-
milena/mln/histo/compute.hh | 3 +-
milena/mln/histo/equalize.hh | 3 +-
milena/mln/io/cloud/load.hh | 3 +-
milena/mln/io/cloud/save.hh | 3 +-
milena/mln/io/dicom/get_header.hh | 3 +-
milena/mln/io/dicom/load.hh | 9 +-
milena/mln/io/dump/get_header.hh | 3 +-
milena/mln/io/dump/load.hh | 3 +-
milena/mln/io/dump/save.hh | 3 +-
milena/mln/io/fits/load.hh | 3 +-
milena/mln/io/fld/load.hh | 3 +-
milena/mln/io/fld/save.hh | 3 +-
milena/mln/io/magick/internal/init_magick.hh | 71 ++
milena/mln/io/magick/load.hh | 35 +-
milena/mln/io/magick/save.hh | 40 +-
milena/mln/io/off/load.hh | 9 +-
milena/mln/io/off/save.hh | 12 +-
milena/mln/io/pbm/load.hh | 3 +-
milena/mln/io/pbm/save.hh | 3 +-
milena/mln/io/pbms/load.hh | 3 +-
milena/mln/io/pdf/get_header.hh | 15 +-
milena/mln/io/pdf/load.hh | 106 ++-
milena/mln/io/pfm/load.hh | 3 +-
milena/mln/io/pfm/save.hh | 3 +-
milena/mln/io/pgm/load.hh | 6 +-
milena/mln/io/pgm/save.hh | 3 +-
milena/mln/io/pgms/load.hh | 3 +-
milena/mln/io/plot/load.hh | 3 +-
milena/mln/io/plot/save.hh | 9 +-
milena/mln/io/pnm/load.hh | 6 +-
milena/mln/io/pnm/save.hh | 3 +-
milena/mln/io/pnms/load.hh | 6 +-
milena/mln/io/ppm/load.hh | 6 +-
milena/mln/io/ppms/load.hh | 3 +-
milena/mln/io/raw/get_header.hh | 3 +-
milena/mln/io/raw/load.hh | 3 +-
milena/mln/io/raw/save.hh | 3 +-
milena/mln/io/tiff/load.hh | 3 +-
milena/mln/io/txt/save.hh | 3 +-
milena/mln/labeling/background.hh | 7 +-
milena/mln/labeling/blobs.hh | 3 +-
milena/mln/labeling/blobs_and_compute.hh | 3 +-
milena/mln/labeling/colorize.hh | 50 +-
milena/mln/labeling/compute.hh | 130 ++--
milena/mln/labeling/compute_image.hh | 83 +-
milena/mln/labeling/fill_holes.hh | 3 +-
milena/mln/labeling/flat_zones.hh | 21 +-
milena/mln/labeling/foreground.hh | 11 +-
milena/mln/labeling/mean_values.hh | 20 +-
milena/mln/labeling/n_max.hh | 78 +-
milena/mln/labeling/pack.hh | 40 +-
milena/mln/labeling/regional_maxima.hh | 22 +-
milena/mln/labeling/regional_minima.hh | 22 +-
milena/mln/labeling/relabel.hh | 83 +-
milena/mln/labeling/superpose.hh | 8 +-
milena/mln/labeling/value.hh | 27 +-
milena/mln/labeling/value.spe.hh | 3 +-
milena/mln/labeling/value_and_compute.hh | 25 +-
milena/mln/labeling/wrap.hh | 38 +-
milena/mln/linear/.#ch_convolve.hh | 1 -
milena/mln/linear/convolve.hh | 9 +-
milena/mln/linear/convolve_2x1d.hh | 3 +-
milena/mln/linear/convolve_directional.hh | 3 +-
milena/mln/linear/gaussian_1d.hh | 3 +-
milena/mln/linear/gaussian_directional_2d.hh | 3 +-
milena/mln/linear/lap.hh | 12 +-
milena/mln/linear/log.hh | 39 +-
milena/mln/linear/sobel_2d.hh | 12 +-
milena/mln/logical/and.hh | 6 +-
milena/mln/logical/and_not.hh | 6 +-
milena/mln/logical/not.hh | 6 +-
milena/mln/logical/not.spe.hh | 6 +-
milena/mln/logical/or.hh | 6 +-
milena/mln/logical/xor.hh | 6 +-
milena/mln/make/dual_neighb.hh | 3 +-
milena/mln/make/dummy_p_edges.hh | 3 +-
milena/mln/make/dummy_p_vertices.hh | 3 +-
milena/mln/make/edge_image.hh | 18 +-
milena/mln/make/influence_zone_adjacency_graph.hh | 6 +-
milena/mln/make/p_edges_with_mass_centers.hh | 3 +-
milena/mln/make/p_vertices_with_mass_centers.hh | 3 +-
milena/mln/make/rag_and_labeled_wsl.hh | 6 +-
milena/mln/make/region_adjacency_graph.hh | 10 +-
milena/mln/make/relabelfun.hh | 6 +-
milena/mln/make/vertex_image.hh | 6 +-
milena/mln/make/w_window.hh | 3 +-
milena/mln/morpho/algebraic_filter.hh | 3 +-
milena/mln/morpho/all.hh | 1 -
milena/mln/morpho/approx/dilation.hh | 9 +-
milena/mln/morpho/approx/erosion.hh | 9 +-
milena/mln/morpho/closing/algebraic.hh | 3 +-
milena/mln/morpho/closing/approx/structural.hh | 3 +-
milena/mln/morpho/closing/area.hh | 3 +-
milena/mln/morpho/closing/area_on_vertices.hh | 3 +-
milena/mln/morpho/closing/height.hh | 3 +-
milena/mln/morpho/closing/leveling.hh | 3 +-
milena/mln/morpho/closing/structural.hh | 3 +-
milena/mln/morpho/closing/sum.hh | 3 +-
milena/mln/morpho/closing/volume.hh | 3 +-
milena/mln/morpho/complementation.hh | 6 +-
milena/mln/morpho/contrast.hh | 3 +-
milena/mln/morpho/dilation.hh | 9 +-
milena/mln/morpho/elementary/closing.hh | 3 +-
milena/mln/morpho/elementary/dilation.hh | 3 +-
milena/mln/morpho/elementary/erosion.hh | 3 +-
milena/mln/morpho/elementary/gradient.hh | 12 +-
milena/mln/morpho/elementary/gradient_external.hh | 3 +-
milena/mln/morpho/elementary/gradient_internal.hh | 3 +-
milena/mln/morpho/elementary/laplacian.hh | 3 +-
milena/mln/morpho/elementary/like_ero_fun.hh | 6 +-
milena/mln/morpho/elementary/like_ero_set.hh | 6 +-
milena/mln/morpho/elementary/opening.hh | 3 +-
milena/mln/morpho/elementary/top_hat.hh | 9 +-
milena/mln/morpho/erosion.hh | 9 +-
milena/mln/morpho/essential.hh | 1 -
milena/mln/morpho/general.hh | 9 +-
milena/mln/morpho/general.spe.hh | 21 +-
milena/mln/morpho/gradient.hh | 9 +-
milena/mln/morpho/hit_or_miss.hh | 21 +-
milena/mln/morpho/laplacian.hh | 6 +-
milena/mln/morpho/leveling_filter.hh | 3 +-
milena/mln/morpho/line_gradient.hh | 3 +-
milena/mln/morpho/meyer_wst.hh | 222 ----
milena/mln/morpho/min.hh | 6 +-
milena/mln/morpho/minus.hh | 3 +-
milena/mln/morpho/opening/algebraic.hh | 3 +-
milena/mln/morpho/opening/approx/structural.hh | 3 +-
milena/mln/morpho/opening/area.hh | 3 +-
milena/mln/morpho/opening/area_on_vertices.hh | 3 +-
milena/mln/morpho/opening/height.hh | 3 +-
milena/mln/morpho/opening/leveling.hh | 3 +-
milena/mln/morpho/opening/structural.hh | 3 +-
milena/mln/morpho/opening/volume.hh | 3 +-
milena/mln/morpho/plus.hh | 3 +-
milena/mln/morpho/rank_filter.hh | 12 +-
.../reconstruction/by_dilation/union_find.hh | 11 +-
.../morpho/reconstruction/by_erosion/union_find.hh | 10 +-
milena/mln/morpho/skeleton_constrained.hh | 9 +-
milena/mln/morpho/thick_miss.hh | 3 +-
milena/mln/morpho/thickening.hh | 3 +-
milena/mln/morpho/thin_fit.hh | 3 +-
milena/mln/morpho/thinning.hh | 3 +-
milena/mln/morpho/top_hat.hh | 9 +-
milena/mln/morpho/tree/component_tree.hh | 6 +-
milena/mln/morpho/tree/compute_attribute_image.hh | 6 +-
milena/mln/morpho/tree/compute_parent.hh | 6 +-
milena/mln/morpho/tree/dual_input_tree.hh | 3 +-
milena/mln/morpho/tree/filter/direct.hh | 3 +-
milena/mln/morpho/tree/filter/filter.hh | 3 +-
milena/mln/morpho/tree/filter/max.hh | 3 +-
milena/mln/morpho/tree/filter/min.hh | 3 +-
milena/mln/morpho/tree/filter/subtractive.hh | 3 +-
milena/mln/morpho/tree/impl/dual_hqueue.hh | 3 +-
milena/mln/morpho/tree/impl/dual_union_find.hh | 3 +-
milena/mln/morpho/tree/max.hh | 3 +-
milena/mln/morpho/watershed/flooding.hh | 9 +-
milena/mln/morpho/watershed/superpose.hh | 3 +-
milena/mln/opt/at.hh | 5 +-
milena/mln/registration/all.hh | 49 +
milena/mln/registration/icp.hh | 12 +-
milena/mln/set/card.hh | 9 +-
milena/mln/set/compute.hh | 9 +-
milena/mln/set/compute_with_weights.hh | 15 +-
milena/mln/set/diff.hh | 3 +-
milena/mln/set/get.hh | 3 +-
milena/mln/set/has.hh | 3 +-
milena/mln/set/inter.hh | 3 +-
milena/mln/set/sym_diff.hh | 3 +-
milena/mln/set/uni.hh | 3 +-
milena/mln/set/unique.hh | 3 +-
milena/mln/subsampling/antialiased.hh | 13 +-
milena/mln/test/positive.hh | 3 +-
milena/mln/test/predicate.hh | 9 +-
milena/mln/topo/complex.hh | 44 +-
milena/mln/topo/skeleton/crest.hh | 9 +-
milena/mln/trace/all.hh | 52 -
milena/mln/trace/entering.hh | 89 --
milena/mln/trace/essential.hh | 36 -
milena/mln/trace/exiting.hh | 118 --
milena/mln/trace/quiet.hh | 84 --
milena/mln/trace/resume.hh | 60 -
milena/mln/trace/stop.hh | 63 --
milena/mln/trace/warning.hh | 64 --
milena/mln/trait/ch_value.hh | 66 ++-
milena/mln/trait/concrete.hh | 65 ++-
.../distance_and_closest_point_geodesic.hh | 6 +-
.../distance_and_influence_zone_geodesic.hh | 3 +-
milena/mln/transform/distance_front.hh | 3 +-
milena/mln/transform/distance_geodesic.hh | 3 +-
milena/mln/transform/hough.hh | 3 +-
milena/mln/transform/influence_zone_front.hh | 3 +-
milena/mln/transform/influence_zone_geodesic.hh | 6 +-
.../transform/influence_zone_geodesic_saturated.hh | 3 +-
milena/mln/upscaling/art/scale2x.hh | 3 +-
milena/mln/upscaling/art/scale3x.hh | 3 +-
milena/mln/util/array.hh | 20 +-
milena/mln/util/timer.hh | 15 +-
milena/mln/util/tree_fast_to_image.hh | 6 +-
milena/mln/util/tree_to_fast.hh | 8 +-
milena/mln/util/tree_to_image.hh | 21 +-
milena/mln/value/builtin/symbolics.hh | 6 +-
milena/mln/value/hsl.hh | 24 +-
milena/mln/value/int_s.hh | 9 +-
milena/mln/value/int_s16.hh | 15 +-
milena/mln/value/int_s24.hh | 15 +-
milena/mln/value/int_s32.hh | 15 +-
milena/mln/value/int_s8.hh | 16 +-
milena/mln/value/int_u.hh | 12 +-
milena/mln/value/int_u12.hh | 15 +-
milena/mln/value/int_u16.hh | 15 +-
milena/mln/value/int_u24.hh | 15 +-
milena/mln/value/int_u32.hh | 15 +-
milena/mln/value/int_u8.hh | 15 +-
milena/mln/value/internal/gray_f.hxx | 8 +-
milena/mln/value/label.hh | 15 +-
milena/mln/value/label_16.hh | 15 +-
milena/mln/value/label_32.hh | 9 +-
milena/mln/value/label_8.hh | 15 +-
milena/mln/value/qt/rgb32.hh | 15 +-
milena/mln/value/rgb.hh | 10 +-
milena/mln/value/rgb16.hh | 17 +-
milena/mln/value/rgb8.hh | 17 +-
milena/mln/win/diff.hh | 3 +-
milena/mln/win/disk2d.hh | 19 +-
milena/mln/win/hline2d.hh | 11 +-
milena/mln/win/inter.hh | 3 +-
milena/mln/win/rectangle2d.hh | 13 +-
milena/mln/win/segment1d.hh | 11 +-
milena/mln/win/shift.hh | 3 +-
milena/mln/win/sline3d.hh | 11 +-
milena/mln/win/sphere3d.hh | 18 +-
milena/mln/win/sym.hh | 6 +-
milena/mln/win/vline2d.hh | 11 +-
milena/mln/world/binary_2d/enlarge.hh | 3 +-
milena/mln/world/binary_2d/subsample.hh | 27 +-
milena/mln/world/inter_pixel/compute.hh | 3 +-
.../mln/world/inter_pixel/dim2/make_edge_image.hh | 3 +-
milena/mln/world/inter_pixel/full2image.hh | 3 +-
milena/mln/world/inter_pixel/immerse.hh | 3 +-
milena/mln/world/rgb/invert.hh | 9 +-
milena/mln/world/rgb/invert.spe.hh | 9 +-
milena/tests/accu/site_set/rectangularity.cc | 4 +-
milena/tests/algebra/mat.cc | 19 +-
milena/tests/arith/diff_abs.cc | 2 +-
milena/tests/arith/minus.cc | 2 +-
milena/tests/arith/plus.cc | 4 +-
milena/tests/arith/revert.cc | 2 +-
milena/tests/arith/times.cc | 2 +-
milena/tests/core/image/edge_image.cc | 146 ++--
milena/tests/core/image/line_graph_image.cc | 140 ++--
milena/tests/core/other/var.cc | 8 +-
milena/tests/data.hh.in | 3 +
milena/tests/data/fill_with_image.cc | 4 +-
milena/tests/data/paste.cc | 4 +-
milena/tests/geom/nsites.cc | 2 +-
milena/tests/io/fld/fld1d.cc | 9 +-
milena/tests/io/fld/fld2d.cc | 21 +-
milena/tests/io/fld/fld3d.cc | 9 +-
milena/tests/io/magick/load.cc | 18 +-
milena/tests/io/magick/save.cc | 19 +-
milena/tests/labeling/Makefile.am | 8 +-
milena/tests/labeling/foreground.cc | 34 +-
milena/tests/labeling/foreground.ref.pgm | Bin 0 -> 81654 bytes
milena/tests/labeling/n_max.cc | 5 +-
milena/tests/linear/gaussian.cc | 6 +-
milena/tests/morpho/Makefile.am | 8 +-
.../morpho/artificial_line_graph_image_wst.cc | 19 +-
milena/tests/morpho/closing/algebraic.cc | 2 +-
milena/tests/morpho/elementary/closing.cc | 2 +-
milena/tests/morpho/elementary/dilation.cc | 2 +-
milena/tests/morpho/elementary/erosion.cc | 2 +-
milena/tests/morpho/elementary/opening.cc | 2 +-
milena/tests/morpho/elementary/top_hat.cc | 2 +-
milena/tests/morpho/general.cc | 4 +-
milena/tests/morpho/graph_image_morpho.cc | 2 +-
milena/tests/morpho/graph_image_wst.cc | 15 +-
milena/tests/morpho/lena_line_graph_image_wst1.cc | 18 +-
milena/tests/morpho/lena_line_graph_image_wst2.cc | 19 +-
milena/tests/morpho/line_graph_image_morpho.cc | 49 +-
milena/tests/morpho/line_graph_image_wst.cc | 57 +-
milena/tests/morpho/meyer_wst.cc | 56 -
milena/tests/morpho/meyer_wst_long.cc | 73 --
milena/tests/morpho/opening/algebraic.cc | 2 +-
milena/tests/morpho/top_hat.cc | 2 +-
milena/tests/opt/at.cc | 4 +-
milena/tests/opt/element.cc | 4 +-
milena/tests/opt/value.cc | 5 +-
milena/tests/trait/op/plus.cc | 6 +-
milena/tests/unit_test/Makefile.am | 1 +
milena/tests/unit_test/cond_tests_magickxx | 1 +
milena/tests/unit_test/cond_tests_poppler | 2 +
milena/tests/unit_test/unit-tests.mk | 33 +-
milena/tools/area_flooding.cc | 7 +-
scribo/ChangeLog | 705 ++++++++++++
scribo/common.mk | 8 +-
scribo/demo/viewer/image_region.hh | 6 +-
scribo/demo/viewer/main.cc | 2 -
scribo/demo/xml2doc/main.cc | 28 +-
scribo/doc/Doxyfile.in | 36 +-
scribo/doc/DoxygenLayout.xml | 2 +-
scribo/doc/Makefile.am | 22 +-
scribo/doc/scribo/binarization/binarization.dox | 8 +-
scribo/doc/scribo/binarization/kim.dox | 23 +
scribo/doc/scribo/binarization/otsu.dox | 11 +-
scribo/doc/scribo/binarization/wolf.dox | 6 +
scribo/doc/scribo/filter/component_groups.dox | 2 +-
scribo/doc/scribo/filter/component_links.dox | 2 +-
scribo/doc/scribo/filter/components.dox | 2 +-
scribo/doc/scribo/filter/elements.dox | 2 +-
scribo/doc/scribo/filter/line_links.dox | 4 +-
scribo/doc/scribo/filter/paragraphs.dox | 4 +-
scribo/doc/scribo/layout/layout.dox | 6 +
scribo/doc/scribo/namespaces.dox | 7 +
scribo/doc/scribo/primitive/extract/components.dox | 7 +
scribo/doc/scribo/primitive/extract/extract.dox | 7 +
scribo/doc/scribo/primitive/extract/separators.dox | 8 +-
scribo/headers.mk | 31 +-
scribo/scribo/binarization/all.hh | 6 +
scribo/scribo/binarization/global_threshold.hh | 3 +-
.../scribo/binarization/global_threshold_auto.hh | 5 +-
.../internal/global_max_stddev_functor.hh | 110 ++
.../binarization/internal/local_threshold_core.hh | 33 +-
.../binarization/internal/niblack_formula.hh | 2 +-
.../binarization/internal/niblack_functor.hh | 14 +-
.../binarization/internal/niblack_functor_fast.hh | 12 +
.../internal/niblack_threshold_functor.hh | 18 +-
.../binarization/internal/sauvola_functor.hh | 18 +
.../binarization/internal/sauvola_ms_functor.hh | 18 +-
.../internal/sauvola_threshold_functor.hh | 22 +-
.../scribo/binarization/internal/singh_formula.hh | 13 +-
.../scribo/binarization/internal/singh_functor.hh | 14 +
.../scribo/binarization/internal/wolf_functor.hh | 17 +-
.../binarization/internal/wolf_functor_fast.hh | 15 +
scribo/scribo/binarization/kim.hh | 25 +-
scribo/scribo/binarization/local_threshold.hh | 9 +-
scribo/scribo/binarization/niblack.hh | 3 +-
scribo/scribo/binarization/niblack_fast.hh | 23 +-
scribo/scribo/binarization/niblack_threshold.hh | 17 +-
scribo/scribo/binarization/otsu.hh | 10 +-
scribo/scribo/binarization/otsu_threshold.hh | 15 +-
scribo/scribo/binarization/sauvola.hh | 3 +-
scribo/scribo/binarization/sauvola_ms.hh | 75 +-
scribo/scribo/binarization/sauvola_ms_split.hh | 22 +-
scribo/scribo/binarization/sauvola_threshold.hh | 5 +-
scribo/scribo/binarization/singh.hh | 13 +-
scribo/scribo/binarization/wolf.hh | 60 +-
scribo/scribo/binarization/wolf_fast.hh | 56 +-
scribo/scribo/canvas/integral_browsing.hh | 14 +-
scribo/scribo/convert/from_base64.hh | 9 +-
scribo/scribo/convert/to_base64.hh | 3 +-
scribo/scribo/core/central_sites.hh | 3 +-
scribo/scribo/core/component_info.hh | 17 +-
scribo/scribo/core/component_set.hh | 190 +++-
scribo/scribo/core/concept/serializable.hh | 9 +-
scribo/scribo/core/document.hh | 58 +-
scribo/scribo/core/erase_objects.hh | 3 +-
scribo/scribo/core/init_integral_image.hh | 3 +-
scribo/scribo/core/line_info.hh | 4 +-
scribo/scribo/core/line_set.hh | 23 +-
scribo/scribo/core/object_links.hh | 61 +-
scribo/scribo/core/paragraph_info.hh | 4 +-
scribo/scribo/core/paragraph_set.hh | 7 +
scribo/scribo/core/tag/component.hh | 56 +-
scribo/scribo/debug/alignment_decision_image.hh | 3 +-
scribo/scribo/debug/bboxes_enlarged_image.hh | 3 +-
scribo/scribo/debug/bboxes_image.hh | 9 +-
scribo/scribo/debug/char_space_image.hh | 3 +-
scribo/scribo/debug/decision_image.hh | 6 +-
scribo/scribo/debug/highlight_text_area.hh | 12 +-
scribo/scribo/debug/line_info_image.hh | 3 +-
scribo/scribo/debug/linked_bboxes_image.hh | 9 +-
scribo/scribo/debug/links_decision_image.hh | 3 +-
scribo/scribo/debug/links_image.hh | 8 +-
scribo/scribo/debug/logger.hh | 70 +-
.../scribo/debug/looks_like_a_text_line_image.hh | 3 +-
scribo/scribo/debug/mean_and_base_lines_image.hh | 3 +-
scribo/scribo/debug/save_comp_diff.hh | 3 +-
scribo/scribo/debug/save_label_image.hh | 3 +-
scribo/scribo/debug/save_table_image.hh | 6 +-
scribo/scribo/debug/text_areas_image.hh | 3 +-
scribo/scribo/draw/bounding_box_links.hh | 9 +-
scribo/scribo/draw/bounding_boxes.hh | 6 +-
scribo/scribo/draw/groups_bboxes.hh | 3 +-
scribo/scribo/draw/line_components.hh | 3 +-
scribo/scribo/estim/components_features.hh | 3 +-
scribo/scribo/estim/font_boldness.hh | 12 +-
scribo/scribo/estim/font_color.hh | 9 +-
scribo/scribo/estim/internal/compute_skeleton.hh | 3 +-
scribo/scribo/estim/object_groups_mean_width.hh | 3 +-
scribo/scribo/filter/common/objects_photo.hh | 3 +-
scribo/scribo/filter/images_in_paragraph.hh | 5 +-
scribo/scribo/filter/internal/alignment_angle.hh | 11 +-
scribo/scribo/filter/internal/component_aligned.hh | 3 +-
scribo/scribo/filter/internal/compute.hh | 6 +-
scribo/scribo/filter/object_groups_mean_width.hh | 3 +-
scribo/scribo/filter/object_groups_size_ratio.hh | 3 +-
scribo/scribo/filter/object_groups_small.hh | 3 +-
scribo/scribo/filter/object_groups_with_holes.hh | 7 +-
scribo/scribo/filter/object_links_aligned.hh | 3 +-
scribo/scribo/filter/object_links_bbox_h_ratio.hh | 3 +-
scribo/scribo/filter/object_links_bbox_overlap.hh | 3 +-
scribo/scribo/filter/object_links_bbox_ratio.hh | 3 +-
scribo/scribo/filter/object_links_bbox_w_ratio.hh | 3 +-
.../scribo/filter/object_links_bottom_aligned.hh | 3 +-
.../scribo/filter/object_links_center_aligned.hh | 3 +-
scribo/scribo/filter/object_links_left_aligned.hh | 3 +-
.../filter/object_links_non_aligned_simple.hh | 3 +-
scribo/scribo/filter/object_links_right_aligned.hh | 3 +-
scribo/scribo/filter/object_links_top_aligned.hh | 3 +-
scribo/scribo/filter/objects_h_thick.hh | 6 +-
scribo/scribo/filter/objects_h_thin.hh | 6 +-
scribo/scribo/filter/objects_in_borders.hh | 142 +++
scribo/scribo/filter/objects_large.hh | 6 +-
scribo/scribo/filter/objects_on_border.hh | 3 +-
scribo/scribo/filter/objects_size_ratio.hh | 3 +-
scribo/scribo/filter/objects_small.hh | 6 +-
scribo/scribo/filter/objects_thick.hh | 6 +-
scribo/scribo/filter/objects_thin.hh | 6 +-
scribo/scribo/filter/objects_v_thick.hh | 6 +-
scribo/scribo/filter/objects_v_thin.hh | 6 +-
scribo/scribo/filter/objects_with_holes.hh | 8 +-
scribo/scribo/filter/paragraphs_bbox_overlap.hh | 3 +-
scribo/scribo/filter/paragraphs_in_borders.hh | 53 +-
scribo/scribo/filter/paragraphs_in_image.hh | 3 +-
scribo/scribo/filter/separators_in_borders.hh | 66 +-
scribo/scribo/filter/separators_in_element.hh | 3 +-
scribo/scribo/filter/separators_in_paragraph.hh | 3 +-
scribo/scribo/filter/separators_vert_in_borders.hh | 54 +-
scribo/scribo/io/img/save.hh | 8 +-
scribo/scribo/io/text_boxes/save.hh | 3 +-
scribo/scribo/io/xml/internal/save_image_to_xml.hh | 3 +-
scribo/scribo/io/xml/save.hh | 6 +-
scribo/scribo/layout/xy_cut.hh | 32 +-
scribo/scribo/make/debug_filename.hh | 8 +-
scribo/scribo/make/influence_zone_graph.hh | 3 +-
scribo/scribo/make/text_blocks_image.hh | 3 +-
scribo/scribo/make/text_components_image.hh | 8 +-
scribo/scribo/postprocessing/fill_object_holes.hh | 16 +-
.../postprocessing/images_to_drop_capital.hh | 3 +-
scribo/scribo/preprocessing/crop.hh | 3 +-
.../preprocessing/crop_without_localization.hh | 3 +-
scribo/scribo/preprocessing/denoise.hh | 3 +-
scribo/scribo/preprocessing/denoise_bg.hh | 3 +-
scribo/scribo/preprocessing/denoise_fg.hh | 3 +-
scribo/scribo/preprocessing/deskew.hh | 5 +-
scribo/scribo/preprocessing/deskew_crop.hh | 3 +-
.../scribo/preprocessing/homogeneous_contrast.hh | 3 +-
scribo/scribo/preprocessing/rotate_90.hh | 3 +-
scribo/scribo/preprocessing/split_bg_fg.hh | 12 +-
scribo/scribo/primitive/extract/alignments.hh | 11 +-
scribo/scribo/primitive/extract/canvas.hh | 3 +-
scribo/scribo/primitive/extract/cells.hh | 3 +-
scribo/scribo/primitive/extract/components.hh | 46 +-
.../primitive/extract/horizontal_separators.hh | 3 +-
scribo/scribo/primitive/extract/internal/union.hh | 2 +-
.../scribo/primitive/extract/lines_discontinued.hh | 3 +-
.../primitive/extract/lines_h_discontinued.hh | 3 +-
scribo/scribo/primitive/extract/lines_h_pattern.hh | 3 +-
scribo/scribo/primitive/extract/lines_h_single.hh | 12 +-
scribo/scribo/primitive/extract/lines_h_thick.hh | 3 +-
.../primitive/extract/lines_h_thick_and_single.hh | 3 +-
.../primitive/extract/lines_h_thick_and_thin.hh | 3 +-
scribo/scribo/primitive/extract/lines_pattern.hh | 9 +-
scribo/scribo/primitive/extract/lines_thick.hh | 3 +-
.../primitive/extract/lines_v_discontinued.hh | 3 +-
scribo/scribo/primitive/extract/lines_v_pattern.hh | 3 +-
scribo/scribo/primitive/extract/lines_v_single.hh | 8 +-
scribo/scribo/primitive/extract/lines_v_thick.hh | 3 +-
.../primitive/extract/lines_v_thick_and_single.hh | 3 +-
scribo/scribo/primitive/extract/non_text.hh | 9 +-
scribo/scribo/primitive/extract/non_text_hdoc.hh | 5 +-
scribo/scribo/primitive/extract/non_text_kmean.hh | 5 +-
scribo/scribo/primitive/extract/separators.hh | 3 +-
.../primitive/extract/separators_nonvisible.hh | 3 +-
.../primitive/extract/vertical_separators.hh | 3 +-
scribo/scribo/primitive/group/apply.hh | 6 +-
scribo/scribo/primitive/group/from_double_link.hh | 3 +-
.../scribo/primitive/group/from_double_link_any.hh | 3 +-
scribo/scribo/primitive/group/from_graph.hh | 3 +-
scribo/scribo/primitive/group/from_single_link.hh | 3 +-
scribo/scribo/primitive/identify.hh | 8 +-
.../scribo/primitive/internal/find_graph_link.hh | 3 +-
scribo/scribo/primitive/internal/rd.hh | 6 +-
.../scribo/primitive/internal/update_graph_link.hh | 3 +-
scribo/scribo/primitive/link/compute.hh | 3 +-
scribo/scribo/primitive/link/compute_several.hh | 3 +-
.../primitive/link/internal/compute_anchor.hh | 4 +-
.../primitive/link/internal/find_several_links.hh | 4 +-
.../primitive/link/internal/link_functor_base.hh | 2 +-
scribo/scribo/primitive/link/merge_double_link.hh | 3 +-
.../link/merge_double_link_closest_aligned.hh | 5 +-
scribo/scribo/primitive/link/with_graph.hh | 3 +-
scribo/scribo/primitive/link/with_rag.hh | 3 +-
.../scribo/primitive/link/with_several_graphes.hh | 3 +-
.../primitive/link/with_several_left_links.hh | 3 +-
.../link/with_several_right_closest_links.hh | 3 +-
.../primitive/link/with_several_right_links.hh | 3 +-
.../link/with_several_right_links_overlap.hh | 3 +-
.../scribo/primitive/link/with_single_down_link.hh | 3 +-
.../scribo/primitive/link/with_single_left_link.hh | 3 +-
.../link/with_single_left_link_dmax_ratio.hh | 3 +-
.../with_single_left_link_dmax_ratio_aligned.hh | 14 +-
.../primitive/link/with_single_right_link.hh | 3 +-
.../link/with_single_right_link_bottom.hh | 3 +-
.../link/with_single_right_link_dmax_ratio.hh | 3 +-
.../with_single_right_link_dmax_ratio_aligned.hh | 3 +-
.../primitive/link/with_single_right_link_top.hh | 3 +-
.../scribo/primitive/link/with_single_up_link.hh | 3 +-
scribo/scribo/primitive/merge/components.hh | 3 +-
.../primitive/regroup/from_single_left_link.hh | 3 +-
.../regroup/from_single_left_link_wrt_h_ratio.hh | 3 +-
scribo/scribo/primitive/remove/separators.hh | 3 +-
scribo/scribo/subsampling/bilinear.hh | 7 +-
scribo/scribo/subsampling/integral.hh | 12 +-
scribo/scribo/subsampling/integral_single_image.hh | 12 +-
scribo/scribo/table/align_lines_horizontaly.hh | 3 +-
scribo/scribo/table/align_lines_verticaly.hh | 3 +-
scribo/scribo/table/connect_horizontal_lines.hh | 3 +-
scribo/scribo/table/connect_vertical_lines.hh | 3 +-
scribo/scribo/table/erase.hh | 3 +-
scribo/scribo/table/extract.hh | 3 +-
scribo/scribo/table/internal/align_lines.hh | 3 +-
scribo/scribo/table/internal/connect_lines.hh | 3 +-
scribo/scribo/table/internal/repair_lines.hh | 3 +-
scribo/scribo/table/rebuild.hh | 3 +-
scribo/scribo/table/repair_horizontal_lines.hh | 3 +-
scribo/scribo/table/repair_vertical_lines.hh | 3 +-
scribo/scribo/text/clean.hh | 3 +-
scribo/scribo/text/clean_inplace.hh | 3 +-
scribo/scribo/text/extract_lines.hh | 6 +-
scribo/scribo/text/extract_lines_with_features.hh | 3 +-
scribo/scribo/text/extract_lines_wo_merge.hh | 3 +-
scribo/scribo/text/extract_paragraphs_hdoc.hh | 5 +-
scribo/scribo/text/link_lines.hh | 8 +-
scribo/scribo/text/look_like_text_lines.hh | 6 +-
scribo/scribo/text/merging_hdoc.hh | 112 +--
scribo/scribo/text/paragraphs_closing.hh | 3 +-
scribo/scribo/text/recognition.hh | 12 +-
.../internal/text_in_doc_preprocess_functor.hh | 2 +-
scribo/scribo/toolchain/nepomuk/text_extraction.hh | 3 +-
scribo/scribo/toolchain/text_in_doc_preprocess.hh | 5 +-
scribo/scribo/toolchain/text_in_picture.hh | 3 +-
scribo/scribo/upsampling/bs2x.hh | 3 +-
scribo/scribo/upsampling/eagle.hh | 3 +-
scribo/scribo/util/box_intersection.hh | 3 +-
scribo/scribo/util/box_is_included.hh | 3 +-
scribo/scribo/util/component_precise_outline.hh | 13 +-
scribo/scribo/util/compute_sub_domains.hh | 3 +-
scribo/scribo/util/hex_to_color.hh | 3 +-
scribo/scribo/util/init_integral_image.hh | 12 +-
scribo/src/afp/regroup.hh | 5 +-
scribo/src/binarization/global_threshold.cc | 9 +-
scribo/src/binarization/kim.cc | 7 +-
scribo/src/binarization/niblack.cc | 5 +-
scribo/src/binarization/otsu.cc | 5 +-
.../src/binarization/pgm_global_threshold_auto.cc | 3 +-
.../binarization/pgm_niblack_threshold_image.cc | 3 +-
scribo/src/binarization/sauvola.cc | 9 +-
scribo/src/binarization/sauvola_debug.cc | 3 +-
scribo/src/binarization/sauvola_ms.cc | 8 +-
scribo/src/binarization/sauvola_ms_debug.cc | 12 +-
scribo/src/binarization/sauvola_ms_fg.cc | 8 +-
scribo/src/binarization/sauvola_ms_split.cc | 6 +-
scribo/src/binarization/singh.cc | 8 +-
scribo/src/binarization/wolf.cc | 5 +-
scribo/src/content_in_doc.cc | 5 +-
scribo/src/content_in_hdoc.cc | 5 +-
scribo/src/contest/DAE-2011/content_in_doc_dae.cc | 9 +-
scribo/src/contest/DAE-2011/content_in_hdoc_dae.cc | 9 +-
scribo/src/contest/Makefile.am | 6 +-
scribo/src/contest/hbr-2013/Makefile.am | 33 +
scribo/src/contest/hbr-2013/content_in_hdoc_hbr.cc | 148 +++
.../contest/hdlac-2011/content_in_hdoc_hdlac.cc | 7 +-
scribo/src/contest/hnla-2013/Makefile.am | 33 +
.../src/contest/hnla-2013/content_in_hdoc_hnla.cc | 149 +++
scribo/src/debug/highlight_text_area.cc | 3 +-
scribo/src/debug/show_components_boldness.cc | 5 +-
scribo/src/debug/show_components_color.cc | 6 +-
.../src/debug/show_info_median_inter_characters.cc | 3 +-
scribo/src/debug/show_info_x_height.cc | 3 +-
scribo/src/debug/show_lines_boldness.cc | 3 +-
scribo/src/debug/show_objects_large.cc | 2 +-
scribo/src/debug/show_objects_large_small.cc | 2 +-
scribo/src/debug/show_objects_small.cc | 2 +-
scribo/src/debug/show_objects_thick.cc | 2 +-
scribo/src/debug/show_objects_thin.cc | 2 +-
scribo/src/debug/show_paragraph_blocks.cc | 3 +-
scribo/src/debug/show_separators.cc | 3 +-
scribo/src/debug/show_stoppers.cc | 3 +-
scribo/src/debug/show_text_lines.cc | 3 +-
scribo/src/debug/show_text_lines_wo_seps.cc | 3 +-
scribo/src/filter/objects_large.cc | 3 +-
scribo/src/filter/objects_small.cc | 3 +-
scribo/src/filter/objects_thick.cc | 3 +-
scribo/src/filter/objects_thin.cc | 3 +-
scribo/src/filter/objects_with_holes.cc | 3 +-
scribo/src/filter/objects_with_holes_pgm.cc | 3 +-
scribo/src/misc/negate.cc | 7 +-
scribo/src/misc/superpose.cc | 7 +-
scribo/src/non_text_components.cc | 9 +-
scribo/src/pbm_text_in_doc.cc | 3 +-
scribo/src/postprocessing/fill_object_holes.cc | 3 +-
scribo/src/preprocessing/denoise_bg.cc | 3 +-
scribo/src/preprocessing/denoise_fg.cc | 3 +-
scribo/src/preprocessing/preprocess.cc | 3 +-
scribo/src/preprocessing/rotate.cc | 5 +-
scribo/src/preprocessing/rotate_90.cc | 5 +-
scribo/src/preprocessing/split_bg_fg.cc | 7 +-
scribo/src/preprocessing/subsample.cc | 3 +-
scribo/src/preprocessing/unskew.cc | 7 +-
scribo/src/primitive/extract/alignments.cc | 3 +-
.../src/primitive/extract/discontinued_hlines.cc | 3 +-
scribo/src/primitive/extract/discontinued_lines.cc | 3 +-
.../src/primitive/extract/discontinued_vlines.cc | 3 +-
scribo/src/primitive/extract/lines_pattern.cc | 5 +-
.../src/primitive/extract/separators_nonvisible.cc | 3 +-
scribo/src/primitive/extract/thick_hlines.cc | 3 +-
scribo/src/primitive/extract/thick_vlines.cc | 3 +-
.../src/primitive/find/find_discontinued_lines.cc | 3 +-
scribo/src/primitive/find/find_pattern_lines.cc | 3 +-
scribo/src/primitive/find/find_single_lines.cc | 3 +-
.../primitive/find/find_thick_and_single_lines.cc | 3 +-
scribo/src/primitive/find/find_thick_lines.cc | 3 +-
scribo/src/primitive/remove/separators.cc | 3 +-
scribo/src/table/erase.cc | 3 +-
scribo/src/table/extract.cc | 3 +-
scribo/src/text/cleantxt.cc | 3 +-
scribo/src/text/pbm_lines_recognition.cc | 3 +-
scribo/src/text/pbm_recognition.cc | 3 +-
scribo/src/text_in_doc_preprocess.cc | 6 +-
scribo/src/text_in_picture.cc | 7 +-
scribo/src/text_in_picture_dual.cc | 8 +-
scribo/src/text_recognition_in_picture.cc | 7 +-
scribo/src/util/component_precise_outline.cc | 3 +-
scribo/tests/Makefile.am | 4 +
scribo/tests/binarization/Makefile.am | 7 +-
scribo/tests/binarization/niblack.cc | 16 +-
scribo/tests/binarization/wolf.cc | 16 +-
scribo/tests/primitive/extract/Makefile.am | 3 +-
scribo/tests/unit_test/unit-tests.mk | 2 +
swilena/ChangeLog | 299 +++++
swilena/Makefile.am | 12 +-
swilena/box.ixx | 2 +-
swilena/box2d.i | 7 +-
swilena/box_piter.ixx | 3 +-
swilena/complex.ixx | 330 ++++++
swilena/complex2.i | 111 ++
swilena/concat.ixx | 4 +-
swilena/image2d.ixx | 30 +-
swilena/image2d_int.i | 5 +-
swilena/image2d_int_u8.i | 12 +-
swilena/image2d_point2d.i | 53 +
swilena/image2d_rgb8.i | 63 ++
swilena/int_u.ixx | 24 +-
swilena/int_u32.i | 40 -
swilena/morpho.ixx | 43 +-
swilena/ppm.ixx | 57 +
swilena/python-utils.ixx | 3 +-
swilena/python/Makefile.am | 202 +++-
swilena/python/complex2-misc.py | 99 ++
swilena/python/data.py | 26 -
swilena/python/data.py.in | 26 +
swilena/python/installcheck.mk | 116 ++
swilena/python/ltihooks.py | 60 -
swilena/python/max-tree.py | 57 +
swilena/python/morpho-segm.py | 8 +-
swilena/python/sps-gdb-local.in | 6 +
swilena/python/sps-local.in | 2 +-
swilena/python/swilena.py | 13 +-
swilena/rgb.ixx | 159 +++
swilena/rgb8.i | 40 +
swilena/run.in | 50 +-
1130 files changed, 12571 insertions(+), 11486 deletions(-)
delete mode 100644 GScribo/BUGS
delete mode 100644 GScribo/GScribo.pro
delete mode 100644 GScribo/GScribo.pro.user
delete mode 100644 GScribo/GScribo.pro.user.1.3
delete mode 100644 GScribo/PagesWidget/pagesdelegate.cpp
delete mode 100644 GScribo/PagesWidget/pagesdelegate.h
delete mode 100644 GScribo/PagesWidget/pagesmodel.cpp
delete mode 100644 GScribo/PagesWidget/pagesmodel.h
delete mode 100644 GScribo/PagesWidget/pageswidget.cpp
delete mode 100644 GScribo/PagesWidget/pageswidget.h
delete mode 100644 GScribo/Preferences/generaloptions.cpp
delete mode 100644 GScribo/Preferences/generaloptions.h
delete mode 100644 GScribo/Preferences/generaloptions.ui
delete mode 100644 GScribo/Preferences/ocroptions.cpp
delete mode 100644 GScribo/Preferences/ocroptions.h
delete mode 100644 GScribo/Preferences/ocroptions.ui
delete mode 100644 GScribo/Preferences/optionwidget.h
delete mode 100644 GScribo/Preferences/preferencesdialog.cpp
delete mode 100644 GScribo/Preferences/preferencesdialog.h
delete mode 100644 GScribo/Preferences/preferencesdialog.ui
delete mode 100644 GScribo/Preferences/preprocessingoptions.cpp
delete mode 100644 GScribo/Preferences/preprocessingoptions.h
delete mode 100644 GScribo/Preferences/preprocessingoptions.ui
delete mode 100644 GScribo/Preferences/segmentationoptions.cpp
delete mode 100644 GScribo/Preferences/segmentationoptions.h
delete mode 100644 GScribo/Preferences/segmentationoptions.ui
delete mode 100644 GScribo/Processing/preprocess.cpp
delete mode 100644 GScribo/Processing/preprocess.h
delete mode 100644 GScribo/Processing/process.cpp
delete mode 100644 GScribo/Processing/process.h
delete mode 100644 GScribo/Processing/progressdialog.cpp
delete mode 100644 GScribo/Processing/progressdialog.h
delete mode 100644 GScribo/Processing/runner.cpp
delete mode 100644 GScribo/Processing/runner.h
delete mode 100644 GScribo/Rendering/abstractregionitem.h
delete mode 100644 GScribo/Rendering/backgroundtexture.h
delete mode 100644 GScribo/Rendering/graphicsview.cpp
delete mode 100644 GScribo/Rendering/graphicsview.h
delete mode 100644 GScribo/Rendering/regionitem.cpp
delete mode 100644 GScribo/Rendering/regionitem.h
delete mode 100644 GScribo/Rendering/rootgraphicsitem.h
delete mode 100644 GScribo/Rendering/scene.cpp
delete mode 100644 GScribo/Rendering/scene.h
delete mode 100644 GScribo/Rendering/selection.cpp
delete mode 100644 GScribo/Rendering/selection.h
delete mode 100644 GScribo/TODO
delete mode 100644 GScribo/XmlWidget/attributesmodel.cpp
delete mode 100644 GScribo/XmlWidget/attributesmodel.h
delete mode 100644 GScribo/XmlWidget/selectionproxy.h
delete mode 100644 GScribo/XmlWidget/xmlattributes.cpp
delete mode 100644 GScribo/XmlWidget/xmlattributes.h
delete mode 100644 GScribo/XmlWidget/xmldelegate.h
delete mode 100644 GScribo/XmlWidget/xmlitem.cpp
delete mode 100644 GScribo/XmlWidget/xmlitem.h
delete mode 100644 GScribo/XmlWidget/xmlmodel.cpp
delete mode 100644 GScribo/XmlWidget/xmlmodel.h
delete mode 100644 GScribo/XmlWidget/xmlview.cpp
delete mode 100644 GScribo/XmlWidget/xmlview.h
delete mode 100644 GScribo/XmlWidget/xmlwidget.cpp
delete mode 100644 GScribo/XmlWidget/xmlwidget.h
delete mode 100644 GScribo/aboutdialog.h
delete mode 100644 GScribo/aboutdialog.ui
delete mode 100644 GScribo/configs.h
delete mode 100644 GScribo/dir.h
delete mode 100644 GScribo/dockwidget.h
delete mode 100644 GScribo/main.cpp
delete mode 100644 GScribo/mainwindow.cpp
delete mode 100644 GScribo/mainwindow.h
delete mode 100644 GScribo/mainwindow.ui
delete mode 100644 GScribo/region.h
delete mode 100644 GScribo/regionwidget.cpp
delete mode 100644 GScribo/regionwidget.h
delete mode 100644 GScribo/variantpointer.h
delete mode 100644 GScribo/xml.cpp
delete mode 100644 GScribo/xml.h
create mode 100644 milena/doc/examples.dox
create mode 100644 milena/doc/examples/multi_files_f1.cc.raw
create mode 100644 milena/doc/examples/multi_files_f2.cc.raw
create mode 100644 milena/doc/examples/multi_files_main.cc.raw
create mode 100644 milena/doc/examples/multiple_def.cc.raw
create mode 100644 milena/doc/examples/typenametemplate.cc.raw
create mode 100644 milena/doc/examples/undef_global_vars.cc.raw
create mode 100644 milena/doc/examples/wrongvaluetype.cc.raw
create mode 100644 milena/doc/img/2dgrid.png
create mode 100644 milena/doc/mln/convert.dox
create mode 100644 milena/doc/mln/core/alias/box1d.dox
create mode 100644 milena/doc/mln/core/alias/box2d.dox
create mode 100644 milena/doc/mln/core/alias/box2d_h.dox
create mode 100644 milena/doc/mln/core/alias/box3d.dox
create mode 100644 milena/doc/mln/core/alias/complex_geometry.dox
create mode 100644 milena/doc/mln/core/alias/complex_image.dox
create mode 100644 milena/doc/mln/core/alias/dpoint1d.dox
create mode 100644 milena/doc/mln/core/alias/dpoint2d.dox
create mode 100644 milena/doc/mln/core/alias/dpoint3d.dox
create mode 100644 milena/doc/mln/core/alias/neighb1d.dox
create mode 100644 milena/doc/mln/core/alias/neighb2d.dox
create mode 100644 milena/doc/mln/core/alias/neighb3d.dox
create mode 100644 milena/doc/mln/core/alias/p_run2d.dox
create mode 100644 milena/doc/mln/core/alias/p_runs2d.dox
create mode 100644 milena/doc/mln/core/alias/point1d.dox
create mode 100644 milena/doc/mln/core/alias/point2d.dox
create mode 100644 milena/doc/mln/core/alias/point2d_h.dox
create mode 100644 milena/doc/mln/core/alias/point3d.dox
create mode 100644 milena/doc/mln/core/alias/vec2d.dox
create mode 100644 milena/doc/mln/core/alias/vec3d.dox
create mode 100644 milena/doc/mln/core/alias/w_window1d_float.dox
create mode 100644 milena/doc/mln/core/alias/w_window1d_int.dox
create mode 100644 milena/doc/mln/core/alias/w_window2d_float.dox
create mode 100644 milena/doc/mln/core/alias/w_window2d_int.dox
create mode 100644 milena/doc/mln/core/alias/w_window3d_float.dox
create mode 100644 milena/doc/mln/core/alias/w_window3d_int.dox
create mode 100644 milena/doc/mln/core/alias/window1d.dox
create mode 100644 milena/doc/mln/core/alias/window2d.dox
create mode 100644 milena/doc/mln/core/alias/window3d.dox
create mode 100644 milena/doc/mln/core/concept/concept.dox
create mode 100644 milena/doc/mln/labeling/labeling.dox
create mode 100644 milena/doc/mln/value/hsl.dox
create mode 100644 milena/doc/mln/value/int_s16.dox
create mode 100644 milena/doc/mln/value/int_s24.dox
create mode 100644 milena/doc/mln/value/int_s32.dox
create mode 100644 milena/doc/mln/value/int_s8.dox
create mode 100644 milena/doc/mln/value/int_u12.dox
create mode 100644 milena/doc/mln/value/int_u16.dox
create mode 100644 milena/doc/mln/value/int_u24.dox
create mode 100644 milena/doc/mln/value/int_u32.dox
create mode 100644 milena/doc/mln/value/int_u8.dox
create mode 100644 milena/doc/mln/value/label_16.dox
create mode 100644 milena/doc/mln/value/label_32.dox
create mode 100644 milena/doc/mln/value/label_8.dox
create mode 100644 milena/doc/mln/value/rgb16.dox
create mode 100644 milena/doc/mln/value/rgb8.dox
create mode 100644 milena/doc/mln/value/value.dox
create mode 100644 milena/doc/mln/win/disk2d.dox
create mode 100644 milena/doc/mln/win/hline2d.dox
create mode 100644 milena/doc/mln/win/segment1d.dox
create mode 100644 milena/doc/mln/win/sline3d.dox
create mode 100644 milena/doc/mln/win/sphere3d.dox
create mode 100644 milena/doc/mln/win/vline2d.dox
create mode 100644 milena/mln/debug/trace.hh
create mode 100755 milena/mln/fun/v2b/always_false.hh
create mode 100755 milena/mln/fun/v2b/always_true.hh
create mode 100644 milena/mln/io/magick/internal/init_magick.hh
delete mode 120000 milena/mln/linear/.#ch_convolve.hh
delete mode 100644 milena/mln/morpho/meyer_wst.hh
create mode 100644 milena/mln/registration/all.hh
delete mode 100644 milena/mln/trace/all.hh
delete mode 100644 milena/mln/trace/entering.hh
delete mode 100644 milena/mln/trace/essential.hh
delete mode 100644 milena/mln/trace/exiting.hh
delete mode 100644 milena/mln/trace/quiet.hh
delete mode 100644 milena/mln/trace/resume.hh
delete mode 100644 milena/mln/trace/stop.hh
delete mode 100644 milena/mln/trace/warning.hh
create mode 100644 milena/tests/labeling/foreground.ref.pgm
delete mode 100644 milena/tests/morpho/meyer_wst.cc
delete mode 100644 milena/tests/morpho/meyer_wst_long.cc
create mode 100644 milena/tests/unit_test/cond_tests_poppler
create mode 100644 scribo/doc/scribo/binarization/kim.dox
create mode 100644 scribo/doc/scribo/binarization/wolf.dox
create mode 100644 scribo/doc/scribo/layout/layout.dox
create mode 100644 scribo/doc/scribo/namespaces.dox
create mode 100644 scribo/doc/scribo/primitive/extract/components.dox
create mode 100644 scribo/doc/scribo/primitive/extract/extract.dox
create mode 100644 scribo/scribo/binarization/internal/global_max_stddev_functor.hh
create mode 100644 scribo/scribo/filter/objects_in_borders.hh
create mode 100644 scribo/src/contest/hbr-2013/Makefile.am
create mode 100644 scribo/src/contest/hbr-2013/content_in_hdoc_hbr.cc
create mode 100644 scribo/src/contest/hnla-2013/Makefile.am
create mode 100644 scribo/src/contest/hnla-2013/content_in_hdoc_hnla.cc
create mode 100644 swilena/complex.ixx
create mode 100644 swilena/complex2.i
create mode 100644 swilena/image2d_point2d.i
create mode 100644 swilena/image2d_rgb8.i
delete mode 100644 swilena/int_u32.i
create mode 100644 swilena/ppm.ixx
create mode 100644 swilena/python/complex2-misc.py
delete mode 100644 swilena/python/data.py
create mode 100644 swilena/python/data.py.in
create mode 100644 swilena/python/installcheck.mk
delete mode 100644 swilena/python/ltihooks.py
create mode 100644 swilena/python/max-tree.py
create mode 100644 swilena/python/sps-gdb-local.in
create mode 100644 swilena/rgb.ixx
create mode 100644 swilena/rgb8.i
hooks/post-receive
--
Olena, a generic and efficient image processing platform
1
0

olena-2.0-550-gb14fad4 Make template parameter name more consistant with naming conventions.
by Guillaume Lazzara 19 Apr '13
by Guillaume Lazzara 19 Apr '13
19 Apr '13
* mln/core/image/image1d.hh,
* mln/core/image/image2d.hh,
* mln/core/image/image3d.hh: Here.
---
milena/ChangeLog | 9 ++
milena/mln/core/image/image1d.hh | 278 ++++++++++++++++++------------------
milena/mln/core/image/image2d.hh | 290 +++++++++++++++++++-------------------
milena/mln/core/image/image3d.hh | 290 +++++++++++++++++++-------------------
4 files changed, 438 insertions(+), 429 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index edf3a65..e081229 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,3 +1,12 @@
+2013-04-19 Guillaume Lazzara <z(a)lrde.epita.fr>
+
+ Make template parameter name more consistant with naming
+ conventions.
+
+ * mln/core/image/image1d.hh,
+ * mln/core/image/image2d.hh,
+ * mln/core/image/image3d.hh: Here.
+
2013-04-17 Guillaume Lazzara <z(a)lrde.epita.fr>
* doc/mln/convert.dox: Fix from_to_ module name.
diff --git a/milena/mln/core/image/image1d.hh b/milena/mln/core/image/image1d.hh
index 0cac67d..aaa1ec2 100644
--- a/milena/mln/core/image/image1d.hh
+++ b/milena/mln/core/image/image1d.hh
@@ -52,7 +52,7 @@ namespace mln
{
// Forward declaration.
- template <typename T> struct image1d;
+ template <typename V> struct image1d;
namespace internal
@@ -60,16 +60,16 @@ namespace mln
/*!
\internal
- \brief Data structure for \c mln::image1d<T>.
+ \brief Data structure for \c mln::image1d<V>.
*/
- template <typename T>
- struct data< image1d<T> >
+ template <typename V>
+ struct data< image1d<V> >
{
data(const box1d& b, unsigned bdr);
~data();
- T* buffer_;
- T* array_;
+ V* buffer_;
+ V* array_;
box1d b_; // theoretical box
unsigned bdr_;
@@ -78,7 +78,7 @@ namespace mln
void update_vb_();
void allocate_();
void deallocate_();
- void swap_ (data< image1d<T> >& other_);
+ void swap_ (data< image1d<V> >& other_);
void reallocate_(unsigned new_border);
};
@@ -89,8 +89,8 @@ namespace mln
namespace trait
{
- template <typename T>
- struct image_< image1d<T> > : default_image_< T, image1d<T> >
+ template <typename V>
+ struct image_< image1d<V> > : default_image_< V, image1d<V> >
{
// misc
typedef trait::image::category::primary category;
@@ -122,7 +122,7 @@ namespace mln
// Forward declaration.
- template <typename T> struct image1d;
+ template <typename V> struct image1d;
/// Basic 1D image class.
@@ -133,23 +133,23 @@ namespace mln
///
/// \ingroup modimageconcrete
//
- template <typename T>
+ template <typename V>
struct image1d :
- public internal::image_primary< T, box1d, image1d<T> >
+ public internal::image_primary< V, box1d, image1d<V> >
{
- typedef internal::image_primary< T, mln::box1d, image1d<T> > super_;
+ typedef internal::image_primary< V, mln::box1d, image1d<V> > super_;
/// Value associated type.
- typedef T value;
+ typedef V value;
/// Return type of read-only access.
- typedef const T& rvalue;
+ typedef const V& rvalue;
/// Return type of read-write access.
- typedef T& lvalue;
+ typedef V& lvalue;
/// Skeleton.
- typedef image1d< tag::value_<T> > skeleton;
+ typedef image1d< tag::value_<V> > skeleton;
/// Constructor without argument.
@@ -185,10 +185,10 @@ namespace mln
unsigned border() const;
/// Read-only access to the image value located at point \p p.
- const T& operator()(const point1d& p) const;
+ const V& operator()(const point1d& p) const;
/// Read-write access to the image value located at point \p p.
- T& operator()(const point1d& p);
+ V& operator()(const point1d& p);
// Specific methods:
@@ -197,10 +197,10 @@ namespace mln
/// \cond INTERNAL_API
/// Read-only access to the image value located at (\p offset).
- const T& at_(def::coord offset) const;
+ const V& at_(def::coord offset) const;
/// Read-write access to the image value located at (\p offset).
- T& at_(def::coord offset);
+ V& at_(def::coord offset);
/// Give the number of offsets.
unsigned ninds() const;
@@ -220,18 +220,18 @@ namespace mln
point1d point_at_offset(unsigned i) const;
/// Give a hook to the value buffer.
- const T* buffer() const;
+ const V* buffer() const;
/// Give a hook to the value buffer.
- T* buffer();
+ V* buffer();
/// Read-only access to the \p i-th image value (including the
/// border).
- const T& element(unsigned i) const;
+ const V& element(unsigned i) const;
/// Read-write access to the \p i-th image value (including the
/// border).
- T& element(unsigned i);
+ V& element(unsigned i);
/// Give the number of cells (points including border ones).
unsigned nelements() const;
@@ -244,22 +244,22 @@ namespace mln
};
- template <typename T, typename J>
- void init_(tag::image_t, mln::image1d<T>& target, const J& model);
+ template <typename V, typename J>
+ void init_(tag::image_t, mln::image1d<V>& target, const J& model);
# ifndef MLN_INCLUDE_ONLY
// init_
- template <typename T>
+ template <typename V>
inline
- void init_(tag::border_t, unsigned& b, const image1d<T>& model)
+ void init_(tag::border_t, unsigned& b, const image1d<V>& model)
{
b = model.border();
}
- template <typename T, typename J>
+ template <typename V, typename J>
inline
- void init_(tag::image_t, image1d<T>& target, const J& model)
+ void init_(tag::image_t, image1d<V>& target, const J& model)
{
box1d b;
init_(tag::bbox, b, model);
@@ -268,14 +268,14 @@ namespace mln
target.init_(b, bdr);
}
- // internal::data< image1d<T> >
+ // internal::data< image1d<V> >
namespace internal
{
- template <typename T>
+ template <typename V>
inline
- data< image1d<T> >::data(const box1d& b, unsigned bdr)
+ data< image1d<V> >::data(const box1d& b, unsigned bdr)
: buffer_(0),
array_ (0),
b_ (b),
@@ -284,17 +284,17 @@ namespace mln
allocate_();
}
- template <typename T>
+ template <typename V>
inline
- data< image1d<T> >::~data()
+ data< image1d<V> >::~data()
{
deallocate_();
}
- template <typename T>
+ template <typename V>
inline
void
- data< image1d<T> >::update_vb_()
+ data< image1d<V> >::update_vb_()
{
dpoint1d dp(all_to(bdr_));
@@ -302,23 +302,23 @@ namespace mln
vb_.pmax() = b_.pmax() + dp;
}
- template <typename T>
+ template <typename V>
inline
void
- data< image1d<T> >::allocate_()
+ data< image1d<V> >::allocate_()
{
update_vb_();
unsigned
ni = vb_.len(0);
- buffer_ = new T[ni];
+ buffer_ = new V[ni];
array_ = buffer_ - vb_.pmin().ind();
mln_postcondition(vb_.len(0) == b_.len(0) + 2 * bdr_);
}
- template <typename T>
+ template <typename V>
inline
void
- data< image1d<T> >::deallocate_()
+ data< image1d<V> >::deallocate_()
{
if (buffer_)
{
@@ -328,212 +328,212 @@ namespace mln
}
- template <typename T>
+ template <typename V>
inline
void
- data< image1d<T> >::swap_(data< image1d<T> >& other_)
+ data< image1d<V> >::swap_(data< image1d<V> >& other_)
{
- data< image1d<T> > self_ = *this;
+ data< image1d<V> > self_ = *this;
*this = other_;
other_ = self_;
}
- template <typename T>
+ template <typename V>
inline
void
- data< image1d<T> >::reallocate_(unsigned new_border)
+ data< image1d<V> >::reallocate_(unsigned new_border)
{
- data< image1d<T> >& tmp = *(new data< image1d<T> >(this->b_, new_border));
+ data< image1d<V> >& tmp = *(new data< image1d<V> >(this->b_, new_border));
this->swap_(tmp);
}
} // end of namespace mln::internal
- // image1d<T>
+ // image1d<V>
- template <typename T>
+ template <typename V>
inline
- image1d<T>::image1d()
+ image1d<V>::image1d()
{
}
- template <typename T>
+ template <typename V>
inline
- image1d<T>::image1d(const box1d& b, unsigned bdr)
+ image1d<V>::image1d(const box1d& b, unsigned bdr)
{
init_(b, bdr);
}
- template <typename T>
+ template <typename V>
inline
- image1d<T>::image1d(unsigned ninds, unsigned bdr)
+ image1d<V>::image1d(unsigned ninds, unsigned bdr)
{
mln_precondition(ninds != 0);
init_(make::box1d(ninds), bdr);
}
- template <typename T>
+ template <typename V>
inline
void
- image1d<T>::init_(const box1d& b, unsigned bdr)
+ image1d<V>::init_(const box1d& b, unsigned bdr)
{
mln_precondition(! this->is_valid());
- this->data_ = new internal::data< image1d<T> >(b, bdr);
+ this->data_ = new internal::data< image1d<V> >(b, bdr);
}
- template <typename T>
+ template <typename V>
inline
const box1d&
- image1d<T>::domain() const
+ image1d<V>::domain() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box1d&
- image1d<T>::bbox() const
+ image1d<V>::bbox() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box1d&
- image1d<T>::vbbox() const
+ image1d<V>::vbbox() const
{
mln_precondition(this->is_valid());
return this->data_->vb_;
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image1d<T>::border() const
+ image1d<V>::border() const
{
mln_precondition(this->is_valid());
return this->data_->bdr_;
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image1d<T>::nelements() const
+ image1d<V>::nelements() const
{
mln_precondition(this->is_valid());
return this->data_->vb_.nsites();
}
- template <typename T>
+ template <typename V>
inline
bool
- image1d<T>::has(const point1d& p) const
+ image1d<V>::has(const point1d& p) const
{
mln_precondition(this->is_valid());
return this->data_->vb_.has(p);
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image1d<T>::operator()(const point1d& p) const
+ const V&
+ image1d<V>::operator()(const point1d& p) const
{
mln_precondition(this->has(p));
return this->data_->array_[p.ind()];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image1d<T>::operator()(const point1d& p)
+ V&
+ image1d<V>::operator()(const point1d& p)
{
mln_precondition(this->has(p));
return this->data_->array_[p.ind()];
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image1d<T>::at_(def::coord offset) const
+ const V&
+ image1d<V>::at_(def::coord offset) const
{
mln_precondition(this->has(point1d(offset)));
return this->data_->array_[offset];
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image1d<T>::ninds() const
+ image1d<V>::ninds() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(0);
}
- template <typename T>
+ template <typename V>
inline
- T&
- image1d<T>::at_(def::coord offset)
+ V&
+ image1d<V>::at_(def::coord offset)
{
mln_precondition(this->has(point1d(offset)));
return this->data_->array_[offset];
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image1d<T>::element(unsigned i) const
+ const V&
+ image1d<V>::element(unsigned i) const
{
mln_precondition(i < nelements());
return this->data_->buffer_[i];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image1d<T>::element(unsigned i)
+ V&
+ image1d<V>::element(unsigned i)
{
mln_precondition(i < nelements());
return this->data_->buffer_[i];
}
- template <typename T>
+ template <typename V>
inline
- const T*
- image1d<T>::buffer() const
+ const V*
+ image1d<V>::buffer() const
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
- T*
- image1d<T>::buffer()
+ V*
+ image1d<V>::buffer()
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
int
- image1d<T>::delta_offset(const dpoint1d& dp) const
+ image1d<V>::delta_offset(const dpoint1d& dp) const
{
mln_precondition(this->is_valid());
int o = dp[0];
return o;
}
- template <typename T>
+ template <typename V>
inline
point1d
- image1d<T>::point_at_offset(unsigned i) const
+ image1d<V>::point_at_offset(unsigned i) const
{
mln_precondition(i < nelements());
def::coord ind = static_cast<def::coord>(i + this->data_->vb_.min_ind());
@@ -542,10 +542,10 @@ namespace mln
return p;
}
- template <typename T>
+ template <typename V>
inline
void
- image1d<T>::resize_(unsigned new_border)
+ image1d<V>::resize_(unsigned new_border)
{
this->data_->reallocate_(new_border);
}
@@ -571,80 +571,80 @@ namespace mln
// pixter
- template <typename T>
- struct fwd_pixter< image1d<T> >
+ template <typename V>
+ struct fwd_pixter< image1d<V> >
{
- typedef fwd_pixter1d< image1d<T> > ret;
+ typedef fwd_pixter1d< image1d<V> > ret;
};
- template <typename T>
- struct fwd_pixter< const image1d<T> >
+ template <typename V>
+ struct fwd_pixter< const image1d<V> >
{
- typedef fwd_pixter1d< const image1d<T> > ret;
+ typedef fwd_pixter1d< const image1d<V> > ret;
};
- template <typename T>
- struct bkd_pixter< image1d<T> >
+ template <typename V>
+ struct bkd_pixter< image1d<V> >
{
- typedef bkd_pixter1d< image1d<T> > ret;
+ typedef bkd_pixter1d< image1d<V> > ret;
};
- template <typename T>
- struct bkd_pixter< const image1d<T> >
+ template <typename V>
+ struct bkd_pixter< const image1d<V> >
{
- typedef bkd_pixter1d< const image1d<T> > ret;
+ typedef bkd_pixter1d< const image1d<V> > ret;
};
// qixter
- template <typename T, typename W>
- struct fwd_qixter< image1d<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< image1d<V>, W >
{
- typedef dpoints_fwd_pixter< image1d<T> > ret;
+ typedef dpoints_fwd_pixter< image1d<V> > ret;
};
- template <typename T, typename W>
- struct fwd_qixter< const image1d<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< const image1d<V>, W >
{
- typedef dpoints_fwd_pixter< const image1d<T> > ret;
+ typedef dpoints_fwd_pixter< const image1d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< image1d<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< image1d<V>, W >
{
- typedef dpoints_bkd_pixter< image1d<T> > ret;
+ typedef dpoints_bkd_pixter< image1d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< const image1d<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< const image1d<V>, W >
{
- typedef dpoints_bkd_pixter< const image1d<T> > ret;
+ typedef dpoints_bkd_pixter< const image1d<V> > ret;
};
// nixter
- template <typename T, typename W>
- struct fwd_nixter< image1d<T>, W >
+ template <typename V, typename W>
+ struct fwd_nixter< image1d<V>, W >
{
- typedef dpoints_fwd_pixter< image1d<T> > ret;
+ typedef dpoints_fwd_pixter< image1d<V> > ret;
};
- template <typename T, typename W>
- struct fwd_nixter< const image1d<T>, W >
+ template <typename V, typename W>
+ struct fwd_nixter< const image1d<V>, W >
{
- typedef dpoints_fwd_pixter< const image1d<T> > ret;
+ typedef dpoints_fwd_pixter< const image1d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_nixter< image1d<T>, W >
+ template <typename V, typename W>
+ struct bkd_nixter< image1d<V>, W >
{
- typedef dpoints_bkd_pixter< image1d<T> > ret;
+ typedef dpoints_bkd_pixter< image1d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_nixter< const image1d<T>, W >
+ template <typename V, typename W>
+ struct bkd_nixter< const image1d<V>, W >
{
- typedef dpoints_bkd_pixter< const image1d<T> > ret;
+ typedef dpoints_bkd_pixter< const image1d<V> > ret;
};
} // end of namespace mln::trait
diff --git a/milena/mln/core/image/image2d.hh b/milena/mln/core/image/image2d.hh
index 7ef0102..830057d 100644
--- a/milena/mln/core/image/image2d.hh
+++ b/milena/mln/core/image/image2d.hh
@@ -56,23 +56,23 @@ namespace mln
{
// Forward declaration.
- template <typename T> class image2d;
+ template <typename V> class image2d;
namespace internal
{
/*!
- \brief Data structure for \c mln::image2d<T>.
+ \brief Data structure for \c mln::image2d<V>.
*/
- template <typename T>
- struct data< image2d<T> >
+ template <typename V>
+ struct data< image2d<V> >
{
data(const box2d& b, unsigned bdr);
~data();
- T* buffer_;
- T** array_;
+ V* buffer_;
+ V** array_;
box2d b_; // theoretical box
unsigned bdr_;
@@ -81,7 +81,7 @@ namespace mln
void update_vb_();
void allocate_();
void deallocate_();
- void swap_(data< image2d<T> >& other_);
+ void swap_(data< image2d<V> >& other_);
void reallocate_(unsigned new_border);
};
@@ -90,8 +90,8 @@ namespace mln
namespace trait
{
- template <typename T>
- struct image_< image2d<T> > : default_image_< T, image2d<T> >
+ template <typename V>
+ struct image_< image2d<V> > : default_image_< V, image2d<V> >
{
// misc
typedef trait::image::category::primary category;
@@ -130,24 +130,24 @@ namespace mln
///
/// \ingroup modimageconcrete
//
- template <typename T>
- class image2d : public internal::image_primary< T, mln::box2d, image2d<T> >
+ template <typename V>
+ class image2d : public internal::image_primary< V, mln::box2d, image2d<V> >
{
- typedef internal::image_primary< T, mln::box2d, image2d<T> > super_;
+ typedef internal::image_primary< V, mln::box2d, image2d<V> > super_;
public:
/// Value associated type.
- typedef T value;
+ typedef V value;
/// Return type of read-only access.
- typedef const T& rvalue;
+ typedef const V& rvalue;
/// Return type of read-write access.
- typedef T& lvalue;
+ typedef V& lvalue;
/// Skeleton.
- typedef image2d< tag::value_<T> > skeleton;
+ typedef image2d< tag::value_<V> > skeleton;
/// Constructor without argument.
@@ -181,14 +181,14 @@ namespace mln
const box2d& vbbox() const;
/// Read-only access to the image value located at point \p p.
- const T& operator()(const point2d& p) const;
+ const V& operator()(const point2d& p) const;
/// Read-write access to the image value located at point \p p.
- T& operator()(const point2d& p);
+ V& operator()(const point2d& p);
template <typename P>
- T& alt(const P& p)
+ V& alt(const P& p)
{
typedef def::coord coord_t;
mln_precondition(this->has(p));
@@ -212,9 +212,9 @@ namespace mln
/// \cond INTERNAL_API
/// Read-only access to the image value located at (\p row, \p col).
- const T& at_(mln::def::coord row, mln::def::coord col) const;
+ const V& at_(mln::def::coord row, mln::def::coord col) const;
/// Read-write access to the image value located at (\p row, \p col).
- T& at_(mln::def::coord row, mln::def::coord col);
+ V& at_(mln::def::coord row, mln::def::coord col);
/// \endcond
@@ -238,10 +238,10 @@ namespace mln
unsigned nelements() const;
/// Read-only access to the image value located at offset \p i.
- const T& element(unsigned i) const;
+ const V& element(unsigned i) const;
/// Read-write access to the image value located at offset \p i.
- T& element(unsigned i);
+ V& element(unsigned i);
/// Give the delta-offset corresponding to the delta-point \p dp.
int delta_offset(const dpoint2d& dp) const;
@@ -250,10 +250,10 @@ namespace mln
point2d point_at_offset(unsigned i) const;
/// Give a hook to the value buffer.
- const T* buffer() const;
+ const V* buffer() const;
/// Give a hook to the value buffer.
- T* buffer();
+ V* buffer();
/// \cond INTERNAL_API
@@ -268,11 +268,11 @@ namespace mln
/// \cond INTERNAL_API
- template <typename T>
- void init_(tag::border_t, unsigned& bdr, const image2d<T>& model);
+ template <typename V>
+ void init_(tag::border_t, unsigned& bdr, const image2d<V>& model);
- template <typename T, typename J>
- void init_(tag::image_t, mln::image2d<T>& target, const J& model);
+ template <typename V, typename J>
+ void init_(tag::image_t, mln::image2d<V>& target, const J& model);
/// \endcond
@@ -281,16 +281,16 @@ namespace mln
// init_
- template <typename T>
+ template <typename V>
inline
- void init_(tag::border_t, unsigned& bdr, const image2d<T>& model)
+ void init_(tag::border_t, unsigned& bdr, const image2d<V>& model)
{
bdr = model.border();
}
- template <typename T, typename J>
+ template <typename V, typename J>
inline
- void init_(tag::image_t, image2d<T>& target, const J& model)
+ void init_(tag::image_t, image2d<V>& target, const J& model)
{
box2d b;
init_(tag::bbox, b, model);
@@ -300,13 +300,13 @@ namespace mln
}
- // internal::data< image2d<T> >
+ // internal::data< image2d<V> >
namespace internal
{
- template <typename T>
+ template <typename V>
inline
- data< image2d<T> >::data(const box2d& b, unsigned bdr)
+ data< image2d<V> >::data(const box2d& b, unsigned bdr)
: buffer_(0),
array_ (0),
b_ (b),
@@ -315,34 +315,34 @@ namespace mln
allocate_();
}
- template <typename T>
+ template <typename V>
inline
- data< image2d<T> >::~data()
+ data< image2d<V> >::~data()
{
deallocate_();
}
- template <typename T>
+ template <typename V>
inline
void
- data< image2d<T> >::update_vb_()
+ data< image2d<V> >::update_vb_()
{
vb_.pmin() = b_.pmin() - dpoint2d(all_to(bdr_));
vb_.pmax() = b_.pmax() + dpoint2d(all_to(bdr_));
}
- template <typename T>
+ template <typename V>
inline
void
- data< image2d<T> >::allocate_()
+ data< image2d<V> >::allocate_()
{
update_vb_();
unsigned
nr = vb_.len(0),
nc = vb_.len(1);
- buffer_ = new T[nr * nc];
- array_ = new T*[nr];
- T* buf = buffer_ - vb_.pmin().col();
+ buffer_ = new V[nr * nc];
+ array_ = new V*[nr];
+ V* buf = buffer_ - vb_.pmin().col();
for (unsigned i = 0; i < nr; ++i)
{
array_[i] = buf;
@@ -353,10 +353,10 @@ namespace mln
mln_postcondition(vb_.len(1) == b_.len(1) + 2 * bdr_);
}
- template <typename T>
+ template <typename V>
inline
void
- data< image2d<T> >::deallocate_()
+ data< image2d<V> >::deallocate_()
{
if (buffer_)
{
@@ -371,22 +371,22 @@ namespace mln
}
}
- template <typename T>
+ template <typename V>
inline
void
- data< image2d<T> >::swap_(data< image2d<T> >& other_)
+ data< image2d<V> >::swap_(data< image2d<V> >& other_)
{
- data< image2d<T> > self_ = *this;
+ data< image2d<V> > self_ = *this;
*this = other_;
other_ = self_;
}
- template <typename T>
+ template <typename V>
inline
void
- data< image2d<T> >::reallocate_(unsigned new_border)
+ data< image2d<V> >::reallocate_(unsigned new_border)
{
- data< image2d<T> >& tmp = *(new data< image2d<T> >(this->b_, new_border));
+ data< image2d<V> >& tmp = *(new data< image2d<V> >(this->b_, new_border));
this->swap_(tmp);
}
@@ -394,86 +394,86 @@ namespace mln
} // end of namespace mln::internal
- // image2d<T>
+ // image2d<V>
- template <typename T>
+ template <typename V>
inline
- image2d<T>::image2d()
+ image2d<V>::image2d()
{
}
- template <typename T>
+ template <typename V>
inline
- image2d<T>::image2d(int nrows, int ncols, unsigned bdr)
+ image2d<V>::image2d(int nrows, int ncols, unsigned bdr)
{
init_(make::box2d(nrows, ncols), bdr);
}
- template <typename T>
+ template <typename V>
inline
- image2d<T>::image2d(const box2d& b, unsigned bdr)
+ image2d<V>::image2d(const box2d& b, unsigned bdr)
{
init_(b, bdr);
}
- template <typename T>
+ template <typename V>
inline
void
- image2d<T>::init_(const box2d& b, unsigned bdr)
+ image2d<V>::init_(const box2d& b, unsigned bdr)
{
mln_precondition(! this->is_valid());
- this->data_ = new internal::data< image2d<T> >(b, bdr);
+ this->data_ = new internal::data< image2d<V> >(b, bdr);
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d<T>::domain() const
+ image2d<V>::domain() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d<T>::bbox() const
+ image2d<V>::bbox() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d<T>::vbbox() const
+ image2d<V>::vbbox() const
{
mln_precondition(this->is_valid());
return this->data_->vb_;
}
- template <typename T>
+ template <typename V>
inline
bool
- image2d<T>::has(const point2d& p) const
+ image2d<V>::has(const point2d& p) const
{
mln_precondition(this->is_valid());
return this->data_->vb_.has(p);
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d<T>::operator()(const point2d& p) const
+ const V&
+ image2d<V>::operator()(const point2d& p) const
{
mln_precondition(this->has(p));
return this->data_->array_[p.row()][p.col()];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d<T>::operator()(const point2d& p)
+ V&
+ image2d<V>::operator()(const point2d& p)
{
mln_precondition(this->has(p));
return this->data_->array_[p.row()][p.col()];
@@ -482,37 +482,37 @@ namespace mln
// Specific methods:
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d<T>::at_(mln::def::coord row, mln::def::coord col) const
+ const V&
+ image2d<V>::at_(mln::def::coord row, mln::def::coord col) const
{
mln_precondition(this->has(point2d(row, col)));
return this->data_->array_[row][col];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d<T>::at_(mln::def::coord row, mln::def::coord col)
+ V&
+ image2d<V>::at_(mln::def::coord row, mln::def::coord col)
{
mln_precondition(this->has(point2d(row, col)));
return this->data_->array_[row][col];
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d<T>::nrows() const
+ image2d<V>::nrows() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(0);
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d<T>::ncols() const
+ image2d<V>::ncols() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(1);
@@ -521,74 +521,74 @@ namespace mln
// As a fastest image:
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d<T>::border() const
+ image2d<V>::border() const
{
mln_precondition(this->is_valid());
return this->data_->bdr_;
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d<T>::nelements() const
+ image2d<V>::nelements() const
{
mln_precondition(this->is_valid());
return this->data_->vb_.nsites();
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d<T>::element(unsigned i) const
+ const V&
+ image2d<V>::element(unsigned i) const
{
mln_precondition(i < nelements());
return *(this->data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d<T>::element(unsigned i)
+ V&
+ image2d<V>::element(unsigned i)
{
mln_precondition(i < nelements());
return *(this->data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- const T*
- image2d<T>::buffer() const
+ const V*
+ image2d<V>::buffer() const
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
- T*
- image2d<T>::buffer()
+ V*
+ image2d<V>::buffer()
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
int
- image2d<T>::delta_offset(const dpoint2d& dp) const
+ image2d<V>::delta_offset(const dpoint2d& dp) const
{
mln_precondition(this->is_valid());
int o = dp[0] * this->data_->vb_.len(1) + dp[1];
return o;
}
- template <typename T>
+ template <typename V>
inline
point2d
- image2d<T>::point_at_offset(unsigned i) const
+ image2d<V>::point_at_offset(unsigned i) const
{
mln_precondition(i < nelements());
def::coord
@@ -601,10 +601,10 @@ namespace mln
// Extra.
- template <typename T>
+ template <typename V>
inline
void
- image2d<T>::resize_(unsigned new_border)
+ image2d<V>::resize_(unsigned new_border)
{
mln_precondition(this->is_valid());
this->data_->reallocate_(new_border);
@@ -630,80 +630,80 @@ namespace mln
// pixter
- template <typename T>
- struct fwd_pixter< image2d<T> >
+ template <typename V>
+ struct fwd_pixter< image2d<V> >
{
- typedef fwd_pixter2d< image2d<T> > ret;
+ typedef fwd_pixter2d< image2d<V> > ret;
};
- template <typename T>
- struct fwd_pixter< const image2d<T> >
+ template <typename V>
+ struct fwd_pixter< const image2d<V> >
{
- typedef fwd_pixter2d< const image2d<T> > ret;
+ typedef fwd_pixter2d< const image2d<V> > ret;
};
- template <typename T>
- struct bkd_pixter< image2d<T> >
+ template <typename V>
+ struct bkd_pixter< image2d<V> >
{
- typedef bkd_pixter2d< image2d<T> > ret;
+ typedef bkd_pixter2d< image2d<V> > ret;
};
- template <typename T>
- struct bkd_pixter< const image2d<T> >
+ template <typename V>
+ struct bkd_pixter< const image2d<V> >
{
- typedef bkd_pixter2d< const image2d<T> > ret;
+ typedef bkd_pixter2d< const image2d<V> > ret;
};
// qixter
- template <typename T, typename W>
- struct fwd_qixter< image2d<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< image2d<V>, W >
{
- typedef dpoints_fwd_pixter< image2d<T> > ret;
+ typedef dpoints_fwd_pixter< image2d<V> > ret;
};
- template <typename T, typename W>
- struct fwd_qixter< const image2d<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< const image2d<V>, W >
{
- typedef dpoints_fwd_pixter< const image2d<T> > ret;
+ typedef dpoints_fwd_pixter< const image2d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< image2d<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< image2d<V>, W >
{
- typedef dpoints_bkd_pixter< image2d<T> > ret;
+ typedef dpoints_bkd_pixter< image2d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< const image2d<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< const image2d<V>, W >
{
- typedef dpoints_bkd_pixter< const image2d<T> > ret;
+ typedef dpoints_bkd_pixter< const image2d<V> > ret;
};
// nixter
- template <typename T, typename N>
- struct fwd_nixter< image2d<T>, N >
+ template <typename V, typename N>
+ struct fwd_nixter< image2d<V>, N >
{
- typedef dpoints_fwd_pixter< image2d<T> > ret;
+ typedef dpoints_fwd_pixter< image2d<V> > ret;
};
- template <typename T, typename N>
- struct fwd_nixter< const image2d<T>, N >
+ template <typename V, typename N>
+ struct fwd_nixter< const image2d<V>, N >
{
- typedef dpoints_fwd_pixter< const image2d<T> > ret;
+ typedef dpoints_fwd_pixter< const image2d<V> > ret;
};
- template <typename T, typename N>
- struct bkd_nixter< image2d<T>, N >
+ template <typename V, typename N>
+ struct bkd_nixter< image2d<V>, N >
{
- typedef dpoints_bkd_pixter< image2d<T> > ret;
+ typedef dpoints_bkd_pixter< image2d<V> > ret;
};
- template <typename T, typename N>
- struct bkd_nixter< const image2d<T>, N >
+ template <typename V, typename N>
+ struct bkd_nixter< const image2d<V>, N >
{
- typedef dpoints_bkd_pixter< const image2d<T> > ret;
+ typedef dpoints_bkd_pixter< const image2d<V> > ret;
};
} // end of namespace mln::trait
diff --git a/milena/mln/core/image/image3d.hh b/milena/mln/core/image/image3d.hh
index 20831c5..d4e14ee 100644
--- a/milena/mln/core/image/image3d.hh
+++ b/milena/mln/core/image/image3d.hh
@@ -51,7 +51,7 @@ namespace mln
{
// Forward declaration.
- template <typename T> struct image3d;
+ template <typename V> struct image3d;
@@ -60,16 +60,16 @@ namespace mln
/*!
\internal
- \brief Data structure for \c mln::image3d<T>.
+ \brief Data structure for \c mln::image3d<V>.
*/
- template <typename T>
- struct data< image3d<T> >
+ template <typename V>
+ struct data< image3d<V> >
{
data(const box3d& b, unsigned bdr);
~data();
- T* buffer_;
- T*** array_;
+ V* buffer_;
+ V*** array_;
box3d b_; // theoretical box
unsigned bdr_;
@@ -78,7 +78,7 @@ namespace mln
void update_vb_();
void allocate_();
void deallocate_();
- void swap_ (data< image3d<T> >& other_);
+ void swap_ (data< image3d<V> >& other_);
void reallocate_(unsigned new_border);
};
@@ -89,8 +89,8 @@ namespace mln
namespace trait
{
- template <typename T>
- struct image_< image3d<T> > : default_image_< T, image3d<T> >
+ template <typename V>
+ struct image_< image3d<V> > : default_image_< V, image3d<V> >
{
// misc
typedef trait::image::category::primary category;
@@ -129,8 +129,8 @@ namespace mln
///
/// \ingroup modimageconcrete
//
- template <typename T>
- struct image3d : public internal::image_primary< T, box3d, image3d<T> >
+ template <typename V>
+ struct image3d : public internal::image_primary< V, box3d, image3d<V> >
{
// Warning: just to make effective types appear in Doxygen:
typedef box3d pset;
@@ -144,20 +144,20 @@ namespace mln
/// Super type
- typedef internal::image_primary< T, box3d, image3d<T> > super_;
+ typedef internal::image_primary< V, box3d, image3d<V> > super_;
/// Value associated type.
- typedef T value;
+ typedef V value;
/// Return type of read-only access.
- typedef const T& rvalue;
+ typedef const V& rvalue;
/// Return type of read-write access.
- typedef T& lvalue;
+ typedef V& lvalue;
/// Skeleton.
- typedef image3d< tag::value_<T> > skeleton;
+ typedef image3d< tag::value_<V> > skeleton;
/// Constructor without argument.
image3d();
@@ -196,26 +196,26 @@ namespace mln
unsigned nelements() const;
/// Read-only access to the image value located at point \p p.
- const T& operator()(const point3d& p) const;
+ const V& operator()(const point3d& p) const;
/// Read-write access to the image value located at point \p p.
- T& operator()(const point3d& p);
+ V& operator()(const point3d& p);
/// Read-only access to the image value located at offset \p i.
- const T& element(unsigned i) const;
+ const V& element(unsigned i) const;
/// Read-write access to the image value located at offset \p i.
- T& element(unsigned i);
+ V& element(unsigned i);
/// \cond INTERNAL_API
/// Read-only access to the image value located at (\p sli, \p
/// row, \p col).
- const T& at_(def::coord sli, def::coord row, def::coord col) const;
+ const V& at_(def::coord sli, def::coord row, def::coord col) const;
/// Read-write access to the image value located at (\p sli, \p
/// row, \p col).
- T& at_(def::coord sli, def::coord row, def::coord col);
+ V& at_(def::coord sli, def::coord row, def::coord col);
/// \endcond
@@ -238,10 +238,10 @@ namespace mln
point3d point_at_offset(unsigned o) const;
/// Give a hook to the value buffer.
- const T* buffer() const;
+ const V* buffer() const;
/// Give a hook to the value buffer.
- T* buffer();
+ V* buffer();
/// \cond INTERNAL_API
@@ -256,8 +256,8 @@ namespace mln
};
- template <typename T, typename J>
- void init_(tag::image_t, mln::image3d<T>& target, const J& model);
+ template <typename V, typename J>
+ void init_(tag::image_t, mln::image3d<V>& target, const J& model);
@@ -265,16 +265,16 @@ namespace mln
// init_
- template <typename T>
+ template <typename V>
inline
- void init_(tag::border_t, unsigned& b, const image3d<T>& model)
+ void init_(tag::border_t, unsigned& b, const image3d<V>& model)
{
b = model.border();
}
- template <typename T, typename J>
+ template <typename V, typename J>
inline
- void init_(tag::image_t, image3d<T>& target, const J& model)
+ void init_(tag::image_t, image3d<V>& target, const J& model)
{
box3d b;
init_(tag::bbox, b, model);
@@ -284,14 +284,14 @@ namespace mln
}
- // internal::data< image3d<T> >
+ // internal::data< image3d<V> >
namespace internal
{
- template <typename T>
+ template <typename V>
inline
- data< image3d<T> >::data(const box3d& b, unsigned bdr)
+ data< image3d<V> >::data(const box3d& b, unsigned bdr)
: buffer_(0),
array_ (0),
b_ (b),
@@ -300,38 +300,38 @@ namespace mln
allocate_();
}
- template <typename T>
+ template <typename V>
inline
- data< image3d<T> >::~data()
+ data< image3d<V> >::~data()
{
deallocate_();
}
- template <typename T>
+ template <typename V>
inline
void
- data< image3d<T> >::update_vb_()
+ data< image3d<V> >::update_vb_()
{
vb_.pmin() = b_.pmin() - dpoint3d(all_to(bdr_));
vb_.pmax() = b_.pmax() + dpoint3d(all_to(bdr_));
}
- template <typename T>
+ template <typename V>
inline
void
- data< image3d<T> >::allocate_()
+ data< image3d<V> >::allocate_()
{
update_vb_();
unsigned
ns = vb_.len(0),
nr = vb_.len(1),
nc = vb_.len(2);
- buffer_ = new T[nr * nc * ns];
- array_ = new T**[ns];
- T* buf = buffer_ - vb_.pmin().col();
+ buffer_ = new V[nr * nc * ns];
+ array_ = new V**[ns];
+ V* buf = buffer_ - vb_.pmin().col();
for (unsigned i = 0; i < ns; ++i)
{
- T** tmp = new T*[nr];
+ V** tmp = new V*[nr];
array_[i] = tmp;
for (unsigned j = 0; j < nr; ++j)
{
@@ -344,10 +344,10 @@ namespace mln
mln_postcondition(vb_.len(0) == b_.len(0) + 2 * bdr_);
}
- template <typename T>
+ template <typename V>
inline
void
- data< image3d<T> >::deallocate_()
+ data< image3d<V> >::deallocate_()
{
if (buffer_)
{
@@ -371,216 +371,216 @@ namespace mln
}
}
- template <typename T>
+ template <typename V>
inline
void
- data< image3d<T> >::swap_(data< image3d<T> >& other_)
+ data< image3d<V> >::swap_(data< image3d<V> >& other_)
{
- data< image3d<T> > self_ = *this;
+ data< image3d<V> > self_ = *this;
*this = other_;
other_ = self_;
}
- template <typename T>
+ template <typename V>
inline
void
- data< image3d<T> >::reallocate_(unsigned new_border)
+ data< image3d<V> >::reallocate_(unsigned new_border)
{
- data< image3d<T> >& tmp = *(new data< image3d<T> >(this->b_, new_border));
+ data< image3d<V> >& tmp = *(new data< image3d<V> >(this->b_, new_border));
this->swap_(tmp);
}
} // end of namespace mln::internal
- // image3d<T>
+ // image3d<V>
- template <typename T>
+ template <typename V>
inline
- image3d<T>::image3d()
+ image3d<V>::image3d()
{
}
- template <typename T>
+ template <typename V>
inline
- image3d<T>::image3d(const box3d& b, unsigned bdr)
+ image3d<V>::image3d(const box3d& b, unsigned bdr)
{
init_(b, bdr);
}
- template <typename T>
+ template <typename V>
inline
- image3d<T>::image3d(int nslis, int nrows, int ncols, unsigned bdr)
+ image3d<V>::image3d(int nslis, int nrows, int ncols, unsigned bdr)
{
init_(make::box3d(nslis, nrows, ncols), bdr);
}
- template <typename T>
+ template <typename V>
inline
void
- image3d<T>::init_(const box3d& b, unsigned bdr)
+ image3d<V>::init_(const box3d& b, unsigned bdr)
{
mln_precondition(! this->is_valid());
- this->data_ = new internal::data< image3d<T> >(b, bdr);
+ this->data_ = new internal::data< image3d<V> >(b, bdr);
}
- template <typename T>
+ template <typename V>
inline
const box3d&
- image3d<T>::domain() const
+ image3d<V>::domain() const
{
mln_precondition(this->is_valid());
return data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box3d&
- image3d<T>::bbox() const
+ image3d<V>::bbox() const
{
mln_precondition(this->is_valid());
return data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box3d&
- image3d<T>::vbbox() const
+ image3d<V>::vbbox() const
{
mln_precondition(this->is_valid());
return data_->vb_;
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image3d<T>::border() const
+ image3d<V>::border() const
{
mln_precondition(this->is_valid());
return data_->bdr_;
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image3d<T>::nelements() const
+ image3d<V>::nelements() const
{
mln_precondition(this->is_valid());
return data_->vb_.nsites();
}
- template <typename T>
+ template <typename V>
inline
bool
- image3d<T>::has(const point3d& p) const
+ image3d<V>::has(const point3d& p) const
{
mln_precondition(this->is_valid());
return data_->vb_.has(p);
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image3d<T>::operator()(const point3d& p) const
+ const V&
+ image3d<V>::operator()(const point3d& p) const
{
mln_precondition(this->has(p));
return data_->array_[p.sli()][p.row()][p.col()];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image3d<T>::operator()(const point3d& p)
+ V&
+ image3d<V>::operator()(const point3d& p)
{
mln_precondition(this->has(p));
return data_->array_[p.sli()][p.row()][p.col()];
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image3d<T>::element(unsigned i) const
+ const V&
+ image3d<V>::element(unsigned i) const
{
mln_precondition(i < nelements());
return *(data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- T&
- image3d<T>::element(unsigned i)
+ V&
+ image3d<V>::element(unsigned i)
{
mln_precondition(i < nelements());
return *(data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image3d<T>::at_(def::coord sli, def::coord row, def::coord col) const
+ const V&
+ image3d<V>::at_(def::coord sli, def::coord row, def::coord col) const
{
mln_precondition(this->has(point3d(sli, row, col)));
return data_->array_[sli][row][col];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image3d<T>::at_(def::coord sli, def::coord row, def::coord col)
+ V&
+ image3d<V>::at_(def::coord sli, def::coord row, def::coord col)
{
mln_precondition(this->has(point3d(sli, row, col)));
return data_->array_[sli][row][col];
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image3d<T>::nslis() const
+ image3d<V>::nslis() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(0);
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image3d<T>::nrows() const
+ image3d<V>::nrows() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(1);
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image3d<T>::ncols() const
+ image3d<V>::ncols() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(2);
}
- template <typename T>
+ template <typename V>
inline
- const T*
- image3d<T>::buffer() const
+ const V*
+ image3d<V>::buffer() const
{
mln_precondition(this->is_valid());
return data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
- T*
- image3d<T>::buffer()
+ V*
+ image3d<V>::buffer()
{
mln_precondition(this->is_valid());
return data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
int
- image3d<T>::delta_offset(const dpoint3d& dp) const
+ image3d<V>::delta_offset(const dpoint3d& dp) const
{
mln_precondition(this->is_valid());
int o = (dp[0] * this->data_->vb_.len(1)
@@ -588,10 +588,10 @@ namespace mln
return o;
}
- template <typename T>
+ template <typename V>
inline
point3d
- image3d<T>::point_at_offset(unsigned o) const
+ image3d<V>::point_at_offset(unsigned o) const
{
mln_precondition(o < nelements());
def::coord
@@ -603,10 +603,10 @@ namespace mln
return p;
}
- template <typename T>
+ template <typename V>
inline
void
- image3d<T>::resize_(unsigned new_border)
+ image3d<V>::resize_(unsigned new_border)
{
this->data_->reallocate_(new_border);
}
@@ -631,80 +631,80 @@ namespace mln
// pixter
- template <typename T>
- struct fwd_pixter< image3d<T> >
+ template <typename V>
+ struct fwd_pixter< image3d<V> >
{
- typedef fwd_pixter3d< image3d<T> > ret;
+ typedef fwd_pixter3d< image3d<V> > ret;
};
- template <typename T>
- struct fwd_pixter< const image3d<T> >
+ template <typename V>
+ struct fwd_pixter< const image3d<V> >
{
- typedef fwd_pixter3d< const image3d<T> > ret;
+ typedef fwd_pixter3d< const image3d<V> > ret;
};
- template <typename T>
- struct bkd_pixter< image3d<T> >
+ template <typename V>
+ struct bkd_pixter< image3d<V> >
{
- typedef bkd_pixter3d< image3d<T> > ret;
+ typedef bkd_pixter3d< image3d<V> > ret;
};
- template <typename T>
- struct bkd_pixter< const image3d<T> >
+ template <typename V>
+ struct bkd_pixter< const image3d<V> >
{
- typedef bkd_pixter3d< const image3d<T> > ret;
+ typedef bkd_pixter3d< const image3d<V> > ret;
};
// qixter
- template <typename T, typename W>
- struct fwd_qixter< image3d<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< image3d<V>, W >
{
- typedef dpoints_fwd_pixter< image3d<T> > ret;
+ typedef dpoints_fwd_pixter< image3d<V> > ret;
};
- template <typename T, typename W>
- struct fwd_qixter< const image3d<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< const image3d<V>, W >
{
- typedef dpoints_fwd_pixter< const image3d<T> > ret;
+ typedef dpoints_fwd_pixter< const image3d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< image3d<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< image3d<V>, W >
{
- typedef dpoints_bkd_pixter< image3d<T> > ret;
+ typedef dpoints_bkd_pixter< image3d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< const image3d<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< const image3d<V>, W >
{
- typedef dpoints_bkd_pixter< const image3d<T> > ret;
+ typedef dpoints_bkd_pixter< const image3d<V> > ret;
};
// nixter
- template <typename T, typename W>
- struct fwd_nixter< image3d<T>, W >
+ template <typename V, typename W>
+ struct fwd_nixter< image3d<V>, W >
{
- typedef dpoints_fwd_pixter< image3d<T> > ret;
+ typedef dpoints_fwd_pixter< image3d<V> > ret;
};
- template <typename T, typename W>
- struct fwd_nixter< const image3d<T>, W >
+ template <typename V, typename W>
+ struct fwd_nixter< const image3d<V>, W >
{
- typedef dpoints_fwd_pixter< const image3d<T> > ret;
+ typedef dpoints_fwd_pixter< const image3d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_nixter< image3d<T>, W >
+ template <typename V, typename W>
+ struct bkd_nixter< image3d<V>, W >
{
- typedef dpoints_bkd_pixter< image3d<T> > ret;
+ typedef dpoints_bkd_pixter< image3d<V> > ret;
};
- template <typename T, typename W>
- struct bkd_nixter< const image3d<T>, W >
+ template <typename V, typename W>
+ struct bkd_nixter< const image3d<V>, W >
{
- typedef dpoints_bkd_pixter< const image3d<T> > ret;
+ typedef dpoints_bkd_pixter< const image3d<V> > ret;
};
} // end of namespace mln::trait
--
1.7.2.5
1
0
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Olena, a generic and efficient image processing platform".
The branch exp/TL has been updated
via 67a45dad80adf097fd6b02e78b0f96e1009dce38 (commit)
via a4f4e391858589f054ef08009bf0cf1f42a61bf0 (commit)
from 31f6b360a0a9fb84b6eb1957941d78e68f67e508 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
67a45da mln/core/image/image2d_ffmpeg.hh: Fix compilation issues.
a4f4e39 mln/core/image/image2d_ffmpeg.hh: Enable fastest access.
-----------------------------------------------------------------------
Summary of changes:
milena/ChangeLog | 8 +
milena/mln/core/image/image2d_ffmpeg.hh | 317 +++++++++++++++----------------
2 files changed, 161 insertions(+), 164 deletions(-)
hooks/post-receive
--
Olena, a generic and efficient image processing platform
1
0

19 Apr '13
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Olena, a generic and efficient image processing platform".
The branch exp/image2d-ffmpeg has been updated
via fc5725233277b23ea1f1d5f9bfcf7aad4e286784 (commit)
via 15df2972abb572db54e3ca12773dfe323433a245 (commit)
from dde4cb2c284feeb3c489de6dcd939efd716fc5b9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
fc57252 mln/core/image/image2d_ffmpeg.hh: Fix compilation issues.
15df297 mln/core/image/image2d_ffmpeg.hh: Enable fastest access.
-----------------------------------------------------------------------
Summary of changes:
milena/ChangeLog | 8 +
milena/mln/core/image/image2d_ffmpeg.hh | 317 +++++++++++++++----------------
2 files changed, 161 insertions(+), 164 deletions(-)
hooks/post-receive
--
Olena, a generic and efficient image processing platform
1
0

olena-2.0-510-g67a45da mln/core/image/image2d_ffmpeg.hh: Fix compilation issues.
by Guillaume Lazzara 19 Apr '13
by Guillaume Lazzara 19 Apr '13
19 Apr '13
---
milena/ChangeLog | 4 +
milena/mln/core/image/image2d_ffmpeg.hh | 251 ++++++++++++++++---------------
2 files changed, 130 insertions(+), 125 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index c8bdff7..2f20d83 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-19 Guillaume Lazzara <z(a)lrde.epita.fr>
+
+ * mln/core/image/image2d_ffmpeg.hh: Fix compilation issues.
+
2013-04-18 Guillaume Lazzara <z(a)lrde.epita.fr>
* mln/core/image/image2d_ffmpeg.hh: Enable fastest access.
diff --git a/milena/mln/core/image/image2d_ffmpeg.hh b/milena/mln/core/image/image2d_ffmpeg.hh
index fb33722..2b727bb 100644
--- a/milena/mln/core/image/image2d_ffmpeg.hh
+++ b/milena/mln/core/image/image2d_ffmpeg.hh
@@ -46,25 +46,25 @@ namespace mln
{
// Forward declaration.
- template <typename T> class image2d_ffmpeg;
+ template <typename V> class image2d_ffmpeg;
namespace internal
{
/*!
- \brief Data structure for \c mln::image2d_ffmpeg<T>.
+ \brief Data structure for \c mln::image2d_ffmpeg<V>.
*/
- template <typename T>
- struct data< image2d_ffmpeg<T> >
+ template <typename V>
+ struct data< image2d_ffmpeg<V> >
{
data(AVFrame *frame);
~data();
- AVFrame *frame;
+ AVFrame *frame_;
- T* buffer_;
- T** array_;
+ V* buffer_;
+ V** array_;
box2d b_; // theoretical box
@@ -77,8 +77,8 @@ namespace mln
namespace trait
{
- template <typename T>
- struct image_< image2d_ffmpeg<T> > : default_image_< T, image2d_ffmpeg<T> >
+ template <typename V>
+ struct image_< image2d_ffmpeg<V> > : default_image_< V, image2d_ffmpeg<V> >
{
// misc
typedef trait::image::category::primary category;
@@ -113,29 +113,29 @@ namespace mln
/// Basic 2D image class.
///
- /// The parameter \c T is the type of pixel values. This image class
+ /// The parameter \c V is the type of pixel values. This image class
/// stores data in memory and has a virtual border with constant
/// thickness around data.
///
/// \ingroup modimageconcrete
//
- template <typename T>
- class image2d_ffmpeg : public internal::image_primary< T, mln::box2d, image2d_ffmpeg<T> >
+ template <typename V>
+ class image2d_ffmpeg : public internal::image_primary< V, mln::box2d, image2d_ffmpeg<V> >
{
- typedef internal::image_primary< T, mln::box2d, image2d_ffmpeg<T> > super_;
+ typedef internal::image_primary< V, mln::box2d, image2d_ffmpeg<V> > super_;
public:
/// Value associated type.
- typedef T value;
+ typedef V value;
/// Return type of read-only access.
- typedef const T& rvalue;
+ typedef const V& rvalue;
/// Return type of read-write access.
- typedef T& lvalue;
+ typedef V& lvalue;
/// Skeleton.
- typedef image2d_ffmpeg< tag::value_<T> > skeleton;
+ typedef image2d_ffmpeg< tag::value_<V> > skeleton;
/// Constructor without argument.
@@ -165,19 +165,19 @@ namespace mln
const box2d& vbbox() const;
/// Read-only access to the image value located at point \p p.
- const T& operator()(const point2d& p) const;
+ const V& operator()(const point2d& p) const;
/// Read-write access to the image value located at point \p p.
- T& operator()(const point2d& p);
+ V& operator()(const point2d& p);
// Specific methods:
// -----------------
/// \cond INTERNAL_API
/// Read-only access to the image value located at (\p row, \p col).
- const T& at_(mln::def::coord row, mln::def::coord col) const;
+ const V& at_(mln::def::coord row, mln::def::coord col) const;
/// Read-write access to the image value located at (\p row, \p col).
- T& at_(mln::def::coord row, mln::def::coord col);
+ V& at_(mln::def::coord row, mln::def::coord col);
/// \endcond
@@ -201,10 +201,10 @@ namespace mln
unsigned nelements() const;
/// Read-only access to the image value located at offset \p i.
- const T& element(unsigned i) const;
+ const V& element(unsigned i) const;
/// Read-write access to the image value located at offset \p i.
- T& element(unsigned i);
+ V& element(unsigned i);
/// Give the delta-offset corresponding to the delta-point \p dp.
int delta_offset(const dpoint2d& dp) const;
@@ -213,10 +213,10 @@ namespace mln
point2d point_at_offset(unsigned i) const;
/// Give a hook to the value buffer.
- const T* buffer() const;
+ const V* buffer() const;
/// Give a hook to the value buffer.
- T* buffer();
+ V* buffer();
};
@@ -226,8 +226,8 @@ namespace mln
/// \cond INTERNAL_API
- template <typename T, typename J>
- void init_(tag::image_t, mln::image2d_ffmpeg<T>& target, const J& model);
+ template <typename V, typename J>
+ void init_(tag::image_t, mln::image2d_ffmpeg<V>& target, const J& model);
/// \endcond
@@ -236,9 +236,9 @@ namespace mln
// init_
- template <typename T, typename J>
+ template <typename V, typename J>
inline
- void init_(tag::image_t, image2d_ffmpeg<T>& target, const J& model)
+ void init_(tag::image_t, image2d_ffmpeg<V>& target, const J& model)
{
box2d b;
init_(tag::bbox, b, model);
@@ -246,13 +246,13 @@ namespace mln
}
- // internal::data< image2d_ffmpeg<T> >
+ // internal::data< image2d_ffmpeg<V> >
namespace internal
{
- template <typename T>
+ template <typename V>
inline
- data< image2d_ffmpeg<T> >::data(AVFrame *frame)
+ data< image2d_ffmpeg<V> >::data(AVFrame *frame)
: frame_(frame)
{
b_ = make::box2d(frame->height, frame->linesize); // frame->width ?
@@ -260,9 +260,9 @@ namespace mln
unsigned
nr = frame->height,
nc = frame->width;
- array_ = new T*[nr];
- buf_ = frame->data[0];
- T* buf = frame->data[0];
+ array_ = new V*[nr];
+ buffer_ = static_cast<V*>((void *)frame->data[0]);
+ V* buf = static_cast<V*>((void *)frame->data[0]);
for (unsigned i = 0; i < nr; ++i)
{
array_[i] = buf;
@@ -270,18 +270,18 @@ namespace mln
}
}
- template <typename T>
+ template <typename V>
inline
- data< image2d_ffmpeg<T> >::~data()
+ data< image2d_ffmpeg<V> >::~data()
{
deallocate_();
// AVFrame must be deleted by the user!
}
- template <typename T>
+ template <typename V>
inline
void
- data< image2d_ffmpeg<T> >::deallocate_()
+ data< image2d_ffmpeg<V> >::deallocate_()
{
if (array_)
{
@@ -294,70 +294,70 @@ namespace mln
} // end of namespace mln::internal
- // image2d_ffmpeg<T>
+ // image2d_ffmpeg<V>
- template <typename T>
+ template <typename V>
inline
- image2d_ffmpeg<T>::image2d_ffmpeg()
+ image2d_ffmpeg<V>::image2d_ffmpeg()
{
}
- template <typename T>
+ template <typename V>
inline
- image2d_ffmpeg<T>::image2d_ffmpeg(AVFrame *frame)
+ image2d_ffmpeg<V>::image2d_ffmpeg(AVFrame *frame)
{
- this->data_ = new internal::data< image2d_ffmpeg<T> >(frame);
+ this->data_ = new internal::data< image2d_ffmpeg<V> >(frame);
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d_ffmpeg<T>::domain() const
+ image2d_ffmpeg<V>::domain() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d_ffmpeg<T>::bbox() const
+ image2d_ffmpeg<V>::bbox() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d_ffmpeg<T>::vbbox() const
+ image2d_ffmpeg<V>::vbbox() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
bool
- image2d_ffmpeg<T>::has(const point2d& p) const
+ image2d_ffmpeg<V>::has(const point2d& p) const
{
mln_precondition(this->is_valid());
return this->data_->b_.has(p);
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d_ffmpeg<T>::operator()(const point2d& p) const
+ const V&
+ image2d_ffmpeg<V>::operator()(const point2d& p) const
{
mln_precondition(this->has(p));
return this->data_->array_[p.row()][p.col()];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d_ffmpeg<T>::operator()(const point2d& p)
+ V&
+ image2d_ffmpeg<V>::operator()(const point2d& p)
{
mln_precondition(this->has(p));
return this->data_->array_[p.row()][p.col()];
@@ -366,37 +366,37 @@ namespace mln
// Specific methods:
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d_ffmpeg<T>::at_(mln::def::coord row, mln::def::coord col) const
+ const V&
+ image2d_ffmpeg<V>::at_(mln::def::coord row, mln::def::coord col) const
{
mln_precondition(this->has(point2d(row, col)));
return this->data_->array_[row][col];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d_ffmpeg<T>::at_(mln::def::coord row, mln::def::coord col)
+ V&
+ image2d_ffmpeg<V>::at_(mln::def::coord row, mln::def::coord col)
{
mln_precondition(this->has(point2d(row, col)));
return this->data_->array_[row][col];
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::nrows() const
+ image2d_ffmpeg<V>::nrows() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(0);
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::ncols() const
+ image2d_ffmpeg<V>::ncols() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(1);
@@ -405,74 +405,74 @@ namespace mln
// As a fastest image:
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::border() const
+ image2d_ffmpeg<V>::border() const
{
mln_precondition(this->is_valid());
return 0;
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::nelements() const
+ image2d_ffmpeg<V>::nelements() const
{
mln_precondition(this->is_valid());
return this->data_->b_.nsites();
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d_ffmpeg<T>::element(unsigned i) const
+ const V&
+ image2d_ffmpeg<V>::element(unsigned i) const
{
mln_precondition(i < nelements());
return *(this->data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d_ffmpeg<T>::element(unsigned i)
+ V&
+ image2d_ffmpeg<V>::element(unsigned i)
{
mln_precondition(i < nelements());
return *(this->data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- const T*
- image2d_ffmpeg<T>::buffer() const
+ const V*
+ image2d_ffmpeg<V>::buffer() const
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
- T*
- image2d_ffmpeg<T>::buffer()
+ V*
+ image2d_ffmpeg<V>::buffer()
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
int
- image2d_ffmpeg<T>::delta_offset(const dpoint2d& dp) const
+ image2d_ffmpeg<V>::delta_offset(const dpoint2d& dp) const
{
mln_precondition(this->is_valid());
int o = dp[0] * this->data_->frame->linesize + dp[1];
return o;
}
- template <typename T>
+ template <typename V>
inline
point2d
- image2d_ffmpeg<T>::point_at_offset(unsigned i) const
+ image2d_ffmpeg<V>::point_at_offset(unsigned i) const
{
mln_precondition(i < nelements());
def::coord
@@ -484,6 +484,7 @@ namespace mln
}
+
# endif // ! MLN_INCLUDE_ONLY
} // end of namespace mln
@@ -504,80 +505,80 @@ namespace mln
// pixter
- template <typename T>
- struct fwd_pixter< image2d_ffmpeg<T> >
+ template <typename V>
+ struct fwd_pixter< image2d_ffmpeg<V> >
{
- typedef fwd_pixter2d< image2d_ffmpeg<T> > ret;
+ typedef fwd_pixter2d< image2d_ffmpeg<V> > ret;
};
- template <typename T>
- struct fwd_pixter< const image2d_ffmpeg<T> >
+ template <typename V>
+ struct fwd_pixter< const image2d_ffmpeg<V> >
{
- typedef fwd_pixter2d< const image2d_ffmpeg<T> > ret;
+ typedef fwd_pixter2d< const image2d_ffmpeg<V> > ret;
};
- template <typename T>
- struct bkd_pixter< image2d_ffmpeg<T> >
+ template <typename V>
+ struct bkd_pixter< image2d_ffmpeg<V> >
{
- typedef bkd_pixter2d< image2d_ffmpeg<T> > ret;
+ typedef bkd_pixter2d< image2d_ffmpeg<V> > ret;
};
- template <typename T>
- struct bkd_pixter< const image2d_ffmpeg<T> >
+ template <typename V>
+ struct bkd_pixter< const image2d_ffmpeg<V> >
{
- typedef bkd_pixter2d< const image2d_ffmpeg<T> > ret;
+ typedef bkd_pixter2d< const image2d_ffmpeg<V> > ret;
};
// qixter
- template <typename T, typename W>
- struct fwd_qixter< image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< image2d_ffmpeg<V>, W >
{
- typedef dpoints_fwd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename W>
- struct fwd_qixter< const image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< const image2d_ffmpeg<V>, W >
{
- typedef dpoints_fwd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< const image2d_ffmpeg<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< image2d_ffmpeg<V>, W >
{
- typedef dpoints_bkd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< const image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< const image2d_ffmpeg<V>, W >
{
- typedef dpoints_bkd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< const image2d_ffmpeg<V> > ret;
};
// nixter
- template <typename T, typename N>
- struct fwd_nixter< image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct fwd_nixter< image2d_ffmpeg<V>, N >
{
- typedef dpoints_fwd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename N>
- struct fwd_nixter< const image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct fwd_nixter< const image2d_ffmpeg<V>, N >
{
- typedef dpoints_fwd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< const image2d_ffmpeg<V> > ret;
};
- template <typename T, typename N>
- struct bkd_nixter< image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct bkd_nixter< image2d_ffmpeg<V>, N >
{
- typedef dpoints_bkd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename N>
- struct bkd_nixter< const image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct bkd_nixter< const image2d_ffmpeg<V>, N >
{
- typedef dpoints_bkd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< const image2d_ffmpeg<V> > ret;
};
} // end of namespace mln::trait
--
1.7.2.5
1
0

olena-2.0-507-gfc57252 mln/core/image/image2d_ffmpeg.hh: Fix compilation issues.
by Guillaume Lazzara 19 Apr '13
by Guillaume Lazzara 19 Apr '13
19 Apr '13
---
milena/ChangeLog | 4 +
milena/mln/core/image/image2d_ffmpeg.hh | 251 ++++++++++++++++---------------
2 files changed, 130 insertions(+), 125 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index c8bdff7..2f20d83 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-19 Guillaume Lazzara <z(a)lrde.epita.fr>
+
+ * mln/core/image/image2d_ffmpeg.hh: Fix compilation issues.
+
2013-04-18 Guillaume Lazzara <z(a)lrde.epita.fr>
* mln/core/image/image2d_ffmpeg.hh: Enable fastest access.
diff --git a/milena/mln/core/image/image2d_ffmpeg.hh b/milena/mln/core/image/image2d_ffmpeg.hh
index fb33722..2b727bb 100644
--- a/milena/mln/core/image/image2d_ffmpeg.hh
+++ b/milena/mln/core/image/image2d_ffmpeg.hh
@@ -46,25 +46,25 @@ namespace mln
{
// Forward declaration.
- template <typename T> class image2d_ffmpeg;
+ template <typename V> class image2d_ffmpeg;
namespace internal
{
/*!
- \brief Data structure for \c mln::image2d_ffmpeg<T>.
+ \brief Data structure for \c mln::image2d_ffmpeg<V>.
*/
- template <typename T>
- struct data< image2d_ffmpeg<T> >
+ template <typename V>
+ struct data< image2d_ffmpeg<V> >
{
data(AVFrame *frame);
~data();
- AVFrame *frame;
+ AVFrame *frame_;
- T* buffer_;
- T** array_;
+ V* buffer_;
+ V** array_;
box2d b_; // theoretical box
@@ -77,8 +77,8 @@ namespace mln
namespace trait
{
- template <typename T>
- struct image_< image2d_ffmpeg<T> > : default_image_< T, image2d_ffmpeg<T> >
+ template <typename V>
+ struct image_< image2d_ffmpeg<V> > : default_image_< V, image2d_ffmpeg<V> >
{
// misc
typedef trait::image::category::primary category;
@@ -113,29 +113,29 @@ namespace mln
/// Basic 2D image class.
///
- /// The parameter \c T is the type of pixel values. This image class
+ /// The parameter \c V is the type of pixel values. This image class
/// stores data in memory and has a virtual border with constant
/// thickness around data.
///
/// \ingroup modimageconcrete
//
- template <typename T>
- class image2d_ffmpeg : public internal::image_primary< T, mln::box2d, image2d_ffmpeg<T> >
+ template <typename V>
+ class image2d_ffmpeg : public internal::image_primary< V, mln::box2d, image2d_ffmpeg<V> >
{
- typedef internal::image_primary< T, mln::box2d, image2d_ffmpeg<T> > super_;
+ typedef internal::image_primary< V, mln::box2d, image2d_ffmpeg<V> > super_;
public:
/// Value associated type.
- typedef T value;
+ typedef V value;
/// Return type of read-only access.
- typedef const T& rvalue;
+ typedef const V& rvalue;
/// Return type of read-write access.
- typedef T& lvalue;
+ typedef V& lvalue;
/// Skeleton.
- typedef image2d_ffmpeg< tag::value_<T> > skeleton;
+ typedef image2d_ffmpeg< tag::value_<V> > skeleton;
/// Constructor without argument.
@@ -165,19 +165,19 @@ namespace mln
const box2d& vbbox() const;
/// Read-only access to the image value located at point \p p.
- const T& operator()(const point2d& p) const;
+ const V& operator()(const point2d& p) const;
/// Read-write access to the image value located at point \p p.
- T& operator()(const point2d& p);
+ V& operator()(const point2d& p);
// Specific methods:
// -----------------
/// \cond INTERNAL_API
/// Read-only access to the image value located at (\p row, \p col).
- const T& at_(mln::def::coord row, mln::def::coord col) const;
+ const V& at_(mln::def::coord row, mln::def::coord col) const;
/// Read-write access to the image value located at (\p row, \p col).
- T& at_(mln::def::coord row, mln::def::coord col);
+ V& at_(mln::def::coord row, mln::def::coord col);
/// \endcond
@@ -201,10 +201,10 @@ namespace mln
unsigned nelements() const;
/// Read-only access to the image value located at offset \p i.
- const T& element(unsigned i) const;
+ const V& element(unsigned i) const;
/// Read-write access to the image value located at offset \p i.
- T& element(unsigned i);
+ V& element(unsigned i);
/// Give the delta-offset corresponding to the delta-point \p dp.
int delta_offset(const dpoint2d& dp) const;
@@ -213,10 +213,10 @@ namespace mln
point2d point_at_offset(unsigned i) const;
/// Give a hook to the value buffer.
- const T* buffer() const;
+ const V* buffer() const;
/// Give a hook to the value buffer.
- T* buffer();
+ V* buffer();
};
@@ -226,8 +226,8 @@ namespace mln
/// \cond INTERNAL_API
- template <typename T, typename J>
- void init_(tag::image_t, mln::image2d_ffmpeg<T>& target, const J& model);
+ template <typename V, typename J>
+ void init_(tag::image_t, mln::image2d_ffmpeg<V>& target, const J& model);
/// \endcond
@@ -236,9 +236,9 @@ namespace mln
// init_
- template <typename T, typename J>
+ template <typename V, typename J>
inline
- void init_(tag::image_t, image2d_ffmpeg<T>& target, const J& model)
+ void init_(tag::image_t, image2d_ffmpeg<V>& target, const J& model)
{
box2d b;
init_(tag::bbox, b, model);
@@ -246,13 +246,13 @@ namespace mln
}
- // internal::data< image2d_ffmpeg<T> >
+ // internal::data< image2d_ffmpeg<V> >
namespace internal
{
- template <typename T>
+ template <typename V>
inline
- data< image2d_ffmpeg<T> >::data(AVFrame *frame)
+ data< image2d_ffmpeg<V> >::data(AVFrame *frame)
: frame_(frame)
{
b_ = make::box2d(frame->height, frame->linesize); // frame->width ?
@@ -260,9 +260,9 @@ namespace mln
unsigned
nr = frame->height,
nc = frame->width;
- array_ = new T*[nr];
- buf_ = frame->data[0];
- T* buf = frame->data[0];
+ array_ = new V*[nr];
+ buffer_ = static_cast<V*>((void *)frame->data[0]);
+ V* buf = static_cast<V*>((void *)frame->data[0]);
for (unsigned i = 0; i < nr; ++i)
{
array_[i] = buf;
@@ -270,18 +270,18 @@ namespace mln
}
}
- template <typename T>
+ template <typename V>
inline
- data< image2d_ffmpeg<T> >::~data()
+ data< image2d_ffmpeg<V> >::~data()
{
deallocate_();
// AVFrame must be deleted by the user!
}
- template <typename T>
+ template <typename V>
inline
void
- data< image2d_ffmpeg<T> >::deallocate_()
+ data< image2d_ffmpeg<V> >::deallocate_()
{
if (array_)
{
@@ -294,70 +294,70 @@ namespace mln
} // end of namespace mln::internal
- // image2d_ffmpeg<T>
+ // image2d_ffmpeg<V>
- template <typename T>
+ template <typename V>
inline
- image2d_ffmpeg<T>::image2d_ffmpeg()
+ image2d_ffmpeg<V>::image2d_ffmpeg()
{
}
- template <typename T>
+ template <typename V>
inline
- image2d_ffmpeg<T>::image2d_ffmpeg(AVFrame *frame)
+ image2d_ffmpeg<V>::image2d_ffmpeg(AVFrame *frame)
{
- this->data_ = new internal::data< image2d_ffmpeg<T> >(frame);
+ this->data_ = new internal::data< image2d_ffmpeg<V> >(frame);
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d_ffmpeg<T>::domain() const
+ image2d_ffmpeg<V>::domain() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d_ffmpeg<T>::bbox() const
+ image2d_ffmpeg<V>::bbox() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
const box2d&
- image2d_ffmpeg<T>::vbbox() const
+ image2d_ffmpeg<V>::vbbox() const
{
mln_precondition(this->is_valid());
return this->data_->b_;
}
- template <typename T>
+ template <typename V>
inline
bool
- image2d_ffmpeg<T>::has(const point2d& p) const
+ image2d_ffmpeg<V>::has(const point2d& p) const
{
mln_precondition(this->is_valid());
return this->data_->b_.has(p);
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d_ffmpeg<T>::operator()(const point2d& p) const
+ const V&
+ image2d_ffmpeg<V>::operator()(const point2d& p) const
{
mln_precondition(this->has(p));
return this->data_->array_[p.row()][p.col()];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d_ffmpeg<T>::operator()(const point2d& p)
+ V&
+ image2d_ffmpeg<V>::operator()(const point2d& p)
{
mln_precondition(this->has(p));
return this->data_->array_[p.row()][p.col()];
@@ -366,37 +366,37 @@ namespace mln
// Specific methods:
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d_ffmpeg<T>::at_(mln::def::coord row, mln::def::coord col) const
+ const V&
+ image2d_ffmpeg<V>::at_(mln::def::coord row, mln::def::coord col) const
{
mln_precondition(this->has(point2d(row, col)));
return this->data_->array_[row][col];
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d_ffmpeg<T>::at_(mln::def::coord row, mln::def::coord col)
+ V&
+ image2d_ffmpeg<V>::at_(mln::def::coord row, mln::def::coord col)
{
mln_precondition(this->has(point2d(row, col)));
return this->data_->array_[row][col];
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::nrows() const
+ image2d_ffmpeg<V>::nrows() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(0);
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::ncols() const
+ image2d_ffmpeg<V>::ncols() const
{
mln_precondition(this->is_valid());
return this->data_->b_.len(1);
@@ -405,74 +405,74 @@ namespace mln
// As a fastest image:
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::border() const
+ image2d_ffmpeg<V>::border() const
{
mln_precondition(this->is_valid());
return 0;
}
- template <typename T>
+ template <typename V>
inline
unsigned
- image2d_ffmpeg<T>::nelements() const
+ image2d_ffmpeg<V>::nelements() const
{
mln_precondition(this->is_valid());
return this->data_->b_.nsites();
}
- template <typename T>
+ template <typename V>
inline
- const T&
- image2d_ffmpeg<T>::element(unsigned i) const
+ const V&
+ image2d_ffmpeg<V>::element(unsigned i) const
{
mln_precondition(i < nelements());
return *(this->data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- T&
- image2d_ffmpeg<T>::element(unsigned i)
+ V&
+ image2d_ffmpeg<V>::element(unsigned i)
{
mln_precondition(i < nelements());
return *(this->data_->buffer_ + i);
}
- template <typename T>
+ template <typename V>
inline
- const T*
- image2d_ffmpeg<T>::buffer() const
+ const V*
+ image2d_ffmpeg<V>::buffer() const
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
- T*
- image2d_ffmpeg<T>::buffer()
+ V*
+ image2d_ffmpeg<V>::buffer()
{
mln_precondition(this->is_valid());
return this->data_->buffer_;
}
- template <typename T>
+ template <typename V>
inline
int
- image2d_ffmpeg<T>::delta_offset(const dpoint2d& dp) const
+ image2d_ffmpeg<V>::delta_offset(const dpoint2d& dp) const
{
mln_precondition(this->is_valid());
int o = dp[0] * this->data_->frame->linesize + dp[1];
return o;
}
- template <typename T>
+ template <typename V>
inline
point2d
- image2d_ffmpeg<T>::point_at_offset(unsigned i) const
+ image2d_ffmpeg<V>::point_at_offset(unsigned i) const
{
mln_precondition(i < nelements());
def::coord
@@ -484,6 +484,7 @@ namespace mln
}
+
# endif // ! MLN_INCLUDE_ONLY
} // end of namespace mln
@@ -504,80 +505,80 @@ namespace mln
// pixter
- template <typename T>
- struct fwd_pixter< image2d_ffmpeg<T> >
+ template <typename V>
+ struct fwd_pixter< image2d_ffmpeg<V> >
{
- typedef fwd_pixter2d< image2d_ffmpeg<T> > ret;
+ typedef fwd_pixter2d< image2d_ffmpeg<V> > ret;
};
- template <typename T>
- struct fwd_pixter< const image2d_ffmpeg<T> >
+ template <typename V>
+ struct fwd_pixter< const image2d_ffmpeg<V> >
{
- typedef fwd_pixter2d< const image2d_ffmpeg<T> > ret;
+ typedef fwd_pixter2d< const image2d_ffmpeg<V> > ret;
};
- template <typename T>
- struct bkd_pixter< image2d_ffmpeg<T> >
+ template <typename V>
+ struct bkd_pixter< image2d_ffmpeg<V> >
{
- typedef bkd_pixter2d< image2d_ffmpeg<T> > ret;
+ typedef bkd_pixter2d< image2d_ffmpeg<V> > ret;
};
- template <typename T>
- struct bkd_pixter< const image2d_ffmpeg<T> >
+ template <typename V>
+ struct bkd_pixter< const image2d_ffmpeg<V> >
{
- typedef bkd_pixter2d< const image2d_ffmpeg<T> > ret;
+ typedef bkd_pixter2d< const image2d_ffmpeg<V> > ret;
};
// qixter
- template <typename T, typename W>
- struct fwd_qixter< image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< image2d_ffmpeg<V>, W >
{
- typedef dpoints_fwd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename W>
- struct fwd_qixter< const image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct fwd_qixter< const image2d_ffmpeg<V>, W >
{
- typedef dpoints_fwd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< const image2d_ffmpeg<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< image2d_ffmpeg<V>, W >
{
- typedef dpoints_bkd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename W>
- struct bkd_qixter< const image2d_ffmpeg<T>, W >
+ template <typename V, typename W>
+ struct bkd_qixter< const image2d_ffmpeg<V>, W >
{
- typedef dpoints_bkd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< const image2d_ffmpeg<V> > ret;
};
// nixter
- template <typename T, typename N>
- struct fwd_nixter< image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct fwd_nixter< image2d_ffmpeg<V>, N >
{
- typedef dpoints_fwd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename N>
- struct fwd_nixter< const image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct fwd_nixter< const image2d_ffmpeg<V>, N >
{
- typedef dpoints_fwd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_fwd_pixter< const image2d_ffmpeg<V> > ret;
};
- template <typename T, typename N>
- struct bkd_nixter< image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct bkd_nixter< image2d_ffmpeg<V>, N >
{
- typedef dpoints_bkd_pixter< image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< image2d_ffmpeg<V> > ret;
};
- template <typename T, typename N>
- struct bkd_nixter< const image2d_ffmpeg<T>, N >
+ template <typename V, typename N>
+ struct bkd_nixter< const image2d_ffmpeg<V>, N >
{
- typedef dpoints_bkd_pixter< const image2d_ffmpeg<T> > ret;
+ typedef dpoints_bkd_pixter< const image2d_ffmpeg<V> > ret;
};
} // end of namespace mln::trait
--
1.7.2.5
1
0
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Olena, a generic and efficient image processing platform".
The branch exp/TL has been updated
via 31f6b360a0a9fb84b6eb1957941d78e68f67e508 (commit)
via c532ff7b18ba0d349f1264b494343cf5ac8b1458 (commit)
via dc1f54f779ecc6955603ee0f8a4570d62e82370d (commit)
from dde4cb2c284feeb3c489de6dcd939efd716fc5b9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
31f6b36 Merge branch 'exp/stretch_inplace' into exp/TL
c532ff7 mln/data/stretch_inplace.hh: Fix variable name.
-----------------------------------------------------------------------
Summary of changes:
milena/mln/data/stretch_inplace.hh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
hooks/post-receive
--
Olena, a generic and efficient image processing platform
1
0

olena-2.0-508-g31f6b36 Merge branch 'exp/stretch_inplace' into exp/TL
by Jonathan Fabrizio 19 Apr '13
by Jonathan Fabrizio 19 Apr '13
19 Apr '13
This is a merge commit message of the following branches:
Merge: c532ff7 dc1f54f
hooks/post-receive
--
Olena, a generic and efficient image processing platform
1
0

19 Apr '13
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Olena, a generic and efficient image processing platform".
The branch exp/stretch_inplace has been updated
via dc1f54f779ecc6955603ee0f8a4570d62e82370d (commit)
from afa987bad716e6ff5afcb1e1a23a04af6d269cdc (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
dc1f54f mln/data/stretch_inplace.hh: Fix variable name.
-----------------------------------------------------------------------
Summary of changes:
milena/mln/data/stretch_inplace.hh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
hooks/post-receive
--
Olena, a generic and efficient image processing platform
1
0

olena: olena-2.0-565-g099072a mln/data/stretch_inplace.hh: Fix variable name.
by Jonathan Fabrizio 19 Apr '13
by Jonathan Fabrizio 19 Apr '13
19 Apr '13
---
milena/mln/data/stretch_inplace.hh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/milena/mln/data/stretch_inplace.hh b/milena/mln/data/stretch_inplace.hh
index 618f43d..a4579f1 100644
--- a/milena/mln/data/stretch_inplace.hh
+++ b/milena/mln/data/stretch_inplace.hh
@@ -105,7 +105,7 @@ namespace mln
a = (M - m) / (max - min),
b = (m * max - M * min) / (max - min);
fun::v2v::linear_sat<V, double, V> f(a, b);
- data::transform_inplace(input, f);
+ data::transform_inplace(ima, f);
stretched = true;
}
else
--
1.7.2.5
1
0