00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include <mln/core/image/image2d.hh>
00027 #include <mln/io/dump/load.hh>
00028 #include <mln/io/dump/save.hh>
00029
00030 #include <mln/data/compare.hh>
00031
00032 #include <mln/value/int_u8.hh>
00033 #include <mln/value/rgb8.hh>
00034
00035 #include "tests/data.hh"
00036
00037 #include <mln/debug/println.hh>
00038
00039 int main()
00040 {
00041 using namespace mln;
00042
00044 {
00045 bool data[4] = { 0, 1,
00046 1, 0 };
00047 image2d<bool> pic = make::image2d(data);
00048
00049 io::dump::save(pic, "pic.dump");
00050
00051 image2d<bool> pic2;
00052 io::dump::load(pic2, "pic.dump");
00053
00054 mln_assertion(pic.domain() == pic2.domain());
00055 mln_assertion(pic == pic2);
00056 }
00057
00059 {
00060 value::int_u8 data[4] = { 5, 1,
00061 1, 9 };
00062 image2d<value::int_u8> pic = make::image2d(data);
00063 io::dump::save(pic, "pic.dump");
00064 image2d<value::int_u8> pic2;
00065 io::dump::load(pic2, "pic.dump");
00066
00067 mln_assertion(pic.domain() == pic2.domain());
00068 mln_assertion(pic == pic2);
00069 }
00070
00072 {
00073 unsigned data[4] = { 5, 1,
00074 1, 9 };
00075 image2d<unsigned> pic = make::image2d(data);
00076 io::dump::save(pic, "pic.dump");
00077 image2d<unsigned> pic2;
00078 io::dump::load(pic2, "pic.dump");
00079
00080 mln_assertion(pic.domain() == pic2.domain());
00081 mln_assertion(pic == pic2);
00082 }
00083
00085 {
00086 float data[4] = { 5, 1,
00087 1, 9 };
00088 image2d<float> pic = make::image2d(data);
00089 io::dump::save(pic, "pic.dump");
00090 image2d<float> pic2;
00091 io::dump::load(pic2, "pic.dump");
00092
00093 mln_assertion(pic.domain() == pic2.domain());
00094 mln_assertion(pic == pic2);
00095 }
00096
00097
00099 {
00100 using value::rgb8;
00101 value::rgb8 data[4] = { rgb8(2,4,5), rgb8(1,23,255),
00102 rgb8(64,41,150), rgb8(23,53,49) };
00103 image2d<value::rgb8> pic = make::image2d(data);
00104 io::dump::save(pic, "pic.dump");
00105
00106 image2d<value::rgb8> pic2;
00107 io::dump::load(pic2, "pic.dump");
00108
00109 mln_assertion(pic.domain() == pic2.domain());
00110 mln_assertion(pic == pic2);
00111 }
00112
00113 }