aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcathook <b01902109@csie.ntu.edu.tw>2014-06-19 07:25:48 +0800
committercathook <b01902109@csie.ntu.edu.tw>2014-06-19 07:25:48 +0800
commitfe926756145c5e5cf5f315af0acdbfd85ba27543 (patch)
tree4d75f94b87fd6d60262f2377d92f5896faf1be7d
parentb2b55d8c642524274d8115d5b1863e1a40715887 (diff)
downloadmeow-fe926756145c5e5cf5f315af0acdbfd85ba27543.tar
meow-fe926756145c5e5cf5f315af0acdbfd85ba27543.tar.gz
meow-fe926756145c5e5cf5f315af0acdbfd85ba27543.tar.bz2
meow-fe926756145c5e5cf5f315af0acdbfd85ba27543.tar.lz
meow-fe926756145c5e5cf5f315af0acdbfd85ba27543.tar.xz
meow-fe926756145c5e5cf5f315af0acdbfd85ba27543.tar.zst
meow-fe926756145c5e5cf5f315af0acdbfd85ba27543.zip
x
-rw-r--r--README.html2
-rw-r--r--doc/html/BinaryIndexTree_8h.html2
-rw-r--r--doc/html/BinaryIndexTree_8h_source.html2
-rw-r--r--doc/html/Bitmap_8h.html2
-rw-r--r--doc/html/Bitmap_8h_source.html92
-rw-r--r--doc/html/Camera_8h.html2
-rw-r--r--doc/html/Camera_8h_source.html813
-rw-r--r--doc/html/Color3__Space_8h.html6
-rw-r--r--doc/html/Color3__Space_8h_source.html133
-rw-r--r--doc/html/DisjointSet_8h.html2
-rw-r--r--doc/html/DisjointSet_8h_source.html2
-rw-r--r--doc/html/FeaturePoint_8h.html2
-rw-r--r--doc/html/FeaturePoint_8h_source.html16
-rw-r--r--doc/html/FeaturePointsDetector_8h.html2
-rw-r--r--doc/html/FeaturePointsDetector_8h_source.html2
-rw-r--r--doc/html/FeaturePointsDetector__Harris_8h.html2
-rw-r--r--doc/html/FeaturePointsDetector__Harris_8h_source.html2
-rw-r--r--doc/html/FeaturePointsMatch_8h.html2
-rw-r--r--doc/html/FeaturePointsMatch_8h_source.html2
-rw-r--r--doc/html/FeaturePointsMatch__K__Match_8h.html2
-rw-r--r--doc/html/FeaturePointsMatch__K__Match_8h_source.html16
-rw-r--r--doc/html/HSL__Space_8h.html4
-rw-r--r--doc/html/HSL__Space_8h_source.html10
-rw-r--r--doc/html/HSV__Space_8h.html2
-rw-r--r--doc/html/HSV__Space_8h_source.html2
-rw-r--r--doc/html/HashTable_8h.html2
-rw-r--r--doc/html/HashTable_8h_source.html8
-rw-r--r--doc/html/IdentityPoints_8h.html2
-rw-r--r--doc/html/IdentityPoints_8h_source.html2
-rw-r--r--doc/html/KD__Tree_8h.html2
-rw-r--r--doc/html/KD__Tree_8h_source.html12
-rw-r--r--doc/html/LinearTransformation_8h.html2
-rw-r--r--doc/html/LinearTransformation_8h_source.html4
-rw-r--r--doc/html/LinearTransformations_8h.html2
-rw-r--r--doc/html/LinearTransformations_8h_source.html44
-rw-r--r--doc/html/Matrix_8h.html5
-rw-r--r--doc/html/Matrix_8h_source.html675
-rw-r--r--doc/html/MergeableHeap_8h.html2
-rw-r--r--doc/html/MergeableHeap_8h_source.html2
-rw-r--r--doc/html/ObjArray_8h.html2
-rw-r--r--doc/html/ObjArray_8h_source.html44
-rw-r--r--doc/html/ObjBase_8h.html2
-rw-r--r--doc/html/ObjBase_8h_source.html84
-rw-r--r--doc/html/ObjDictionary_8h.html2
-rw-r--r--doc/html/ObjDictionary_8h_source.html16
-rw-r--r--doc/html/ObjProperties_8h.html2
-rw-r--r--doc/html/ObjProperties_8h_source.html14
-rw-r--r--doc/html/ObjSelector_8h.html2
-rw-r--r--doc/html/ObjSelector_8h_source.html20
-rw-r--r--doc/html/ObjTypes_8h.html2
-rw-r--r--doc/html/ObjTypes_8h_source.html257
-rw-r--r--doc/html/Photo_8h.html2
-rw-r--r--doc/html/Photo_8h_source.html2
-rw-r--r--doc/html/Pipeline_8h.html95
-rw-r--r--doc/html/Pipeline_8h.js20
-rw-r--r--doc/html/Pipeline_8h_source.html228
-rw-r--r--doc/html/RGB__Space_8h.html2
-rw-r--r--doc/html/RGB__Space_8h_source.html2
-rw-r--r--doc/html/SegmentTree_8h.html2
-rw-r--r--doc/html/SegmentTree_8h_source.html6
-rw-r--r--doc/html/Self_8h.html2
-rw-r--r--doc/html/Self_8h_source.html244
-rw-r--r--doc/html/SplayTree_8h.html2
-rw-r--r--doc/html/SplayTree_8h_source.html12
-rw-r--r--doc/html/Transformation_8h.html28
-rw-r--r--doc/html/Transformation_8h.js6
-rw-r--r--doc/html/Transformation_8h_source.html309
-rw-r--r--doc/html/Transformations_8h.html2
-rw-r--r--doc/html/Transformations_8h_source.html151
-rw-r--r--doc/html/Usage_8h.html4
-rw-r--r--doc/html/Usage_8h_source.html651
-rw-r--r--doc/html/VP__Tree_8h.html2
-rw-r--r--doc/html/VP__Tree_8h_source.html16
-rw-r--r--doc/html/Vector_8h.html3
-rw-r--r--doc/html/Vector_8h_source.html344
-rw-r--r--doc/html/Vectors_8h.html2
-rw-r--r--doc/html/Vectors_8h_source.html170
-rw-r--r--doc/html/ViewPort_8h.html2
-rw-r--r--doc/html/ViewPort_8h_source.html2
-rw-r--r--doc/html/WatchBall_8h.html2
-rw-r--r--doc/html/WatchBall_8h_source.html2
-rw-r--r--doc/html/YUV__Space_8h.html2
-rw-r--r--doc/html/YUV__Space_8h_source.html2
-rw-r--r--doc/html/annotated.html34
-rw-r--r--doc/html/classdouble.html2
-rw-r--r--doc/html/classes.html38
-rw-r--r--doc/html/classint.html2
-rw-r--r--doc/html/classmeow_1_1BallProjection-members.html2
-rw-r--r--doc/html/classmeow_1_1BallProjection.html4
-rw-r--r--doc/html/classmeow_1_1BinaryIndexTree-members.html2
-rw-r--r--doc/html/classmeow_1_1BinaryIndexTree.html2
-rw-r--r--doc/html/classmeow_1_1Bitmap-members.html2
-rw-r--r--doc/html/classmeow_1_1Bitmap.html4
-rw-r--r--doc/html/classmeow_1_1Camera-members.html2
-rw-r--r--doc/html/classmeow_1_1Camera.html4
-rw-r--r--doc/html/classmeow_1_1Color3__Space-members.html2
-rw-r--r--doc/html/classmeow_1_1Color3__Space.html2
-rw-r--r--doc/html/classmeow_1_1DisjointSet-members.html2
-rw-r--r--doc/html/classmeow_1_1DisjointSet.html2
-rw-r--r--doc/html/classmeow_1_1FeaturePoint-members.html2
-rw-r--r--doc/html/classmeow_1_1FeaturePoint.html38
-rw-r--r--doc/html/classmeow_1_1FeaturePointsDetector-members.html2
-rw-r--r--doc/html/classmeow_1_1FeaturePointsDetector.html10
-rw-r--r--doc/html/classmeow_1_1FeaturePointsDetector__Harris-members.html2
-rw-r--r--doc/html/classmeow_1_1FeaturePointsDetector__Harris.html4
-rw-r--r--doc/html/classmeow_1_1FeaturePointsMatch-members.html2
-rw-r--r--doc/html/classmeow_1_1FeaturePointsMatch.html10
-rw-r--r--doc/html/classmeow_1_1FeaturePointsMatch__K__Match-members.html2
-rw-r--r--doc/html/classmeow_1_1FeaturePointsMatch__K__Match.html49
-rw-r--r--doc/html/classmeow_1_1HSLf__Space-members.html2
-rw-r--r--doc/html/classmeow_1_1HSLf__Space.html2
-rw-r--r--doc/html/classmeow_1_1HSVf__Space-members.html2
-rw-r--r--doc/html/classmeow_1_1HSVf__Space.html2
-rw-r--r--doc/html/classmeow_1_1HashTableList-members.html2
-rw-r--r--doc/html/classmeow_1_1HashTableList.html2
-rw-r--r--doc/html/classmeow_1_1IdentityPoints-members.html2
-rw-r--r--doc/html/classmeow_1_1IdentityPoints.html4
-rw-r--r--doc/html/classmeow_1_1KD__Tree-members.html2
-rw-r--r--doc/html/classmeow_1_1KD__Tree.html2
-rw-r--r--doc/html/classmeow_1_1LinearTransformation-members.html2
-rw-r--r--doc/html/classmeow_1_1LinearTransformation.html4
-rw-r--r--doc/html/classmeow_1_1Matrix-members.html81
-rw-r--r--doc/html/classmeow_1_1Matrix.html124
-rw-r--r--doc/html/classmeow_1_1Matrix.js11
-rw-r--r--doc/html/classmeow_1_1MergeableHeap-members.html2
-rw-r--r--doc/html/classmeow_1_1MergeableHeap.html2
-rw-r--r--doc/html/classmeow_1_1ObjArray-members.html2
-rw-r--r--doc/html/classmeow_1_1ObjArray.html47
-rw-r--r--doc/html/classmeow_1_1ObjBase-members.html2
-rw-r--r--doc/html/classmeow_1_1ObjBase.html59
-rw-r--r--doc/html/classmeow_1_1ObjDictionary-members.html2
-rw-r--r--doc/html/classmeow_1_1ObjDictionary.html47
-rw-r--r--doc/html/classmeow_1_1ObjProperties-members.html2
-rw-r--r--doc/html/classmeow_1_1ObjProperties.html47
-rw-r--r--doc/html/classmeow_1_1ObjSelector-members.html2
-rw-r--r--doc/html/classmeow_1_1ObjSelector.html2
-rw-r--r--doc/html/classmeow_1_1ObjType-members.html2
-rw-r--r--doc/html/classmeow_1_1ObjType.html53
-rw-r--r--doc/html/classmeow_1_1Photo-members.html2
-rw-r--r--doc/html/classmeow_1_1Photo.html4
-rw-r--r--doc/html/classmeow_1_1PhotoProjection-members.html2
-rw-r--r--doc/html/classmeow_1_1PhotoProjection.html4
-rw-r--r--doc/html/classmeow_1_1Pipeline-members.html95
-rw-r--r--doc/html/classmeow_1_1Pipeline.html751
-rw-r--r--doc/html/classmeow_1_1Pipeline.js22
-rw-r--r--doc/html/classmeow_1_1RGBf__Space-members.html2
-rw-r--r--doc/html/classmeow_1_1RGBf__Space.html2
-rw-r--r--doc/html/classmeow_1_1RGBi__Space-members.html2
-rw-r--r--doc/html/classmeow_1_1RGBi__Space.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__double-members.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__double.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__int-members.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__int.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__size__t-members.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__size__t.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__string-members.html2
-rw-r--r--doc/html/classmeow_1_1ReaderWriter__string.html2
-rw-r--r--doc/html/classmeow_1_1Rotation3D-members.html2
-rw-r--r--doc/html/classmeow_1_1Rotation3D.html2
-rw-r--r--doc/html/classmeow_1_1SegmentTree-members.html2
-rw-r--r--doc/html/classmeow_1_1SegmentTree.html2
-rw-r--r--doc/html/classmeow_1_1Self-members.html24
-rw-r--r--doc/html/classmeow_1_1Self.html247
-rw-r--r--doc/html/classmeow_1_1Self.js13
-rw-r--r--doc/html/classmeow_1_1SplayTree-members.html2
-rw-r--r--doc/html/classmeow_1_1SplayTree.html2
-rw-r--r--doc/html/classmeow_1_1SplayTree_1_1Element-members.html2
-rw-r--r--doc/html/classmeow_1_1SplayTree_1_1Element.html2
-rw-r--r--doc/html/classmeow_1_1SplayTree__Range-members.html2
-rw-r--r--doc/html/classmeow_1_1SplayTree__Range.html2
-rw-r--r--doc/html/classmeow_1_1SplayTree__Range_1_1Element-members.html2
-rw-r--r--doc/html/classmeow_1_1SplayTree__Range_1_1Element.html2
-rw-r--r--doc/html/classmeow_1_1TransformatePipeline-members.html105
-rw-r--r--doc/html/classmeow_1_1TransformatePipeline.html683
-rw-r--r--doc/html/classmeow_1_1TransformatePipeline.js16
-rw-r--r--doc/html/classmeow_1_1TransformatePipeline.pngbin0 -> 1209 bytes
-rw-r--r--doc/html/classmeow_1_1Transformation-members.html2
-rw-r--r--doc/html/classmeow_1_1Transformation.html8
-rw-r--r--doc/html/classmeow_1_1Usage-members.html22
-rw-r--r--doc/html/classmeow_1_1Usage.html62
-rw-r--r--doc/html/classmeow_1_1Usage.js12
-rw-r--r--doc/html/classmeow_1_1VP__Tree-members.html2
-rw-r--r--doc/html/classmeow_1_1VP__Tree.html2
-rw-r--r--doc/html/classmeow_1_1Vector-members.html58
-rw-r--r--doc/html/classmeow_1_1Vector.html137
-rw-r--r--doc/html/classmeow_1_1Vector.js8
-rw-r--r--doc/html/classmeow_1_1Vector2D-members.html2
-rw-r--r--doc/html/classmeow_1_1Vector2D.html2
-rw-r--r--doc/html/classmeow_1_1Vector3D-members.html2
-rw-r--r--doc/html/classmeow_1_1Vector3D.html2
-rw-r--r--doc/html/classmeow_1_1ViewPort-members.html2
-rw-r--r--doc/html/classmeow_1_1ViewPort.html10
-rw-r--r--doc/html/classmeow_1_1WatchBall-members.html2
-rw-r--r--doc/html/classmeow_1_1WatchBall.html4
-rw-r--r--doc/html/classmeow_1_1YUVf__Space-members.html2
-rw-r--r--doc/html/classmeow_1_1YUVf__Space.html2
-rw-r--r--doc/html/dir_115d3279a93b9c99d8f569a34543848f.html2
-rw-r--r--doc/html/dir_540a4c8f2977878a343351220ffba92b.html2
-rw-r--r--doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.html2
-rw-r--r--doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.js4
-rw-r--r--doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.html4
-rw-r--r--doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.js4
-rw-r--r--doc/html/dir_a17ff8dcb3a1c1b842af541700214096.html2
-rw-r--r--doc/html/dir_a57e9e528cb28fd6752031b735908fb6.html2
-rw-r--r--doc/html/dir_f6840b2fecd08a3779df34f0add0e074.html2
-rw-r--r--doc/html/files.html9
-rw-r--r--doc/html/form_50.pngbin0 -> 1189 bytes
-rw-r--r--doc/html/form_51.pngbin0 -> 709 bytes
-rw-r--r--doc/html/form_52.pngbin0 -> 225 bytes
-rw-r--r--doc/html/form_53.pngbin0 -> 3458 bytes
-rw-r--r--doc/html/form_54.pngbin0 -> 823 bytes
-rw-r--r--doc/html/form_55.pngbin0 -> 1283 bytes
-rw-r--r--doc/html/form_56.pngbin0 -> 574 bytes
-rw-r--r--doc/html/form_57.pngbin0 -> 364 bytes
-rw-r--r--doc/html/form_58.pngbin0 -> 3766 bytes
-rw-r--r--doc/html/form_59.pngbin0 -> 1478 bytes
-rw-r--r--doc/html/form_60.pngbin0 -> 662 bytes
-rw-r--r--doc/html/form_61.pngbin0 -> 389 bytes
-rw-r--r--doc/html/form_62.pngbin0 -> 245 bytes
-rw-r--r--doc/html/form_63.pngbin0 -> 4632 bytes
-rw-r--r--doc/html/form_64.pngbin0 -> 662 bytes
-rw-r--r--doc/html/formula.repository15
-rw-r--r--doc/html/functions.html9
-rw-r--r--doc/html/functions_0x62.html22
-rw-r--r--doc/html/functions_0x63.html71
-rw-r--r--doc/html/functions_0x64.html16
-rw-r--r--doc/html/functions_0x65.html33
-rw-r--r--doc/html/functions_0x66.html24
-rw-r--r--doc/html/functions_0x67.html17
-rw-r--r--doc/html/functions_0x68.html4
-rw-r--r--doc/html/functions_0x69.html16
-rw-r--r--doc/html/functions_0x6a.html15
-rw-r--r--doc/html/functions_0x6b.html2
-rw-r--r--doc/html/functions_0x6c.html13
-rw-r--r--doc/html/functions_0x6d.html28
-rw-r--r--doc/html/functions_0x6e.html2
-rw-r--r--doc/html/functions_0x6f.html83
-rw-r--r--doc/html/functions_0x70.html16
-rw-r--r--doc/html/functions_0x71.html2
-rw-r--r--doc/html/functions_0x72.html55
-rw-r--r--doc/html/functions_0x73.html34
-rw-r--r--doc/html/functions_0x74.html21
-rw-r--r--doc/html/functions_0x75.html7
-rw-r--r--doc/html/functions_0x76.html22
-rw-r--r--doc/html/functions_0x77.html2
-rw-r--r--doc/html/functions_0x78.html2
-rw-r--r--doc/html/functions_0x79.html2
-rw-r--r--doc/html/functions_0x7a.html2
-rw-r--r--doc/html/functions_0x7e.html11
-rw-r--r--doc/html/functions_enum.html74
-rw-r--r--doc/html/functions_eval.html77
-rw-r--r--doc/html/functions_func.html2
-rw-r--r--doc/html/functions_func_0x62.html22
-rw-r--r--doc/html/functions_func_0x63.html45
-rw-r--r--doc/html/functions_func_0x64.html13
-rw-r--r--doc/html/functions_func_0x65.html25
-rw-r--r--doc/html/functions_func_0x66.html21
-rw-r--r--doc/html/functions_func_0x67.html17
-rw-r--r--doc/html/functions_func_0x68.html4
-rw-r--r--doc/html/functions_func_0x69.html14
-rw-r--r--doc/html/functions_func_0x6a.html15
-rw-r--r--doc/html/functions_func_0x6b.html2
-rw-r--r--doc/html/functions_func_0x6c.html13
-rw-r--r--doc/html/functions_func_0x6d.html23
-rw-r--r--doc/html/functions_func_0x6e.html2
-rw-r--r--doc/html/functions_func_0x6f.html83
-rw-r--r--doc/html/functions_func_0x70.html16
-rw-r--r--doc/html/functions_func_0x71.html2
-rw-r--r--doc/html/functions_func_0x72.html36
-rw-r--r--doc/html/functions_func_0x73.html25
-rw-r--r--doc/html/functions_func_0x74.html23
-rw-r--r--doc/html/functions_func_0x75.html7
-rw-r--r--doc/html/functions_func_0x76.html14
-rw-r--r--doc/html/functions_func_0x77.html2
-rw-r--r--doc/html/functions_func_0x78.html2
-rw-r--r--doc/html/functions_func_0x79.html2
-rw-r--r--doc/html/functions_func_0x7a.html2
-rw-r--r--doc/html/functions_func_0x7e.html11
-rw-r--r--doc/html/functions_rela.html2
-rw-r--r--doc/html/functions_type.html17
-rw-r--r--doc/html/functions_vars.html8
-rw-r--r--doc/html/globals.html5
-rw-r--r--doc/html/globals_defs.html5
-rw-r--r--doc/html/globals_func.html101
-rw-r--r--doc/html/globals_vars.html74
-rw-r--r--doc/html/group__gp1.html83
-rw-r--r--doc/html/group__gp1.js4
-rw-r--r--doc/html/hierarchy.html108
-rw-r--r--doc/html/hierarchy.js5
-rw-r--r--doc/html/index.html2
-rw-r--r--doc/html/math_2utility_8h.html6
-rw-r--r--doc/html/math_2utility_8h.js1
-rw-r--r--doc/html/math_2utility_8h_source.html139
-rw-r--r--doc/html/methods_8h.html2
-rw-r--r--doc/html/methods_8h_source.html2
-rw-r--r--doc/html/modules.html78
-rw-r--r--doc/html/modules.js4
-rw-r--r--doc/html/namespacemembers.html5
-rw-r--r--doc/html/namespacemembers_func.html5
-rw-r--r--doc/html/namespacemembers_type.html2
-rw-r--r--doc/html/namespacemembers_vars.html2
-rw-r--r--doc/html/namespacemeow.html56
-rw-r--r--doc/html/namespacemeow.js2
-rw-r--r--doc/html/namespaces.html2
-rw-r--r--doc/html/navtree.js11
-rw-r--r--doc/html/navtreeindex0.js48
-rw-r--r--doc/html/navtreeindex1.js100
-rw-r--r--doc/html/navtreeindex2.js312
-rw-r--r--doc/html/navtreeindex3.js210
-rw-r--r--doc/html/navtreeindex4.js99
-rw-r--r--doc/html/navtreeindex5.js51
-rw-r--r--doc/html/structMyself_1_1Piece-members.html81
-rw-r--r--doc/html/structMyself_1_1Piece.html195
-rw-r--r--doc/html/structMyself_1_1Piece.js8
-rw-r--r--doc/html/structmeow_1_1FeaturePointIndexPair-members.html2
-rw-r--r--doc/html/structmeow_1_1FeaturePointIndexPair.html2
-rw-r--r--doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo-members.html80
-rw-r--r--doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html179
-rw-r--r--doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.js7
-rw-r--r--doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece-members.html81
-rw-r--r--doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.html205
-rw-r--r--doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.js8
-rw-r--r--doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element-members.html81
-rw-r--r--doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html195
-rw-r--r--doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.js8
-rw-r--r--doc/html/stylesheet.css517
-rw-r--r--doc/html/utility_8h.html2
-rw-r--r--doc/html/utility_8h_source.html78
-rw-r--r--doc/latex/Color3__Space_8h.tex2
-rw-r--r--doc/latex/HSL__Space_8h.tex2
-rw-r--r--doc/latex/Matrix_8h.tex1
-rw-r--r--doc/latex/Pipeline_8h.tex17
-rw-r--r--doc/latex/Transformation_8h.tex17
-rw-r--r--doc/latex/Usage_8h.tex2
-rw-r--r--doc/latex/Vector_8h.tex1
-rw-r--r--doc/latex/annotated.tex3
-rw-r--r--doc/latex/classmeow_1_1BallProjection.pdfbin5988 -> 5988 bytes
-rw-r--r--doc/latex/classmeow_1_1Bitmap.pdfbin5841 -> 5841 bytes
-rw-r--r--doc/latex/classmeow_1_1Camera.pdfbin5772 -> 5772 bytes
-rw-r--r--doc/latex/classmeow_1_1FeaturePoint.pdfbin6524 -> 6524 bytes
-rw-r--r--doc/latex/classmeow_1_1FeaturePoint.tex54
-rw-r--r--doc/latex/classmeow_1_1FeaturePointsDetector.pdfbin6546 -> 6546 bytes
-rw-r--r--doc/latex/classmeow_1_1FeaturePointsDetector__Harris.pdfbin6545 -> 6545 bytes
-rw-r--r--doc/latex/classmeow_1_1FeaturePointsMatch.pdfbin7047 -> 7047 bytes
-rw-r--r--doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.pdfbin7048 -> 7048 bytes
-rw-r--r--doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.tex70
-rw-r--r--doc/latex/classmeow_1_1HSLf__Space.pdfbin5996 -> 5996 bytes
-rw-r--r--doc/latex/classmeow_1_1HSVf__Space.pdfbin5998 -> 5998 bytes
-rw-r--r--doc/latex/classmeow_1_1IdentityPoints.pdfbin6540 -> 6540 bytes
-rw-r--r--doc/latex/classmeow_1_1LinearTransformation.pdfbin6176 -> 6176 bytes
-rw-r--r--doc/latex/classmeow_1_1Matrix.tex64
-rw-r--r--doc/latex/classmeow_1_1ObjArray.pdfbin5562 -> 5562 bytes
-rw-r--r--doc/latex/classmeow_1_1ObjArray.tex68
-rw-r--r--doc/latex/classmeow_1_1ObjBase.pdfbin8863 -> 8863 bytes
-rw-r--r--doc/latex/classmeow_1_1ObjBase.tex88
-rw-r--r--doc/latex/classmeow_1_1ObjDictionary.pdfbin6418 -> 6418 bytes
-rw-r--r--doc/latex/classmeow_1_1ObjDictionary.tex68
-rw-r--r--doc/latex/classmeow_1_1ObjProperties.pdfbin6014 -> 6014 bytes
-rw-r--r--doc/latex/classmeow_1_1ObjProperties.tex68
-rw-r--r--doc/latex/classmeow_1_1ObjType.pdfbin6304 -> 6304 bytes
-rw-r--r--doc/latex/classmeow_1_1ObjType.tex72
-rw-r--r--doc/latex/classmeow_1_1Photo.pdfbin5822 -> 5822 bytes
-rw-r--r--doc/latex/classmeow_1_1PhotoProjection.pdfbin5933 -> 5933 bytes
-rw-r--r--doc/latex/classmeow_1_1Pipeline.tex349
-rw-r--r--doc/latex/classmeow_1_1RGBf__Space.pdfbin6264 -> 6264 bytes
-rw-r--r--doc/latex/classmeow_1_1RGBi__Space.pdfbin6121 -> 6121 bytes
-rw-r--r--doc/latex/classmeow_1_1Rotation3D.pdfbin6175 -> 6175 bytes
-rw-r--r--doc/latex/classmeow_1_1Self.tex160
-rw-r--r--doc/latex/classmeow_1_1TransformatePipeline.eps197
-rw-r--r--doc/latex/classmeow_1_1TransformatePipeline.pdfbin0 -> 6124 bytes
-rw-r--r--doc/latex/classmeow_1_1TransformatePipeline.tex290
-rw-r--r--doc/latex/classmeow_1_1Transformation.pdfbin6653 -> 6653 bytes
-rw-r--r--doc/latex/classmeow_1_1Transformation.tex6
-rw-r--r--doc/latex/classmeow_1_1Usage.tex48
-rw-r--r--doc/latex/classmeow_1_1Vector.tex68
-rw-r--r--doc/latex/classmeow_1_1ViewPort.pdfbin5499 -> 5499 bytes
-rw-r--r--doc/latex/classmeow_1_1WatchBall.pdfbin6056 -> 6056 bytes
-rw-r--r--doc/latex/classmeow_1_1YUVf__Space.pdfbin6136 -> 6136 bytes
-rw-r--r--doc/latex/dir_92fecd8d02dd5e7a67429447fdf0f60f.tex2
-rw-r--r--doc/latex/doxygen.sty4
-rw-r--r--doc/latex/files.tex1
-rw-r--r--doc/latex/group__gp1.tex12
-rw-r--r--doc/latex/hierarchy.tex6
-rw-r--r--doc/latex/math_2utility_8h.tex2
-rw-r--r--doc/latex/modules.tex4
-rw-r--r--doc/latex/namespacemeow.tex19
-rw-r--r--doc/latex/refman.aux109
-rw-r--r--doc/latex/refman.idx65
-rw-r--r--doc/latex/refman.log16784
-rw-r--r--doc/latex/refman.out43
-rw-r--r--doc/latex/refman.tex4
-rw-r--r--doc/latex/refman.toc0
-rw-r--r--doc/latex/structMyself_1_1Piece.tex58
-rw-r--r--doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.tex52
-rw-r--r--doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1Piece.tex58
-rw-r--r--doc/latex/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.tex58
-rw-r--r--doxygen/!readme.asciidoc128
-rw-r--r--doxygen/stylesheet.css517
-rw-r--r--meowpp.test/GNUmakefile2
-rw-r--r--meowpp.test/GNUmakefile.targets7
-rw-r--r--meowpp.test/inc/autostitch.h10
-rw-r--r--meowpp.test/output.jpgbin0 -> 69525 bytes
-rw-r--r--meowpp.test/output.txt361
-rw-r--r--meowpp.test/output2.jpgbin0 -> 36025 bytes
-rw-r--r--meowpp.test/output3.jpgbin0 -> 36191 bytes
-rw-r--r--meowpp.test/points.txt361
-rw-r--r--meowpp.test/src/autostitch.cpp384
-rw-r--r--meowpp.test/src/autostitch_FeaturePointsDetector_Harris.cpp28
-rw-r--r--meowpp.test/src/autostitch_K_Match.cpp4
-rw-r--r--meowpp.test/src/autostitch_RansacCheck.cpp103
-rw-r--r--meowpp.test/src/dsa.cpp15
-rw-r--r--meowpp.test/src/oo.cpp32
-rw-r--r--meowpp.test/src/rot_bundle.cpp319
-rw-r--r--meowpp/Self.h222
-rw-r--r--meowpp/Usage.h200
-rw-r--r--meowpp/colors/Color3_Space.h20
-rw-r--r--meowpp/colors/HSL_Space.h6
-rw-r--r--meowpp/colors/HSV_Space.h2
-rw-r--r--meowpp/colors/RGB_Space.h4
-rw-r--r--meowpp/colors/YUV_Space.h2
-rw-r--r--meowpp/dsa/DisjointSet.h6
-rw-r--r--meowpp/dsa/HashTable.h8
-rw-r--r--meowpp/dsa/KD_Tree.h12
-rw-r--r--meowpp/dsa/MergeableHeap.h2
-rw-r--r--meowpp/dsa/SegmentTree.h6
-rw-r--r--meowpp/dsa/SplayTree.h22
-rw-r--r--meowpp/dsa/VP_Tree.h24
-rw-r--r--meowpp/geo/Vectors.h168
-rw-r--r--meowpp/gra/Bitmap.h87
-rw-r--r--meowpp/gra/BundleAdjustment.h54
-rw-r--r--meowpp/gra/BundleAdjustment_LM.h375
-rw-r--r--meowpp/gra/Camera.h367
-rw-r--r--meowpp/gra/Eye.h174
-rw-r--r--meowpp/gra/FeaturePoint.h79
-rw-r--r--meowpp/gra/FeaturePointsDetector.h4
-rw-r--r--meowpp/gra/FeaturePointsDetector_Harris.h59
-rw-r--r--meowpp/gra/FeaturePointsMatch.h25
-rw-r--r--meowpp/gra/FeaturePointsMatch_K_Match.h38
-rw-r--r--meowpp/gra/IdentityPoints.h140
-rw-r--r--meowpp/gra/Photo.h78
-rw-r--r--meowpp/gra/WatchBall.h11
-rw-r--r--meowpp/math/LinearTransformation.h13
-rw-r--r--meowpp/math/LinearTransformations.h78
-rw-r--r--meowpp/math/Matrix.h103
-rw-r--r--meowpp/math/Transformation.h50
-rw-r--r--meowpp/math/Transformations.h56
-rw-r--r--meowpp/math/Vector.h89
-rw-r--r--meowpp/math/methods.h75
-rw-r--r--meowpp/math/utility.h52
-rw-r--r--meowpp/oo/ObjArray.h26
-rw-r--r--meowpp/oo/ObjBase.h95
-rw-r--r--meowpp/oo/ObjSelector.h4
-rw-r--r--meowpp/oo/ObjTypes.h19
-rw-r--r--meowpp/utility.h72
454 files changed, 30692 insertions, 5710 deletions
diff --git a/README.html b/README.html
index cef1c4f..dcd24a5 100644
--- a/README.html
+++ b/README.html
@@ -1872,7 +1872,7 @@ GitHub
<div id="footnotes"><hr></div>
<div id="footer">
<div id="footer-text">
-Last updated 2014-06-01 13:54:32 CST
+Last updated 2014-06-05 15:02:19 CST
</div>
</div>
</body>
diff --git a/doc/html/BinaryIndexTree_8h.html b/doc/html/BinaryIndexTree_8h.html
index 56904e2..64477cf 100644
--- a/doc/html/BinaryIndexTree_8h.html
+++ b/doc/html/BinaryIndexTree_8h.html
@@ -85,7 +85,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="BinaryIndexTree_8h.html">BinaryIndexTree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/BinaryIndexTree_8h_source.html b/doc/html/BinaryIndexTree_8h_source.html
index 193f571..d08f314 100644
--- a/doc/html/BinaryIndexTree_8h_source.html
+++ b/doc/html/BinaryIndexTree_8h_source.html
@@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('BinaryIndexTree_8h_source.html','');})
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="BinaryIndexTree_8h.html">BinaryIndexTree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Bitmap_8h.html b/doc/html/Bitmap_8h.html
index 398a815..0b0e030 100644
--- a/doc/html/Bitmap_8h.html
+++ b/doc/html/Bitmap_8h.html
@@ -91,7 +91,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="Bitmap_8h.html">Bitmap.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Bitmap_8h_source.html b/doc/html/Bitmap_8h_source.html
index 4956a0b..d52058c 100644
--- a/doc/html/Bitmap_8h_source.html
+++ b/doc/html/Bitmap_8h_source.html
@@ -81,7 +81,7 @@ $(document).ready(function(){initNavTree('Bitmap_8h_source.html','');});
<div class="line"><a name="l00026"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html"> 26</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Bitmap.html" title="二維點陣資料">Bitmap</a>: <span class="keyword">public</span> <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> {</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Pixel&gt;</a> matrix_;</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="comment">//</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">static</span> std::vector&lt;double&gt; gaussianFactor1(<span class="keywordtype">double</span> sigma) {</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordtype">double</span> sigma2 = <a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sigma);</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Bitmap.html#ad8476258a0f9deefdb7170d53949d3ed" title="回傳寬度">width</a> = std::max(ceil((<span class="keywordtype">double</span>)(sigma * 2)), 0.0);</div>
@@ -183,11 +183,11 @@ $(document).ready(function(){initNavTree('Bitmap_8h_source.html','');});
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; }</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
<div class="line"><a name="l00201"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#ac8f41ae97e068549565e9ac83ffef888"> 201</a></span>&#160; Pixel <a class="code" href="classmeow_1_1Bitmap.html#ac8f41ae97e068549565e9ac83ffef888" title="取得 (y, x) 的pixel">pixel</a>(<span class="keywordtype">size_t</span> y, <span class="keywordtype">size_t</span> x)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(y, x);</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(y, x);</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div>
<div class="line"><a name="l00213"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#afe97efe50d112a71ee45da6d2bc3e9dc"> 213</a></span>&#160; Pixel <a class="code" href="classmeow_1_1Bitmap.html#afe97efe50d112a71ee45da6d2bc3e9dc" title="修改 (y, x) 的pixel">pixel</a>(<span class="keywordtype">size_t</span> y, <span class="keywordtype">size_t</span> x, Pixel <span class="keyword">const</span>&amp; p) {</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(y, x, p);</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(y, x, p);</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div>
<div class="line"><a name="l00229"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a17f92dec30f314d832f040257d6d5584"> 229</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Bitmap.html#a17f92dec30f314d832f040257d6d5584" title="區塊修改">pixels</a>(ssize_t yFirst, ssize_t yLast,</div>
@@ -237,62 +237,34 @@ $(document).ready(function(){initNavTree('Bitmap_8h_source.html','');});
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; }</div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; </div>
<div class="line"><a name="l00330"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#aad700e26eae54cb653919c165dcc98dd"> 330</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Bitmap.html#aad700e26eae54cb653919c165dcc98dd" title="將資料寫入檔案">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordtype">size_t</span> w = <a class="code" href="classmeow_1_1Bitmap.html#ad8476258a0f9deefdb7170d53949d3ed" title="回傳寬度">width</a>(), h = <a class="code" href="classmeow_1_1Bitmap.html#a2290360ab49bdf1f33dc717fce71d5df" title="回傳高度">height</a>();</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">if</span> (fwrite(&amp;h, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">if</span> (fwrite(&amp;w, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; }</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">if</span> (fprintf(f, <span class="stringliteral">&quot;%lu %lu\n&quot;</span>, h, w) &lt; 2) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; }</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">if</span> (fg) {</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="comment">// TODO</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; }</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="comment">//return propertyWrite(__f, __bin, __fg);</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; }</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; </div>
-<div class="line"><a name="l00351"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a3b13a4923d68de65bb7e21712185bec8"> 351</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Bitmap.html#a3b13a4923d68de65bb7e21712185bec8" title="將資料讀入">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordtype">size_t</span> w, h;</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">if</span> (fread(&amp;h, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">if</span> (fread(&amp;w, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; }</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">if</span> (fscanf(f, <span class="stringliteral">&quot;%lu %lu\n&quot;</span>, &amp;h, &amp;w) &lt; 2) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; }</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">if</span> (fg) {</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="comment">// TODO</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <a class="code" href="classmeow_1_1Bitmap.html#ae7bcc670d666a784d6e5e8f14b74aa3d" title="全部重設">reset</a>(h, w, Pixel(0));</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; }</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; }</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;</div>
-<div class="line"><a name="l00374"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f"> 374</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f" title="new一個自己">create</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1Bitmap.html#ab313e096befabd933633cb75b870f75c" title="constructor, 產生一個空的Bitmap">Bitmap</a>();</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; }</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; </div>
-<div class="line"><a name="l00387"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a998a6a9607f8552ace65cce0d251042c"> 387</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Bitmap.html#a998a6a9607f8552ace65cce0d251042c" title="複製資料">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1Bitmap.html#a5e08b5d3c78c91b33b83da02b658539b" title="複製">copyFrom</a>(*(<a class="code" href="classmeow_1_1Bitmap.html" title="二維點陣資料">Bitmap</a>*)b));</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; }</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; </div>
-<div class="line"><a name="l00395"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7"> 395</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7" title="回傳class的type">ctype</a>()<span class="keyword"> const</span>{</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">return</span> ptr;</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; </div>
-<div class="line"><a name="l00404"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1"> 404</a></span>&#160; std::string <a class="code" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1" title="回傳class的type">type</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7" title="回傳class的type">ctype</a>());</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; }</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;};</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;}</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;<span class="preprocessor">#endif // gra_Bitmap_H__</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; }</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; </div>
+<div class="line"><a name="l00338"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a3b13a4923d68de65bb7e21712185bec8"> 338</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Bitmap.html#a3b13a4923d68de65bb7e21712185bec8" title="將資料讀入">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; }</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div>
+<div class="line"><a name="l00346"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f"> 346</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f" title="new一個自己">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1Bitmap.html#ab313e096befabd933633cb75b870f75c" title="constructor, 產生一個空的Bitmap">Bitmap</a>();</div>
+<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; }</div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; </div>
+<div class="line"><a name="l00359"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a998a6a9607f8552ace65cce0d251042c"> 359</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Bitmap.html#a998a6a9607f8552ace65cce0d251042c" title="複製資料">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
+<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1Bitmap.html#a5e08b5d3c78c91b33b83da02b658539b" title="複製">copyFrom</a>(*(<a class="code" href="classmeow_1_1Bitmap.html" title="二維點陣資料">Bitmap</a>*)b));</div>
+<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; }</div>
+<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; </div>
+<div class="line"><a name="l00367"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7"> 367</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7" title="回傳class的type">ctype</a>()<span class="keyword"> const</span>{</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">return</span> ptr;</div>
+<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; }</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; </div>
+<div class="line"><a name="l00376"></a><span class="lineno"><a class="code" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1"> 376</a></span>&#160; std::string <a class="code" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1" title="回傳class的type">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7" title="回傳class的type">ctype</a>());</div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;};</div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;}</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;<span class="preprocessor">#endif // gra_Bitmap_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -300,7 +272,7 @@ $(document).ready(function(){initNavTree('Bitmap_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="Bitmap_8h.html">Bitmap.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Camera_8h.html b/doc/html/Camera_8h.html
index 4ef99f0..8c173dc 100644
--- a/doc/html/Camera_8h.html
+++ b/doc/html/Camera_8h.html
@@ -89,7 +89,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="Camera_8h.html">Camera.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Camera_8h_source.html b/doc/html/Camera_8h_source.html
index eaf91fb..d9b712a 100644
--- a/doc/html/Camera_8h_source.html
+++ b/doc/html/Camera_8h_source.html
@@ -96,414 +96,413 @@ $(document).ready(function(){initNavTree('Camera_8h_source.html','');});
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;Myself&gt;</a> <span class="keyword">const</span> <span class="keyword">self</span>;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a2f1f9f82751c73193952f22ffdd0cc43"> 50</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html#a2f1f9f82751c73193952f22ffdd0cc43" title="constructor">Camera</a>(): self(true) {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a2f1f9f82751c73193952f22ffdd0cc43"> 50</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html#a2f1f9f82751c73193952f22ffdd0cc43" title="constructor">Camera</a>(): self() {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
-<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ab05f55e6b0eb28065c27a89393ccce19"> 56</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html#ab05f55e6b0eb28065c27a89393ccce19" title="copy constructor">Camera</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b): self(false) {</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(b);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a0f29b943c2f6b4c68c4b00b6a3056d63"> 63</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html#a0f29b943c2f6b4c68c4b00b6a3056d63" title="destructor">~Camera</a>() {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; </div>
-<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d"> 69</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>&amp; <a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(b.self);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
-<div class="line"><a name="l00077"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e"> 77</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>&amp; <a class="code" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e" title="參照">referenceFrom</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e" title="參照">referenceFrom</a>(b.self);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136"> 85</a></span>&#160; <a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136" title="取得 photo">photo</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;photo_;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aedd341c40cf8c5ef656bd02d9a1a266b"> 92</a></span>&#160; <a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a>&amp; <a class="code" href="classmeow_1_1Camera.html#aedd341c40cf8c5ef656bd02d9a1a266b" title="取得 photo (non-constant)">photoGet</a>() {</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;photo_;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#adecd4f466208aeb53713532ef576bdee"> 99</a></span>&#160; <a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#adecd4f466208aeb53713532ef576bdee" title="設定 photo">photo</a>(<a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a> <span class="keyword">const</span>&amp; pho) {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">self</span>()-&gt;photo_.copyFrom(pho);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136" title="取得 photo">photo</a>();</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370"> 107</a></span>&#160; <a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370" title="取得rotation">rotation</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;rot_;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a54891144105d5e29a33b98d2fdf799e5"> 114</a></span>&#160; <a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a>&amp; <a class="code" href="classmeow_1_1Camera.html#a54891144105d5e29a33b98d2fdf799e5" title="取得rotation (non-constant)">rotationGet</a>() {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;rot_;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aba398741215e99868380dff84e6aaee3"> 121</a></span>&#160; <a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#aba398741215e99868380dff84e6aaee3" title="設定rotation">rotation</a>(<a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a> <span class="keyword">const</span>&amp; rot) {</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keyword">self</span>()-&gt;rot_ = rot;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370" title="取得rotation">rotation</a>();</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a2fde4fdfcb105e8a44b3333c78f55b6b"> 129</a></span>&#160; <a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a2fde4fdfcb105e8a44b3333c78f55b6b" title="取得所有FixedPoint">fixedPoints2D</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;fixed2D_;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aa6bfaf360ab9b78adfde7005747368d4"> 136</a></span>&#160; <a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a>&amp; <a class="code" href="classmeow_1_1Camera.html#aa6bfaf360ab9b78adfde7005747368d4" title="取得所有FixedPoint(non-constant reference)">fixedPoints2DGet</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;fixed2D_;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a298f81d18e2339db23ed5339f59b7986"> 143</a></span>&#160; <a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a298f81d18e2339db23ed5339f59b7986" title="設定FixedPoint">fixedPoints2D</a>(<a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a> <span class="keyword">const</span>&amp; fps2d)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">if</span> (fps2d.<a class="code" href="classmeow_1_1IdentityPoints.html#a19da7e561a7216146da2d974434a0c68" title="回傳dimension">dimension</a>() == 2) {</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">self</span>()-&gt;fixed2D_ = fps2d;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#a2fde4fdfcb105e8a44b3333c78f55b6b" title="取得所有FixedPoint">fixedPoints2D</a>();</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a0073158eeefdc6ae662f5127485aa79e"> 153</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> <a class="code" href="classmeow_1_1Camera.html#a0073158eeefdc6ae662f5127485aa79e" title="取得編號為i的fixed points 2d">fixedPoints2D</a>(<span class="keywordtype">int</span> i) {</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;fixed2D_.identityPoint(i);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; }</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a55e165212b212a58b0090b1496a1a40a"> 160</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Camera.html#a55e165212b212a58b0090b1496a1a40a" title="詢問某點是否在底片範圍內">inside</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a> p)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;photo_.inside(</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a>(self-&gt;rot_.transformate(p.<a class="code" href="classmeow_1_1Vector3D.html#ae03fb93d06c60fd2901875ead10c8c72" title="return a 3x1 matrix form of itself">matrix</a>())));</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div>
-<div class="line"><a name="l00168"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aa446aa03bc2cb675649c11114e1298b4"> 168</a></span>&#160; Pixel <a class="code" href="classmeow_1_1Camera.html#aa446aa03bc2cb675649c11114e1298b4" title="取得底片color">color</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a> p)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;photo_.color(</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a>(self-&gt;rot_.transformate(p.<a class="code" href="classmeow_1_1Vector3D.html#ae03fb93d06c60fd2901875ead10c8c72" title="return a 3x1 matrix form of itself">matrix</a>())));</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; </div>
-<div class="line"><a name="l00176"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#adc22e067c44d2cf143c3cf4cba9abdbf"> 176</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>&amp; <a class="code" href="classmeow_1_1Camera.html#adc22e067c44d2cf143c3cf4cba9abdbf" title="same as copyFrom(b) ">operator=</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(b);</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#acb6443a3ce77804575ec55209b3a1960"> 184</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Camera.html#acb6443a3ce77804575ec55209b3a1960" title="將資料寫入檔案">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
-<div class="line"><a name="l00192"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aaa82f998dfc1acde6607650ab6514492"> 192</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Camera.html#aaa82f998dfc1acde6607650ab6514492" title="將資料讀入">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3"> 200</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3" title="new一個自己">create</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1Camera.html#a2f1f9f82751c73193952f22ffdd0cc43" title="constructor">Camera</a>();</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; }</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a5dff4c1129c6d74de1938bea9309a408"> 212</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Camera.html#a5dff4c1129c6d74de1938bea9309a408" title="複製資料">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(*(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>*)b));</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div>
-<div class="line"><a name="l00220"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18"> 220</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18" title="回傳class的type">ctype</a>()<span class="keyword"> const</span>{</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">return</span> ptr;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; }</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div>
-<div class="line"><a name="l00229"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32"> 229</a></span>&#160; std::string <a class="code" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32" title="回傳class的type">type</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18" title="回傳class的type">ctype</a>());</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; </div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="keyword">private</span>:</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keyword">class </span>BoundleAdjustment2D {</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keyword">class </span>Parameters {</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; std::vector&lt;Camera&gt;&amp; cam_;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; std::vector&lt;Rotation3D&lt;double&gt; &gt; rot_;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; std::vector&lt;PhotoProjection&lt;double&gt; &gt; pho_;</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keyword">struct </span>Pair {</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordtype">size_t</span> i1_;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordtype">size_t</span> i2_;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> v1_;</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> v2_;</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; Pair(<span class="keywordtype">size_t</span> a, <span class="keywordtype">size_t</span> b,</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> <span class="keyword">const</span>&amp; v1, <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> <span class="keyword">const</span>&amp; v2):</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; i1_(a), i2_(b), v1_(v1), v2_(v2) {</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; };</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; std::vector&lt;Pair&gt; pairs_;</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordtype">void</span> setParameters(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v) {</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordtype">size_t</span> n = 0;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; pho_[i].focal(v(n++));</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; 3; j++) {</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; rot_[i].theta(j, v(n++));</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = pairs_.size(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; pairs_[i].v1_.entry(2, pho_[pairs_[i].i1_].focal());</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; pairs_[i].v2_.entry(2, pho_[pairs_[i].i2_].focal());</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; }</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; }</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; Vector&lt;double&gt; getParameters()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; Vector&lt;double&gt; ret(cam_.size() * 4, 0.0);</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; ret.entry(i * 4, pho_[i].focal());</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; 3; ++j) {</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; ret.entry(i * 4 + 1 + j, rot_[i].theta(j));</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; }</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; }</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; Vector&lt;double&gt; residureV()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; Vector&lt;double&gt; ret(pairs_.size() * 3, 0.0);</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = pairs_.size(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordtype">size_t</span> i_from = pairs_[i].i1_;</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordtype">size_t</span> i_to = pairs_[i].i2_;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; Matrix&lt;double&gt; v_from(pairs_[i].v1_.matrix());</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; Matrix&lt;double&gt; v_to (pairs_[i].v2_.matrix());</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; Matrix&lt;double&gt; v_tr(</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; pho_[i_to].transformate(</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; rot_[i_to].transformate(</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; v_from</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; )</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; )</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; )</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; )</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; );</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; Matrix&lt;double&gt; delta(v_to - v_tr);</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; 3; ++j) {</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; ret.entry(i * 3 + j, delta(j, 0));</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; Parameters(std::vector&lt;Camera&gt;&amp; cam): cam_(cam) {</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; rot_.resize(cam_.size());</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; pho_.resize(cam_.size(), PhotoProjection&lt;double&gt;(3));</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; rot_[i].referenceFrom(cam_[i].<a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370" title="取得rotation">rotation</a>());</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; pho_[i].focal(cam_[i].<a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136" title="取得 photo">photo</a>().focal());</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; }</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; std::map&lt;int,Vector&lt;double&gt; &gt;<span class="keyword">const</span>&amp; p1 = (</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; cam_[i].fixedPoints2D().identityPoints());</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; I; ++j) {</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">if</span> (i == j) <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; std::map&lt;int,Vector&lt;double&gt; &gt;<span class="keyword">const</span>&amp; p2 = (</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; cam_[j].fixedPoints2D().identityPoints());</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">for</span> (std::map&lt;<span class="keywordtype">int</span>,Vector&lt;double&gt; &gt;::const_iterator</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; it1 = p1.begin(); it1 != p1.end(); ++it1) {</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">for</span> (std::map&lt;<span class="keywordtype">int</span>,Vector&lt;double&gt; &gt;::const_iterator</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; it2 = p2.begin(); it2 != p2.end(); ++it2) {</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">if</span> (it1-&gt;first != it2-&gt;first) <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; Vector&lt;double&gt; v1(it1-&gt;second), v2(it2-&gt;second);</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; v1.dimension(3, 0.0);</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; v2.dimension(3, 0.0);</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; pairs_.push_back(Pair(i, j, v1, v2));</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; }</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; Vector&lt;double&gt; init()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">return</span> getParameters();</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; }</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; Vector&lt;double&gt; residure(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; ((Parameters*)<span class="keyword">this</span>)-&gt;setParameters(v);</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">return</span> residureV();</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; }</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; Matrix&lt;double&gt; jacobian(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="comment">//setParameters(v);</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; Matrix&lt;double&gt; ret(pairs_.size() * 3, v.dimension(), 0.0);</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = pairs_.size(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0, J = v.dimension(); j &lt; J; ++j) {</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordtype">size_t</span> j0 = j / 4;</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordtype">size_t</span> dj = j % 4;</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordtype">size_t</span> i_from = pairs_[i].i1_;</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordtype">size_t</span> i_to = pairs_[i].i2_;</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; Matrix&lt;double&gt; v_from(pairs_[i].v1_.matrix());</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; Matrix&lt;double&gt; v_to (pairs_[i].v2_.matrix());</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; Matrix&lt;double&gt; v_tr (3, 1, 0.0);</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">if</span> (j0 == i_from) {</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">if</span> (dj == 0) {</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; v_tr = (</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; pho_[i_to].jacobian(</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; rot_[i_to].transformate(</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; v_from</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; )</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; )</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; )</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; )</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; *</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; rot_[i_to].jacobian(</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; v_from</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; )</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; )</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; )</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; *</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; rot_[i_from].jacobianInv(</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; v_from</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; )</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; )</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; *</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; BallProjection&lt;double&gt;(3, 1.0).jacobian(</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; v_from</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; ).col(2)</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; );</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; }</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; v_tr = (</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; pho_[i_to].jacobian(</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; rot_[i_to].transformate(</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; v_from</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; )</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; )</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; )</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; )</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; *</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; rot_[i_to].jacobian(</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; v_from</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; )</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; )</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; )</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; *</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; rot_[i_from].jacobianInv(</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; v_from</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; )</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; )</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; );</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; }</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; }</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j0 == i_to) {</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keywordflow">if</span> (dj == 0) {</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; v_tr = (</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; pho_[i_to].jacobian(</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; rot_[i_to].transformate(</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; v_from</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; )</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; )</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; )</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; ).col(2)</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; );</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; }</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; v_tr = (</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; pho_[i_to].jacobian(</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; rot_[i_to].transformate(</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; v_from</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; )</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; )</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; )</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; )</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; *</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; rot_[i_to].jacobian(</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; rot_[i_from].transformateInv(</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; v_from</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; )</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; ),</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; dj - 1</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; )</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; );</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k = 0; k &lt; 3; ++k) {</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; ret.entry(i * 3 + k, j, -v_tr(k, 0));</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; }</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; }</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; Matrix&lt;double&gt; identity(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="comment">//setParameters(v);</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; Matrix&lt;double&gt; ret(v.dimension(), v.dimension(), 0.0);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; ret.identity();</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; }</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordtype">double</span> averageResidure()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; Vector&lt;double&gt; res(residureV());</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordtype">double</span> sum = 0;</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = res.dimension(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; sum += res(i);</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; }</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keywordflow">return</span> sum / res.dimension();</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; }</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordtype">size_t</span> dimensinonI()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keywordflow">return</span> cam_.size() * 4;</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; }</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordtype">size_t</span> dimensionO()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordflow">return</span> pairs_.size() * 3;</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; }</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; };</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keyword">class </span>F {</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; Parameters&amp; p_;</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; F(Parameters&amp; p): p_(p) {</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; }</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; Vector&lt;double&gt; operator()(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">return</span> p_.residure(v);</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; }</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; };</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keyword">class </span>J {</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; Parameters&amp; p_;</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; J(Parameters&amp; p): p_(p) {</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; }</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; Matrix&lt;double&gt; operator()(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordflow">return</span> p_.jacobian(v);</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; }</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; };</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="keyword">class </span>I {</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; Parameters&amp; p_;</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; I(Parameters&amp; p): p_(p) {</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; }</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; Matrix&lt;double&gt; operator()(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="keywordflow">return</span> p_.identity(v);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; }</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; };</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keyword">class </span>Stop {</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; Parameters&amp; p_;</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keywordtype">double</span> t_;</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; Stop(Parameters&amp; p, <span class="keywordtype">double</span> t): p_(p), t_(t) {</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; }</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordtype">bool</span> operator()(<span class="keywordtype">double</span> r)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keywordflow">return</span> (r &lt; p_.dimensionO() * t_);</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; }</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; };</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; BoundleAdjustment2D() {</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; }</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; ~BoundleAdjustment2D() {</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; }</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordtype">double</span> operator()(std::vector&lt;Camera&gt;* cs, <span class="keywordtype">double</span> threshold)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; Parameters p(*cs);</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; Vector&lt;double&gt; v0(p.init());</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="namespacemeow.html#a8e4a4baed7fb497f170075648ac95077" title="Run the Levenberg-Marquardt method to solve a non-linear least squares problem.">levenbergMarquardt</a>(F(p), J(p), I(p), v0, Stop(p, threshold), 100000);</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keywordflow">return</span> p.averageResidure();</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; }</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; };</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00536"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#af291cd0bd6253338e05f60bea9878b64"> 536</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1Camera.html#af291cd0bd6253338e05f60bea9878b64" title="將數台camera用fixed points做boundle adjustment">boundleAdjustment2D</a>(std::vector&lt;Camera&gt;* cs, <span class="keywordtype">double</span> threshold) {</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keyword">static</span> BoundleAdjustment2D bdl;</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="keywordflow">return</span> bdl(cs, threshold);</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; }</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;};</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;}</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;<span class="preprocessor">#endif // gra_Camera_H__</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ab05f55e6b0eb28065c27a89393ccce19"> 56</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html#ab05f55e6b0eb28065c27a89393ccce19" title="copy constructor">Camera</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b): self(b.self, COPY_FROM) {</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a0f29b943c2f6b4c68c4b00b6a3056d63"> 62</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html#a0f29b943c2f6b4c68c4b00b6a3056d63" title="destructor">~Camera</a>() {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d"> 68</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>&amp; <a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(b.self);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e"> 76</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>&amp; <a class="code" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e" title="參照">referenceFrom</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e" title="參照">referenceFrom</a>(b.self);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136"> 84</a></span>&#160; <a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136" title="取得 photo">photo</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;photo_;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aedd341c40cf8c5ef656bd02d9a1a266b"> 91</a></span>&#160; <a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a>&amp; <a class="code" href="classmeow_1_1Camera.html#aedd341c40cf8c5ef656bd02d9a1a266b" title="取得 photo (non-constant)">photoGet</a>() {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;photo_;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#adecd4f466208aeb53713532ef576bdee"> 98</a></span>&#160; <a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#adecd4f466208aeb53713532ef576bdee" title="設定 photo">photo</a>(<a class="code" href="classmeow_1_1Photo.html" title="底片">Photo&lt;Pixel&gt;</a> <span class="keyword">const</span>&amp; pho) {</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">self</span>()-&gt;photo_.copyFrom(pho);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136" title="取得 photo">photo</a>();</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370"> 106</a></span>&#160; <a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370" title="取得rotation">rotation</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;rot_;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a54891144105d5e29a33b98d2fdf799e5"> 113</a></span>&#160; <a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a>&amp; <a class="code" href="classmeow_1_1Camera.html#a54891144105d5e29a33b98d2fdf799e5" title="取得rotation (non-constant)">rotationGet</a>() {</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;rot_;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aba398741215e99868380dff84e6aaee3"> 120</a></span>&#160; <a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#aba398741215e99868380dff84e6aaee3" title="設定rotation">rotation</a>(<a class="code" href="classmeow_1_1Rotation3D.html">Rotation3D&lt;double&gt;</a> <span class="keyword">const</span>&amp; rot) {</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">self</span>()-&gt;rot_ = rot;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370" title="取得rotation">rotation</a>();</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a2fde4fdfcb105e8a44b3333c78f55b6b"> 128</a></span>&#160; <a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a2fde4fdfcb105e8a44b3333c78f55b6b" title="取得所有FixedPoint">fixedPoints2D</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;fixed2D_;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aa6bfaf360ab9b78adfde7005747368d4"> 135</a></span>&#160; <a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a>&amp; <a class="code" href="classmeow_1_1Camera.html#aa6bfaf360ab9b78adfde7005747368d4" title="取得所有FixedPoint(non-constant reference)">fixedPoints2DGet</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;fixed2D_;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a298f81d18e2339db23ed5339f59b7986"> 142</a></span>&#160; <a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Camera.html#a298f81d18e2339db23ed5339f59b7986" title="設定FixedPoint">fixedPoints2D</a>(<a class="code" href="classmeow_1_1IdentityPoints.html">FixedPoints2D</a> <span class="keyword">const</span>&amp; fps2d)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">if</span> (fps2d.<a class="code" href="classmeow_1_1IdentityPoints.html#a19da7e561a7216146da2d974434a0c68" title="回傳dimension">dimension</a>() == 2) {</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">self</span>()-&gt;fixed2D_ = fps2d;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#a2fde4fdfcb105e8a44b3333c78f55b6b" title="取得所有FixedPoint">fixedPoints2D</a>();</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a0073158eeefdc6ae662f5127485aa79e"> 152</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> <a class="code" href="classmeow_1_1Camera.html#a0073158eeefdc6ae662f5127485aa79e" title="取得編號為i的fixed points 2d">fixedPoints2D</a>(<span class="keywordtype">int</span> i) {</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;fixed2D_.identityPoint(i);</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a55e165212b212a58b0090b1496a1a40a"> 159</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Camera.html#a55e165212b212a58b0090b1496a1a40a" title="詢問某點是否在底片範圍內">inside</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a> p)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;photo_.inside(</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a>(self-&gt;rot_.transformate(p.<a class="code" href="classmeow_1_1Vector3D.html#ae03fb93d06c60fd2901875ead10c8c72" title="return a 3x1 matrix form of itself">matrix</a>())));</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
+<div class="line"><a name="l00167"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aa446aa03bc2cb675649c11114e1298b4"> 167</a></span>&#160; Pixel <a class="code" href="classmeow_1_1Camera.html#aa446aa03bc2cb675649c11114e1298b4" title="取得底片color">color</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a> p)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;photo_.color(</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;double&gt;</a>(self-&gt;rot_.transformate(p.<a class="code" href="classmeow_1_1Vector3D.html#ae03fb93d06c60fd2901875ead10c8c72" title="return a 3x1 matrix form of itself">matrix</a>())));</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#adc22e067c44d2cf143c3cf4cba9abdbf"> 175</a></span>&#160; <a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>&amp; <a class="code" href="classmeow_1_1Camera.html#adc22e067c44d2cf143c3cf4cba9abdbf" title="same as copyFrom(b) ">operator=</a>(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(b);</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#acb6443a3ce77804575ec55209b3a1960"> 183</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Camera.html#acb6443a3ce77804575ec55209b3a1960" title="將資料寫入檔案">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#aaa82f998dfc1acde6607650ab6514492"> 191</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Camera.html#aaa82f998dfc1acde6607650ab6514492" title="將資料讀入">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3"> 199</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3" title="new一個自己">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1Camera.html#a2f1f9f82751c73193952f22ffdd0cc43" title="constructor">Camera</a>();</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; }</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div>
+<div class="line"><a name="l00211"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a5dff4c1129c6d74de1938bea9309a408"> 211</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1Camera.html#a5dff4c1129c6d74de1938bea9309a408" title="複製資料">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1Camera.html#ad6351e87de51e00981b7befff91b6b6d" title="複製資料">copyFrom</a>(*(<a class="code" href="classmeow_1_1Camera.html" title="Camera.">Camera</a>*)b));</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; }</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18"> 219</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18" title="回傳class的type">ctype</a>()<span class="keyword"> const</span>{</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> ptr;</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
+<div class="line"><a name="l00228"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32"> 228</a></span>&#160; std::string <a class="code" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32" title="回傳class的type">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18" title="回傳class的type">ctype</a>());</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; }</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; </div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keyword">class </span>BoundleAdjustment2D {</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keyword">class </span>Parameters {</div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; std::vector&lt;Camera&gt;&amp; cam_;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; std::vector&lt;Rotation3D&lt;double&gt; &gt; rot_;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; std::vector&lt;PhotoProjection&lt;double&gt; &gt; pho_;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keyword">struct </span>Pair {</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordtype">size_t</span> i1_;</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordtype">size_t</span> i2_;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> v1_;</div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> v2_;</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; Pair(<span class="keywordtype">size_t</span> a, <span class="keywordtype">size_t</span> b,</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> <span class="keyword">const</span>&amp; v1, <a class="code" href="classmeow_1_1Vector.html">Vector&lt;double&gt;</a> <span class="keyword">const</span>&amp; v2):</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; i1_(a), i2_(b), v1_(v1), v2_(v2) {</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; };</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; std::vector&lt;Pair&gt; pairs_;</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordtype">void</span> setParameters(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v) {</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordtype">size_t</span> n = 0;</div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; pho_[i].focal(v(n++));</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; 3; j++) {</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; rot_[i].theta(j, v(n++));</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; }</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = pairs_.size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; pairs_[i].v1_.entry(2, pho_[pairs_[i].i1_].focal());</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; pairs_[i].v2_.entry(2, pho_[pairs_[i].i2_].focal());</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; }</div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; }</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; Vector&lt;double&gt; getParameters()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; Vector&lt;double&gt; ret(cam_.size() * 4, 0.0);</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; ret.entry(i * 4, pho_[i].focal());</div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; 3; ++j) {</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; ret.entry(i * 4 + 1 + j, rot_[i].theta(j));</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; }</div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; }</div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; Vector&lt;double&gt; residureV()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; Vector&lt;double&gt; ret(pairs_.size() * 3, 0.0);</div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = pairs_.size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordtype">size_t</span> i_from = pairs_[i].i1_;</div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordtype">size_t</span> i_to = pairs_[i].i2_;</div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; Matrix&lt;double&gt; v_from(pairs_[i].v1_.matrix());</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; Matrix&lt;double&gt; v_to (pairs_[i].v2_.matrix());</div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; Matrix&lt;double&gt; v_tr(</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; pho_[i_to].transformate(</div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; rot_[i_to].transformate(</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; v_from</div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; )</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; )</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; )</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; )</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; );</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; Matrix&lt;double&gt; delta(v_to - v_tr);</div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; 3; ++j) {</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; ret.entry(i * 3 + j, delta(j, 0));</div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; Parameters(std::vector&lt;Camera&gt;&amp; cam): cam_(cam) {</div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; rot_.resize(cam_.size());</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; pho_.resize(cam_.size(), PhotoProjection&lt;double&gt;(3));</div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; rot_[i].referenceFrom(cam_[i].<a class="code" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370" title="取得rotation">rotation</a>());</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; pho_[i].focal(cam_[i].<a class="code" href="classmeow_1_1Camera.html#a78d30a42c1b67fafd3847f8757c10136" title="取得 photo">photo</a>().focal());</div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; }</div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = cam_.size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; std::map&lt;int,Vector&lt;double&gt; &gt;<span class="keyword">const</span>&amp; p1 = (</div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; cam_[i].fixedPoints2D().identityPoints());</div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; I; ++j) {</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">if</span> (i == j) <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; std::map&lt;int,Vector&lt;double&gt; &gt;<span class="keyword">const</span>&amp; p2 = (</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; cam_[j].fixedPoints2D().identityPoints());</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">for</span> (std::map&lt;<span class="keywordtype">int</span>,Vector&lt;double&gt; &gt;::const_iterator</div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; it1 = p1.begin(); it1 != p1.end(); ++it1) {</div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">for</span> (std::map&lt;<span class="keywordtype">int</span>,Vector&lt;double&gt; &gt;::const_iterator</div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; it2 = p2.begin(); it2 != p2.end(); ++it2) {</div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">if</span> (it1-&gt;first != it2-&gt;first) <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; Vector&lt;double&gt; v1(it1-&gt;second), v2(it2-&gt;second);</div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; v1.dimension(3, 0.0);</div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; v2.dimension(3, 0.0);</div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; pairs_.push_back(Pair(i, j, v1, v2));</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; Vector&lt;double&gt; init()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> getParameters();</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; }</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; Vector&lt;double&gt; residure(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; ((Parameters*)<span class="keyword">this</span>)-&gt;setParameters(v);</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">return</span> residureV();</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; Matrix&lt;double&gt; jacobian(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="comment">//setParameters(v);</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; Matrix&lt;double&gt; ret(pairs_.size() * 3, v.dimension(), 0.0);</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = pairs_.size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0, J = v.dimension(); j &lt; J; ++j) {</div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordtype">size_t</span> j0 = j / 4;</div>
+<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordtype">size_t</span> dj = j % 4;</div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordtype">size_t</span> i_from = pairs_[i].i1_;</div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordtype">size_t</span> i_to = pairs_[i].i2_;</div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; Matrix&lt;double&gt; v_from(pairs_[i].v1_.matrix());</div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; Matrix&lt;double&gt; v_to (pairs_[i].v2_.matrix());</div>
+<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; Matrix&lt;double&gt; v_tr (3, 1, 0.0);</div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">if</span> (j0 == i_from) {</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">if</span> (dj == 0) {</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; v_tr = (</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; pho_[i_to].jacobian(</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; rot_[i_to].transformate(</div>
+<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; v_from</div>
+<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; )</div>
+<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; )</div>
+<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; )</div>
+<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; )</div>
+<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; *</div>
+<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; rot_[i_to].jacobian(</div>
+<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; v_from</div>
+<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; )</div>
+<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; )</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; )</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; *</div>
+<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; rot_[i_from].jacobianInv(</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; v_from</div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; )</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; )</div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; *</div>
+<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; BallProjection&lt;double&gt;(3, 1.0).jacobian(</div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; v_from</div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; ).col(2)</div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; );</div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; }</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; v_tr = (</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; pho_[i_to].jacobian(</div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; rot_[i_to].transformate(</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; v_from</div>
+<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; )</div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; )</div>
+<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; )</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; )</div>
+<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; *</div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; rot_[i_to].jacobian(</div>
+<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; v_from</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; )</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; )</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; )</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; *</div>
+<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; rot_[i_from].jacobianInv(</div>
+<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; v_from</div>
+<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; )</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; )</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; );</div>
+<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; }</div>
+<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; }</div>
+<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j0 == i_to) {</div>
+<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">if</span> (dj == 0) {</div>
+<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; v_tr = (</div>
+<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; pho_[i_to].jacobian(</div>
+<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; rot_[i_to].transformate(</div>
+<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; v_from</div>
+<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; )</div>
+<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; )</div>
+<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; )</div>
+<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; ).col(2)</div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; );</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; }</div>
+<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; v_tr = (</div>
+<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; pho_[i_to].jacobian(</div>
+<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; rot_[i_to].transformate(</div>
+<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; v_from</div>
+<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; )</div>
+<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; )</div>
+<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; )</div>
+<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; )</div>
+<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; *</div>
+<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; rot_[i_to].jacobian(</div>
+<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; rot_[i_from].transformateInv(</div>
+<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; BallProjection&lt;double&gt;(3, 1.0).transformate(</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; v_from</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; )</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; ),</div>
+<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; dj - 1</div>
+<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; )</div>
+<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; );</div>
+<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; }</div>
+<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div>
+<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k = 0; k &lt; 3; ++k) {</div>
+<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; ret.entry(i * 3 + k, j, -v_tr(k, 0));</div>
+<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div>
+<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</div>
+<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div>
+<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; }</div>
+<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; Matrix&lt;double&gt; identity(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="comment">//setParameters(v);</span></div>
+<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; Matrix&lt;double&gt; ret(v.dimension(), v.dimension(), 0.0);</div>
+<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; ret.identity();</div>
+<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keywordtype">double</span> averageResidure()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; Vector&lt;double&gt; res(residureV());</div>
+<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordtype">double</span> sum = 0;</div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = res.dimension(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; sum += res(i);</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; }</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">return</span> sum / res.dimension();</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; }</div>
+<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keywordtype">size_t</span> dimensinonI()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordflow">return</span> cam_.size() * 4;</div>
+<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; }</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordtype">size_t</span> dimensionO()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">return</span> pairs_.size() * 3;</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; }</div>
+<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; };</div>
+<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keyword">class </span>F {</div>
+<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; Parameters&amp; p_;</div>
+<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; F(Parameters&amp; p): p_(p) {</div>
+<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; }</div>
+<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; Vector&lt;double&gt; operator()(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="keywordflow">return</span> p_.residure(v);</div>
+<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; }</div>
+<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; };</div>
+<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <span class="keyword">class </span>J {</div>
+<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; Parameters&amp; p_;</div>
+<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; J(Parameters&amp; p): p_(p) {</div>
+<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; }</div>
+<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; Matrix&lt;double&gt; operator()(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">return</span> p_.jacobian(v);</div>
+<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; }</div>
+<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; };</div>
+<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keyword">class </span>I {</div>
+<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; Parameters&amp; p_;</div>
+<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; I(Parameters&amp; p): p_(p) {</div>
+<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; }</div>
+<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; Matrix&lt;double&gt; operator()(Vector&lt;double&gt; <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">return</span> p_.identity(v);</div>
+<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; }</div>
+<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; };</div>
+<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keyword">class </span>Stop {</div>
+<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; Parameters&amp; p_;</div>
+<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="keywordtype">double</span> t_;</div>
+<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; Stop(Parameters&amp; p, <span class="keywordtype">double</span> t): p_(p), t_(t) {</div>
+<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; }</div>
+<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordtype">bool</span> operator()(<span class="keywordtype">double</span> r)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordflow">return</span> (r &lt; p_.dimensionO() * t_);</div>
+<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; }</div>
+<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; };</div>
+<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; BoundleAdjustment2D() {</div>
+<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; }</div>
+<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; ~BoundleAdjustment2D() {</div>
+<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; }</div>
+<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordtype">double</span> operator()(std::vector&lt;Camera&gt;* cs, <span class="keywordtype">double</span> threshold)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; Parameters p(*cs);</div>
+<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; Vector&lt;double&gt; v0(p.init());</div>
+<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <a class="code" href="namespacemeow.html#a8e4a4baed7fb497f170075648ac95077" title="Run the Levenberg-Marquardt method to solve a non-linear least squares problem.">levenbergMarquardt</a>(F(p), J(p), I(p), v0, Stop(p, threshold), 100000);</div>
+<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">return</span> p.averageResidure();</div>
+<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; }</div>
+<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; };</div>
+<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00535"></a><span class="lineno"><a class="code" href="classmeow_1_1Camera.html#af291cd0bd6253338e05f60bea9878b64"> 535</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1Camera.html#af291cd0bd6253338e05f60bea9878b64" title="將數台camera用fixed points做boundle adjustment">boundleAdjustment2D</a>(std::vector&lt;Camera&gt;* cs, <span class="keywordtype">double</span> threshold) {</div>
+<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keyword">static</span> BoundleAdjustment2D bdl;</div>
+<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keywordflow">return</span> bdl(cs, threshold);</div>
+<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; }</div>
+<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;};</div>
+<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div>
+<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;}</div>
+<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;</div>
+<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;<span class="preprocessor">#endif // gra_Camera_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -511,7 +510,7 @@ $(document).ready(function(){initNavTree('Camera_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="Camera_8h.html">Camera.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Color3__Space_8h.html b/doc/html/Color3__Space_8h.html
index 6f23ca4..dd79173 100644
--- a/doc/html/Color3__Space_8h.html
+++ b/doc/html/Color3__Space_8h.html
@@ -61,11 +61,11 @@ $(document).ready(function(){initNavTree('Color3__Space_8h.html','');});
<div class="title">Color3_Space.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
-<div class="textblock"><code>#include &lt;cstdlib&gt;</code><br/>
-<code>#include &quot;<a class="el" href="Self_8h_source.html">../Self.h</a>&quot;</code><br/>
+<div class="textblock"><code>#include &quot;<a class="el" href="Self_8h_source.html">../Self.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="Vectors_8h_source.html">../geo/Vectors.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="Matrix_8h_source.html">../math/Matrix.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="math_2utility_8h_source.html">../math/utility.h</a>&quot;</code><br/>
+<code>#include &lt;cstdlib&gt;</code><br/>
</div>
<p><a href="Color3__Space_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
@@ -87,7 +87,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="Color3__Space_8h.html">Color3_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Color3__Space_8h_source.html b/doc/html/Color3__Space_8h_source.html
index de5c3e3..41eeed0 100644
--- a/doc/html/Color3__Space_8h_source.html
+++ b/doc/html/Color3__Space_8h_source.html
@@ -61,76 +61,77 @@ $(document).ready(function(){initNavTree('Color3__Space_8h_source.html','');});
<a href="Color3__Space_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#ifndef colors_Color3_Space_H__</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define colors_Color3_Space_H__</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;../Self.h&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;../Self.h&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &quot;../geo/Vectors.h&quot;</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &quot;../math/Matrix.h&quot;</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &quot;../math/utility.h&quot;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
-<div class="line"><a name="l00011"></a><span class="lineno"><a class="code" href="namespacemeow.html"> 11</a></span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00019"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html"> 19</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space</a> {</div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00021"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46"> 21</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a>;</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac"> 22</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a>;</div>
-<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae"> 23</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>;</div>
-<div class="line"><a name="l00024"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a982a7211fded8d108aee66a536fb8736"> 24</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a982a7211fded8d108aee66a536fb8736">Color3_Space</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; min_bound,</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; max_bound,</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; init_value) {</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a> = min_bound;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a> = max_bound;</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a> = init_value;</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; }</div>
-<div class="line"><a name="l00031"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a8017c0aae500a4a57938ae04576caa83"> 31</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a8017c0aae500a4a57938ae04576caa83">Color3_Space</a>(<a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a> = b.<a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a>;</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a> = b.<a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a>;</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1">copyFrom</a>(b);</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; }</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00037"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a3fa85d4369b9db8d8209d244a643b49f"> 37</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Color3__Space.html#a3fa85d4369b9db8d8209d244a643b49f">~Color3_Space</a>() { }</div>
-<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1"> 38</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T&gt;</a>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1">copyFrom</a>(<a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T&gt;</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a> = b.<a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; }</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T2&gt;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ab8be12bacd0e877151189383654029c8"> 43</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T&gt;</a>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#ab8be12bacd0e877151189383654029c8">copyFrom</a>(<a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T2&gt;</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; 3; i++) {</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(i, <a class="code" href="namespacemeow.html#a3b01a91eb4a02909a61a35e406fa5732" title="denormalize(l2,u2,normalize(l1,u1,m1))">ratioMapping</a>((<span class="keywordtype">double</span>)b.<a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">min</a>(i), (<a class="code" href="classdouble.html">double</a>)b.<a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f">max</a>(i), (<a class="code" href="classdouble.html">double</a>)b.rgb(i),</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; (<a class="code" href="classdouble.html">double</a>)<a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">min</a>(i), (<a class="code" href="classdouble.html">double</a>)<a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f">max</a>(i)));</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
-<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a318eedb2acaba5f3a8c79a651c53e676"> 49</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a318eedb2acaba5f3a8c79a651c53e676">minV</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a>; }</div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07"> 50</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07">maxV</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a>; }</div>
-<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a1c58ba0912a91e71dee240fad6291216"> 51</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a1c58ba0912a91e71dee240fad6291216">valV</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>; }</div>
-<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa7638e03124b2304d4d34b57be4b0028"> 52</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#aa7638e03124b2304d4d34b57be4b0028">valV</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; vv) { <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a> = vv; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(); }</div>
-<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab"> 53</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> &amp; <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>() { <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>; }</div>
-<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df"> 54</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">min</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a318eedb2acaba5f3a8c79a651c53e676">minV</a>()(id); }</div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f"> 55</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f">max</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07">maxV</a>()(id); }</div>
-<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e"> 56</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a1c58ba0912a91e71dee240fad6291216">valV</a>()(id); }</div>
-<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ae3f57f9651bb80041ce77ec052fdc436"> 57</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#ae3f57f9651bb80041ce77ec052fdc436">val</a>(<span class="keywordtype">size_t</span> i, T <span class="keyword">const</span>&amp; c) {</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (i == 0) <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(c);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i == 1) <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(c);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i == 2) <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>(c);</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(i);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div>
-<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ac2efb0be959fc60f786bdcdc8a1fd8b2"> 63</a></span>&#160; T&amp; <a class="code" href="classmeow_1_1Color3__Space.html#ac2efb0be959fc60f786bdcdc8a1fd8b2">valGet</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>) {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span> == 0) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>().<a class="code" href="classmeow_1_1Vector3D.html#a001a44809826f9cd17dbd652c790c455" title="access x with non constant reference">xGet</a>();</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keywordtype">id</span> == 1) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>().<a class="code" href="classmeow_1_1Vector3D.html#ab3603b9ca292877febc1aec42b29b0ae" title="access y with non constant reference">yGet</a>();</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>().<a class="code" href="classmeow_1_1Vector3D.html#a49b26941a2b323519ee22fbabdd0ce24" title="access z with non constant reference">zGet</a>();</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a1f11ba476ffb0ed16ef1b8d06954b6f0"> 68</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#a1f11ba476ffb0ed16ef1b8d06954b6f0">matrix</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;T&gt;</a> ret(3, 1);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; 3; i++) {</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; ret(i, 0, <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(i));</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;};</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;} <span class="comment">// meow</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#endif // colors_Color3_Space_H__</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="code" href="namespacemeow.html"> 13</a></span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html"> 21</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space</a> {</div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46"> 23</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a>;</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac"> 24</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae"> 25</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a982a7211fded8d108aee66a536fb8736"> 26</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a982a7211fded8d108aee66a536fb8736">Color3_Space</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; min_bound,</div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; max_bound,</div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; init_value) {</div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a> = min_bound;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a> = max_bound;</div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a> = init_value;</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a8017c0aae500a4a57938ae04576caa83"> 33</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a8017c0aae500a4a57938ae04576caa83">Color3_Space</a>(<a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a> = b.<a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a>;</div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a> = b.<a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1">copyFrom</a>(b);</div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; }</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a3fa85d4369b9db8d8209d244a643b49f"> 39</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Color3__Space.html#a3fa85d4369b9db8d8209d244a643b49f">~Color3_Space</a>() { }</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1"> 40</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T&gt;</a>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1">copyFrom</a>(<a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T&gt;</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a> = b.<a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T2&gt;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ab8be12bacd0e877151189383654029c8"> 45</a></span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T&gt;</a>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#ab8be12bacd0e877151189383654029c8">copyFrom</a>(<a class="code" href="classmeow_1_1Color3__Space.html" title="以三個channel所組成的色彩空間">Color3_Space&lt;T2&gt;</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; 3; i++) {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(i, ratioMapping&lt;double&gt;(b.<a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">min</a>(i),b.<a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f">max</a>(i), b.rgb(i), <a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">min</a>(i),<a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f">max</a>(i)));</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a318eedb2acaba5f3a8c79a651c53e676"> 50</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a318eedb2acaba5f3a8c79a651c53e676">minV</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#ab00eca747ea06269fddd3586dd1bca46">min_</a>; }</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07"> 51</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07">maxV</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a3e006b5c37185c8b0f4d383b6b095dac">max_</a>; }</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a1c58ba0912a91e71dee240fad6291216"> 52</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a1c58ba0912a91e71dee240fad6291216">valV</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>; }</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa7638e03124b2304d4d34b57be4b0028"> 53</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#aa7638e03124b2304d4d34b57be4b0028">valV</a>(<a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> <span class="keyword">const</span>&amp; vv) { <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a> = vv; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(); }</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab"> 54</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html">Vector3D&lt;T&gt;</a> &amp; <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>() { <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>; }</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df"> 55</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">min</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a318eedb2acaba5f3a8c79a651c53e676">minV</a>()(id); }</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f"> 56</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#aa6661a1aaaf985a4b2d68db88ec93d2f">max</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07">maxV</a>()(id); }</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e"> 57</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a1c58ba0912a91e71dee240fad6291216">valV</a>()(id); }</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ae3f57f9651bb80041ce77ec052fdc436"> 58</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Color3__Space.html#ae3f57f9651bb80041ce77ec052fdc436">val</a>(<span class="keywordtype">size_t</span> i, T <span class="keyword">const</span>&amp; c) {</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span> (i == 0) <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(c);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i == 1) <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(c);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i == 2) <a class="code" href="classmeow_1_1Color3__Space.html#aa134d705ea25b1f64db8bef07d1757ae">val_</a>.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>(c);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(i);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#ac2efb0be959fc60f786bdcdc8a1fd8b2"> 64</a></span>&#160; T&amp; <a class="code" href="classmeow_1_1Color3__Space.html#ac2efb0be959fc60f786bdcdc8a1fd8b2">valGet</a>(<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>) {</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span> == 0) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>().<a class="code" href="classmeow_1_1Vector3D.html#a001a44809826f9cd17dbd652c790c455" title="access x with non constant reference">xGet</a>();</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keywordtype">id</span> == 1) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>().<a class="code" href="classmeow_1_1Vector3D.html#ab3603b9ca292877febc1aec42b29b0ae" title="access y with non constant reference">yGet</a>();</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Color3__Space.html#a665fe525c47913fb5bca765446adaaab">valVGet</a>().<a class="code" href="classmeow_1_1Vector3D.html#a49b26941a2b323519ee22fbabdd0ce24" title="access z with non constant reference">zGet</a>();</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="classmeow_1_1Color3__Space.html#a1f11ba476ffb0ed16ef1b8d06954b6f0"> 69</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;T&gt;</a> <a class="code" href="classmeow_1_1Color3__Space.html#a1f11ba476ffb0ed16ef1b8d06954b6f0">matrix</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;T&gt;</a> ret(3, 1);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; 3; i++) {</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; ret(i, 0, <a class="code" href="classmeow_1_1Color3__Space.html#af08839264f6ea6dc50cf6175d26afa6e">val</a>(i));</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;};</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor">#endif // colors_Color3_Space_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -138,7 +139,7 @@ $(document).ready(function(){initNavTree('Color3__Space_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="Color3__Space_8h.html">Color3_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/DisjointSet_8h.html b/doc/html/DisjointSet_8h.html
index 92f931b..979fcc9 100644
--- a/doc/html/DisjointSet_8h.html
+++ b/doc/html/DisjointSet_8h.html
@@ -85,7 +85,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="DisjointSet_8h.html">DisjointSet.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/DisjointSet_8h_source.html b/doc/html/DisjointSet_8h_source.html
index 6deb462..21e872f 100644
--- a/doc/html/DisjointSet_8h_source.html
+++ b/doc/html/DisjointSet_8h_source.html
@@ -137,7 +137,7 @@ $(document).ready(function(){initNavTree('DisjointSet_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="DisjointSet_8h.html">DisjointSet.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePoint_8h.html b/doc/html/FeaturePoint_8h.html
index 8e14f66..45212b8 100644
--- a/doc/html/FeaturePoint_8h.html
+++ b/doc/html/FeaturePoint_8h.html
@@ -88,7 +88,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePoint_8h.html">FeaturePoint.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePoint_8h_source.html b/doc/html/FeaturePoint_8h_source.html
index 0f40226..a1e8f6b 100644
--- a/doc/html/FeaturePoint_8h_source.html
+++ b/doc/html/FeaturePoint_8h_source.html
@@ -136,7 +136,7 @@ $(document).ready(function(){initNavTree('FeaturePoint_8h_source.html','');});
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a9ec56431823d26785924bda1c9e534f9"> 125</a></span>&#160; Description <a class="code" href="classmeow_1_1FeaturePoint.html#a9ec56431823d26785924bda1c9e534f9" title="修改description的第i個Description">description</a>(<span class="keywordtype">size_t</span> i, Description <span class="keyword">const</span>&amp; d) {</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; des_.<a class="code" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8" title="return i -th entry">entry</a>(i, d);</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; des_.<a class="code" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8" title="return i -th entry">entry</a>(i, d);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1FeaturePoint.html#a563bdbbea5b633b86666c7e340affbee" title="回傳description">description</a>(i);</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
@@ -160,15 +160,15 @@ $(document).ready(function(){initNavTree('FeaturePoint_8h_source.html','');});
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1FeaturePoint.html#a563bdbbea5b633b86666c7e340affbee" title="回傳description">description</a>(i);</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a54a0ca59d340d0bcd969609a0682d2d9"> 165</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePoint.html#a54a0ca59d340d0bcd969609a0682d2d9">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00165"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a54a0ca59d340d0bcd969609a0682d2d9"> 165</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePoint.html#a54a0ca59d340d0bcd969609a0682d2d9" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a48908e47535a5528207f8dff2db85ba4"> 169</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePoint.html#a48908e47535a5528207f8dff2db85ba4">read</a> (FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00169"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a48908e47535a5528207f8dff2db85ba4"> 169</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePoint.html#a48908e47535a5528207f8dff2db85ba4" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a> (FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf"> 173</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00173"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf"> 173</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1FeaturePoint.html#a26dab8fef1872435a64fe1cdfba35fd8" title="constructor">FeaturePoint</a>();</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
@@ -176,13 +176,13 @@ $(document).ready(function(){initNavTree('FeaturePoint_8h_source.html','');});
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1FeaturePoint.html#af4eb7b53a35a3011954d6d92e364db19" title="複製">copyFrom</a>(*(<a class="code" href="classmeow_1_1FeaturePoint.html" title="特徵點">FeaturePoint</a>*)b));</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div>
-<div class="line"><a name="l00181"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13"> 181</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">ctype</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00181"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13"> 181</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13" title="用C-style string回傳這個class的type name">ctype</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> ptr;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1"> 186</a></span>&#160; std::string <a class="code" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1">type</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">ctype</a>());</div>
+<div class="line"><a name="l00186"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1"> 186</a></span>&#160; std::string <a class="code" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1" title="用std::string回傳這個class的type name">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13" title="用C-style string回傳這個class的type name">ctype</a>());</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;};</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
@@ -196,7 +196,7 @@ $(document).ready(function(){initNavTree('FeaturePoint_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePoint_8h.html">FeaturePoint.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsDetector_8h.html b/doc/html/FeaturePointsDetector_8h.html
index 810cd79..324cff5 100644
--- a/doc/html/FeaturePointsDetector_8h.html
+++ b/doc/html/FeaturePointsDetector_8h.html
@@ -85,7 +85,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsDetector_8h.html">FeaturePointsDetector.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsDetector_8h_source.html b/doc/html/FeaturePointsDetector_8h_source.html
index 96b6f89..6a89b28 100644
--- a/doc/html/FeaturePointsDetector_8h_source.html
+++ b/doc/html/FeaturePointsDetector_8h_source.html
@@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('FeaturePointsDetector_8h_source.html',
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsDetector_8h.html">FeaturePointsDetector.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsDetector__Harris_8h.html b/doc/html/FeaturePointsDetector__Harris_8h.html
index 55ff1d6..765b6b9 100644
--- a/doc/html/FeaturePointsDetector__Harris_8h.html
+++ b/doc/html/FeaturePointsDetector__Harris_8h.html
@@ -107,7 +107,7 @@ Macros</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsDetector__Harris_8h.html">FeaturePointsDetector_Harris.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsDetector__Harris_8h_source.html b/doc/html/FeaturePointsDetector__Harris_8h_source.html
index c64bb31..dd061b0 100644
--- a/doc/html/FeaturePointsDetector__Harris_8h_source.html
+++ b/doc/html/FeaturePointsDetector__Harris_8h_source.html
@@ -361,7 +361,7 @@ $(document).ready(function(){initNavTree('FeaturePointsDetector__Harris_8h_sourc
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsDetector__Harris_8h.html">FeaturePointsDetector_Harris.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsMatch_8h.html b/doc/html/FeaturePointsMatch_8h.html
index 6adebf7..53c1db7 100644
--- a/doc/html/FeaturePointsMatch_8h.html
+++ b/doc/html/FeaturePointsMatch_8h.html
@@ -94,7 +94,7 @@ Typedefs</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsMatch_8h.html">FeaturePointsMatch.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsMatch_8h_source.html b/doc/html/FeaturePointsMatch_8h_source.html
index bcf89b0..cafbb6f 100644
--- a/doc/html/FeaturePointsMatch_8h_source.html
+++ b/doc/html/FeaturePointsMatch_8h_source.html
@@ -128,7 +128,7 @@ $(document).ready(function(){initNavTree('FeaturePointsMatch_8h_source.html','')
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsMatch_8h.html">FeaturePointsMatch.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsMatch__K__Match_8h.html b/doc/html/FeaturePointsMatch__K__Match_8h.html
index 6fdc038..4454838 100644
--- a/doc/html/FeaturePointsMatch__K__Match_8h.html
+++ b/doc/html/FeaturePointsMatch__K__Match_8h.html
@@ -105,7 +105,7 @@ Macros</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsMatch__K__Match_8h.html">FeaturePointsMatch_K_Match.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/FeaturePointsMatch__K__Match_8h_source.html b/doc/html/FeaturePointsMatch__K__Match_8h_source.html
index 59c7019..d621ec1 100644
--- a/doc/html/FeaturePointsMatch__K__Match_8h_source.html
+++ b/doc/html/FeaturePointsMatch__K__Match_8h_source.html
@@ -216,31 +216,31 @@ $(document).ready(function(){initNavTree('FeaturePointsMatch__K__Match_8h_source
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; }</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
-<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#acbdc25595aeb8280c11543fec230e1a6"> 159</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#acbdc25595aeb8280c11543fec230e1a6">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#acbdc25595aeb8280c11543fec230e1a6"> 159</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#acbdc25595aeb8280c11543fec230e1a6" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="comment">// TODO</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a207813017b7eab06672ec324968e6caa"> 164</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a207813017b7eab06672ec324968e6caa">read</a> (FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a207813017b7eab06672ec324968e6caa"> 164</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a207813017b7eab06672ec324968e6caa" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a> (FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="comment">// TODO</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5"> 169</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00169"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5"> 169</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a6e657c4cb57c418e39ed91b35aae448c">FPMKM</a>();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53"> 173</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* ptr) {</div>
+<div class="line"><a name="l00173"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53"> 173</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53" title="複製, 預設使用operator=">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* ptr) {</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c5ee9a105e6c74bf54e061f5cc04c21">copyFrom</a>(*(<a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a6e657c4cb57c418e39ed91b35aae448c">FPMKM</a>*)ptr));</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71"> 177</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">ctype</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71"> 177</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71" title="用C-style string回傳這個class的type name">ctype</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> ptr;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div>
-<div class="line"><a name="l00182"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a"> 182</a></span>&#160; std::string <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a">type</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">ctype</a>());</div>
+<div class="line"><a name="l00182"></a><span class="lineno"><a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a"> 182</a></span>&#160; std::string <a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a" title="用std::string回傳這個class的type name">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71" title="用C-style string回傳這個class的type name">ctype</a>());</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="preprocessor"># undef FPMKM</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="preprocessor"></span>};</div>
@@ -255,7 +255,7 @@ $(document).ready(function(){initNavTree('FeaturePointsMatch__K__Match_8h_source
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="FeaturePointsMatch__K__Match_8h.html">FeaturePointsMatch_K_Match.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/HSL__Space_8h.html b/doc/html/HSL__Space_8h.html
index 122710f..337b876 100644
--- a/doc/html/HSL__Space_8h.html
+++ b/doc/html/HSL__Space_8h.html
@@ -63,9 +63,9 @@ $(document).ready(function(){initNavTree('HSL__Space_8h.html','');});
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="Color3__Space_8h_source.html">Color3_Space.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="Vectors_8h_source.html">../geo/Vectors.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="RGB__Space_8h_source.html">RGB_Space.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="YUV__Space_8h_source.html">YUV_Space.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="Vectors_8h_source.html">../geo/Vectors.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="math_2utility_8h_source.html">../math/utility.h</a>&quot;</code><br/>
<code>#include &lt;cstdlib&gt;</code><br/>
</div>
@@ -110,7 +110,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="HSL__Space_8h.html">HSL_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/HSL__Space_8h_source.html b/doc/html/HSL__Space_8h_source.html
index b5a0dac..0731371 100644
--- a/doc/html/HSL__Space_8h_source.html
+++ b/doc/html/HSL__Space_8h_source.html
@@ -62,10 +62,10 @@ $(document).ready(function(){initNavTree('HSL__Space_8h_source.html','');});
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define colors_HSL_Space_H__</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Color3__Space_8h.html">Color3_Space.h</a>&quot;</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;../geo/Vectors.h&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="RGB__Space_8h.html">RGB_Space.h</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="YUV__Space_8h.html">YUV_Space.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="RGB__Space_8h.html">RGB_Space.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="YUV__Space_8h.html">YUV_Space.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &quot;../geo/Vectors.h&quot;</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &quot;../math/utility.h&quot;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
@@ -228,7 +228,7 @@ $(document).ready(function(){initNavTree('HSL__Space_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="HSL__Space_8h.html">HSL_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/HSV__Space_8h.html b/doc/html/HSV__Space_8h.html
index db490e1..369a031 100644
--- a/doc/html/HSV__Space_8h.html
+++ b/doc/html/HSV__Space_8h.html
@@ -117,7 +117,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="HSV__Space_8h.html">HSV_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/HSV__Space_8h_source.html b/doc/html/HSV__Space_8h_source.html
index 1ebbe4f..84bf96a 100644
--- a/doc/html/HSV__Space_8h_source.html
+++ b/doc/html/HSV__Space_8h_source.html
@@ -222,7 +222,7 @@ $(document).ready(function(){initNavTree('HSV__Space_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="HSV__Space_8h.html">HSV_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/HashTable_8h.html b/doc/html/HashTable_8h.html
index 3982e4f..13511ef 100644
--- a/doc/html/HashTable_8h.html
+++ b/doc/html/HashTable_8h.html
@@ -84,7 +84,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="HashTable_8h.html">HashTable.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/HashTable_8h_source.html b/doc/html/HashTable_8h_source.html
index c46e075..5d27c67 100644
--- a/doc/html/HashTable_8h_source.html
+++ b/doc/html/HashTable_8h_source.html
@@ -198,16 +198,16 @@ $(document).ready(function(){initNavTree('HashTable_8h_source.html','');});
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">return</span> ret;</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; </div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
<div class="line"><a name="l00198"></a><span class="lineno"><a class="code" href="classmeow_1_1HashTableList.html#a9f9493e2044df374ac9e650303fdf212"> 198</a></span>&#160; <a class="code" href="classmeow_1_1HashTableList.html" title="一個當key相撞時會用list解決的hash_table">HashTableList</a>&amp; <a class="code" href="classmeow_1_1HashTableList.html#a9f9493e2044df374ac9e650303fdf212" title="same as copyFrom(h) ">operator=</a>(<a class="code" href="classmeow_1_1HashTableList.html" title="一個當key相撞時會用list解決的hash_table">HashTableList</a> <span class="keyword">const</span>&amp; h) {</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1HashTableList.html#a3d769d64e448f0bdbe52514e06b73f54" title="copy">copyFrom</a>(h);</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; </div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
<div class="line"><a name="l00203"></a><span class="lineno"><a class="code" href="classmeow_1_1HashTableList.html#a7bef8d0510d33a06507881a872c62156"> 203</a></span>&#160; <a class="code" href="classmeow_1_1HashTableList.html" title="一個當key相撞時會用list解決的hash_table">HashTableList</a>&amp; <a class="code" href="classmeow_1_1HashTableList.html#a7bef8d0510d33a06507881a872c62156" title="same as add(h) ">operator+=</a>(<a class="code" href="classmeow_1_1HashTableList.html" title="一個當key相撞時會用list解決的hash_table">HashTableList</a> <span class="keyword">const</span>&amp; h) {</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="classmeow_1_1HashTableList.html#a6d7a0c3ac05a355cc9e1c60856ebd781" title="加入新的element">add</a>(h);</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; </div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div>
<div class="line"><a name="l00209"></a><span class="lineno"><a class="code" href="classmeow_1_1HashTableList.html#a3c3e1ad9bf9993ded4a6904f07abb920"> 209</a></span>&#160; <a class="code" href="classmeow_1_1HashTableList.html" title="一個當key相撞時會用list解決的hash_table">HashTableList</a>&amp; <a class="code" href="classmeow_1_1HashTableList.html#a3c3e1ad9bf9993ded4a6904f07abb920" title="same as del(h) ">operator-=</a>(<a class="code" href="classmeow_1_1HashTableList.html" title="一個當key相撞時會用list解決的hash_table">HashTableList</a> <span class="keyword">const</span>&amp; h) {</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="classmeow_1_1HashTableList.html#a63cc363a99ee99024a32133cf0331325" title="刪除element">del</a>(h);</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
@@ -224,7 +224,7 @@ $(document).ready(function(){initNavTree('HashTable_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="HashTable_8h.html">HashTable.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/IdentityPoints_8h.html b/doc/html/IdentityPoints_8h.html
index f3e157e..9a551c4 100644
--- a/doc/html/IdentityPoints_8h.html
+++ b/doc/html/IdentityPoints_8h.html
@@ -87,7 +87,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="IdentityPoints_8h.html">IdentityPoints.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/IdentityPoints_8h_source.html b/doc/html/IdentityPoints_8h_source.html
index e93de3f..56a6df9 100644
--- a/doc/html/IdentityPoints_8h_source.html
+++ b/doc/html/IdentityPoints_8h_source.html
@@ -244,7 +244,7 @@ $(document).ready(function(){initNavTree('IdentityPoints_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="IdentityPoints_8h.html">IdentityPoints.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/KD__Tree_8h.html b/doc/html/KD__Tree_8h.html
index 2e6ff9a..4254cd3 100644
--- a/doc/html/KD__Tree_8h.html
+++ b/doc/html/KD__Tree_8h.html
@@ -88,7 +88,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="KD__Tree_8h.html">KD_Tree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/KD__Tree_8h_source.html b/doc/html/KD__Tree_8h_source.html
index 9c80126..bc4754a 100644
--- a/doc/html/KD__Tree_8h_source.html
+++ b/doc/html/KD__Tree_8h_source.html
@@ -79,12 +79,12 @@ $(document).ready(function(){initNavTree('KD__Tree_8h_source.html','');});
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> vector_;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; ssize_t lChild_;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; ssize_t rChild_;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; Node(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> v, ssize_t l, ssize_t r): vector_(v), lChild_(l), rChild_(r){</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; };</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">typedef</span> std::vector&lt;Node&gt; Nodes;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">class </span>Sorter {</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; Nodes <span class="keyword">const</span>* nodes_;</div>
@@ -222,14 +222,14 @@ $(document).ready(function(){initNavTree('KD__Tree_8h_source.html','');});
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00189"></a><span class="lineno"><a class="code" href="classmeow_1_1KD__Tree.html#afc143e90dba569c51b6eb146ba9df7f8"> 189</a></span>&#160; <span class="keyword">typedef</span> <span class="keyword">typename</span> std::vector&lt;Vector&gt; <a class="code" href="classmeow_1_1KD__Tree.html#afc143e90dba569c51b6eb146ba9df7f8" title="Custom Type: Vectors is std::vector&lt;Vector&gt; ">Vectors</a>;</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; </div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
<div class="line"><a name="l00192"></a><span class="lineno"><a class="code" href="classmeow_1_1KD__Tree.html#a782840070cd90370c37d72e8a39765f9"> 192</a></span>&#160; <a class="code" href="classmeow_1_1KD__Tree.html#a782840070cd90370c37d72e8a39765f9" title="constructor, with dimension = 1">KD_Tree</a>(): kNIL_(-1), root_(kNIL_), needRebuild_(false), dimension_(1) {</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; </div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
<div class="line"><a name="l00196"></a><span class="lineno"><a class="code" href="classmeow_1_1KD__Tree.html#aafecfa34e96615249e11e9ba1b85fdc7"> 196</a></span>&#160; <a class="code" href="classmeow_1_1KD__Tree.html#a782840070cd90370c37d72e8a39765f9" title="constructor, with dimension = 1">KD_Tree</a>(<span class="keywordtype">size_t</span> dimension):</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; kNIL_(-1), root_(kNIL_), needRebuild_(false), dimension_(dimension) {</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; </div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;</div>
<div class="line"><a name="l00201"></a><span class="lineno"><a class="code" href="classmeow_1_1KD__Tree.html#a6ffacb6d4020cfb1c127b68f3f427ee4"> 201</a></span>&#160; <a class="code" href="classmeow_1_1KD__Tree.html#a6ffacb6d4020cfb1c127b68f3f427ee4" title="destructor">~KD_Tree</a>() {</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; }</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div>
@@ -315,7 +315,7 @@ $(document).ready(function(){initNavTree('KD__Tree_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="KD__Tree_8h.html">KD_Tree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/LinearTransformation_8h.html b/doc/html/LinearTransformation_8h.html
index a840094..2837d34 100644
--- a/doc/html/LinearTransformation_8h.html
+++ b/doc/html/LinearTransformation_8h.html
@@ -85,7 +85,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="LinearTransformation_8h.html">LinearTransformation.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/LinearTransformation_8h_source.html b/doc/html/LinearTransformation_8h_source.html
index d1df9ff..a416329 100644
--- a/doc/html/LinearTransformation_8h_source.html
+++ b/doc/html/LinearTransformation_8h_source.html
@@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('LinearTransformation_8h_source.html','
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="classmeow_1_1LinearTransformation.html#a573c034e179570f7a1c41f0c1de54c87"> 67</a></span>&#160; <a class="code" href="classmeow_1_1LinearTransformation.html" title="A base class for implementing kinds of linear transformations.">LinearTransformation</a>&amp; <a class="code" href="classmeow_1_1LinearTransformation.html#a573c034e179570f7a1c41f0c1de54c87" title="Reference settings, matrix from another LinearTransformation.">referenceFrom</a>(<a class="code" href="classmeow_1_1LinearTransformation.html" title="A base class for implementing kinds of linear transformations.">LinearTransformation</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="Ceference from the specified one.">Transformation&lt;Scalar&gt;::referenceFrom</a>(b);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="reference from the specified one">Transformation&lt;Scalar&gt;::referenceFrom</a>(b);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec" title="reference">referenceFrom</a>(b.matrix_);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div>
@@ -128,7 +128,7 @@ $(document).ready(function(){initNavTree('LinearTransformation_8h_source.html','
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="LinearTransformation_8h.html">LinearTransformation.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/LinearTransformations_8h.html b/doc/html/LinearTransformations_8h.html
index df80fd6..133c5b2 100644
--- a/doc/html/LinearTransformations_8h.html
+++ b/doc/html/LinearTransformations_8h.html
@@ -88,7 +88,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="LinearTransformations_8h.html">LinearTransformations.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/LinearTransformations_8h_source.html b/doc/html/LinearTransformations_8h_source.html
index f40b5e0..260b896 100644
--- a/doc/html/LinearTransformations_8h_source.html
+++ b/doc/html/LinearTransformations_8h_source.html
@@ -99,15 +99,15 @@ $(document).ready(function(){initNavTree('LinearTransformations_8h_source.html',
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">double</span> sn(sin(angle / 2.0));</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> tmp(3, 3, Scalar(0.0));</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 0, 2*(<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(axis.x())-1.0)*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 1);</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(1, 1, 2*(<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(axis.y())-1.0)*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 1);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(2, 2, 2*(<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(axis.z())-1.0)*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 1);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 1, 2*axis.x()*axis.y()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) - 2*axis.z()*cs*sn);</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(1, 0, 2*axis.y()*axis.x()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 2*axis.z()*cs*sn);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 2, 2*axis.x()*axis.z()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 2*axis.y()*cs*sn);</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(2, 0, 2*axis.z()*axis.x()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) - 2*axis.y()*cs*sn);</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(1, 2, 2*axis.y()*axis.z()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) - 2*axis.x()*cs*sn);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(2, 1, 2*axis.z()*axis.y()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 2*axis.x()*cs*sn);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 0, 2*(<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(axis.x())-1.0)*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 1);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(1, 1, 2*(<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(axis.y())-1.0)*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 1);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(2, 2, 2*(<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(axis.z())-1.0)*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 1);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 1, 2*axis.x()*axis.y()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) - 2*axis.z()*cs*sn);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(1, 0, 2*axis.y()*axis.x()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 2*axis.z()*cs*sn);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 2, 2*axis.x()*axis.z()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 2*axis.y()*cs*sn);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(2, 0, 2*axis.z()*axis.x()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) - 2*axis.y()*cs*sn);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(1, 2, 2*axis.y()*axis.z()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) - 2*axis.x()*cs*sn);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(2, 1, 2*axis.z()*axis.y()*<a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(sn) + 2*axis.x()*cs*sn);</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; ((<a class="code" href="classmeow_1_1Rotation3D.html" title="Rotation a point/vector alone an axis with given angle in 3D world.">Rotation3D</a>*)<span class="keyword">this</span>)-&gt;matrix(tmp);</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">self</span>()-&gt;need_ = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div>
@@ -193,16 +193,16 @@ $(document).ready(function(){initNavTree('LinearTransformations_8h_source.html',
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">if</span> (self-&gt;need_) calcMatrix();</div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> mid(3u, 3u, Scalar(0.0));</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">if</span> (i == 0) {</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(1, 2, Scalar(-1.0));</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(2, 1, Scalar( 1.0));</div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(1, 2, Scalar(-1.0));</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(2, 1, Scalar( 1.0));</div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(i == 1) {</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 2, Scalar( 1.0));</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(2, 0, Scalar(-1.0));</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 2, Scalar( 1.0));</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(2, 0, Scalar(-1.0));</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; }</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 1, Scalar(-1.0));</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(1, 0, Scalar( 1.0));</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 1, Scalar(-1.0));</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(1, 0, Scalar( 1.0));</div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; }</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">return</span> mid * <a class="code" href="classmeow_1_1LinearTransformation.html#aeab1cf88fc67a1857504bd2fb18519f5" title="Return the matrix form of this transformation.">LinearTransformation&lt;Scalar&gt;::matrix</a>() * x;</div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; }</div>
@@ -221,16 +221,16 @@ $(document).ready(function(){initNavTree('LinearTransformations_8h_source.html',
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (self-&gt;need_) calcMatrix();</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> mid(3u, 3u, Scalar(0.0));</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">if</span> (i == 0) {</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(1, 2, Scalar(-1.0));</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(2, 1, Scalar( 1.0));</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(1, 2, Scalar(-1.0));</div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(2, 1, Scalar( 1.0));</div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; }</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(i == 1) {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 2, Scalar( 1.0));</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(2, 0, Scalar(-1.0));</div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 2, Scalar( 1.0));</div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(2, 0, Scalar(-1.0));</div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; }</div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 1, Scalar(-1.0));</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(1, 0, Scalar( 1.0));</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 1, Scalar(-1.0));</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; mid.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(1, 0, Scalar( 1.0));</div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; }</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">return</span> mid.<a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0" title="return itself&#39;s transpose matrix">transpose</a>() * <a class="code" href="classmeow_1_1Rotation3D.html#a513851c5d53274b76fd9511ba1aea484" title="Return the inverse matrix.">matrixInv</a>() * x;</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; }</div>
@@ -255,7 +255,7 @@ $(document).ready(function(){initNavTree('LinearTransformations_8h_source.html',
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="LinearTransformations_8h.html">LinearTransformations.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Matrix_8h.html b/doc/html/Matrix_8h.html
index 181b78e..f3445a5 100644
--- a/doc/html/Matrix_8h.html
+++ b/doc/html/Matrix_8h.html
@@ -61,8 +61,7 @@ $(document).ready(function(){initNavTree('Matrix_8h.html','');});
<div class="title">Matrix.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
-<div class="textblock"><code>#include &quot;<a class="el" href="math_2utility_8h_source.html">utility.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="Self_8h_source.html">../Self.h</a>&quot;</code><br/>
+<div class="textblock"><code>#include &quot;<a class="el" href="Self_8h_source.html">../Self.h</a>&quot;</code><br/>
<code>#include &lt;vector&gt;</code><br/>
<code>#include &lt;algorithm&gt;</code><br/>
<code>#include &lt;cstdlib&gt;</code><br/>
@@ -87,7 +86,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Matrix_8h.html">Matrix.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Matrix_8h_source.html b/doc/html/Matrix_8h_source.html
index 2a12c80..2e8ea95 100644
--- a/doc/html/Matrix_8h_source.html
+++ b/doc/html/Matrix_8h_source.html
@@ -61,343 +61,354 @@ $(document).ready(function(){initNavTree('Matrix_8h_source.html','');});
<a href="Matrix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#ifndef math_Matrix_H__</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define math_Matrix_H__</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="math_2utility_8h.html">utility.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;../Self.h&quot;</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;../Self.h&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="keyword">namespace </span>meow {</div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Entry&gt;</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html"> 20</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> {</div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">private</span>:</div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; <span class="keyword">struct </span>Myself {</div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <span class="keywordtype">size_t</span> rows_;</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="keywordtype">size_t</span> cols_;</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; std::vector&lt;Entry&gt; entries_;</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; Myself(): rows_(0), cols_(0), entries_(0) {</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; }</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; ~Myself() {</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; }</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordtype">size_t</span> index(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">return</span> r * cols_ + c;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; Myself&amp; <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(Myself <span class="keyword">const</span>&amp; m) {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; rows_ = m. rows_;</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; cols_ = m. cols_;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; entries_ = m.entries_;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Entry&gt;</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html"> 18</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> {</div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e"> 20</a></span>&#160; <span class="keyword">typedef</span> std::vector&lt;Entry&gt;::reference <a class="code" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">EntryRef</a> ;</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981"> 21</a></span>&#160; <span class="keyword">typedef</span> std::vector&lt;Entry&gt;::const_reference <a class="code" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <span class="keyword">struct </span>Myself {</div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="keywordtype">size_t</span> rows_;</div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <span class="keywordtype">size_t</span> cols_;</div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; std::vector&lt;Entry&gt; entries_;</div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; Myself():</div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; rows_(0), cols_(0), entries_(0) {</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; }</div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; Myself(Myself <span class="keyword">const</span>&amp; b):</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; rows_(b.rows_), cols_(b.cols_), entries_(b.entries_) {</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; }</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; Myself(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e):</div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; rows_(r), cols_(c), <a class="code" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12" title="Change the entries from rFirst x cFirst to rLast x cLast.">entries</a>(r * c, e) {</div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; }</div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; ~Myself() {</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; }</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; };</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;Myself&gt;</a> <span class="keyword">const</span> <span class="keyword">self</span>;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29"> 48</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>(): self(true) { }</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5"> 57</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5" title="constructor">Matrix</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m): self(false) { <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(m.self); }</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74"> 68</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74" title="constructor">Matrix</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e): self(true) { <a class="code" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120" title="reset the size of the matrix to r x c with entry all be e ">reset</a>(r, c, e); }</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e"> 71</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e" title="destructor">~Matrix</a>() { }</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413"> 81</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m) {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(m.self);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec"> 94</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec" title="reference">referenceFrom</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m) {</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec" title="reference">referenceFrom</a>(m.self);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120"> 100</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120" title="reset the size of the matrix to r x c with entry all be e ">reset</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">self</span>()-&gt;rows_ = r;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">self</span>()-&gt;cols_ = c;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">self</span>()-&gt;entries_.clear();</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">self</span>()-&gt;entries_.resize(r * c, e);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405"> 108</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405" title="Return whether it is a valid matrix.">valid</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() &gt; 0 &amp;&amp; <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() &gt; 0);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178"> 113</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;rows_;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df"> 118</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;cols_;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c"> 123</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c" title="Return number of rows times number of cols.">size</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() * <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325"> 136</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325" title="resize the matrix such that number of rows become r.">rows</a>(<span class="keywordtype">size_t</span> r, Entry <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (r != <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>()) {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keyword">self</span>()-&gt;entries_.resize(r * <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), e);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">self</span>()-&gt;rows_ = r;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>();</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a30d16679bb6843c5e35aae81738f3306"> 153</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a30d16679bb6843c5e35aae81738f3306" title="resize the matrix such that number of cols become c ">cols</a>(<span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">if</span> (c != <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()) {</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;Myself&gt;</a> <span class="keyword">const</span> old(<span class="keyword">false</span>);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; old().<a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(<span class="keyword">self</span>);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">self</span>()-&gt;entries_.resize(<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() * c);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">self</span>()-&gt;cols_ = c;</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); i &lt; I; i++) {</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordtype">size_t</span> j, J1 = std::min(old-&gt;cols_, <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()), J2 = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">for</span> (j = 0; j &lt; J1; j++)</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keyword">self</span>()-&gt;entries_[<span class="keyword">self</span>-&gt;index(i, j)] = old-&gt;entries_[old-&gt;index(i, j)];</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">for</span> (j = J1; j &lt; J2; j++)</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">self</span>()-&gt;entries_[<span class="keyword">self</span>-&gt;index(i, j)] = e;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; }</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605"> 180</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605" title="resize">size</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(c, e);</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(r, e);</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() * <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b"> 187</a></span>&#160; Entry <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;entries_[<span class="keyword">self</span>-&gt;index(r, c)];</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
-<div class="line"><a name="l00192"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f"> 192</a></span>&#160; Entry <a class="code" href="classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f" title="Change the entry at r x c.">entry</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keyword">self</span>()-&gt;entries_[self-&gt;index(r, c)] = e;</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c);</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
-<div class="line"><a name="l00207"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12"> 207</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12" title="Change the entries from rFirst x cFirst to rLast x cLast.">entries</a>(ssize_t rFirst, ssize_t rLast,</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; ssize_t cFirst, ssize_t cLast,</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; Entry <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">for</span> (ssize_t r = rFirst; r &lt;= rLast; r++) {</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">for</span> (ssize_t c = cFirst; c &lt;=cFirst; c++) {</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, e);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; }</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8"> 228</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(<span class="keywordtype">size_t</span> rFirst, <span class="keywordtype">size_t</span> rLast,</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordtype">size_t</span> cFirst, <span class="keywordtype">size_t</span> cLast)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">if</span> (rFirst &gt; rLast || cFirst &gt; cLast) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">if</span> (rFirst == 0 || cFirst == 0) {</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c" title="Return number of rows times number of cols.">size</a>(rLast + 1, cLast + 1, Entry(0));</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; }</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(rLast - rFirst + 1, cLast - cFirst + 1, <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(rFirst, cFirst));</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = rFirst; r &lt;= rLast; r++)</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = cFirst; c &lt;= cLast; c++)</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r - rFirst, c - cFirst, <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c));</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; }</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c"> 244</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c" title="Return the r -th row.">row</a>(<span class="keywordtype">size_t</span> r)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(r, r, 0, <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() - 1);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; }</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2"> 249</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2" title="Return the c -th column.">col</a>(<span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(0, <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() - 1, c, c);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; }</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div>
-<div class="line"><a name="l00254"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc"> 254</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc" title="return +(*this)">positive</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div>
-<div class="line"><a name="l00259"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274"> 259</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274" title="return -(*this)">negative</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, -ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c));</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; }</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div>
-<div class="line"><a name="l00271"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6"> 271</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6" title="return (*this) + m.">add</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() || <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c) + m.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c));</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c"> 284</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c" title="return (*this) - m.">sub</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() || <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c) - m.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c));</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; }</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div>
-<div class="line"><a name="l00297"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd"> 297</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>()) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), Entry(0));</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k = 0, K = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); k &lt; K; k++)</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, ret.entry(r, c) + <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, k) * m.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(k, c));</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; }</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div>
-<div class="line"><a name="l00308"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab"> 308</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab" title="return (*this) times s. s is a scalar">mul</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c) * s);</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; }</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div>
-<div class="line"><a name="l00317"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce"> 317</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce" title="return (*this) / s. s is a scalar">div</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c) / s);</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; }</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f"> 326</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f" title="Return a identity matrix with size equal to itself.">identity</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c" title="Let itself be an identity matrix.">identitied</a>();</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; }</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div>
-<div class="line"><a name="l00337"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c"> 337</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c" title="Let itself be an identity matrix.">identitied</a>() {</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, (r == c ? Entry(1) : Entry(0)));</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordtype">size_t</span> index(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">return</span> r * cols_ + c;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; }</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; };</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;Myself&gt;</a> <span class="keyword">const</span> <span class="keyword">self</span>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29"> 53</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>(): self() { }</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5"> 62</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5" title="constructor">Matrix</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m): self(m.self, COPY_FROM) {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74"> 74</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74" title="constructor">Matrix</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e): self(Myself(r, c, e)) {</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e"> 78</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e" title="destructor">~Matrix</a>() { }</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413"> 88</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m) {</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(m.self);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec"> 101</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec" title="reference">referenceFrom</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m) {</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec" title="reference">referenceFrom</a>(m.self);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; }</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120"> 107</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120" title="reset the size of the matrix to r x c with entry all be e ">reset</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">self</span>()-&gt;rows_ = r;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keyword">self</span>()-&gt;cols_ = c;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">self</span>()-&gt;entries_.clear();</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keyword">self</span>()-&gt;entries_.resize(r * c, e);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405"> 115</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405" title="Return whether it is a valid matrix.">valid</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() &gt; 0 &amp;&amp; <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() &gt; 0);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178"> 120</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;rows_;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df"> 125</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;cols_;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c"> 130</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c" title="Return number of rows times number of cols.">size</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() * <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325"> 143</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325" title="resize the matrix such that number of rows become r.">rows</a>(<span class="keywordtype">size_t</span> r, Entry <span class="keyword">const</span>&amp; e) {</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">if</span> (r != <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>()) {</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">self</span>()-&gt;entries_.resize(r * <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), e);</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">self</span>()-&gt;rows_ = r;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>();</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a30d16679bb6843c5e35aae81738f3306"> 160</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#a30d16679bb6843c5e35aae81738f3306" title="resize the matrix such that number of cols become c ">cols</a>(<span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span> (c != <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()) {</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;Myself&gt;</a> <span class="keyword">const</span> old(<span class="keyword">false</span>);</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; old().<a class="code" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(<span class="keyword">self</span>);</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">self</span>()-&gt;entries_.resize(<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() * c);</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">self</span>()-&gt;cols_ = c;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); i &lt; I; i++) {</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordtype">size_t</span> j, J1 = std::min(old-&gt;cols_, <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()), J2 = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">for</span> (j = 0; j &lt; J1; j++)</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">self</span>()-&gt;entries_[<span class="keyword">self</span>-&gt;index(i, j)] = old-&gt;entries_[old-&gt;index(i, j)];</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">for</span> (j = J1; j &lt; J2; j++)</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">self</span>()-&gt;entries_[<span class="keyword">self</span>-&gt;index(i, j)] = e;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605"> 187</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605" title="resize">size</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(c, e);</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(r, e);</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() * <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>();</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4"> 194</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;entries_[<span class="keyword">self</span>-&gt;index(r, c)];</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a73dd7adb618b48aaabfa4d21ba08a33a"> 199</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="code" href="classmeow_1_1Matrix.html#a73dd7adb618b48aaabfa4d21ba08a33a" title="Change the entry at r x c.">entry</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keyword">self</span>()-&gt;entries_[self-&gt;index(r, c)] = e;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c);</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; }</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; </div>
+<div class="line"><a name="l00205"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b"> 205</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">EntryRef</a> <a class="code" href="classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b" title="Get the entry at r x c.">entryGet</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c) {</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;entries_[self-&gt;index(r, c)];</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12"> 219</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12" title="Change the entries from rFirst x cFirst to rLast x cLast.">entries</a>(ssize_t rFirst, ssize_t rLast,</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; ssize_t cFirst, ssize_t cLast,</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; Entry <span class="keyword">const</span>&amp; e) {</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">for</span> (ssize_t r = rFirst; r &lt;= rLast; r++) {</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">for</span> (ssize_t c = cFirst; c &lt;=cFirst; c++) {</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, e);</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; }</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8"> 240</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(<span class="keywordtype">size_t</span> rFirst, <span class="keywordtype">size_t</span> rLast,</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordtype">size_t</span> cFirst, <span class="keywordtype">size_t</span> cLast)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">if</span> (rFirst &gt; rLast || cFirst &gt; cLast) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">if</span> (rFirst == 0 || cFirst == 0) {</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c" title="Return number of rows times number of cols.">size</a>(rLast + 1, cLast + 1, Entry(0));</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(rLast - rFirst + 1, cLast - cFirst + 1, <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(rFirst, cFirst));</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = rFirst; r &lt;= rLast; r++)</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = cFirst; c &lt;= cLast; c++)</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r - rFirst, c - cFirst, <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c));</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; }</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div>
+<div class="line"><a name="l00256"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c"> 256</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c" title="Return the r -th row.">row</a>(<span class="keywordtype">size_t</span> r)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(r, r, 0, <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() - 1);</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; }</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;</div>
+<div class="line"><a name="l00261"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2"> 261</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2" title="Return the c -th column.">col</a>(<span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(0, <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() - 1, c, c);</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div>
+<div class="line"><a name="l00266"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc"> 266</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc" title="return +(*this)">positive</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; }</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;</div>
+<div class="line"><a name="l00271"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274"> 271</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274" title="return -(*this)">negative</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, -ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c));</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; }</div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;</div>
+<div class="line"><a name="l00283"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6"> 283</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6" title="return (*this) + m.">add</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() || <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c) + m.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c));</div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; }</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;</div>
+<div class="line"><a name="l00296"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c"> 296</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c" title="return (*this) - m.">sub</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() || <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>()) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c) - m.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c));</div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd"> 309</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() != m.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>()) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29" title="constructor">Matrix</a>();</div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), Entry(0));</div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = m.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k = 0, K = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); k &lt; K; k++)</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, ret.entry(r, c) + <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, k) * m.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(k, c));</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;</div>
+<div class="line"><a name="l00320"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab"> 320</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab" title="return (*this) times s. s is a scalar">mul</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c) * s);</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div>
+<div class="line"><a name="l00329"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce"> 329</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce" title="return (*this) / s. s is a scalar">div</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c) / s);</div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; }</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;</div>
+<div class="line"><a name="l00338"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f"> 338</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f" title="Return a identity matrix with size equal to itself.">identity</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c" title="Let itself be an identity matrix.">identitied</a>();</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> ret;</div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; }</div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div>
-<div class="line"><a name="l00349"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd"> 349</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd" title="Return a matrix which is an inverse matrix of (*this)">inverse</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() != <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() || <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() == 0) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Entry&gt;</a>();</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> tmp(<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() * 2, Entry(0));</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++) {</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c));</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c + <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), (r == c ? Entry(1) : Entry(0)));</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; }</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; }</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016" title="triangluar itself">triangulared</a>();</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">for</span> (ssize_t r = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() - 1; r &gt;= 0; r--) {</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">if</span> (tmp(r, r) == Entry(0)) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Entry&gt;</a>();</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">for</span> (ssize_t r2 = r - 1; r2 &gt;= 0; r2--) {</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; Entry rat(-tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, r) / tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, r));</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = r, C = tmp.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, c, tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, c) + rat * tmp(r, c));</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; }</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; }</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; Entry rat(tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, r));</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), C = tmp.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c - <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), tmp.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c) / rat);</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; }</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; }</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c" title="Return number of rows times number of cols.">size</a>(<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), Entry(0));</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">return</span> tmp;</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; }</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; </div>
-<div class="line"><a name="l00377"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170"> 377</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170" title="let itself become itself&#39;s inverse matrix">inversed</a>() {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd" title="Return a matrix which is an inverse matrix of (*this)">inverse</a>());</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; }</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;</div>
-<div class="line"><a name="l00383"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0"> 383</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0" title="return itself&#39;s transpose matrix">transpose</a> ()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), Entry(0));</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); r &lt; R; r++)</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); c &lt; C; c++)</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(c, r));</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; }</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; </div>
-<div class="line"><a name="l00392"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304"> 392</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304" title="Let itself become itself&#39;s transpose matrix.">transposed</a>() {</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0" title="return itself&#39;s transpose matrix">transpose</a>());</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; }</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;</div>
-<div class="line"><a name="l00398"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56"> 398</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56" title="return a matrix which is the triangular form of (*this)">triangular</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Entry&gt;</a> ret(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016" title="triangluar itself">triangulared</a>();</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; }</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; </div>
-<div class="line"><a name="l00405"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016"> 405</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016" title="triangluar itself">triangulared</a>() {</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, c = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); r &lt; R &amp;&amp; c &lt; C; r++) {</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; ssize_t maxR;</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">for</span> ( ; c &lt; C; c++) {</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; maxR = -1;</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r2 = r; r2 &lt; R; r2++)</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keywordflow">if</span> (maxR == -1 || <a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0" title="就只是個取絕對值">tAbs</a>(<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, c)) &gt; <a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0" title="就只是個取絕對值">tAbs</a>(<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(maxR, c)))</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; maxR = r2;</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(maxR, c) != Entry(0)) <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; }</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">if</span> (c &gt;= C) <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">if</span> (maxR != (ssize_t)r) {</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c2 = c; c2 &lt; C; c2++)</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; std::swap(<span class="keyword">self</span>()-&gt;entries_[self-&gt;index( r, c2)],</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keyword">self</span>()-&gt;entries_[self-&gt;index(maxR, c2)]);</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; }</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r2 = r + 1; r2 &lt; R; r2++) {</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; Entry rati = -<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, c) / <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c);</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, c, Entry(0));</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c2 = c + 1; c2 &lt; C; c2++)</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, c2, <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r2, c2) + <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c2) * rati);</div>
+<div class="line"><a name="l00349"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c"> 349</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c" title="Let itself be an identity matrix.">identitied</a>() {</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, (r == c ? Entry(1) : Entry(0)));</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; }</div>
+<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div>
+<div class="line"><a name="l00361"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd"> 361</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd" title="Return a matrix which is an inverse matrix of (*this)">inverse</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() != <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() || <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() == 0) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Entry&gt;</a>();</div>
+<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> tmp(<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>() * 2, Entry(0));</div>
+<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); r &lt; R; r++) {</div>
+<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
+<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c));</div>
+<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c + <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), (r == c ? Entry(1) : Entry(0)));</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; }</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; }</div>
+<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016" title="triangluar itself">triangulared</a>();</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">for</span> (ssize_t r = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>() - 1; r &gt;= 0; r--) {</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">if</span> (tmp(r, r) == Entry(0)) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Entry&gt;</a>();</div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">for</span> (ssize_t r2 = r - 1; r2 &gt;= 0; r2--) {</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; Entry rat(-tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, r) / tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, r));</div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = r, C = tmp.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
+<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, c, tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, c) + rat * tmp(r, c));</div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; }</div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; Entry rat(tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, r));</div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), C = tmp.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c - <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), tmp.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c) / rat);</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; }</div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; tmp.<a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c" title="Return number of rows times number of cols.">size</a>(<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), Entry(0));</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">return</span> tmp;</div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; }</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div>
+<div class="line"><a name="l00389"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170"> 389</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170" title="let itself become itself&#39;s inverse matrix">inversed</a>() {</div>
+<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd" title="Return a matrix which is an inverse matrix of (*this)">inverse</a>());</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; }</div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div>
+<div class="line"><a name="l00395"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0"> 395</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0" title="return itself&#39;s transpose matrix">transpose</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> ret(<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(), <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), Entry(0));</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); r &lt; R; r++)</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(); c &lt; C; c++)</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(c, r));</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; }</div>
+<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div>
+<div class="line"><a name="l00404"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304"> 404</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304" title="Let itself become itself&#39;s transpose matrix.">transposed</a>() {</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0" title="return itself&#39;s transpose matrix">transpose</a>());</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; }</div>
+<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;</div>
+<div class="line"><a name="l00410"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56"> 410</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56" title="return a matrix which is the triangular form of (*this)">triangular</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Entry&gt;</a> ret(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; ret.<a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016" title="triangluar itself">triangulared</a>();</div>
+<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; }</div>
+<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;</div>
+<div class="line"><a name="l00417"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016"> 417</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016" title="triangluar itself">triangulared</a>() {</div>
+<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r = 0, c = 0, R = <a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(), C = <a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); r &lt; R &amp;&amp; c &lt; C; r++) {</div>
+<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; ssize_t maxR;</div>
+<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">for</span> ( ; c &lt; C; c++) {</div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; maxR = -1;</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r2 = r; r2 &lt; R; r2++)</div>
+<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">if</span> (maxR == -1 || <a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0" title="就只是個取絕對值">tAbs</a>(<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, c)) &gt; <a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0" title="就只是個取絕對值">tAbs</a>(<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(maxR, c)))</div>
+<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; maxR = r2;</div>
+<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(maxR, c) != Entry(0)) <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; }</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; }</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; }</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div>
-<div class="line"><a name="l00432"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602"> 432</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602" title="same as copyFrom ">operator=</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m) {</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(m);</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; </div>
-<div class="line"><a name="l00437"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147"> 437</a></span>&#160; Entry <a class="code" href="classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147" title="same as entry(r,c) ">operator()</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c);</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; }</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; </div>
-<div class="line"><a name="l00442"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a1dc03cd2475a4c5f34afbe0cb498e472"> 442</a></span>&#160; Entry <a class="code" href="classmeow_1_1Matrix.html#a1dc03cd2475a4c5f34afbe0cb498e472" title="same as entry(r,c,e) ">operator()</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(r, c, e);</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; }</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; </div>
-<div class="line"><a name="l00447"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84"> 447</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84" title="same as positive() ">operator+</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc" title="return +(*this)">positive</a>();</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; </div>
-<div class="line"><a name="l00452"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1"> 452</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1" title="same as negative() ">operator-</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274" title="return -(*this)">negative</a>();</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; }</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; </div>
-<div class="line"><a name="l00457"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5"> 457</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5" title="same as add(m) ">operator+</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6" title="return (*this) + m.">add</a>(m);</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; }</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; </div>
-<div class="line"><a name="l00462"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5"> 462</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5" title="same as sub(m) ">operator-</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c" title="return (*this) - m.">sub</a>(m);</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; }</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; </div>
-<div class="line"><a name="l00467"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2"> 467</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2" title="same as mul(m) ">operator*</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(m);</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; }</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; </div>
-<div class="line"><a name="l00472"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341"> 472</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341" title="same as mul(m) ">operator*</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(s);</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; }</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; </div>
-<div class="line"><a name="l00477"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a"> 477</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a" title="same as div(s) ">operator/</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce" title="return (*this) / s. s is a scalar">div</a>(s);</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; }</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;};</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;}</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;<span class="preprocessor">#endif // math_Matrix_H__</span></div>
+<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">if</span> (c &gt;= C) <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">if</span> (maxR != (ssize_t)r) {</div>
+<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c2 = c; c2 &lt; C; c2++)</div>
+<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; std::swap(<span class="keyword">self</span>()-&gt;entries_[self-&gt;index( r, c2)],</div>
+<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keyword">self</span>()-&gt;entries_[self-&gt;index(maxR, c2)]);</div>
+<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; }</div>
+<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> r2 = r + 1; r2 &lt; R; r2++) {</div>
+<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; Entry rati = -<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, c) / <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c);</div>
+<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, c, Entry(0));</div>
+<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c2 = c + 1; c2 &lt; C; c2++)</div>
+<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, c2, <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r2, c2) + <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c2) * rati);</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; }</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; }</div>
+<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;</div>
+<div class="line"><a name="l00444"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602"> 444</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&amp; <a class="code" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602" title="same as copyFrom ">operator=</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m) {</div>
+<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(m);</div>
+<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div>
+<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;</div>
+<div class="line"><a name="l00449"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32"> 449</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="code" href="classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32" title="same as entry(r,c) ">operator()</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c);</div>
+<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; }</div>
+<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;</div>
+<div class="line"><a name="l00454"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a162d35e1ce93b7777c975efcdaa46992"> 454</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="code" href="classmeow_1_1Matrix.html#a162d35e1ce93b7777c975efcdaa46992" title="same as entry(r,c,e) ">operator()</a>(<span class="keywordtype">size_t</span> r, <span class="keywordtype">size_t</span> c, Entry <span class="keyword">const</span>&amp; e) {</div>
+<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(r, c, e);</div>
+<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; }</div>
+<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;</div>
+<div class="line"><a name="l00459"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84"> 459</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84" title="same as positive() ">operator+</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc" title="return +(*this)">positive</a>();</div>
+<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; }</div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;</div>
+<div class="line"><a name="l00464"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1"> 464</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1" title="same as negative() ">operator-</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274" title="return -(*this)">negative</a>();</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; }</div>
+<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;</div>
+<div class="line"><a name="l00469"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5"> 469</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5" title="same as add(m) ">operator+</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6" title="return (*this) + m.">add</a>(m);</div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; }</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div>
+<div class="line"><a name="l00474"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5"> 474</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5" title="same as sub(m) ">operator-</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c" title="return (*this) - m.">sub</a>(m);</div>
+<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; }</div>
+<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;</div>
+<div class="line"><a name="l00479"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2"> 479</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2" title="same as mul(m) ">operator*</a>(<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <span class="keyword">const</span>&amp; m)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(m);</div>
+<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; }</div>
+<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;</div>
+<div class="line"><a name="l00484"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341"> 484</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341" title="same as mul(m) ">operator*</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(s);</div>
+<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; }</div>
+<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div>
+<div class="line"><a name="l00489"></a><span class="lineno"><a class="code" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a"> 489</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> <a class="code" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a" title="same as div(s) ">operator/</a>(Entry <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce" title="return (*this) / s. s is a scalar">div</a>(s);</div>
+<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; }</div>
+<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;};</div>
+<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div>
+<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;</div>
+<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;<span class="preprocessor">#endif // math_Matrix_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -405,7 +416,7 @@ $(document).ready(function(){initNavTree('Matrix_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Matrix_8h.html">Matrix.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/MergeableHeap_8h.html b/doc/html/MergeableHeap_8h.html
index bc13fa7..40461ff 100644
--- a/doc/html/MergeableHeap_8h.html
+++ b/doc/html/MergeableHeap_8h.html
@@ -84,7 +84,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="MergeableHeap_8h.html">MergeableHeap.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/MergeableHeap_8h_source.html b/doc/html/MergeableHeap_8h_source.html
index d397f82..5e8c21b 100644
--- a/doc/html/MergeableHeap_8h_source.html
+++ b/doc/html/MergeableHeap_8h_source.html
@@ -184,7 +184,7 @@ $(document).ready(function(){initNavTree('MergeableHeap_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="MergeableHeap_8h.html">MergeableHeap.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjArray_8h.html b/doc/html/ObjArray_8h.html
index e2f7e26..6b1aad5 100644
--- a/doc/html/ObjArray_8h.html
+++ b/doc/html/ObjArray_8h.html
@@ -89,7 +89,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjArray_8h.html">ObjArray.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjArray_8h_source.html b/doc/html/ObjArray_8h_source.html
index f0c7b05..2b1ad8f 100644
--- a/doc/html/ObjArray_8h_source.html
+++ b/doc/html/ObjArray_8h_source.html
@@ -92,19 +92,19 @@ $(document).ready(function(){initNavTree('ObjArray_8h_source.html','');});
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#adf6b1b267475a6a25a03317943e4a3cf"> 38</a></span>&#160; <a class="code" href="classmeow_1_1ObjArray.html#adf6b1b267475a6a25a03317943e4a3cf">ObjArray</a>(): self(true) {</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a277d2ef80a4a62815253e57a91b3ed6f"> 41</a></span>&#160; <a class="code" href="classmeow_1_1ObjArray.html#a277d2ef80a4a62815253e57a91b3ed6f">ObjArray</a>(<a class="code" href="classmeow_1_1ObjArray.html" title="純粹把 std::vector 包起來, 變成繼承自 ObjBase">ObjArray</a> <span class="keyword">const</span>&amp; a): self(false) {</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1ObjArray.html#a8886e87d000181823e3532791e6a8288">copyFrom</a>(a.self);</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a5a9fa3cf06aab931c3248be58c3f1c14"> 45</a></span>&#160; <a class="code" href="classmeow_1_1ObjArray.html#a5a9fa3cf06aab931c3248be58c3f1c14">ObjArray</a>(std::vector&lt;T&gt; <span class="keyword">const</span>&amp; a): self(true) {</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">self</span>()-&gt;array_ = a;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a387a45e9231e39b68790881125122768"> 49</a></span>&#160; <a class="code" href="classmeow_1_1ObjArray.html#a387a45e9231e39b68790881125122768">ObjArray</a>(<span class="keywordtype">size_t</span> sz, T <span class="keyword">const</span>&amp; e): self(true) {</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">self</span>()-&gt;array_.resize(sz, e);</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a730a953292ddeb0a03958f00087da129"> 53</a></span>&#160; <a class="code" href="classmeow_1_1ObjArray.html#a730a953292ddeb0a03958f00087da129">~ObjArray</a>() {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
@@ -134,7 +134,7 @@ $(document).ready(function(){initNavTree('ObjArray_8h_source.html','');});
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">self</span>()-&gt;array_.resize(res);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01">size</a>();</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#adaa534a1d808e8064b6cd073fedf1e73"> 83</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1ObjArray.html#adaa534a1d808e8064b6cd073fedf1e73">clear</a>() {</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">self</span>()-&gt;array_.clear();</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
@@ -151,7 +151,7 @@ $(document).ready(function(){initNavTree('ObjArray_8h_source.html','');});
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">self</span>()-&gt;array_.push_back(e);</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1ObjArray.html#a83d175206d5bae2542a818200dd64c9b">entry</a>(<a class="code" href="classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01">size</a>() - 1);</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a5196b0d1ae35ce86857d88810cc0933f"> 100</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjArray.html#a5196b0d1ae35ce86857d88810cc0933f">popBack</a>() {</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1ObjArray.html#a0cf27c92cf52d3f125a0e01e6b62bce0">empty</a>()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">self</span>()-&gt;array_.pop_back();</div>
@@ -161,16 +161,16 @@ $(document).ready(function(){initNavTree('ObjArray_8h_source.html','');});
<div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf"> 106</a></span>&#160; <a class="code" href="classmeow_1_1ObjArray.html" title="純粹把 std::vector 包起來, 變成繼承自 ObjBase">ObjArray</a>&amp; <a class="code" href="classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf">operator=</a>(<a class="code" href="classmeow_1_1ObjArray.html" title="純粹把 std::vector 包起來, 變成繼承自 ObjBase">ObjArray</a> <span class="keyword">const</span>&amp; a) {</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1ObjArray.html#a8886e87d000181823e3532791e6a8288">copyFrom</a>(a);</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f"> 110</a></span>&#160; T <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f">operator[]</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;array_[i];</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#aa9e6268b6d7ea3c7b53101a7a175e360"> 114</a></span>&#160; T&amp; <a class="code" href="classmeow_1_1ObjArray.html#aa9e6268b6d7ea3c7b53101a7a175e360">operator[]</a>(<span class="keywordtype">size_t</span> i) {</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;array_[i];</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70"> 118</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70"> 118</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordtype">size_t</span> sz = <a class="code" href="classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01">size</a>();</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (fwrite(&amp;sz, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
@@ -183,8 +183,8 @@ $(document).ready(function(){initNavTree('ObjArray_8h_source.html','');});
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
-<div class="line"><a name="l00132"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74"> 132</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74"> 132</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordtype">size_t</span> sz;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (fread(&amp;sz, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
@@ -194,25 +194,25 @@ $(document).ready(function(){initNavTree('ObjArray_8h_source.html','');});
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01">size</a>(sz);</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; sz; i++) {</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">self</span>()-&gt;array_[i].<a class="code" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74">read</a>(f, bin, fg) == <span class="keyword">false</span>) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">self</span>()-&gt;array_[i].<a class="code" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a>(f, bin, fg) == <span class="keyword">false</span>) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; </div>
-<div class="line"><a name="l00147"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae"> 147</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae"> 147</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1ObjArray.html#adf6b1b267475a6a25a03317943e4a3cf">ObjArray</a>();</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; </div>
-<div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044"> 151</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044"> 151</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044" title="複製, 預設使用operator=">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1ObjArray.html#a8886e87d000181823e3532791e6a8288">copyFrom</a>(*b));</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; </div>
-<div class="line"><a name="l00155"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5"> 155</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">ctype</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5"> 155</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5" title="用C-style string回傳這個class的type name">ctype</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> <span class="keyword">typeid</span>(*this).name();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; </div>
-<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c"> 159</a></span>&#160; std::string <a class="code" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c">type</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">ctype</a>());</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c"> 159</a></span>&#160; std::string <a class="code" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c" title="用std::string回傳這個class的type name">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5" title="用C-style string回傳這個class的type name">ctype</a>());</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;};</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
@@ -226,7 +226,7 @@ $(document).ready(function(){initNavTree('ObjArray_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjArray_8h.html">ObjArray.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjBase_8h.html b/doc/html/ObjBase_8h.html
index 1bd2b08..8236aa7 100644
--- a/doc/html/ObjBase_8h.html
+++ b/doc/html/ObjBase_8h.html
@@ -85,7 +85,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjBase_8h.html">ObjBase.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjBase_8h_source.html b/doc/html/ObjBase_8h_source.html
index 206ce88..62203ac 100644
--- a/doc/html/ObjBase_8h_source.html
+++ b/doc/html/ObjBase_8h_source.html
@@ -62,40 +62,56 @@ $(document).ready(function(){initNavTree('ObjBase_8h_source.html','');});
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define oo_ObjBase_H__</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &lt;cstdio&gt;</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &lt;typeinfo&gt;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="keyword">namespace </span>meow{</div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html"> 16</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> {</div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00018"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff"> 18</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a>(){ }</div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234"> 20</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a>(){ }</div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <span class="comment">//</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8"> 22</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">write</a>(FILE* f,<span class="keywordtype">bool</span> bin,<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
-<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34"> 23</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">read</a>(FILE* f,<span class="keywordtype">bool</span> bin,<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) { <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="comment">//</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c"> 25</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">create</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> NULL; }</div>
-<div class="line"><a name="l00026"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619"> 26</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) { (*this) = (*b); <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="comment">//</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8"> 28</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">ctype</a>()<span class="keyword"> const</span>{</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">return</span> ptr;</div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &lt;typeinfo&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html"> 15</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> {</div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff"> 17</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a>(){ }</div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234"> 19</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a>(){ }</div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8"> 29</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; }</div>
-<div class="line"><a name="l00032"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72"> 32</a></span>&#160; <span class="keyword">virtual</span> std::string <a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a>()<span class="keyword"> const</span>{ <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">ctype</a>()); }</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="comment">//</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8"> 34</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a>(){</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(<a class="code" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a>).name();</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">return</span> ptr;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; }</div>
-<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3"> 38</a></span>&#160; <span class="keyword">static</span> std::string <a class="code" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a>(){ <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a>()); }</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;};</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;}</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif // oo_ObjBase_H__</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34"> 41</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c"> 48</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">return</span> NULL;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619"> 58</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619" title="複製, 預設使用operator=">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; (*this) = (*b);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> <span class="keyword">this</span>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8"> 66</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8" title="用C-style string回傳這個class的type name">ctype</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> <span class="keyword">typeid</span>(*this).name();</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72"> 73</a></span>&#160; <span class="keyword">virtual</span> std::string <a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72" title="用std::string回傳這個class的type name">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">static</span> std::string s(<a class="code" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8" title="用C-style string回傳這個class的type name">ctype</a>());</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> s;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8"> 81</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8" title="用C-style string回傳base的type name">ctypeBase</a>() {</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> <span class="keyword">typeid</span>(<a class="code" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a>).name();</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; </div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3"> 88</a></span>&#160; <span class="keyword">static</span> std::string <a class="code" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3" title="用std::string回傳base的type name">typeBase</a>() {</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">static</span> std::string s(<a class="code" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8" title="用C-style string回傳base的type name">ctypeBase</a>());</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> s;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;};</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor">#endif // oo_ObjBase_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -103,7 +119,7 @@ $(document).ready(function(){initNavTree('ObjBase_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjBase_8h.html">ObjBase.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjDictionary_8h.html b/doc/html/ObjDictionary_8h.html
index 80f3017..c1b4a31 100644
--- a/doc/html/ObjDictionary_8h.html
+++ b/doc/html/ObjDictionary_8h.html
@@ -89,7 +89,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjDictionary_8h.html">ObjDictionary.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjDictionary_8h_source.html b/doc/html/ObjDictionary_8h_source.html
index 214f963..92c251a 100644
--- a/doc/html/ObjDictionary_8h_source.html
+++ b/doc/html/ObjDictionary_8h_source.html
@@ -157,7 +157,7 @@ $(document).ready(function(){initNavTree('ObjDictionary_8h_source.html','');});
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;dictionary_[k];</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c"> 105</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c"> 105</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordtype">size_t</span> sz = <a class="code" href="classmeow_1_1ObjDictionary.html#a0e265133214bd6b9f0dce6ce6dc6ca23">size</a>();</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (fwrite(&amp;sz, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
@@ -173,7 +173,7 @@ $(document).ready(function(){initNavTree('ObjDictionary_8h_source.html','');});
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137"> 121</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137"> 121</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordtype">size_t</span> sz;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span> (fread(&amp;sz, <span class="keyword">sizeof</span>(<span class="keywordtype">size_t</span>), 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
@@ -191,20 +191,20 @@ $(document).ready(function(){initNavTree('ObjDictionary_8h_source.html','');});
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; </div>
-<div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb"> 139</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb"> 139</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1ObjDictionary.html#a1055d36aa3d4551def2abd9aa86b7662">ObjDictionary</a>();</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
-<div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6"> 143</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
+<div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6"> 143</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6" title="複製, 預設使用operator=">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1ObjDictionary.html#a7e50cbeeead963d95d661783ee2a9285">copyFrom</a>(*(<a class="code" href="classmeow_1_1ObjDictionary.html" title="純粹把 std::map 包起來, 變成繼承自 ObjBase">ObjDictionary</a>*)b));</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; </div>
-<div class="line"><a name="l00147"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64"> 147</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">ctype</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00147"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64"> 147</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64" title="用C-style string回傳這個class的type name">ctype</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> <span class="keyword">typeid</span>(*this).name();</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; </div>
-<div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c"> 151</a></span>&#160; std::string <a class="code" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c">type</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">ctype</a>());</div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c"> 151</a></span>&#160; std::string <a class="code" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c" title="用std::string回傳這個class的type name">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64" title="用C-style string回傳這個class的type name">ctype</a>());</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;};</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
@@ -218,7 +218,7 @@ $(document).ready(function(){initNavTree('ObjDictionary_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjDictionary_8h.html">ObjDictionary.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjProperties_8h.html b/doc/html/ObjProperties_8h.html
index a9cdf3b..2b1e5dd 100644
--- a/doc/html/ObjProperties_8h.html
+++ b/doc/html/ObjProperties_8h.html
@@ -84,7 +84,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjProperties_8h.html">ObjProperties.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjProperties_8h_source.html b/doc/html/ObjProperties_8h_source.html
index 1bb5177..21a4144 100644
--- a/doc/html/ObjProperties_8h_source.html
+++ b/doc/html/ObjProperties_8h_source.html
@@ -96,17 +96,17 @@ $(document).ready(function(){initNavTree('ObjProperties_8h_source.html','');});
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; </div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <a class="code" href="classmeow_1_1ObjProperties.html" title="目前擺爛中">ObjProperties</a>&amp; <a class="code" href="classmeow_1_1ObjProperties.html#a43ce997788ca81603e881a22285fd307">properties</a>(<a class="code" href="classmeow_1_1ObjProperties.html" title="目前擺爛中">ObjProperties</a> <span class="keyword">const</span>&amp; p);</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjProperties.html#a7ebb7d21a575adbf9cbed10db807c6b6">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjProperties.html#a7ebb7d21a575adbf9cbed10db807c6b6" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjProperties.html#a4d7d0978d10735798e76e707ee9faa5a">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjProperties.html#a4d7d0978d10735798e76e707ee9faa5a" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg);</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">create</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52" title="複製, 預設使用operator=">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b);</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a">ctype</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a" title="用C-style string回傳這個class的type name">ctype</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; std::string <a class="code" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">type</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; std::string <a class="code" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84" title="用std::string回傳這個class的type name">type</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;};</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;}</div>
@@ -119,7 +119,7 @@ $(document).ready(function(){initNavTree('ObjProperties_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjProperties_8h.html">ObjProperties.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjSelector_8h.html b/doc/html/ObjSelector_8h.html
index be18e00..6ad7e69 100644
--- a/doc/html/ObjSelector_8h.html
+++ b/doc/html/ObjSelector_8h.html
@@ -95,7 +95,7 @@ Variables</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjSelector_8h.html">ObjSelector.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjSelector_8h_source.html b/doc/html/ObjSelector_8h_source.html
index d6240f4..c23380a 100644
--- a/doc/html/ObjSelector_8h_source.html
+++ b/doc/html/ObjSelector_8h_source.html
@@ -71,7 +71,7 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &lt;cstdio&gt;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="keyword">namespace </span>meow{</div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="keyword">namespace </span>meow {</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">template</span>&lt;<span class="keywordtype">size_t</span> <span class="keywordtype">id</span>&gt; </div>
<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjSelector.html"> 22</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ObjSelector.html" title="利用register的概念, 達到runtime用string選擇要new的class">ObjSelector</a> {</div>
@@ -123,7 +123,7 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjSelector.html#af1479fc3260f2600d76bc018a9a36019"> 76</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1ObjSelector.html#af1479fc3260f2600d76bc018a9a36019" title="新增(註冊) 一個Class (必須要繼承自 ObjBase) 並且默認type為name">add</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* obj, <span class="keywordtype">bool</span> autoDelete) {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; add(obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a>(), NULL, obj, autoDelete);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; add(obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72" title="用std::string回傳這個class的type name">type</a>(), NULL, obj, autoDelete);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjSelector.html#a94ae819ddd031927466845c86ce35621"> 83</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1ObjSelector.html#a94ae819ddd031927466845c86ce35621" title="依照name刪除之前註冊過得Class">del</a>(std::string <a class="code" href="classmeow_1_1ObjSelector.html#a43786b9b4869a3bb115c852d09e474cb" title="利用type尋找name">name</a>) {</div>
@@ -141,14 +141,14 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div class="line"><a name="l00101"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb"> 101</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb" title="回傳一個之前註冊過得Class new出來的實體">create</a>(std::string <a class="code" href="classmeow_1_1ObjSelector.html#a43786b9b4869a3bb115c852d09e474cb" title="利用type尋找name">name</a>) {</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* ptr = <span class="keyword">get</span>(<a class="code" href="classmeow_1_1ObjSelector.html#a43786b9b4869a3bb115c852d09e474cb" title="利用type尋找name">name</a>);</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span>(ptr == NULL) <span class="keywordflow">return</span> NULL;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> ptr-&gt;<a class="code" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">create</a>();</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> ptr-&gt;<a class="code" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>();</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; </div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0"> 110</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0" title="利用type檢查是否有註冊過同種類的Class">exist</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* obj) {</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">for</span> (FuncsIterator it = funcs().begin(); it != funcs().end(); it++) {</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">if</span> (it-&gt;second-&gt;pointer_ == obj ||</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; (it-&gt;second-&gt;pointer_ != NULL &amp;&amp;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; it-&gt;second-&gt;pointer_-&gt;type() == obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a>())) {</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; it-&gt;second-&gt;pointer_-&gt;type() == obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72" title="用std::string回傳這個class的type name">type</a>())) {</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
@@ -159,7 +159,7 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">for</span> (FuncsIterator it = funcs().begin(); it != funcs().end(); it++) {</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span> (it-&gt;second-&gt;pointer_ == obj ||</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; (it-&gt;second-&gt;pointer_ != NULL &amp;&amp;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; it-&gt;second-&gt;pointer_-&gt;type() == obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a>())) {</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; it-&gt;second-&gt;pointer_-&gt;type() == obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72" title="用std::string回傳這個class的type name">type</a>())) {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> it-&gt;first;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div>
@@ -179,7 +179,7 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00156"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjSelector.html#a7f798e7243aa2e93d2458dfc7f6d3308"> 156</a></span>&#160; <a class="code" href="classmeow_1_1ObjSelector.html#a7f798e7243aa2e93d2458dfc7f6d3308" title="宣告一個ObjSelector實體, 並且註冊一個 ObjBase">ObjSelector</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* obj, <span class="keywordtype">bool</span> autoDelete) {</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; me_.first = obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a>();</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; me_.first = obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72" title="用std::string回傳這個class的type name">type</a>();</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; me_.second = add(me_.first, <span class="keyword">this</span>, obj, autoDelete);</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; }</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
@@ -200,11 +200,11 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (fprintf(f, <span class="stringliteral">&quot;%s %u\n&quot;</span>, nme, fg) &lt; 2) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">return</span> obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">write</a>(f, binary, fg);</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">return</span> obj-&gt;<a class="code" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(f, binary, fg);</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; </div>
<div class="line"><a name="l00188"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjSelector.html#a757b4c75d87f958b64bb5cacbeb71dcb"> 188</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjSelector.html#a757b4c75d87f958b64bb5cacbeb71dcb" title="從檔案中讀取一個物件(該物件必須要有註冊過)">read</a>(FILE* f, <span class="keywordtype">bool</span> binary) {</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordtype">char</span> <a class="code" href="classmeow_1_1ObjSelector.html#a43786b9b4869a3bb115c852d09e474cb" title="利用type尋找name">name</a>[2048];</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <a class="code" href="classmeow_1_1ObjSelector.html#a43786b9b4869a3bb115c852d09e474cb" title="利用type尋找name">name</a>[2048];</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordtype">size_t</span> len;</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg;</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">if</span> (binary) {</div>
@@ -216,7 +216,7 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (fscanf(f, <span class="stringliteral">&quot;%s %u&quot;</span>, name, &amp;fg) &lt; 2) <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; }</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* ret = <a class="code" href="classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb" title="回傳一個之前註冊過得Class new出來的實體">create</a>(std::string(name));</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">if</span> (ret != NULL &amp;&amp; ret-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">read</a>(f, binary, fg) == <span class="keyword">false</span>) {</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">if</span> (ret != NULL &amp;&amp; ret-&gt;<a class="code" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a>(f, binary, fg) == <span class="keyword">false</span>) {</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keyword">delete</span> ret;</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; ret = NULL;</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; }</div>
@@ -236,7 +236,7 @@ $(document).ready(function(){initNavTree('ObjSelector_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjSelector_8h.html">ObjSelector.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjTypes_8h.html b/doc/html/ObjTypes_8h.html
index 789cd0b..efda5d4 100644
--- a/doc/html/ObjTypes_8h.html
+++ b/doc/html/ObjTypes_8h.html
@@ -110,7 +110,7 @@ ReaderWriter_string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a c
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjTypes_8h.html">ObjTypes.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ObjTypes_8h_source.html b/doc/html/ObjTypes_8h_source.html
index 2131870..b1d2a3f 100644
--- a/doc/html/ObjTypes_8h_source.html
+++ b/doc/html/ObjTypes_8h_source.html
@@ -76,23 +76,23 @@ $(document).ready(function(){initNavTree('ObjTypes_8h_source.html','');});
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; Type data_;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; Myself() {</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; }</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; ~Myself() {</div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; Myself(Type <span class="keyword">const</span>&amp; t): data_(t) {</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; }</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; Myself <a class="code" href="classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4">copyFrom</a>(Myself <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; data_ = b.data_;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; }</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; };</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;data_&gt;</a> <span class="keyword">const</span> <span class="keyword">self</span>;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00033"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136"> 33</a></span>&#160; <a class="code" href="classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136" title="constructor">ObjType</a>(): self(true) {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; }</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
-<div class="line"><a name="l00037"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993"> 37</a></span>&#160; <a class="code" href="classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993" title="constructor, 並且copy資料">ObjType</a>(<a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType</a> <span class="keyword">const</span>&amp; a): self(false) {</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4">copyFrom</a>(a.self);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div>
-<div class="line"><a name="l00042"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#afd125762822efc8ff890479bac6fafe4"> 42</a></span>&#160; <a class="code" href="classmeow_1_1ObjType.html#afd125762822efc8ff890479bac6fafe4" title="constructor, 並且給值">ObyType</a>(Type <span class="keyword">const</span>&amp; t): self(true) {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">self</span>().data_ = t;</div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; ~Myself() {</div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; }</div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; Myself <a class="code" href="classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4">copyFrom</a>(Myself <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; data_ = b.data_;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; }</div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; };</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;data_&gt;</a> <span class="keyword">const</span> <span class="keyword">self</span>;</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136"> 35</a></span>&#160; <a class="code" href="classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136" title="constructor">ObjType</a>(): self() {</div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; }</div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#afd125762822efc8ff890479bac6fafe4"> 39</a></span>&#160; <a class="code" href="classmeow_1_1ObjType.html#afd125762822efc8ff890479bac6fafe4" title="constructor, 並且給值">ObyType</a>(Type <span class="keyword">const</span>&amp; t): self(Myself(t)) {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; }</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993"> 43</a></span>&#160; <a class="code" href="classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993" title="constructor, 並且copy資料">ObjType</a>(<a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType</a> <span class="keyword">const</span>&amp; a): self(a.self, COPY_FROM) {</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#ac703cec17ecfe6869a016c0ff072918c"> 46</a></span>&#160; <a class="code" href="classmeow_1_1ObjType.html#ac703cec17ecfe6869a016c0ff072918c">~ObjType</a>() {</div>
@@ -128,130 +128,129 @@ $(document).ready(function(){initNavTree('ObjTypes_8h_source.html','');});
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1ObjType.html#a0eac1bd069ebdde20f422ef6a5ffb7cb">modify</a>();</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944"> 79</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944"> 79</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944" title="將物件寫入檔案, 預設implement為直接回傳 false ">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> ReaderWriter::write(f, bin, fg, self-&gt;data_);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe"> 83</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe"> 83</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe" title="將物件從檔案讀出, 預設implement為直接回傳 false ">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg) {</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> ReaderWriter::read(f, bin, fg, &amp;(<span class="keyword">self</span>()-&gt;data_));</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
-<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180"> 87</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">create</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180"> 87</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180" title="回傳一個new出來的物件, 預設implement為直接回傳 NULL ">create</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136" title="constructor">ObjType</a>();</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
-<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535"> 91</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535"> 91</a></span>&#160; <a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a>* <a class="code" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535" title="複製, 預設使用operator=">copyFrom</a>(<a class="code" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a> <span class="keyword">const</span>* b) {</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> &amp;(<a class="code" href="classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4">copyFrom</a>(&amp;(<a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType</a> <span class="keyword">const</span>*)b));</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; </div>
-<div class="line"><a name="l00095"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49"> 95</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">ctype</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> <span class="keyword">const</span>* ptr = <span class="keyword">typeid</span>(*this).name();</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> ptr;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f"> 100</a></span>&#160; std::string <a class="code" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f">type</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">ctype</a>());</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;};</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__int.html"> 105</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__int.html">ReaderWriter_int</a> {</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__int.html#a91ca44a047318a75887b13d5e45d52fb"> 107</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__int.html#a91ca44a047318a75887b13d5e45d52fb">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">int</span> <span class="keyword">const</span>&amp; k) {</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> (fwrite(&amp;k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> (fprintf(f, <span class="stringliteral">&quot;%d\n&quot;</span>, k) == 1);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }</div>
-<div class="line"><a name="l00115"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__int.html#a04e4b5a8285e372706faa5a45983fb9d"> 115</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__int.html#a04e4b5a8285e372706faa5a45983fb9d">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">int</span>* k) {</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">return</span> (fread(k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; }</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> (fscanf(f, <span class="stringliteral">&quot;%d&quot;</span>, k) == 1);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;};</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__size__t.html"> 125</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__size__t.html">ReaderWriter_size_t</a> {</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00127"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__size__t.html#ab616eb075979f72e989a984177dfdb58"> 127</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__size__t.html#ab616eb075979f72e989a984177dfdb58">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">size_t</span> <span class="keyword">const</span>&amp; k) {</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> (fwrite(&amp;k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> (fprintf(f, <span class="stringliteral">&quot;%lu\n&quot;</span>, k) == 1);</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; }</div>
-<div class="line"><a name="l00135"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__size__t.html#a4bf82797fa84b557895c204c8c94c936"> 135</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__size__t.html#a4bf82797fa84b557895c204c8c94c936">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">size_t</span>* k) {</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> (fread(k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> (fscanf(f, <span class="stringliteral">&quot;%lu&quot;</span>, k) == 1);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;};</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__double.html"> 145</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__double.html">ReaderWriter_double</a> {</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00147"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__double.html#afff0af84fcf29769feeac0544cb8f81b"> 147</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__double.html#afff0af84fcf29769feeac0544cb8f81b">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">double</span> <span class="keyword">const</span>&amp; k) {</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> (fwrite(&amp;k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> (fprintf(f, <span class="stringliteral">&quot;%.15f\n&quot;</span>, k) == 1);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__double.html#a951e079f66e01d81f1492ae1da963d8e"> 155</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__double.html#a951e079f66e01d81f1492ae1da963d8e">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">double</span>* k) {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">return</span> (fread(k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; }</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> (fscanf(f, <span class="stringliteral">&quot;%lf&quot;</span>, k) == 1);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;};</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__string.html"> 165</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__string.html">ReaderWriter_string</a> {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00167"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__string.html#ac4fe1d4fbaf69b48c36fe2d404c214c5"> 167</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__string.html#ac4fe1d4fbaf69b48c36fe2d404c214c5">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, std::string <span class="keyword">const</span>&amp; k) {</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordtype">size_t</span> len = k.size();</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* buf = k.c_str();</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (fwrite(&amp;len, <span class="keyword">sizeof</span>(len) , 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span> (fwrite( buf, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>), len, f) &lt; len) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">if</span> (fprintf(f, <span class="stringliteral">&quot;%s\n&quot;</span>, buf) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; }</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div>
-<div class="line"><a name="l00179"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__string.html#adf69dad74e4998323580e6913598c894"> 179</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__string.html#adf69dad74e4998323580e6913598c894">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, std::string* k) {</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordtype">size_t</span> len;</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordtype">char</span> buf[2048];</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">if</span> (fread(&amp;len, <span class="keyword">sizeof</span>(len) , 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">if</span> (fread( buf, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>), len, f) &lt; len) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; buf[len] = <span class="charliteral">&#39;\0&#39;</span>;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">if</span> (fscanf(f, <span class="stringliteral">&quot;%s&quot;</span>, buf) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; (*k) = buf;</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; }</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;};</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"><a class="code" href="namespacemeow.html#add07dcc8e06a1394daa3e6402bc40c4b"> 195</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;int , ReaderWriter_int &gt;</a> <a class="code" href="namespacemeow.html#add07dcc8e06a1394daa3e6402bc40c4b">ObjInt</a>;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"><a class="code" href="namespacemeow.html#a52b9d9ec3b004a9335222e7bf30e521a"> 196</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;size_t , ReaderWriter_size_t&gt;</a> <a class="code" href="namespacemeow.html#a52b9d9ec3b004a9335222e7bf30e521a">ObjSizeT</a>;</div>
-<div class="line"><a name="l00197"></a><span class="lineno"><a class="code" href="namespacemeow.html#a936afddaa5716457741832ee501c7a58"> 197</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;double , ReaderWriter_double&gt;</a> <a class="code" href="namespacemeow.html#a936afddaa5716457741832ee501c7a58">ObjDouble</a>;</div>
-<div class="line"><a name="l00198"></a><span class="lineno"><a class="code" href="namespacemeow.html#a52d52e58feff5e9f9013279e2dbd2fee"> 198</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;std::string, ReaderWriter_string&gt;</a> <a class="code" href="namespacemeow.html#a52d52e58feff5e9f9013279e2dbd2fee">ObjString</a>;</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;}</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="preprocessor">#endif // oo_ObjType_H__</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49"> 95</a></span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49" title="用C-style string回傳這個class的type name">ctype</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> <span class="keyword">typeid</span>(*this).name();</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="code" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f"> 99</a></span>&#160; std::string <a class="code" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f" title="用std::string回傳這個class的type name">type</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> std::string(<a class="code" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49" title="用C-style string回傳這個class的type name">ctype</a>());</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;};</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__int.html"> 104</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__int.html">ReaderWriter_int</a> {</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__int.html#a91ca44a047318a75887b13d5e45d52fb"> 106</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__int.html#a91ca44a047318a75887b13d5e45d52fb">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">int</span> <span class="keyword">const</span>&amp; k) {</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> (fwrite(&amp;k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">return</span> (fprintf(f, <span class="stringliteral">&quot;%d\n&quot;</span>, k) == 1);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
+<div class="line"><a name="l00114"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__int.html#a04e4b5a8285e372706faa5a45983fb9d"> 114</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__int.html#a04e4b5a8285e372706faa5a45983fb9d">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">int</span>* k) {</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> (fread(k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> (fscanf(f, <span class="stringliteral">&quot;%d&quot;</span>, k) == 1);</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;};</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__size__t.html"> 124</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__size__t.html">ReaderWriter_size_t</a> {</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__size__t.html#ab616eb075979f72e989a984177dfdb58"> 126</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__size__t.html#ab616eb075979f72e989a984177dfdb58">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">size_t</span> <span class="keyword">const</span>&amp; k) {</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> (fwrite(&amp;k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> (fprintf(f, <span class="stringliteral">&quot;%lu\n&quot;</span>, k) == 1);</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__size__t.html#a4bf82797fa84b557895c204c8c94c936"> 134</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__size__t.html#a4bf82797fa84b557895c204c8c94c936">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">size_t</span>* k) {</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> (fread(k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">return</span> (fscanf(f, <span class="stringliteral">&quot;%lu&quot;</span>, k) == 1);</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;};</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__double.html"> 144</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__double.html">ReaderWriter_double</a> {</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00146"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__double.html#afff0af84fcf29769feeac0544cb8f81b"> 146</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__double.html#afff0af84fcf29769feeac0544cb8f81b">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">double</span> <span class="keyword">const</span>&amp; k) {</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> (fwrite(&amp;k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> (fprintf(f, <span class="stringliteral">&quot;%.15f\n&quot;</span>, k) == 1);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
+<div class="line"><a name="l00154"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__double.html#a951e079f66e01d81f1492ae1da963d8e"> 154</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__double.html#a951e079f66e01d81f1492ae1da963d8e">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, <span class="keywordtype">double</span>* k) {</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> (fread(k, <span class="keyword">sizeof</span>(k), 1, f) == 1);</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">return</span> (fscanf(f, <span class="stringliteral">&quot;%lf&quot;</span>, k) == 1);</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;};</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__string.html"> 164</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1ReaderWriter__string.html">ReaderWriter_string</a> {</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00166"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__string.html#ac4fe1d4fbaf69b48c36fe2d404c214c5"> 166</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__string.html#ac4fe1d4fbaf69b48c36fe2d404c214c5">write</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, std::string <span class="keyword">const</span>&amp; k) {</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordtype">size_t</span> len = k.size();</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* buf = k.c_str();</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">if</span> (fwrite(&amp;len, <span class="keyword">sizeof</span>(len) , 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (fwrite( buf, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>), len, f) &lt; len) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">if</span> (fprintf(f, <span class="stringliteral">&quot;%s\n&quot;</span>, buf) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
+<div class="line"><a name="l00178"></a><span class="lineno"><a class="code" href="classmeow_1_1ReaderWriter__string.html#adf69dad74e4998323580e6913598c894"> 178</a></span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1ReaderWriter__string.html#adf69dad74e4998323580e6913598c894">read</a>(FILE* f, <span class="keywordtype">bool</span> bin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fg, std::string* k) {</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordtype">size_t</span> len;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordtype">char</span> buf[2048];</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">if</span> (bin) {</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (fread(&amp;len, <span class="keyword">sizeof</span>(len) , 1, f) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">if</span> (fread( buf, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>), len, f) &lt; len) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; buf[len] = <span class="charliteral">&#39;\0&#39;</span>;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">if</span> (fscanf(f, <span class="stringliteral">&quot;%s&quot;</span>, buf) &lt; 1) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; (*k) = buf;</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;};</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="code" href="namespacemeow.html#add07dcc8e06a1394daa3e6402bc40c4b"> 194</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;int , ReaderWriter_int &gt;</a> <a class="code" href="namespacemeow.html#add07dcc8e06a1394daa3e6402bc40c4b">ObjInt</a>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"><a class="code" href="namespacemeow.html#a52b9d9ec3b004a9335222e7bf30e521a"> 195</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;size_t , ReaderWriter_size_t&gt;</a> <a class="code" href="namespacemeow.html#a52b9d9ec3b004a9335222e7bf30e521a">ObjSizeT</a>;</div>
+<div class="line"><a name="l00196"></a><span class="lineno"><a class="code" href="namespacemeow.html#a936afddaa5716457741832ee501c7a58"> 196</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;double , ReaderWriter_double&gt;</a> <a class="code" href="namespacemeow.html#a936afddaa5716457741832ee501c7a58">ObjDouble</a>;</div>
+<div class="line"><a name="l00197"></a><span class="lineno"><a class="code" href="namespacemeow.html#a52d52e58feff5e9f9013279e2dbd2fee"> 197</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="classmeow_1_1ObjType.html" title="純粹把給定的 Type 包起來, 變成繼承自 ObjBase">ObjType&lt;std::string, ReaderWriter_string&gt;</a> <a class="code" href="namespacemeow.html#a52d52e58feff5e9f9013279e2dbd2fee">ObjString</a>;</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="preprocessor">#endif // oo_ObjType_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -259,7 +258,7 @@ $(document).ready(function(){initNavTree('ObjTypes_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li><li class="navelem"><a class="el" href="ObjTypes_8h.html">ObjTypes.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Photo_8h.html b/doc/html/Photo_8h.html
index 4267808..3503ea8 100644
--- a/doc/html/Photo_8h.html
+++ b/doc/html/Photo_8h.html
@@ -92,7 +92,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="Photo_8h.html">Photo.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Photo_8h_source.html b/doc/html/Photo_8h_source.html
index 714b075..37a01b3 100644
--- a/doc/html/Photo_8h_source.html
+++ b/doc/html/Photo_8h_source.html
@@ -278,7 +278,7 @@ $(document).ready(function(){initNavTree('Photo_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="Photo_8h.html">Photo.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Pipeline_8h.html b/doc/html/Pipeline_8h.html
new file mode 100644
index 0000000..e2fa0a0
--- /dev/null
+++ b/doc/html/Pipeline_8h.html
@@ -0,0 +1,95 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: meowpp/Pipeline.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('Pipeline_8h.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">Pipeline.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="Self_8h_source.html">Self.h</a>&quot;</code><br/>
+<code>#include &lt;list&gt;</code><br/>
+</div>
+<p><a href="Pipeline_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>pipeline</b> <a href="classmeow_1_1Pipeline.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacemeow"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemeow.html">meow</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="Pipeline_8h.html">Pipeline.h</a></li>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/Pipeline_8h.js b/doc/html/Pipeline_8h.js
new file mode 100644
index 0000000..3ce158f
--- /dev/null
+++ b/doc/html/Pipeline_8h.js
@@ -0,0 +1,20 @@
+var Pipeline_8h =
+[
+ [ "Pipeline", "classmeow_1_1Pipeline.html", "classmeow_1_1Pipeline" ],
+ [ "Piece", "structmeow_1_1Pipeline_1_1Myself_1_1Piece.html", "structmeow_1_1Pipeline_1_1Myself_1_1Piece" ],
+ [ "Piece", "structMyself_1_1Piece.html", "structMyself_1_1Piece" ],
+ [ "backAdd", "Pipeline_8h.html#a868e43772f00b1b9030f73b3d3f89198", null ],
+ [ "backDel", "Pipeline_8h.html#aecc6cd1d8c9ec66317fbde9939bb6f77", null ],
+ [ "copyFrom", "Pipeline_8h.html#a2df7f0b8212f0aa219d31cb177ef22f9", null ],
+ [ "frontAdd", "Pipeline_8h.html#a6e2c488fbe7fa29a68d885718d0743e3", null ],
+ [ "frontDel", "Pipeline_8h.html#acc9a20915ac018a19f789a8d5da2ef7c", null ],
+ [ "goThrough", "Pipeline_8h.html#a8f10b5721b3eefe3499e083280ab1edc", null ],
+ [ "goThroughInv", "Pipeline_8h.html#aa6019f040a00155eafd9c9366359d2a1", null ],
+ [ "inversable", "Pipeline_8h.html#a4f062547760bb644fd0974eb6a95c488", null ],
+ [ "operator=", "Pipeline_8h.html#a504a591a2a351b629494d06f2bf7c7a0", null ],
+ [ "Pipeline", "Pipeline_8h.html#ad65fd2f7a9f10d4aa9c28847fa0cd82d", null ],
+ [ "Pipeline", "Pipeline_8h.html#aaa546325b9532d6ef29e17c967e9efc1", null ],
+ [ "referenceFrom", "Pipeline_8h.html#ac8661c8eb5b76078f98cb04ef8878ed8", null ],
+ [ "~Pipeline", "Pipeline_8h.html#a037a831baec68db11624646b745ba89a", null ],
+ [ "self", "Pipeline_8h.html#a364390e466e81a8e511d4a87d5d17766", null ]
+]; \ No newline at end of file
diff --git a/doc/html/Pipeline_8h_source.html b/doc/html/Pipeline_8h_source.html
new file mode 100644
index 0000000..9010cc5
--- /dev/null
+++ b/doc/html/Pipeline_8h_source.html
@@ -0,0 +1,228 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: meowpp/Pipeline.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('Pipeline_8h_source.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Pipeline.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="Pipeline_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#ifndef Pipeline_H__</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define Pipeline_H__</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Self_8h.html">Self.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;</div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Input, <span class="keyword">class</span> Output, <span class="keyword">class</span> Medium&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html"> 14</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a> {</div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356"> 16</a></span>&#160; <span class="keyword">typedef</span> std::list&lt;Medium const*&gt;::const_iterator <a class="code" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">MediumPointerIteratorK</a>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; <span class="keyword">struct </span>Myself {</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html"> 19</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">MediumInfo</a> {</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8"> 20</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8">autoDel_</a>;</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047"> 21</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047">counter_</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#ac7f042f7c96e2170e5c13f5d98fb5d0a"> 23</a></span>&#160; <a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#ac7f042f7c96e2170e5c13f5d98fb5d0a">MediumInfo</a>(<span class="keywordtype">bool</span> ad): <a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8">autoDel_</a>(ad), <a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047">counter_</a>(1) {</div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; }</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a2cf1d9e410e152bc045017d966fa3e52"> 25</a></span>&#160; <a class="code" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a2cf1d9e410e152bc045017d966fa3e52">~MediumInfo</a>() {</div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; }</div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; };</div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; std::list&lt;Medium const*&gt; pipe_;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; std::list&lt;MediumInfo* &gt; info_;</div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; Myself() {</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; }</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; Myself(Myself <span class="keyword">const</span>&amp; b): pipe_(b.pipe_), info_(b.info_) {</div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordflow">for</span> (std::list&lt;MediumInfo*&gt;::iterator</div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; it = info_.begin(); it != info_.end(); ++it) {</div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; (*it).counter_ += 1;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; }</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; ~Myself() {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; std::list&lt;MediumInfo* &gt;::iterator it = info_.begin();</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; std::list&lt;Medium const*&gt;::iterator ip = pipe_.begin();</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">for</span> ( ; it != info_.end(); ++it, ++ip) {</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">if</span> ((*it).counter_ &lt;= 0 &amp;&amp; (*it).autoDel_ == <span class="keyword">true</span>) {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">delete</span> *ip;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; }</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c" title="add a medium to the front of this pipeline">frontAdd</a>(Medium <span class="keyword">const</span>* ptr, <span class="keywordtype">bool</span> auto_delete) {</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; pipe_.push_front(ptr);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; info_.push_front(<span class="keyword">new</span> MediumInfo(auto_delete));</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4" title="add a medium to the back of this pipeline">backAdd</a>(Medium <span class="keyword">const</span>* ptr, <span class="keywordtype">bool</span> auto_delete) {</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; pipe_.push_back(ptr);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; info_.push_back(<span class="keyword">new</span> MediumInfo(auto_delete));</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5" title="remove a medium from the front of this pipeline">frontDel</a>() {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">if</span> (pipe_.empty()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; info_.front().counter_ -= 1;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (info_.front().autoDel_ &amp;&amp; info_.front().counter_ &lt;= 0) {</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">delete</span> pipe_.front();</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; pipe_.pop_front();</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5" title="add a medium from the back of this pipeline">backDel</a>() {</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span> (pipe_.empty()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; info_.back().counter_ -= 1;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">if</span> (info_.back().autoDel_ &amp;&amp; info_.back().counter_ &lt;= 0) {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">delete</span> pipe_.back();</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; pipe_.pop_back();</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; };</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; Self&lt;Myself&gt; <span class="keyword">const</span> <span class="keyword">self</span>;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4"> 88</a></span>&#160; <a class="code" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4" title="constructor with empty contain">Pipeline</a>(): self() {</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7"> 94</a></span>&#160; <a class="code" href="classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7" title="copy constructor">Pipeline</a>(<a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a> <span class="keyword">const</span>&amp; p): self(p.self(), COPY_FROM) {</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47"> 103</a></span>&#160; <a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a>&amp; <a class="code" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47" title="copy contain from gived pipeline">copyFrom</a>(<a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a> <span class="keyword">const</span>&amp; p) {</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47" title="copy contain from gived pipeline">copyFrom</a>(p.self);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; }</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02"> 114</a></span>&#160; <a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a>&amp; <a class="code" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02" title="reference from gived pipeline">referenceFrom</a>(<a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a> <span class="keyword">const</span>&amp; p) {</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02" title="reference from gived pipeline">referenceFrom</a>(p.self);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e"> 121</a></span>&#160; <a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a>&amp; <a class="code" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e" title="same as copyFrom(p) ">operator=</a>(<a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a> <span class="keyword">const</span>&amp; p) {</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47" title="copy contain from gived pipeline">copyFrom</a>(p);</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3"> 128</a></span>&#160; std::list&lt;Medium const*&gt; <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3" title="return const-reference of the pipe list">pipe</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;pipe_;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a"> 136</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a" title="destructor">~Pipeline</a>() {</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">virtual</span> Output <a class="code" href="classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395" title="go">goThrough</a>(Input <span class="keyword">const</span>&amp; in) <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8"> 152</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8" title="return whether this pipeline can reverse">inversable</a>() {</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374"> 162</a></span>&#160; <span class="keyword">virtual</span> Input <a class="code" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374" title="reverse go">goThroughInv</a>(Output <span class="keyword">const</span>&amp; in)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">return</span> Input();</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; }</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c"> 173</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c" title="add a medium to the front of this pipeline">frontAdd</a>(Medium <span class="keyword">const</span>* ptr, <span class="keywordtype">bool</span> auto_delete) {</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;<a class="code" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c" title="add a medium to the front of this pipeline">frontAdd</a>(ptr, auto_delete);</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4"> 183</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4" title="add a medium to the back of this pipeline">backAdd</a>(Medium <span class="keyword">const</span>* ptr, <span class="keywordtype">bool</span> auto_delete) {</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;<a class="code" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4" title="add a medium to the back of this pipeline">backAdd</a>(ptr, auto_delete);</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5"> 192</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5" title="remove a medium from the front of this pipeline">frontDel</a>() {</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;<a class="code" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5" title="remove a medium from the front of this pipeline">frontDel</a>();</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5"> 201</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5" title="add a medium from the back of this pipeline">backDel</a>() {</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>()-&gt;<a class="code" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5" title="add a medium from the back of this pipeline">backDel</a>();</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1"> 208</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1" title="return how many medium in this pipeline">size</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;pipe_.size();</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;</div>
+<div class="line"><a name="l00215"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7"> 215</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7" title="same as (size() == 0)">empty</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1" title="return how many medium in this pipeline">size</a>() == 0);</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; }</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div>
+<div class="line"><a name="l00222"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9"> 222</a></span>&#160; <span class="keyword">virtual</span> Medium <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9" title="get the const-pointer of the first medium">first</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;pipe_.front().pointer_;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; }</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div>
+<div class="line"><a name="l00229"></a><span class="lineno"><a class="code" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234"> 229</a></span>&#160; <span class="keyword">virtual</span> Medium <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234" title="get the const-pointer of the last medium">last</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;pipe_.end().pointer_;</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;};</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="preprocessor">#endif // Pipeline_H__</span></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="Pipeline_8h.html">Pipeline.h</a></li>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/RGB__Space_8h.html b/doc/html/RGB__Space_8h.html
index 6f2ed7e..d73623d 100644
--- a/doc/html/RGB__Space_8h.html
+++ b/doc/html/RGB__Space_8h.html
@@ -99,7 +99,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="RGB__Space_8h.html">RGB_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/RGB__Space_8h_source.html b/doc/html/RGB__Space_8h_source.html
index 3be6022..93f6bfa 100644
--- a/doc/html/RGB__Space_8h_source.html
+++ b/doc/html/RGB__Space_8h_source.html
@@ -213,7 +213,7 @@ $(document).ready(function(){initNavTree('RGB__Space_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="RGB__Space_8h.html">RGB_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/SegmentTree_8h.html b/doc/html/SegmentTree_8h.html
index 864b371..a9dd962 100644
--- a/doc/html/SegmentTree_8h.html
+++ b/doc/html/SegmentTree_8h.html
@@ -86,7 +86,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="SegmentTree_8h.html">SegmentTree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/SegmentTree_8h_source.html b/doc/html/SegmentTree_8h_source.html
index 8fcb5f0..3cc2b41 100644
--- a/doc/html/SegmentTree_8h_source.html
+++ b/doc/html/SegmentTree_8h_source.html
@@ -162,7 +162,7 @@ $(document).ready(function(){initNavTree('SegmentTree_8h_source.html','');});
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; nodes_ = b.nodes_;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; </div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="code" href="classmeow_1_1SegmentTree.html#a8985a196cfb954bc469e7dae146ad4ed"> 147</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1SegmentTree.html#a8985a196cfb954bc469e7dae146ad4ed" title="回傳size">size</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> size_;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
@@ -189,7 +189,7 @@ $(document).ready(function(){initNavTree('SegmentTree_8h_source.html','');});
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (rangeCorrect(&amp;first, &amp;last) == <span class="keyword">false</span>) return ;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; update(first, last, 0, size_ - 1, 0, delta, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; </div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
<div class="line"><a name="l00187"></a><span class="lineno"><a class="code" href="classmeow_1_1SegmentTree.html#a765e794af604ab7c20a4245dfafcf14c"> 187</a></span>&#160; <a class="code" href="classmeow_1_1SegmentTree.html" title="中文名 線段樹 ">SegmentTree</a>&amp; <a class="code" href="classmeow_1_1SegmentTree.html#a765e794af604ab7c20a4245dfafcf14c" title="same as copyFrom(b)">operator=</a>(<a class="code" href="classmeow_1_1SegmentTree.html" title="中文名 線段樹 ">SegmentTree</a> <span class="keyword">const</span>&amp; b) {</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1SegmentTree.html#a889f38048ffe08ce3c80911878faac44" title="複製">copyFrom</a>(b);</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div>
@@ -205,7 +205,7 @@ $(document).ready(function(){initNavTree('SegmentTree_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="SegmentTree_8h.html">SegmentTree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Self_8h.html b/doc/html/Self_8h.html
index 42d79eb..c630cfa 100644
--- a/doc/html/Self_8h.html
+++ b/doc/html/Self_8h.html
@@ -83,7 +83,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="Self_8h.html">Self.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Self_8h_source.html b/doc/html/Self_8h_source.html
index 2a1333a..ecbadc5 100644
--- a/doc/html/Self_8h_source.html
+++ b/doc/html/Self_8h_source.html
@@ -65,116 +65,140 @@ $(document).ready(function(){initNavTree('Self_8h_source.html','');});
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="keyword">namespace </span>meow {</div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Data&gt;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html"> 69</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keyword">private</span>:</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">class </span>Body {</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">struct </span>Kernel {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; Data data_;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">int</span> counter_;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; Kernel() {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; counter_ = 1;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; Kernel(Data <span class="keyword">const</span>&amp; data) {</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; counter_ = 1;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; data_.<a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(data);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; };</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; Kernel *pointer_;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">int</span> counter_;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; Body() {</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; counter_ = 1;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; pointer_ = <span class="keyword">new</span> Kernel;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; Body(Body <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; counter_ = 1;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; pointer_ = b.pointer_;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; pointer_-&gt;counter_++;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; ~Body() {</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; pointer_-&gt;counter_--;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (pointer_-&gt;counter_ &lt;= 0) {</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">delete</span> pointer_;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; }</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">int</span> attatch() { <span class="keywordflow">return</span> ++counter_; }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">int</span> detatch() { <span class="keywordflow">return</span> --counter_; }</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; Data <span class="keyword">const</span>* access()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> &amp;(pointer_-&gt;data_); }</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; Data * modify() {</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (pointer_-&gt;counter_ &gt; 1) {</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; pointer_-&gt;counter_--;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; pointer_ = <span class="keyword">new</span> Kernel(pointer_-&gt;data_);</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> &amp;(pointer_-&gt;data_);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; };</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; Body* body_;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">void</span> clear(Body* body) {</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">if</span> (body != NULL) {</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span> (body-&gt;detatch() &lt;= 0) {</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">delete</span> body;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00130"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937"> 130</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937" title="constructor">Self</a>(<span class="keywordtype">bool</span> create_body) {</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; body_ = (create_body ? <span class="keyword">new</span> Body() : NULL);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937" title="constructor">Self</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; b);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
-<div class="line"><a name="l00138"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc"> 138</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc" title="解構子">~Self</a>() {</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; clear(body_);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; </div>
-<div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99"> 143</a></span>&#160; Data <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99" title="回傳指向 Data const 的指標">operator-&gt;</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> body_-&gt;access();</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; </div>
-<div class="line"><a name="l00148"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2"> 148</a></span>&#160; Data* <a class="code" href="classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2" title="回傳指向 Data 的指標, 如有需要, 這邊會做資料的duplicate">operator-&gt;</a>() {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> body_-&gt;modify();</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
-<div class="line"><a name="l00153"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6"> 153</a></span>&#160; <a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a>&amp; <a class="code" href="classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6" title="回傳非const型態的自己">operator()</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">return</span> *((<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a>*)<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; }</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; </div>
-<div class="line"><a name="l00166"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828"> 166</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s) {</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; Body* old = body_;</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; body_ = <span class="keyword">new</span> Body(*(s.body_));</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; clear(old);</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; </div>
-<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f"> 183</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f" title="將自己reference 到給定的 Self ">referenceFrom</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s) {</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">if</span> (body_ != s.body_) {</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; clear(body_);</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; body_ = s.body_;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; body_-&gt;attatch();</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; </div>
-<div class="line"><a name="l00197"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9"> 197</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9" title="比對兩個 Self 是否指向同一個reference">same</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">return</span> (body_ == s.body_);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; }</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; </div>
-<div class="line"><a name="l00209"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d"> 209</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d" title="比對兩個 Self 的內容是否一樣">equal</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9" title="比對兩個 Self 是否指向同一個reference">same</a>(s) || body_-&gt;access() == s.body_-&gt;access()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span> (body_-&gt;access()-&gt;equal(*(s.body_-&gt;access())));</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; }</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; </div>
-<div class="line"><a name="l00220"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c"> 220</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c" title="以reference作為判斷依據的小於判斷">referenceLess</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> (body_ &lt; s.body_);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Data&gt;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html"> 59</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> {</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8"> 64</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8" title="複製資料的方法">DuplicateType</a> {</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730"> 65</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730" title="跟一般的複製一樣">COPY_FROM</a>, </div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822"> 66</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822" title="參照, 執行完兩個Self會完全等效">REFERENCE_FROM</a>, </div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; };</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">class </span>Body {</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">struct </span>Kernel {</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; Data data_;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">int</span> counter_;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; Kernel( ): data_( ), counter_(1) { }</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; Kernel(Data <span class="keyword">const</span>&amp; data): data_(data), counter_(1) { }</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; ~Kernel() { }</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; };</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; Kernel* pointer_;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">int</span> counter_;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; Body( ): pointer_(new Kernel( )), counter_(1) { }</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; Body(Data <span class="keyword">const</span>&amp; d): pointer_(new Kernel(d)), counter_(1) { }</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; Body(Body <span class="keyword">const</span>&amp; b): pointer_(b.pointer_ ), counter_(1) {</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; ++pointer_-&gt;counter_;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; ~Body() {</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; pointer_-&gt;counter_--;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (pointer_-&gt;counter_ &lt;= 0) {</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keyword">delete</span> pointer_;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">int</span> attach() { <span class="keywordflow">return</span> ++counter_; }</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordtype">int</span> detach() { <span class="keywordflow">return</span> --counter_; }</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; Data <span class="keyword">const</span>* access()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> &amp;(pointer_-&gt;data_);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; Data* modify() {</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (pointer_-&gt;counter_ &gt; 1) {</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; --pointer_-&gt;counter_;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; pointer_ = <span class="keyword">new</span> Kernel(pointer_-&gt;data_);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> &amp;(pointer_-&gt;data_);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; };</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; Body* body_;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordtype">void</span> clear() {</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">if</span> (body-&gt;detach() &lt;= 0) {</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keyword">delete</span> body_;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00119"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d"> 119</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d" title="constructor, 並宣告一個實體">Self</a>(): body_(new Body()) {</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#af3220c1e1d7966c6dbaf4ec62f8cbc2f"> 129</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#af3220c1e1d7966c6dbaf4ec62f8cbc2f" title="connstructor, 宣告一個實體, 其中該實體的constructor用copy constructor">Self</a>(Data <span class="keyword">const</span>&amp; d): body_(new Body(d)) {</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#af98a65e83bb96c0860d91a5013b269ef"> 139</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#af98a65e83bb96c0860d91a5013b269ef" title="constructor, 使用給定的Self當作init value, 並且可以指定要用 reference還是copy">Self</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; b, <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8" title="複製資料的方法">DuplicateType</a> d = <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730" title="跟一般的複製一樣">COPY_FROM</a>) {</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">switch</span>(d) {</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730" title="跟一般的複製一樣">COPY_FROM</a>:</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; body_ = <span class="keyword">new</span> Body(*b.body_);</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822" title="參照, 執行完兩個Self會完全等效">REFERENCE_FROM</a>:</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; body_ = b.body_;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; body_-&gt;attatch();</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d" title="constructor, 並宣告一個實體">Self</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; b);</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc"> 155</a></span>&#160; <a class="code" href="classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc" title="解構子">~Self</a>() {</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; clear();</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99"> 160</a></span>&#160; Data <span class="keyword">const</span>* <a class="code" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99" title="回傳指向 Data const 的指標">operator-&gt;</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> body_-&gt;access();</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2"> 165</a></span>&#160; Data* <a class="code" href="classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2" title="回傳指向 Data 的指標, 如有需要, 這邊會做資料的duplicate">operator-&gt;</a>() {</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> body_-&gt;modify();</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6"> 170</a></span>&#160; <a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a>&amp; <a class="code" href="classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6" title="回傳非const型態的自己">operator()</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span> *((<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a>*)<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2"> 183</a></span>&#160; <a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s) {</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; Body* nw = <span class="keyword">new</span> Body(*s.body_);</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; clear();</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; body_ = nw;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d"> 200</a></span>&#160; <a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d" title="將自己reference 到給定的 Self ">referenceFrom</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s) {</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">if</span> (body_ != s.body_) {</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; clear(body_);</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; body_ = s.body_;</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; body_-&gt;attatch();</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; }</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e"> 216</a></span>&#160; <a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e" title="依據給定DuplicateType選擇要呼叫copyFrom還是referenceFrom">duplicateFrom</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s, <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8" title="複製資料的方法">DuplicateType</a> t) {</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">switch</span>(t) {</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730" title="跟一般的複製一樣">COPY_FROM</a> : <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(s);</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822" title="參照, 執行完兩個Self會完全等效">REFERENCE_FROM</a>: <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d" title="將自己reference 到給定的 Self ">referenceFrom</a>(s);</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; }</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; </div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675" title="將 operator= 給disable掉">operator=</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;};</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;} <span class="comment">// meow</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="preprocessor">#endif // Self_h__</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9"> 230</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9" title="比對兩個 Self 是否指向同一個reference">same</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> (body_ == s.body_);</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;</div>
+<div class="line"><a name="l00242"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d"> 242</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d" title="比對兩個 Self 的內容是否一樣">equal</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9" title="比對兩個 Self 是否指向同一個reference">same</a>(s) || body_-&gt;access() == s.body_-&gt;access()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">return</span> (*body_-&gt;access() == *s.body_-&gt;access());</div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; }</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div>
+<div class="line"><a name="l00253"></a><span class="lineno"><a class="code" href="classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c"> 253</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c" title="以reference作為判斷依據的小於判斷">referenceLess</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> (body_ &lt; s.body_);</div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; }</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675" title="將 operator= 給disable掉">operator=</a>(<a class="code" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a> <span class="keyword">const</span>&amp; a);</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;};</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="preprocessor">#endif // Self_h__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -182,7 +206,7 @@ $(document).ready(function(){initNavTree('Self_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="Self_8h.html">Self.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/SplayTree_8h.html b/doc/html/SplayTree_8h.html
index 885f6e5..a8ef570 100644
--- a/doc/html/SplayTree_8h.html
+++ b/doc/html/SplayTree_8h.html
@@ -94,7 +94,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="SplayTree_8h.html">SplayTree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/SplayTree_8h_source.html b/doc/html/SplayTree_8h_source.html
index 6a5027e..6be907d 100644
--- a/doc/html/SplayTree_8h_source.html
+++ b/doc/html/SplayTree_8h_source.html
@@ -78,7 +78,7 @@ $(document).ready(function(){initNavTree('SplayTree_8h_source.html','');});
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordtype">size_t</span> size_;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; Node* parent_;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; Node* child_[2];</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; Node(Key <span class="keyword">const</span>&amp; key, Value <span class="keyword">const</span>&amp; value):</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; key_(key), keyOffset_(0), value_(value) {</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; size_ = 1;</div>
@@ -455,7 +455,7 @@ $(document).ready(function(){initNavTree('SplayTree_8h_source.html','');});
<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; tree2-&gt;root_ = NULL;</div>
<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; }</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; </div>
+<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;</div>
<div class="line"><a name="l00532"></a><span class="lineno"><a class="code" href="classmeow_1_1SplayTree.html#a9f02a4ccc46616b7923c5834e02d53bc"> 532</a></span>&#160; Value&amp; <a class="code" href="classmeow_1_1SplayTree.html#a9f02a4ccc46616b7923c5834e02d53bc" title="就像stl::map::operator[]">operator[]</a>(Key <span class="keyword">const</span>&amp; key) {</div>
<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1SplayTree.html#a67dc7214cf9a89053e4b719f4d60cb4c" title="找出 Key= k 的Elemenet 並回傳. 找不到的話回傳 this-&gt;end() ">find</a>(key) == <a class="code" href="classmeow_1_1SplayTree.html#abcdab5caa27fecfd980595681381a4dc" title="回傳一個指向NULL的Element,">end</a>()) <a class="code" href="classmeow_1_1SplayTree.html#a0ae5e48da8d18ad8b2dc839d1c1b5582" title="插入一組(Key —&gt; Value)">insert</a>(key, Value());</div>
<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <span class="keywordflow">return</span> root_-&gt;value_;</div>
@@ -479,7 +479,7 @@ $(document).ready(function(){initNavTree('SplayTree_8h_source.html','');});
<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="keywordtype">size_t</span> size_;</div>
<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; Node* parent_;</div>
<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; Node* child_[2];</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; </div>
+<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;</div>
<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; Node(Key <span class="keyword">const</span>&amp; key, Value <span class="keyword">const</span>&amp; value):</div>
<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; valueOffset_(0), range_(value),</div>
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; key_(key), keyOffset_(0), value_(value) {</div>
@@ -785,7 +785,7 @@ $(document).ready(function(){initNavTree('SplayTree_8h_source.html','');});
<div class="line"><a name="l00952"></a><span class="lineno"><a class="code" href="classmeow_1_1SplayTree__Range.html#a86abc6a3a19f874e86fb29b75c212fce"> 952</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1SplayTree__Range.html#a86abc6a3a19f874e86fb29b75c212fce" title="回傳是否為空">empty</a>()<span class="keyword"> const</span>{</div>
<div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classmeow_1_1SplayTree__Range.html#afce0f36427e9105a3405176ed4eddf58" title="回傳資料個數">size</a>() == 0);</div>
<div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; }</div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; </div>
+<div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160;</div>
<div class="line"><a name="l00961"></a><span class="lineno"><a class="code" href="classmeow_1_1SplayTree__Range.html#a91272707629fcec7cc9fa60594334002"> 961</a></span>&#160; Value <a class="code" href="classmeow_1_1SplayTree__Range.html#a91272707629fcec7cc9fa60594334002" title="查找">query</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; <span class="keywordflow">if</span> (root_ == NULL) <span class="keywordflow">return</span> Value(0);</div>
<div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <span class="keywordflow">return</span> root_-&gt;range_;</div>
@@ -911,7 +911,7 @@ $(document).ready(function(){initNavTree('SplayTree_8h_source.html','');});
<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; tree2-&gt;root_ = NULL;</div>
<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; }</div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; </div>
+<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;</div>
<div class="line"><a name="l01138"></a><span class="lineno"><a class="code" href="classmeow_1_1SplayTree__Range.html#a2a4e8bffccdf807bfe6feb9d838ab44d"> 1138</a></span>&#160; Value&amp; <a class="code" href="classmeow_1_1SplayTree__Range.html#a2a4e8bffccdf807bfe6feb9d838ab44d" title="就像stl::map::operator[]">operator[]</a>(Key <span class="keyword">const</span>&amp; key) {</div>
<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1SplayTree__Range.html#a13c3591050f556251a33c03ce142acb1" title="找出 Key= k 的Elemenet 並回傳. 找不到的話回傳 this-&gt;end() ">find</a>(key) == <a class="code" href="classmeow_1_1SplayTree__Range.html#ad3aaed040f619a3b14c3f9b598b7fecc" title="回傳一個指向NULL的Element,">end</a>()) <a class="code" href="classmeow_1_1SplayTree__Range.html#a5e80acef8cd1a6732f5cfec65ab69d54" title="插入一組(Key —&gt; Value)">insert</a>(key, Value());</div>
<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160; <span class="keywordflow">return</span> root_-&gt;value_;</div>
@@ -932,7 +932,7 @@ $(document).ready(function(){initNavTree('SplayTree_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="SplayTree_8h.html">SplayTree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Transformation_8h.html b/doc/html/Transformation_8h.html
index c186c5a..c970b9c 100644
--- a/doc/html/Transformation_8h.html
+++ b/doc/html/Transformation_8h.html
@@ -56,13 +56,16 @@ $(document).ready(function(){initNavTree('Transformation_8h.html','');});
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
-<a href="#namespaces">Namespaces</a> </div>
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">Transformation.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="Matrix_8h_source.html">Matrix.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="Self_8h_source.html">../Self.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="Pipeline_8h_source.html">../Pipeline.h</a>&quot;</code><br/>
+<code>#include &lt;list&gt;</code><br/>
<code>#include &lt;cstdlib&gt;</code><br/>
</div>
<p><a href="Transformation_8h_source.html">Go to the source code of this file.</a></p>
@@ -72,12 +75,33 @@ Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Transformation.html">meow::Transformation&lt; Scalar &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A base class for implementing kinds of transformations. <a href="classmeow_1_1Transformation.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">a pipeline for transformations <a href="classmeow_1_1TransformatePipeline.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacemeow"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemeow.html">meow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aa667de06e306f0a462ae44fe3614f1e5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="Transformation_8h.html#aa667de06e306f0a462ae44fe3614f1e5">MySuper</a>&#160;&#160;&#160;Pipeline&lt;Matrix&lt;Scalar&gt;, Matrix&lt;Scalar&gt;, Transformate&lt;Scalar&gt; &gt;</td></tr>
+<tr class="separator:aa667de06e306f0a462ae44fe3614f1e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aa667de06e306f0a462ae44fe3614f1e5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MySuper&#160;&#160;&#160;Pipeline&lt;Matrix&lt;Scalar&gt;, Matrix&lt;Scalar&gt;, Transformate&lt;Scalar&gt; &gt;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -85,7 +109,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Transformation_8h.html">Transformation.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Transformation_8h.js b/doc/html/Transformation_8h.js
new file mode 100644
index 0000000..a5f1409
--- /dev/null
+++ b/doc/html/Transformation_8h.js
@@ -0,0 +1,6 @@
+var Transformation_8h =
+[
+ [ "Transformation", "classmeow_1_1Transformation.html", "classmeow_1_1Transformation" ],
+ [ "TransformatePipeline", "classmeow_1_1TransformatePipeline.html", "classmeow_1_1TransformatePipeline" ],
+ [ "MySuper", "Transformation_8h.html#aa667de06e306f0a462ae44fe3614f1e5", null ]
+]; \ No newline at end of file
diff --git a/doc/html/Transformation_8h_source.html b/doc/html/Transformation_8h_source.html
index 074e8a7..6be401e 100644
--- a/doc/html/Transformation_8h_source.html
+++ b/doc/html/Transformation_8h_source.html
@@ -63,112 +63,211 @@ $(document).ready(function(){initNavTree('Transformation_8h_source.html','');});
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Matrix_8h.html">Matrix.h</a>&quot;</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;../Self.h&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;../Pipeline.h&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Scalar&gt;</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html"> 20</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> {</div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">private</span>:</div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; <span class="keyword">struct </span>Myself {</div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <span class="keywordtype">size_t</span> inputRows_;</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="keywordtype">size_t</span> inputCols_;</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <span class="keywordtype">size_t</span> outputRows_;</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordtype">size_t</span> outputCols_;</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordtype">size_t</span> psize_;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; Myself&amp; <a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">copyFrom</a>(Myself <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; inputRows_ = b. inputRows_;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; inputCols_ = b. inputCols_;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; outputRows_ = b.outputRows_;</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; outputCols_ = b.outputCols_;</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; psize_ = b.psize_;</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; }</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; };</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;Myself&gt;</a> <span class="keyword">const</span> <span class="keyword">self</span>;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a129b2465033d0f6c8f57e4ee36c52b6c"> 49</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a129b2465033d0f6c8f57e4ee36c52b6c">Transformation</a>(<span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200" title="Return the number of rows of the input matrix.">inputRows</a>, <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13" title="Return the number of columns of the input matrix.">inputCols</a>,</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af" title="Return the number of rows of the output matrix.">outputRows</a>, <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8" title="Return the number of columns of the output matrix.">outputCols</a>,</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">size_t</span> psize): self(true) {</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">self</span>()-&gt; inputRows_ = inputRows;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">self</span>()-&gt; inputCols_ = inputCols;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">self</span>()-&gt;outputRows_ = outputRows;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">self</span>()-&gt;outputCols_ = outputCols;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">self</span>()-&gt;psize_ = psize;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
-<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#ac457f3968b21842afa72344e34e7ada2"> 63</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html#ac457f3968b21842afa72344e34e7ada2">Transformation</a>(<a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> <span class="keyword">const</span>&amp; b): self(false) {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">copyFrom</a>(b);</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
-<div class="line"><a name="l00073"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74"> 73</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a>&amp; <a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">copyFrom</a>(<a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">copyFrom</a>(b.self);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
-<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5"> 84</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a>&amp; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="Ceference from the specified one.">referenceFrom</a>(<a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="Ceference from the specified one.">referenceFrom</a>(b.self);</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00092"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a96471a49fe0b9737ad5b98b8e917385e"> 92</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Transformation.html#a96471a49fe0b9737ad5b98b8e917385e">~Transformation</a>() {</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200"> 100</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200" title="Return the number of rows of the input matrix.">inputRows</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;inputRows_;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13"> 109</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13" title="Return the number of columns of the input matrix.">inputCols</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;inputCols_;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af"> 118</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af" title="Return the number of rows of the output matrix.">outputRows</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;outputRows_;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8"> 127</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8" title="Return the number of columns of the output matrix.">outputCols</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;outputCols_;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
-<div class="line"><a name="l00136"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a2dedc054a656a962e8556472aa767dbb"> 136</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a2dedc054a656a962e8556472aa767dbb" title="Return the number of parameters.">parameterSize</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;psize_;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">virtual</span> Scalar <a class="code" href="classmeow_1_1Transformation.html#a09e71e5af508d7c0e09fdbeaacbe4365" title="Get the i -th parameter.">parameter</a>(<span class="keywordtype">size_t</span> i) <span class="keyword">const</span> = 0;</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">virtual</span> Scalar <a class="code" href="classmeow_1_1Transformation.html#a09e71e5af508d7c0e09fdbeaacbe4365" title="Get the i -th parameter.">parameter</a>(<span class="keywordtype">size_t</span> i, Scalar <span class="keyword">const</span>&amp; s) = 0;</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#aa0c299b9ad13020a9eb460de01378ddc" title="Do transformate.">transformate</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x) <span class="keyword">const</span> = 0;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a97b459877b4e508193071fa166a126c9"> 175</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a97b459877b4e508193071fa166a126c9" title="Calculate the jacobian matrix (derivate by the input matrix) of the transformation.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div>
-<div class="line"><a name="l00190"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a18590a4501b79a9ad38eb8fa3c966eb8"> 190</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a18590a4501b79a9ad38eb8fa3c966eb8" title="Calculate the jacobian matrix (derivate by the i -th parameter) of the transformation.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x, <span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; }</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
-<div class="line"><a name="l00199"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a71a1e75ebcf4d692cb9f0dcfeba1c1e4"> 199</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Transformation.html#a71a1e75ebcf4d692cb9f0dcfeba1c1e4" title="Return whether this transformation is inversable or not.">inversable</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div>
-<div class="line"><a name="l00207"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#aa9a476c677e7efc805c0fbdccfb48b38"> 207</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#aa9a476c677e7efc805c0fbdccfb48b38" title="Do the inverse transformation.">transformateInv</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; }</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a0186764bb80869bd80b81efb5bb1ee95"> 217</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a0186764bb80869bd80b81efb5bb1ee95" title="Return the jacobian matrix of the inverse transformation.">jacobianInv</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; }</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a4e7e3b24d0879eddc53951dfb357db0b"> 228</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a4e7e3b24d0879eddc53951dfb357db0b" title="Return the jacobian matrix of the inverse transformation.">jacobianInv</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x, <span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; }</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;};</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;}</div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Scalar&gt;</div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html"> 22</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> {</div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="keyword">struct </span>Myself {</div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <span class="keywordtype">size_t</span> inputRows_;</div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordtype">size_t</span> inputCols_;</div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordtype">size_t</span> outputRows_;</div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordtype">size_t</span> outputCols_;</div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordtype">size_t</span> psize_;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; Myself() {</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; Myself(Myself <span class="keyword">const</span>&amp; b):</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; inputRows_(b.inputRows_), inputCols_(b.inputCols_),</div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; outputRows_(b.outputRows_), outputCols_(b.outputCols_),</div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; psize_(b.psize_) {</div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; }</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; Myself(<span class="keywordtype">size_t</span> ir, <span class="keywordtype">size_t</span> ic, <span class="keywordtype">size_t</span> or_, <span class="keywordtype">size_t</span> oc, <span class="keywordtype">size_t</span> ps):</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; inputRows_(ir), inputCols_(ic), outputRows_(or_), outputCols_(oc),</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; psize_(ps) {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; }</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; ~Myself() {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; };</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="classmeow_1_1Self.html">Self&lt;Myself&gt;</a> <span class="keyword">const</span> <span class="keyword">self</span>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a129b2465033d0f6c8f57e4ee36c52b6c"> 56</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a129b2465033d0f6c8f57e4ee36c52b6c">Transformation</a>(<span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200" title="Return the number of rows of the input matrix.">inputRows</a>, <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13" title="Return the number of columns of the input matrix.">inputCols</a>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af" title="Return the number of rows of the output matrix.">outputRows</a>, <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8" title="Return the number of columns of the output matrix.">outputCols</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">size_t</span> psize):</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; self(Myself(inputRows, inputCols, outputRows, outputCols, psize)) {</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#ac457f3968b21842afa72344e34e7ada2"> 66</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html#ac457f3968b21842afa72344e34e7ada2">Transformation</a>(<a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> <span class="keyword">const</span>&amp; b): self(b.self, COPY_FROM) {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74"> 75</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a>&amp; <a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">copyFrom</a>(<a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">copyFrom</a>(b.self);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5"> 86</a></span>&#160; <a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a>&amp; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="reference from the specified one">referenceFrom</a>(<a class="code" href="classmeow_1_1Transformation.html" title="A base class for implementing kinds of transformations.">Transformation</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="reference from the specified one">referenceFrom</a>(b.self);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a96471a49fe0b9737ad5b98b8e917385e"> 94</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Transformation.html#a96471a49fe0b9737ad5b98b8e917385e">~Transformation</a>() {</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200"> 102</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200" title="Return the number of rows of the input matrix.">inputRows</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;inputRows_;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; }</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13"> 111</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13" title="Return the number of columns of the input matrix.">inputCols</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;inputCols_;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af"> 120</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af" title="Return the number of rows of the output matrix.">outputRows</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;outputRows_;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8"> 129</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8" title="Return the number of columns of the output matrix.">outputCols</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;outputCols_;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a2dedc054a656a962e8556472aa767dbb"> 138</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Transformation.html#a2dedc054a656a962e8556472aa767dbb" title="Return the number of parameters.">parameterSize</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;psize_;</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">virtual</span> Scalar <a class="code" href="classmeow_1_1Transformation.html#a09e71e5af508d7c0e09fdbeaacbe4365" title="Get the i -th parameter.">parameter</a>(<span class="keywordtype">size_t</span> i) <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">virtual</span> Scalar <a class="code" href="classmeow_1_1Transformation.html#a09e71e5af508d7c0e09fdbeaacbe4365" title="Get the i -th parameter.">parameter</a>(<span class="keywordtype">size_t</span> i, Scalar <span class="keyword">const</span>&amp; s) = 0;</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#aa0c299b9ad13020a9eb460de01378ddc" title="Do transformate.">transformate</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x) <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a97b459877b4e508193071fa166a126c9"> 177</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a97b459877b4e508193071fa166a126c9" title="Calculate the jacobian matrix (derivate by the input matrix) of the transformation.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a18590a4501b79a9ad38eb8fa3c966eb8"> 192</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a18590a4501b79a9ad38eb8fa3c966eb8" title="Calculate the jacobian matrix (derivate by the i -th parameter) of the transformation.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x, <span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a71a1e75ebcf4d692cb9f0dcfeba1c1e4"> 201</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Transformation.html#a71a1e75ebcf4d692cb9f0dcfeba1c1e4" title="Return whether this transformation is inversable or not.">inversable</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div>
+<div class="line"><a name="l00209"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#aa9a476c677e7efc805c0fbdccfb48b38"> 209</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#aa9a476c677e7efc805c0fbdccfb48b38" title="Do the inverse transformation.">transformateInv</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; }</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a0186764bb80869bd80b81efb5bb1ee95"> 219</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a0186764bb80869bd80b81efb5bb1ee95" title="Return the jacobian matrix of the inverse transformation.">jacobianInv</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"><a class="code" href="classmeow_1_1Transformation.html#a4e7e3b24d0879eddc53951dfb357db0b"> 230</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Transformation.html#a4e7e3b24d0879eddc53951dfb357db0b" title="Return the jacobian matrix of the inverse transformation.">jacobianInv</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x, <span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;};</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="preprocessor">#endif // math_Transformation_H__</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Scalar&gt;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html"> 239</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1TransformatePipeline.html" title="a pipeline for transformations">TransformatePipeline</a>:</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="keyword">public</span> <a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a>&lt;Matrix&lt;Scalar&gt;, Matrix&lt;Scalar&gt;, Transformate&lt;Scalar&gt; &gt; {</div>
+<div class="line"><a name="l00241"></a><span class="lineno"><a class="code" href="Transformation_8h.html#aa667de06e306f0a462ae44fe3614f1e5"> 241</a></span>&#160;<span class="preprocessor">#define MySuper Pipeline&lt;Matrix&lt;Scalar&gt;, Matrix&lt;Scalar&gt;, Transformate&lt;Scalar&gt; &gt;</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="preprocessor"></span><span class="keyword">private</span>:</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keyword">typedef</span> MySuper::MediumPointerIteratorK TransformationPIterK;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="keyword">public</span>: </div>
+<div class="line"><a name="l00248"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b"> 248</a></span>&#160; <a class="code" href="classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b" title="constructor">TransformatePipeline</a>() {</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; </div>
+<div class="line"><a name="l00254"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20"> 254</a></span>&#160; <a class="code" href="classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20" title="copy constructor">TransrormatePipeline</a>(<a class="code" href="classmeow_1_1TransformatePipeline.html" title="a pipeline for transformations">TransformatePipeline</a> <span class="keyword">const</span>&amp; b):</div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a>&lt;<a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&lt;Scalar&gt;, <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a>&lt;Scalar&gt;, Transformate&lt;Scalar&gt; &gt;(b) {</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; </div>
+<div class="line"><a name="l00261"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09"> 261</a></span>&#160; <a class="code" href="classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09" title="destructor">~TransformatePipeline</a>() {</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; }</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; </div>
+<div class="line"><a name="l00267"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c"> 267</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c" title="return the number of rows of the input matrix">inputRows</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">return</span> front()-&gt;inputRows();</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; }</div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; </div>
+<div class="line"><a name="l00274"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae"> 274</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae" title="return the number of columns of the input matrix">inputCols</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> front()-&gt;inputCols();</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; </div>
+<div class="line"><a name="l00281"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97"> 281</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97" title="return the number of rows of the output matrix">outputRows</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">return</span> front()-&gt;outputRows();</div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; </div>
+<div class="line"><a name="l00288"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad"> 288</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad" title="return the number of columns of the output matrix">outputCols</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">return</span> front()-&gt;outputCols();</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; }</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; </div>
+<div class="line"><a name="l00305"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a"> 305</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a" title="add a transformation to the front of this pipeline">frontAdd</a>(Transformate&lt;Scalar&gt; <span class="keyword">const</span>* ptr, <span class="keywordtype">bool</span> auto_delete) {</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7" title="same as (size() == 0)">empty</a>() &amp;&amp; (<a class="code" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9" title="get the const-pointer of the first medium">first</a>()-&gt;<a class="code" href="classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c" title="return the number of rows of the input matrix">inputRows</a>() != ptr-&gt;outputRows() ||</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9" title="get the const-pointer of the first medium">first</a>()-&gt;inputCols() != ptr-&gt;outputCols()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; MySuper::frontAdd(ptr, auto_delete);</div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; </div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; }</div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; </div>
+<div class="line"><a name="l00325"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb"> 325</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb" title="add a transformation to the front of this pipeline">backAdd</a>(Transformate&lt;Scalar&gt; <span class="keyword">const</span>* ptr, <span class="keywordtype">bool</span> auto_delete) {</div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7" title="same as (size() == 0)">empty</a>() &amp;&amp; (<a class="code" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234" title="get the const-pointer of the last medium">last</a>()-&gt;<a class="code" href="classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97" title="return the number of rows of the output matrix">outputRows</a>() != ptr-&gt;inputRows() ||</div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <a class="code" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234" title="get the const-pointer of the last medium">last</a>()-&gt;outputCols() != ptr-&gt;inputCols()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; MySuper::backAdd(ptr, auto_delete);</div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; </div>
+<div class="line"><a name="l00334"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb"> 334</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb" title="same as transformate(input) ">goThrough</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; input)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855" title="Do a series of transformations.">transformate</a>(input);</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; </div>
+<div class="line"><a name="l00344"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855"> 344</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855" title="Do a series of transformations.">transformate</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; input)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(input);</div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">for</span> (TransformationPIterK</div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; it = <a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3" title="return const-reference of the pipe list">pipe</a>().front(), ed = <a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3" title="return const-reference of the pipe list">pipe</a>().end(); it != ed; ++it) {</div>
+<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; ret = (*it).transformate(ret);</div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; }</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; </div>
+<div class="line"><a name="l00390"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f"> 390</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f" title="return the jacobian matrix of the transformations, which derivate by the i -th entry of the input vec...">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; input, <span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1" title="return how many medium in this pipeline">size</a>() == 0) {</div>
+<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0, J = input.dimension(); ++j) {</div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; input.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(j, (j == i ? Scalar(1) : Scalar(0)));</div>
+<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; }</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">return</span> input;</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; }</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; TransformationPIterK it = <a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3" title="return const-reference of the pipe list">pipe</a>().front(), ed = <a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3" title="return const-reference of the pipe list">pipe</a>().end();</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret((*it).jacobian(input).col(i));</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> tmp((*it).transformate(input));</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">for</span> (++it; it != ed; ++it) {</div>
+<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; tmp = (*it).transformate(tmp);</div>
+<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; ret = tmp * ret;</div>
+<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; }</div>
+<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; }</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; </div>
+<div class="line"><a name="l00437"></a><span class="lineno"><a class="code" href="classmeow_1_1TransformatePipeline.html#a6299f8399a390371f4665c6800da0fc2"> 437</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f" title="return the jacobian matrix of the transformations, which derivate by the i -th entry of the input vec...">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; input,</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordtype">size_t</span> i, <span class="keywordtype">size_t</span> j)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">if</span> (i &gt;= <a class="code" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1" title="return how many medium in this pipeline">size</a>()) <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a>();</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(input);</div>
+<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordtype">size_t</span> i_now = 0;</div>
+<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; TransformationPIterK it = <a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3" title="return const-reference of the pipe list">pipe</a>().front(), ed = <a class="code" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3" title="return const-reference of the pipe list">pipe</a>().end();</div>
+<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">for</span> ( ; i_now &lt; i; ++i_now, ++it) {</div>
+<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; ret = (*it).transformate(ret);</div>
+<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div>
+<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix</a> tmp((*it).transformate(ret));</div>
+<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; ret = (*it).jacobian(ret, j);</div>
+<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">for</span> (++i_now; it != ed; ++it, ++i_now) {</div>
+<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; tmp = (*it).transformate(tmp);</div>
+<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; ret = tmp * ret;</div>
+<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; }</div>
+<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; }</div>
+<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; </div>
+<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="preprocessor">#undef MySuper</span></div>
+<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="preprocessor"></span>};</div>
+<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;</div>
+<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;<span class="preprocessor">#endif // math_Transformation_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -176,7 +275,7 @@ $(document).ready(function(){initNavTree('Transformation_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Transformation_8h.html">Transformation.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Transformations_8h.html b/doc/html/Transformations_8h.html
index 13b69a8..fae0be8 100644
--- a/doc/html/Transformations_8h.html
+++ b/doc/html/Transformations_8h.html
@@ -90,7 +90,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Transformations_8h.html">Transformations.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Transformations_8h_source.html b/doc/html/Transformations_8h_source.html
index 5dd1481..e51bb8e 100644
--- a/doc/html/Transformations_8h_source.html
+++ b/doc/html/Transformations_8h_source.html
@@ -114,7 +114,7 @@ $(document).ready(function(){initNavTree('Transformations_8h_source.html','');})
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; </div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="code" href="classmeow_1_1BallProjection.html#adaf8d494c1177664f49bb63a5d2f36b0"> 115</a></span>&#160; <a class="code" href="classmeow_1_1BallProjection.html" title="A ball projection is to project the given vector to a hyper-sphere.">BallProjection</a>&amp; <a class="code" href="classmeow_1_1BallProjection.html#adaf8d494c1177664f49bb63a5d2f36b0" title="Reference settings from another one.">referenceFrom</a>(<a class="code" href="classmeow_1_1BallProjection.html" title="A ball projection is to project the given vector to a hyper-sphere.">BallProjection</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="Ceference from the specified one.">Transformation&lt;Scalar&gt;::referenceFrom</a>(b);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="reference from the specified one">Transformation&lt;Scalar&gt;::referenceFrom</a>(b);</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classmeow_1_1BallProjection.html#adaf8d494c1177664f49bb63a5d2f36b0" title="Reference settings from another one.">referenceFrom</a>(b);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div>
@@ -230,77 +230,82 @@ $(document).ready(function(){initNavTree('Transformations_8h_source.html','');})
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; }</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; </div>
<div class="line"><a name="l00379"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46"> 379</a></span>&#160; <a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a>&amp; <a class="code" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46">copyFrom</a>(<a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">Transformation&lt;Scalar&gt;::copyFrom</a>(b);</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46">copyFrom</a>(b.self);</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; }</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; </div>
-<div class="line"><a name="l00390"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52"> 390</a></span>&#160; <a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a>&amp; <a class="code" href="classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52">referenceFrom</a>(<a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="Ceference from the specified one.">Transformation&lt;Scalar&gt;::referenceFrom</a>(b);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52">referenceFrom</a>(b.self);</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; }</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;</div>
-<div class="line"><a name="l00399"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a3499d5c76df3c78028f3e1b7d8cb48e6"> 399</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#a3499d5c76df3c78028f3e1b7d8cb48e6" title="Same as focal() ">parameter</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>();</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; }</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div>
-<div class="line"><a name="l00406"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#adecf5a6f3f1f07d7fc6b4714fa80e8a1"> 406</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#adecf5a6f3f1f07d7fc6b4714fa80e8a1" title="Same as focal(s) ">parameter</a>(<span class="keywordtype">size_t</span> i, Scalar <span class="keyword">const</span>&amp; s){</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>(s);</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; }</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;</div>
-<div class="line"><a name="l00414"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5"> 414</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;focal_;</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; }</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div>
-<div class="line"><a name="l00424"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13"> 424</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13" title="Set the focal length.">focal</a>(Scalar <span class="keyword">const</span>&amp; f){</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keyword">self</span>()-&gt;focal_ = f;</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>();</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; }</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; </div>
-<div class="line"><a name="l00432"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce"> 432</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;dimension_;</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;</div>
-<div class="line"><a name="l00453"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f"> 453</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f" title="Project the input vector(s) onto the plane.">transformate</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(x);</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = ret.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; ret(i, c, -ret(i, c) * <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>() / ret(I - 1, c));</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; }</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; }</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; </div>
-<div class="line"><a name="l00492"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3"> 492</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3" title="Return the jacobian matrix (derivate by the input vector) of this projection.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const</span>{</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(<a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(), <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(), Scalar(0.0));</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordflow">for</span>(ssize_t i = 0, I = (ssize_t)<a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>() - 1; i &lt; I; i++){</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; ret(i, i, -<a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>() / x(I, 0) );</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; ret(i, <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>() - 1, <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>() / <a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(x(I, 0)));</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; }</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; }</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; </div>
-<div class="line"><a name="l00531"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d"> 531</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d" title="Return the jacobian matrix (derivate by the focus length) of this projection.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x, <span class="keywordtype">size_t</span> i)<span class="keyword"> const</span>{</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(<a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(), 1, Scalar(0.0));</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0, I = <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(); i &lt; I; ++i) {</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; ret(i, 0, -x(i, 0) / x(I - 1, 0));</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; }</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; }</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; </div>
-<div class="line"><a name="l00542"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90"> 542</a></span>&#160; <a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a>&amp; <a class="code" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90" title="Same as copyFrom(b) ">operator=</a>(<a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a> <span class="keyword">const</span>&amp; b) {</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46">copyFrom</a>(b);</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; }</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; </div>
-<div class="line"><a name="l00549"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#aa50f02a71f9be0b417b0dc9f8ff5d9ab"> 549</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#aa50f02a71f9be0b417b0dc9f8ff5d9ab" title="Same as transformate(v) ">operator()</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f" title="Project the input vector(s) onto the plane.">transformate</a>(v);</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; }</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;};</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;}</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;<span class="preprocessor">#endif // Transformations_H__</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; printf(<span class="stringliteral">&quot;+\n&quot;</span>);</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74" title="Copy from the specified one.">Transformation&lt;Scalar&gt;::copyFrom</a>(b);</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; printf(<span class="stringliteral">&quot;-\n&quot;</span>);</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keyword">self</span>();</div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; printf(<span class="stringliteral">&quot;*\n&quot;</span>);</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46">copyFrom</a>(b.self);</div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; printf(<span class="stringliteral">&quot;/\n&quot;</span>);</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; }</div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; </div>
+<div class="line"><a name="l00395"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52"> 395</a></span>&#160; <a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a>&amp; <a class="code" href="classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52">referenceFrom</a>(<a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5" title="reference from the specified one">Transformation&lt;Scalar&gt;::referenceFrom</a>(b);</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keyword">self</span>().<a class="code" href="classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52">referenceFrom</a>(b.self);</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; }</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;</div>
+<div class="line"><a name="l00404"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a3499d5c76df3c78028f3e1b7d8cb48e6"> 404</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#a3499d5c76df3c78028f3e1b7d8cb48e6" title="Same as focal() ">parameter</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>();</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; }</div>
+<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;</div>
+<div class="line"><a name="l00411"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#adecf5a6f3f1f07d7fc6b4714fa80e8a1"> 411</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#adecf5a6f3f1f07d7fc6b4714fa80e8a1" title="Same as focal(s) ">parameter</a>(<span class="keywordtype">size_t</span> i, Scalar <span class="keyword">const</span>&amp; s){</div>
+<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>(s);</div>
+<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; }</div>
+<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div>
+<div class="line"><a name="l00419"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5"> 419</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;focal_;</div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; }</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;</div>
+<div class="line"><a name="l00429"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13"> 429</a></span>&#160; Scalar <a class="code" href="classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13" title="Set the focal length.">focal</a>(Scalar <span class="keyword">const</span>&amp; f){</div>
+<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keyword">self</span>()-&gt;focal_ = f;</div>
+<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>();</div>
+<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; }</div>
+<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; </div>
+<div class="line"><a name="l00437"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce"> 437</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;dimension_;</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; }</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;</div>
+<div class="line"><a name="l00458"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f"> 458</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f" title="Project the input vector(s) onto the plane.">transformate</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(x);</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> c = 0, C = ret.<a class="code" href="classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df" title="Return number of cols.">cols</a>(); c &lt; C; c++) {</div>
+<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; ret(i, c, -ret(i, c) * <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>() / ret(I - 1, c));</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; }</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; }</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; }</div>
+<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; </div>
+<div class="line"><a name="l00497"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3"> 497</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3" title="Return the jacobian matrix (derivate by the input vector) of this projection.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x)<span class="keyword"> const</span>{</div>
+<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(<a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(), <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(), Scalar(0.0));</div>
+<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="keywordflow">for</span>(ssize_t i = 0, I = (ssize_t)<a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>() - 1; i &lt; I; i++){</div>
+<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; ret(i, i, -<a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>() / x(I, 0) );</div>
+<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; ret(i, <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>() - 1, <a class="code" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5" title="Get the focal length.">focal</a>() / <a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(x(I, 0)));</div>
+<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; }</div>
+<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; }</div>
+<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; </div>
+<div class="line"><a name="l00536"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d"> 536</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d" title="Return the jacobian matrix (derivate by the focus length) of this projection.">jacobian</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; x, <span class="keywordtype">size_t</span> i)<span class="keyword"> const</span>{</div>
+<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(<a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(), 1, Scalar(0.0));</div>
+<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0, I = <a class="code" href="classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce" title="Get the dimension of this projection.">dimension</a>(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; ret(i, 0, -x(i, 0) / x(I - 1, 0));</div>
+<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; }</div>
+<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; }</div>
+<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; </div>
+<div class="line"><a name="l00547"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90"> 547</a></span>&#160; <a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a>&amp; <a class="code" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90" title="Same as copyFrom(b) ">operator=</a>(<a class="code" href="classmeow_1_1PhotoProjection.html" title="A photo projection is a kind of transformation that project point/vector to a flat photo...">PhotoProjection</a> <span class="keyword">const</span>&amp; b) {</div>
+<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46">copyFrom</a>(b);</div>
+<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; }</div>
+<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; </div>
+<div class="line"><a name="l00554"></a><span class="lineno"><a class="code" href="classmeow_1_1PhotoProjection.html#aa50f02a71f9be0b417b0dc9f8ff5d9ab"> 554</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1PhotoProjection.html#aa50f02a71f9be0b417b0dc9f8ff5d9ab" title="Same as transformate(v) ">operator()</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f" title="Project the input vector(s) onto the plane.">transformate</a>(v);</div>
+<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; }</div>
+<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;};</div>
+<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div>
+<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;}</div>
+<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;</div>
+<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;<span class="preprocessor">#endif // Transformations_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -308,7 +313,7 @@ $(document).ready(function(){initNavTree('Transformations_8h_source.html','');})
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Transformations_8h.html">Transformations.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Usage_8h.html b/doc/html/Usage_8h.html
index d37a5da..87f94da 100644
--- a/doc/html/Usage_8h.html
+++ b/doc/html/Usage_8h.html
@@ -66,8 +66,6 @@ $(document).ready(function(){initNavTree('Usage_8h.html','');});
<code>#include &lt;string&gt;</code><br/>
<code>#include &lt;vector&gt;</code><br/>
<code>#include &lt;map&gt;</code><br/>
-<code>#include &lt;algorithm&gt;</code><br/>
-<code>#include &lt;unistd.h&gt;</code><br/>
</div>
<p><a href="Usage_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
@@ -89,7 +87,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="Usage_8h.html">Usage.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Usage_8h_source.html b/doc/html/Usage_8h_source.html
index 685cf4a..550598e 100644
--- a/doc/html/Usage_8h_source.html
+++ b/doc/html/Usage_8h_source.html
@@ -68,334 +68,345 @@ $(document).ready(function(){initNavTree('Usage_8h_source.html','');});
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;}</div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">namespace </span>meow {</div>
-<div class="line"><a name="l00030"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html"> 30</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> {</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">private</span>:</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keyword">typedef</span> std::string String;</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">typedef</span> std::vector&lt;String&gt; Strings;</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keyword">class </span>Value {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; String value_;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; String description_;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; Value() {</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; }</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; Value(String <span class="keyword">const</span>&amp; value, String <span class="keyword">const</span>&amp; description) {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; value_ = value;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; description_ = <a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(description, <span class="stringliteral">&quot;&lt;value&gt;&quot;</span>, value);</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; }</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;%8s%s : %s\n&quot;</span>,</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="stringliteral">&quot; &quot;</span>, value_.c_str(), description_.c_str());</div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html"> 25</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> {</div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keyword">typedef</span> std::string String;</div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keyword">typedef</span> std::vector&lt;String&gt; Strings;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">class </span>Value {</div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; String value_;</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; String description_;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; Value() { }</div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; Value(String <span class="keyword">const</span>&amp; value, String <span class="keyword">const</span>&amp; description) {</div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; value_ = value;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; description_ = <a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(description, <span class="stringliteral">&quot;&lt;value&gt;&quot;</span>, value);</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;%8s%s : %s\n&quot;</span>,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="stringliteral">&quot; &quot;</span>, value_.c_str(), description_.c_str());</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; String value()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">return</span> value_;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; }</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordtype">bool</span> operator==(Value <span class="keyword">const</span>&amp; b)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">return</span> (value_ == b.value_);</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; String value()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">return</span> value_;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">bool</span> operator==(Value <span class="keyword">const</span>&amp; b)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">return</span> (value_ == b.value_);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; };</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">typedef</span> std::vector&lt;Value&gt; Values;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">class </span>Option {</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; Strings values_;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; Values values_accept_;</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; String value_default_;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; String value_type_;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; String description_;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">bool</span> has_value_;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">bool</span> has_setup_;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordtype">bool</span> must_setup_;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; Option() {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; };</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">typedef</span> std::vector&lt;Value&gt; Values;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">class </span>Option {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; Strings values_;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; Values values_accept_;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; String value_default_;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; String value_type_;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; String description_;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">bool</span> has_value_;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordtype">bool</span> has_setup_;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">bool</span> must_setup_;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; Option() {</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; Option(String <span class="keyword">const</span>&amp; description) {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; has_setup_ = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; has_value_ = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; description_ = description;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; must_setup_ = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; Option(String <span class="keyword">const</span>&amp; description) {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; has_setup_ = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; has_value_ = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; description_ = description;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; must_setup_ = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; Option(String <span class="keyword">const</span>&amp; description, </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; String <span class="keyword">const</span>&amp; type,</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; String <span class="keyword">const</span>&amp; default_value,</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">bool</span> must) {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; has_setup_ = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; has_value_ = <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; description_ = description;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; value_type_ = type;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; value_default_ = default_value;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; must_setup_ = must;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; Strings <span class="keyword">const</span>&amp; values()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> values_;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; String value(<span class="keywordtype">size_t</span> index)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">if</span> (!has_value_) <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">if</span> (!has_setup_ || index &gt;= values_.size()) <span class="keywordflow">return</span> value_default_;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">return</span> values_[index];</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; ssize_t valueAdd(String <span class="keyword">const</span>&amp; value) {</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (!has_value_) {</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; has_setup_ = <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (values_accept_.size() &gt; 0 &amp;&amp;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; std::find(values_accept_.begin(), values_accept_.end(),</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; Value(value, <span class="stringliteral">&quot;&quot;</span>)) == values_accept_.end())</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; values_.push_back(value);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; has_setup_ = <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> values_.size() - 1;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordtype">bool</span> valueAcceptAdd(String <span class="keyword">const</span>&amp; value, String <span class="keyword">const</span>&amp; description) {</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">if</span> (!has_value_) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">if</span> (std::find(values_accept_.begin(), values_accept_.end(),</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; Value(value, <span class="stringliteral">&quot;&quot;</span>)) == values_accept_.end()){</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; values_accept_.push_back(Value(value, description));</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; Option(String <span class="keyword">const</span>&amp; description,</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; String <span class="keyword">const</span>&amp; type,</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; String <span class="keyword">const</span>&amp; default_value,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">bool</span> must) {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; has_setup_ = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; has_value_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; description_ = description;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; value_type_ = type;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; value_default_ = default_value;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; must_setup_ = must;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; Strings <span class="keyword">const</span>&amp; values()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> values_;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; String value(<span class="keywordtype">size_t</span> index)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">if</span> (!has_value_) <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">if</span> (!has_setup_ || index &gt;= values_.size()) <span class="keywordflow">return</span> value_default_;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> values_[index];</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; ssize_t valueAdd(String <span class="keyword">const</span>&amp; value) {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (!has_value_) {</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; has_setup_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span> (values_accept_.size() &gt; 0 &amp;&amp;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; std::find(values_accept_.begin(), values_accept_.end(),</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; Value(value, <span class="stringliteral">&quot;&quot;</span>)) == values_accept_.end())</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span> -1;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; values_.push_back(value);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; has_setup_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> values_.size() - 1;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordtype">bool</span> valueAcceptAdd(String <span class="keyword">const</span>&amp; value, String <span class="keyword">const</span>&amp; description) {</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">if</span> (!has_value_) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (std::find(values_accept_.begin(), values_accept_.end(),</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; Value(value, <span class="stringliteral">&quot;&quot;</span>)) == values_accept_.end()) {</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; values_accept_.push_back(Value(value, description));</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordtype">bool</span> valueAcceptChk(String <span class="keyword">const</span>&amp; value) {</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (!has_value_) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> (values_accept_.empty() ||</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; std::find(values_accept_.begin(), values_accept_.end(),</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; Value(value, <span class="stringliteral">&quot;&quot;</span>)) != values_accept_.end());</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordtype">bool</span> valueAcceptChk(String <span class="keyword">const</span>&amp; value){</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span> (!has_value_) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span> (values_accept_.size() == 0) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> (std::find(values_accept_.begin(), values_accept_.end(),</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; Value(value, <span class="stringliteral">&quot;&quot;</span>)) != values_accept_.end());</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordtype">bool</span> hasSetup()<span class="keyword"> const</span>{ <span class="keywordflow">return</span> has_setup_; }</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordtype">bool</span> hasValue()<span class="keyword"> const</span>{ <span class="keywordflow">return</span> has_value_; }</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">bool</span> chkSetup()<span class="keyword"> const</span>{ <span class="keywordflow">return</span> !(must_setup_ &amp;&amp; !has_setup_); }</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> opt, <span class="keywordtype">bool</span> detail)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; String ret(<a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;-%c &quot;</span>, opt));</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span> (!detail) {</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span> (has_value_) ret += value_type_;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (!must_setup_) ret = <span class="stringliteral">&quot;[&quot;</span> + ret + <span class="stringliteral">&quot;]&quot;</span>;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; } <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (has_value_) {</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; ret += value_type_ + <span class="stringliteral">&quot; &quot;</span>;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; String default_string(<span class="stringliteral">&quot;&quot;</span>);</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (value_default_ != <span class="stringliteral">&quot;&quot;</span>) </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; default_string = <span class="stringliteral">&quot;defalut=&#39;&quot;</span> + value_default_ + <span class="stringliteral">&quot;&#39;&quot;</span>;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; String optional_string(<span class="stringliteral">&quot;&quot;</span>);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span> (!must_setup_)</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; optional_string = <span class="stringliteral">&quot;optional&quot;</span>;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; String tmp;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">if</span> (default_string.size() + optional_string.size() &gt; 0) {</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">if</span> (default_string.size() &gt; 0 &amp;&amp; optional_string.size() &gt; 0) {</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; ret += <span class="stringliteral">&quot;(&quot;</span> + optional_string + <span class="stringliteral">&quot;, &quot;</span> + default_string + <span class="stringliteral">&quot;)&quot;</span>;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; } <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; ret += <span class="stringliteral">&quot;(&quot;</span> + optional_string + default_string + <span class="stringliteral">&quot;)&quot;</span>;</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; ret += <span class="stringliteral">&quot;\n&quot;</span>;</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; String accept_string;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; values_accept_.size(); i++) {</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">if</span> (i &gt; 0)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; accept_string += (i + 1 &lt; values_accept_.size()</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; ? <span class="stringliteral">&quot;, &quot;</span> : <span class="stringliteral">&quot; or &quot;</span>);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; accept_string += <span class="stringliteral">&quot;&#39;&quot;</span> + values_accept_[i].value() + <span class="stringliteral">&quot;&#39;&quot;</span>;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; }</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span> (accept_string.size() == 0) accept_string = <span class="stringliteral">&quot;... (anything)&quot;</span>;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; ret += <span class="stringliteral">&quot; &quot;</span> + <a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(<a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(description_,</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="stringliteral">&quot;&lt;type&gt;&quot;</span>,</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; value_type_),</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="stringliteral">&quot;&lt;values&gt;&quot;</span>,</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; accept_string) + <span class="stringliteral">&quot;\n&quot;</span>;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; values_accept_.size(); i++) {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; ret += values_accept_[i].usage();</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; ret += <span class="stringliteral">&quot;\n&quot;</span>;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; };</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keyword">typedef</span> std::map&lt;unsigned char, Option&gt; Options;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keyword">typedef</span> Options::const_iterator OptionsIterator;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; String name_;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; Options options_;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; Strings usage_begin_;</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; Strings usage_end_;</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; Strings proc_arguments_;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00186"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400"> 186</a></span>&#160; <a class="code" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400" title="constructor">Usage</a>() {</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div>
-<div class="line"><a name="l00194"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649"> 194</a></span>&#160; <a class="code" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649" title="constructor">Usage</a>(String <span class="keyword">const</span>&amp; name) {</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; name_ = name;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div>
-<div class="line"><a name="l00204"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db"> 204</a></span>&#160; <a class="code" href="classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db" title="constructor">Usage</a>(<a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>) {</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; name_ = usage.name_;</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; options_ = usage.options_;</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; usage_begin_ = usage.usage_begin_;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; usage_end_ = usage.usage_end_;</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; proc_arguments_ = usage.proc_arguments_;</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;</div>
-<div class="line"><a name="l00218"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#ad7db9a4197d9b281c47df0800ed63df0"> 218</a></span>&#160; <span class="keywordtype">bool</span> <span class="keyword">import</span>(<a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>) {</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">for</span> (OptionsIterator</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; it = <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.begin(); it != <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.end(); ++it) {</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">if</span> (options_.find(it-&gt;first) != options_.end())</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; }</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keywordflow">for</span> (OptionsIterator</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; it = <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.begin(); it != <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.end(); ++it) {</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; options_[it-&gt;first] = it-&gt;second;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_begin_.size(); ++i)</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; usage_begin_.push_back(<a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_begin_[i]);</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_end_.size(); ++i)</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; usage_end_.push_back(<a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_end_[i]);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; }</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241"> 241</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241" title="將另一個usage的選項設置加進來">update</a>(<a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>) {</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">for</span> (OptionsIterator</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; it = usage.options_.begin(); it != usage.options_.end(); ++it) {</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">if</span> (options_.find(it-&gt;first) == options_.end()) <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0, I = it-&gt;second.values().size(); i &lt; I; i++){</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; options_[it-&gt;first].valueAdd(it-&gt;second.value(i));</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div>
-<div class="line"><a name="l00259"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a1fbd15f59f3fdbe5e817d540505d6d6c"> 259</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#a1fbd15f59f3fdbe5e817d540505d6d6c" title="新增一個沒有額外選項的選項">optionAdd</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> opt, String <span class="keyword">const</span>&amp; des) {</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">if</span> (options_.find(opt) != options_.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; options_[opt] = Option(des);</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#af5a6f3dc4d2250dce3bd74d3de48714d"> 275</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#a1fbd15f59f3fdbe5e817d540505d6d6c" title="新增一個沒有額外選項的選項">optionAdd</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> opt, String <span class="keyword">const</span>&amp; des,</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; String <span class="keyword">const</span>&amp; val_type,</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; String <span class="keyword">const</span>&amp; val_default,</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordtype">bool</span> must) {</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">if</span> (options_.find(opt) != options_.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; options_[opt] = Option(des, val_type, val_default, must);</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordtype">bool</span> hasSetup()<span class="keyword"> const</span>{ <span class="keywordflow">return</span> has_setup_; }</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordtype">bool</span> hasValue()<span class="keyword"> const</span>{ <span class="keywordflow">return</span> has_value_; }</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">bool</span> chkSetup()<span class="keyword"> const</span>{ <span class="keywordflow">return</span> !(must_setup_ &amp;&amp; !has_setup_); }</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>(String opt, <span class="keywordtype">bool</span> detail)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; String ret(<a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;%s%s &quot;</span>, (opt.size() &gt; 1 ? <span class="stringliteral">&quot;--&quot;</span> : <span class="stringliteral">&quot;-&quot;</span>), opt));</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span> (!detail) {</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span> (has_value_) ret += value_type_;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span> (!must_setup_) ret = <span class="stringliteral">&quot;[&quot;</span> + ret + <span class="stringliteral">&quot;]&quot;</span>;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (has_value_) {</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; ret += value_type_ + <span class="stringliteral">&quot; &quot;</span>;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; String default_string(<span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (value_default_ != <span class="stringliteral">&quot;&quot;</span>)</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; default_string = <span class="stringliteral">&quot;defalut=&#39;&quot;</span> + value_default_ + <span class="stringliteral">&quot;&#39;&quot;</span>;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; String optional_string(<span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (!must_setup_)</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; optional_string = <span class="stringliteral">&quot;optional&quot;</span>;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; String tmp;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span> (default_string.size() + optional_string.size() &gt; 0) {</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (default_string.size() &gt; 0 &amp;&amp; optional_string.size() &gt; 0) {</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; ret += <span class="stringliteral">&quot;(&quot;</span> + optional_string + <span class="stringliteral">&quot;, &quot;</span> + default_string + <span class="stringliteral">&quot;)&quot;</span>;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; ret += <span class="stringliteral">&quot;(&quot;</span> + optional_string + default_string + <span class="stringliteral">&quot;)&quot;</span>;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; ret += <span class="stringliteral">&quot;\n&quot;</span>;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; String accept_string;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; values_accept_.size(); i++) {</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">if</span> (i &gt; 0)</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; accept_string += (i + 1 &lt; values_accept_.size() ? <span class="stringliteral">&quot;, &quot;</span> : <span class="stringliteral">&quot; or &quot;</span>);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; accept_string += <span class="stringliteral">&quot;&#39;&quot;</span> + values_accept_[i].value() + <span class="stringliteral">&quot;&#39;&quot;</span>;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">if</span> (accept_string.size() == 0) accept_string = <span class="stringliteral">&quot;... (anything)&quot;</span>;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; ret += <span class="stringliteral">&quot; &quot;</span> + <a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(<a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(description_,</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="stringliteral">&quot;&lt;type&gt;&quot;</span>,</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; value_type_),</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="stringliteral">&quot;&lt;values&gt;&quot;</span>,</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; accept_string) + <span class="stringliteral">&quot;\n&quot;</span>;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; values_accept_.size(); i++) {</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; ret += values_accept_[i].usage();</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; ret += <span class="stringliteral">&quot;\n&quot;</span>;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; }</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; };</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keyword">typedef</span> std::map&lt;String, Option&gt; Options;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">typedef</span> Options:: iterator OptionsIterator;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">typedef</span> Options::const_iterator OptionsIteratorK;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; String name_;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; Options options_;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; Strings usage_begin_;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; Strings usage_end_;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; Strings proc_arguments_;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400"> 183</a></span>&#160; <a class="code" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400" title="constructor">Usage</a>() {</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649"> 191</a></span>&#160; <a class="code" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649" title="constructor">Usage</a>(String <span class="keyword">const</span>&amp; name) {</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; name_ = name;</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db"> 201</a></span>&#160; <a class="code" href="classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db" title="constructor">Usage</a>(<a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>) {</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; name_ = usage.name_;</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; options_ = usage.options_;</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; longOptions_ = usage.long_options_;</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; usage_begin_ = usage.usage_begin_;</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; usage_end_ = usage.usage_end_;</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; proc_arguments_ = usage.proc_arguments_;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#ad7db9a4197d9b281c47df0800ed63df0"> 216</a></span>&#160; <span class="keywordtype">bool</span> <span class="keyword">import</span>(<a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>) {</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">for</span> (OptionsIteratorK</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; it = <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.begin(); it != <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.end(); ++it) {</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">if</span> (options_.find(it-&gt;first) != options_.end())</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">for</span> (OptionsIteratorK</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; it = <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.begin(); it != <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.options_.end(); ++it) {</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; options_.insert(std::pair&lt;String, Option&gt;(it-&gt;first, it-&gt;second));</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; }</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_begin_.size(); ++i)</div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; usage_begin_.push_back(<a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_begin_[i]);</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_end_.size(); ++i)</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; usage_end_.push_back(<a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>.usage_end_[i]);</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241"> 239</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241" title="將另一個usage的選項設置加進來">update</a>(<a class="code" href="classmeow_1_1Usage.html" title="管理參數設置, 自訂usage document, 分析argc, argv">Usage</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>) {</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">for</span> (OptionsIteratorK</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; it = usage.options_.begin(); it != usage.options_.end(); ++it) {</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; OptionsIterator my = options_.find(it-&gt;first);</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">if</span> (my == options_.end()) <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = it-&gt;second.values().size(); i &lt; I; ++i) {</div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; my-&gt;second.valueAdd(it-&gt;second.value(i));</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; }</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div>
+<div class="line"><a name="l00258"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2"> 258</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2" title="新增一個沒有額外選項的選項">optionAdd</a>(String opt, String <span class="keyword">const</span>&amp; des) {</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">if</span> (options_.find(opt) != options_.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; options_.insert(std::pair&lt;String, Option&gt;(opt, Option(des));</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; }</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div>
+<div class="line"><a name="l00274"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#af4642c5d19cda946047934b3d1463f02"> 274</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2" title="新增一個沒有額外選項的選項">optionAdd</a>(String opt, String <span class="keyword">const</span>&amp; des,</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; String <span class="keyword">const</span>&amp; val_type,</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; String <span class="keyword">const</span>&amp; val_default,</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordtype">bool</span> must) {</div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">if</span> (options_.find(opt) != options_.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; options_.insert(std::pair&lt;String, Option&gt;(</div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; opt, Option(des, val_type, val_defalut, must)));</div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; }</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div>
-<div class="line"><a name="l00292"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399"> 292</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399" title="針對-(opt)新增一個可接受的額外選項">optionValueAcceptAdd</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> opt,</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; String <span class="keyword">const</span>&amp; val,</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; String <span class="keyword">const</span>&amp; des) {</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">if</span> (options_.find(opt) == options_.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">return</span> options_[opt].valueAcceptAdd(val, des);</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;</div>
-<div class="line"><a name="l00305"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841"> 305</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841" title="回傳是否有設定此選項">hasOptionSetup</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> opt)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> (options_.find(opt) != options_.end() &amp;&amp;</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; options_.find(opt)-&gt;second.hasSetup());</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; }</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div>
-<div class="line"><a name="l00316"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d"> 316</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d" title="回傳參數 -(opt) 被設置幾次">optionValuesSize</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> opt)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">if</span>(options_.find(opt) == options_.end()) <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span> options_.find(opt)-&gt;second.values().size();</div>
+<div class="line"><a name="l00292"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242"> 292</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242" title="針對-(opt)新增一個可接受的額外選項">optionValueAcceptAdd</a>(String opt, String <span class="keyword">const</span>&amp; val, String <span class="keyword">const</span>&amp; des) {</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; OptionsIterator o = options_.find(opt);</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">if</span> (o == options_.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> o-&gt;second.valueAcceptAdd(val, des);</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;</div>
+<div class="line"><a name="l00304"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf"> 304</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf" title="回傳是否有設定此選項">hasOptionSetup</a>(String opt)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; OptionsIteratorK o = options_.find(opt);</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> (o != options_.end() &amp;&amp; o-&gt;second.hasSetup());</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;</div>
+<div class="line"><a name="l00315"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb"> 315</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb" title="回傳參數 -(opt) 被設置幾次">optionValuesSize</a>(String opt)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; OptionsIteratorK o = options_.find(opt);</div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">if</span> (o == options_.end()) <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span> o-&gt;second.values().size();</div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; }</div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div>
-<div class="line"><a name="l00328"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac"> 328</a></span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac" title="回傳參數 -(opt) 的第 index 個額外選項">optionValue</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> opt, <span class="keywordtype">size_t</span> index)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (options_.find(opt) == options_.end()) {</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">return</span> String();</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">return</span> options_.find(opt)-&gt;second.value(index);</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; }</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;</div>
-<div class="line"><a name="l00340"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752"> 340</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752" title="取得有幾個process arguments">procArgsSize</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> proc_arguments_.size();</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; }</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div>
-<div class="line"><a name="l00350"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d"> 350</a></span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d" title="取得第i個process argument">procArg</a>(<span class="keywordtype">size_t</span> index)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">if</span> (index &gt;= proc_arguments_.size()) {</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">return</span> String();</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; }</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">return</span> proc_arguments_[index];</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; }</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;</div>
-<div class="line"><a name="l00362"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee"> 362</a></span>&#160; Strings <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee" title="取得process arguments array">procArgs</a>()<span class="keyword"> const</span>{</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">return</span> proc_arguments_;</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; }</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;</div>
-<div class="line"><a name="l00371"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709"> 371</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709" title="新增一段usage document於每個選項逐條說明之前">usageBeginAdd</a>(String <span class="keyword">const</span>&amp; des) {</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; usage_begin_.push_back(<a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(des, <span class="stringliteral">&quot;&lt;name&gt;&quot;</span>, name_));</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; }</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div>
-<div class="line"><a name="l00380"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a4ee38098e5abdb6932a32c13a30f584d"> 380</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Usage.html#a4ee38098e5abdb6932a32c13a30f584d" title="新增一段usage document於每個選項逐條說明之後">usageEndAdd</a>(String <span class="keyword">const</span>&amp; des) {</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; usage_end_.push_back(<a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(des, <span class="stringliteral">&quot;&lt;name&gt;&quot;</span>, name_));</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div>
-<div class="line"><a name="l00389"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99"> 389</a></span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>()<span class="keyword"> const</span>{</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; Usage::String out = <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;USAGE\n %s&quot;</span>, name_.c_str());</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">for</span> (OptionsIterator</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; it = options_.begin(); it != options_.end(); ++it)</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; out += <span class="stringliteral">&quot; &quot;</span> + it-&gt;second.usage(it-&gt;first, <span class="keyword">false</span>);</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; out += <span class="stringliteral">&quot;\n\nDESCRIPTION\n&quot;</span>;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; usage_begin_.size(); ++i) {</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; out += <span class="stringliteral">&quot; &quot;</span> + usage_begin_[i] + <span class="stringliteral">&quot;\n\n&quot;</span>;</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">for</span> (OptionsIterator</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; it = options_.begin(); it != options_.end(); ++it) {</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; out += it-&gt;second.usage(it-&gt;first, <span class="keyword">true</span>);</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; }</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; usage_end_.size(); ++i) {</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; out += <span class="stringliteral">&quot; &quot;</span> + usage_end_[i] + <span class="stringliteral">&quot;\n\n&quot;</span>;</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">return</span> out;</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; }</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;</div>
-<div class="line"><a name="l00415"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1"> 415</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1" title="給定argc, argv, 將各參數設置">arguments</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv, String* errmsg){</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; opterr = 0;</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; String s;</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; OptionsIterator it;</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; String zzz;</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; String&amp; err = (errmsg == NULL ? zzz : *errmsg);</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">for</span> (it = options_.begin(); it != options_.end(); ++it) {</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; s += (char)(it-&gt;first);</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">if</span> (it-&gt;second.hasValue()) s += <span class="stringliteral">&quot;:&quot;</span>;</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; }</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordtype">bool</span> succ = <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> opt; (opt = getopt(argc, argv, s.c_str())) != -1; ) {</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">if</span> (options_.find(opt) == options_.end()) {</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">if</span>(options_.find(optopt) == options_.end()){</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; err += <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;Unknown option &#39;-%c&#39;\n&quot;</span>, optopt);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; }<span class="keywordflow">else</span>{</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; err += <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;No specify argument to &#39;-%c&#39;\n&quot;</span>,</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; optopt);</div>
+<div class="line"><a name="l00328"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f"> 328</a></span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f" title="回傳參數 -(opt) 的第 index 個額外選項">optionValue</a>(String opt, <span class="keywordtype">size_t</span> index)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; OptionsIteratorK o = options_.find(opt);</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">if</span> (o == options_.end()) <span class="keywordflow">return</span> String();</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> o-&gt;second.value(index);</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; }</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;</div>
+<div class="line"><a name="l00339"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752"> 339</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752" title="取得有幾個process arguments">procArgsSize</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">return</span> proc_arguments_.size();</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div>
+<div class="line"><a name="l00349"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d"> 349</a></span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d" title="取得第i個process argument">procArg</a>(<span class="keywordtype">size_t</span> index)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">if</span> (index &gt;= proc_arguments_.size()) {</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">return</span> String();</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; }</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">return</span> proc_arguments_[index];</div>
+<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; }</div>
+<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div>
+<div class="line"><a name="l00361"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee"> 361</a></span>&#160; Strings <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee" title="取得process arguments array">procArgs</a>()<span class="keyword"> const</span>{</div>
+<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">return</span> proc_arguments_;</div>
+<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div>
+<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div>
+<div class="line"><a name="l00370"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709"> 370</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709" title="新增一段usage document於每個選項逐條說明之前">usageBeginAdd</a>(String <span class="keyword">const</span>&amp; des) {</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; usage_begin_.push_back(<a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(des, <span class="stringliteral">&quot;&lt;name&gt;&quot;</span>, name_));</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; }</div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div>
+<div class="line"><a name="l00379"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a4ee38098e5abdb6932a32c13a30f584d"> 379</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Usage.html#a4ee38098e5abdb6932a32c13a30f584d" title="新增一段usage document於每個選項逐條說明之後">usageEndAdd</a>(String <span class="keyword">const</span>&amp; des) {</div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; usage_end_.push_back(<a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(des, <span class="stringliteral">&quot;&lt;name&gt;&quot;</span>, name_));</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; }</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;</div>
+<div class="line"><a name="l00388"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99"> 388</a></span>&#160; String <a class="code" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99" title="回傳usage string">usage</a>()<span class="keyword"> const</span>{</div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; Usage::String out = <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;USAGE\n %s&quot;</span>, name_.c_str());</div>
+<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">for</span> (OptionsIterator</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; it = options_.begin(); it != options_.end(); ++it)</div>
+<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; out += <span class="stringliteral">&quot; &quot;</span> + it-&gt;second.usage(it-&gt;first, <span class="keyword">false</span>);</div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; out += <span class="stringliteral">&quot;\n\nDESCRIPTION\n&quot;</span>;</div>
+<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; usage_begin_.size(); ++i) {</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; out += <span class="stringliteral">&quot; &quot;</span> + usage_begin_[i] + <span class="stringliteral">&quot;\n\n&quot;</span>;</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; }</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">for</span> (OptionsIteratorK</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; it = options_.begin(); it != options_.end(); ++it) {</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; out += it-&gt;second.usage(it-&gt;first, <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div>
+<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; usage_end_.size(); ++i) {</div>
+<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; out += <span class="stringliteral">&quot; &quot;</span> + usage_end_[i] + <span class="stringliteral">&quot;\n\n&quot;</span>;</div>
+<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; }</div>
+<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">return</span> out;</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; }</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;</div>
+<div class="line"><a name="l00414"></a><span class="lineno"><a class="code" href="classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1"> 414</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1" title="給定argc, argv, 將各參數設置">arguments</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv, String* errmsg) {</div>
+<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; String zzz;</div>
+<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; String&amp; err = (errmsg == NULL ? zzz : *errmsg);</div>
+<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; argc; ++i) {</div>
+<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">if</span> (argv[i][0] == <span class="charliteral">&#39;-&#39;</span>) {</div>
+<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; String opt;</div>
+<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">if</span> (argv[i][1] == <span class="charliteral">&#39;-&#39;</span>) { <span class="comment">// long option</span></div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">if</span> (argv[i][2] == <span class="charliteral">&#39;\0&#39;</span> || argv[i][3] == <span class="charliteral">&#39;\0&#39;</span>) {</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; err = <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;Invalid option &#39;%s&#39;&quot;</span>, argv[i]);</div>
+<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; }</div>
+<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; opt = String(argv[i] + 2);</div>
+<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; }</div>
+<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">else</span> { <span class="comment">// short option</span></div>
+<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">if</span> (argv[i][1] == <span class="charliteral">&#39;\0&#39;</span> || argv[i][2] != <span class="charliteral">&#39;\0&#39;</span>) {</div>
+<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; err = <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;Invalid option &#39;%s&#39;&quot;</span>, argv[i]);</div>
+<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; }</div>
+<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; opt = String(argv[i] + 1);</div>
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; }</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; succ = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; }</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">if</span> (options_[opt].valueAdd(optarg == NULL ? <span class="stringliteral">&quot;&quot;</span> : optarg) &lt; 0) {</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; err += <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;Option argument &#39;%s&#39; to &#39;-%c&#39; is not allowed\n&quot;</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; , optarg, opt);</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; succ = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; }</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">for</span> (it = options_.begin(); it != options_.end(); it++) {</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">if</span> (it-&gt;second.chkSetup() == <span class="keyword">false</span>) {</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; err += <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;No specify argument to &#39;-%c&#39;\n&quot;</span>,</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; it-&gt;first);</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; succ = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; }</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = optind; i &lt; argc; i++) {</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; proc_arguments_.push_back(String(argv[i]));</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; }</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">return</span> succ;</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; }</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;};</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;} <span class="comment">// meow</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;<span class="preprocessor">#endif // MEOW_USAGE_H__</span></div>
+<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; OptionsIterator o = options_.find(opt);</div>
+<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">if</span> (o == options_.end()) {</div>
+<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; err = <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;Unknown option &#39;%s&#39;&quot;</span>, argv[i]);</div>
+<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">if</span> (o-&gt;second.hasValue()) {</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">if</span> (i + 1 &gt;= argc) {</div>
+<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; err = <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;Option &#39;%s&#39; need a value&quot;</span>, argv[i]);</div>
+<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div>
+<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">if</span> (o-&gt;second.valueAdd(argv[i + 1]) == <span class="keyword">false</span>) {</div>
+<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; err = <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;Invalid value &#39;%s&#39; of options &#39;%s&#39;&quot;</span>,</div>
+<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; argv[i + 1], argv[i]);</div>
+<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div>
+<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; ++i;</div>
+<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div>
+<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; o-&gt;second.valueAdd(<span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; }</div>
+<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; }</div>
+<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; proc_arguments_.push_back(String(argv[i] + (argv[i][0]==<span class="charliteral">&#39;\\&#39;</span> ? 1:0)));</div>
+<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; }</div>
+<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keywordflow">for</span> (OptionsIteratorK it = options_.begin(); it != options_.end(); ++it) {</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">if</span> (it-&gt;second.chkSetup() == <span class="keyword">false</span>) {</div>
+<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; err += <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="stringliteral">&quot;No specify argument to &#39;%s%s&#39;\n&quot;</span>,</div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; (it-&gt;first.size() &gt; 1 ? <span class="stringliteral">&quot;--&quot;</span> : <span class="stringliteral">&quot;-&quot;</span>), it-&gt;first);</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; }</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; }</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; }</div>
+<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;};</div>
+<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;<span class="preprocessor">#endif // MEOW_USAGE_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -403,7 +414,7 @@ $(document).ready(function(){initNavTree('Usage_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="Usage_8h.html">Usage.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/VP__Tree_8h.html b/doc/html/VP__Tree_8h.html
index bec433d..0f1c218 100644
--- a/doc/html/VP__Tree_8h.html
+++ b/doc/html/VP__Tree_8h.html
@@ -88,7 +88,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="VP__Tree_8h.html">VP_Tree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/VP__Tree_8h_source.html b/doc/html/VP__Tree_8h_source.html
index 7947eac..a66f915 100644
--- a/doc/html/VP__Tree_8h_source.html
+++ b/doc/html/VP__Tree_8h_source.html
@@ -112,12 +112,12 @@ $(document).ready(function(){initNavTree('VP__Tree_8h_source.html','');});
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; };</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">typedef</span> std::vector&lt;Answer&gt; AnswerV;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">typedef</span> std::priority_queue&lt;Answer, AnswerV, AnswerCompare&gt; Answers;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#a02c136810876c8713b9760aa8bb51aa4">Vectors</a> vectors_;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; Node* root_;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordtype">size_t</span> dimension_;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">bool</span> needRebuild_;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; Scalar distance2(Vector <span class="keyword">const</span>&amp; v1, Vector <span class="keyword">const</span>&amp; v2)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; Scalar ret(0);</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; dimension_; i++) ret += <a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(v1[i] - v2[i]);</div>
@@ -236,14 +236,14 @@ $(document).ready(function(){initNavTree('VP__Tree_8h_source.html','');});
<div class="line"><a name="l00212"></a><span class="lineno"><a class="code" href="classmeow_1_1VP__Tree.html#ab611c988f5c567498d40866e9eab3851"> 212</a></span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#ab611c988f5c567498d40866e9eab3851" title="constructor, with dimension = 1">VP_Tree</a>(): root_(NULL), vectors_(0), dimension_(1), needRebuild_(false){</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#ad1bffde18bc2f0fc955e78fe77333558" title="清空所有資料並重新給定維度">reset</a>(0);</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; </div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div>
<div class="line"><a name="l00217"></a><span class="lineno"><a class="code" href="classmeow_1_1VP__Tree.html#a1f301f751afe7baf5eafe6964c6a7a15"> 217</a></span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#ab611c988f5c567498d40866e9eab3851" title="constructor, with dimension = 1">VP_Tree</a>(<a class="code" href="classmeow_1_1VP__Tree.html" title="跟KD_Tree很像歐">VP_Tree</a> <span class="keyword">const</span>&amp; tree2):</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; vectors_(tree2.vectors_),</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; root_(dup(tree2.root_)),</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; dimension_(tree2.dimension_),</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; needRebuild_(tree2.needRebuild_) {</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; </div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
<div class="line"><a name="l00225"></a><span class="lineno"><a class="code" href="classmeow_1_1VP__Tree.html#a5ce274e16a28c6ef5cac63c6e3258d8b"> 225</a></span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#ab611c988f5c567498d40866e9eab3851" title="constructor, with dimension = 1">VP_Tree</a>(<span class="keywordtype">size_t</span> dimension):</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; vectors_(0),</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; root_(NULL),</div>
@@ -251,11 +251,11 @@ $(document).ready(function(){initNavTree('VP__Tree_8h_source.html','');});
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; needRebuild_(false) {</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#ad1bffde18bc2f0fc955e78fe77333558" title="清空所有資料並重新給定維度">reset</a>(dimension);</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; </div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div>
<div class="line"><a name="l00234"></a><span class="lineno"><a class="code" href="classmeow_1_1VP__Tree.html#a599a1fba89e0e5a06fa1e71c81bc5216"> 234</a></span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#a599a1fba89e0e5a06fa1e71c81bc5216" title="destructor">~VP_Tree</a>() {</div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#ac4d1a186226b2d27abce9eb71149c62c" title="清空所有資料">clear</a>(root_);</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; }</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div>
<div class="line"><a name="l00241"></a><span class="lineno"><a class="code" href="classmeow_1_1VP__Tree.html#afcc9734a4e012d6dfdab408d5c698905"> 241</a></span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html" title="跟KD_Tree很像歐">VP_Tree</a>&amp; <a class="code" href="classmeow_1_1VP__Tree.html#afcc9734a4e012d6dfdab408d5c698905" title="複製資料">copyFrom</a>(<a class="code" href="classmeow_1_1VP__Tree.html" title="跟KD_Tree很像歐">VP_Tree</a> <span class="keyword">const</span>&amp; tree2) {</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html#ad1bffde18bc2f0fc955e78fe77333558" title="清空所有資料並重新給定維度">reset</a>(tree2.dimension_);</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; vectors_ = tree2.vectors_;</div>
@@ -318,7 +318,7 @@ $(document).ready(function(){initNavTree('VP__Tree_8h_source.html','');});
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; dimension_ = std::max((<span class="keywordtype">size_t</span>)1, dimension);</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">return</span> dimension_;</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; </div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div>
<div class="line"><a name="l00330"></a><span class="lineno"><a class="code" href="classmeow_1_1VP__Tree.html#a7c73bb25b40f440b48267f94fa4561ad"> 330</a></span>&#160; <a class="code" href="classmeow_1_1VP__Tree.html" title="跟KD_Tree很像歐">VP_Tree</a>&amp; <a class="code" href="classmeow_1_1VP__Tree.html#a7c73bb25b40f440b48267f94fa4561ad" title="same as copyFrom(tree2) ">operator=</a>(<a class="code" href="classmeow_1_1VP__Tree.html" title="跟KD_Tree很像歐">VP_Tree</a> <span class="keyword">const</span>&amp; tree2) {</div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1VP__Tree.html#afcc9734a4e012d6dfdab408d5c698905" title="複製資料">copyFrom</a>(tree2);</div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; }</div>
@@ -334,7 +334,7 @@ $(document).ready(function(){initNavTree('VP__Tree_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li><li class="navelem"><a class="el" href="VP__Tree_8h.html">VP_Tree.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Vector_8h.html b/doc/html/Vector_8h.html
index c549420..c387202 100644
--- a/doc/html/Vector_8h.html
+++ b/doc/html/Vector_8h.html
@@ -63,7 +63,6 @@ $(document).ready(function(){initNavTree('Vector_8h.html','');});
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="Self_8h_source.html">../Self.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="Matrix_8h_source.html">Matrix.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="math_2utility_8h_source.html">utility.h</a>&quot;</code><br/>
<code>#include &lt;vector&gt;</code><br/>
<code>#include &lt;cmath&gt;</code><br/>
</div>
@@ -87,7 +86,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Vector_8h.html">Vector.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Vector_8h_source.html b/doc/html/Vector_8h_source.html
index 9cf6d8f..12748bf 100644
--- a/doc/html/Vector_8h_source.html
+++ b/doc/html/Vector_8h_source.html
@@ -63,179 +63,177 @@ $(document).ready(function(){initNavTree('Vector_8h_source.html','');});
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;../Self.h&quot;</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Matrix_8h.html">Matrix.h</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="math_2utility_8h.html">utility.h</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;</div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="keyword">namespace </span>meow {</div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Scalar&gt;</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html"> 20</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> {</div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">private</span>:</div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> matrix_;</div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00029"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61"> 29</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(){</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; }</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div>
-<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6"> 39</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6" title="constructor">Vector</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v) {</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(v.matrix_);</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; }</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; </div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073"> 50</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073" title="constructor">Vector</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; m) {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(m.<a class="code" href="classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2" title="Return the c -th column.">col</a>(0));</div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="keyword">namespace </span>meow {</div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> Scalar&gt;</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html"> 19</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> {</div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050"> 21</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Scalar&gt;::EntryRefK</a> <a class="code" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30"> 22</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classmeow_1_1Matrix.html" title="matrix ">Matrix&lt;Scalar&gt;::EntryRef</a> <a class="code" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">ScalarRef</a> ;</div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> matrix_;</div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61"> 31</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>() {</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6"> 41</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6" title="constructor">Vector</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v): matrix_(v.matrix_) {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; }</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073"> 51</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073" title="constructor">Vector</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; m): matrix_(m.col(0)) {</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#af4966b6e2df19fa6d2752460b1e8afff"> 62</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#af4966b6e2df19fa6d2752460b1e8afff" title="constructor">Vector</a>(<a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; m, <span class="keywordtype">size_t</span> i) {</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(m.<a class="code" href="classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2" title="Return the c -th column.">col</a>(i));</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; </div>
-<div class="line"><a name="l00073"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815"> 73</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815" title="constructor">Vector</a>(std::vector&lt;Scalar&gt; <span class="keyword">const</span>&amp; v) {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c" title="Return number of rows times number of cols.">size</a>(v.size(), 1, Scalar(0));</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = v.size(); i &lt; I; i++) {</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(i, 0, v[i]);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
-<div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd"> 88</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd" title="constructor">Vector</a>(<span class="keywordtype">size_t</span> d, Scalar <span class="keyword">const</span>&amp; e) {</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120" title="reset the size of the matrix to r x c with entry all be e ">reset</a>(d, 1, e);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3"> 93</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3" title="destructor">~Vector</a>(){</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0"> 97</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0" title="copy from ...">copyFrom</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v) {</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(v.matrix_);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; }</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e"> 103</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e" title="reference from ...">referenceFrom</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v) {</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec" title="reference">referenceFrom</a>(v.matrix_);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; }</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084"> 109</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084" title="Return a dimension x 1 matrix form of it.">matrix</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> matrix_;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a"> 114</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a" title="return dimension">dimension</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>();</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; </div>
-<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ada37bc2df18e7c892d4b5e2ac34bf025"> 125</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Vector.html#ada37bc2df18e7c892d4b5e2ac34bf025" title="resize the dimension">dimension</a>(<span class="keywordtype">size_t</span> d, Scalar <span class="keyword">const</span>&amp; s) {</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(d, s);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a" title="return dimension">dimension</a>();</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; </div>
-<div class="line"><a name="l00134"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e"> 134</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e" title="Return whether dimension&gt;0 is true or not.">valid</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a" title="return dimension">dimension</a>() &gt; 0);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
-<div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8"> 139</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8" title="return i -th entry">entry</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(i, 0);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
-<div class="line"><a name="l00149"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a5050e9117204a6dbdcc7cf5038845c00"> 149</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a5050e9117204a6dbdcc7cf5038845c00" title="change i -th entry">entry</a>(<span class="keywordtype">size_t</span> i, Scalar <span class="keyword">const</span>&amp; s) {</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(i, 0, s);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8" title="return i -th entry">entry</a>(i);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; </div>
-<div class="line"><a name="l00161"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618"> 161</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618" title="change i -th to j -th entries">entries</a>(<span class="keywordtype">size_t</span> i, <span class="keywordtype">size_t</span> j, Scalar <span class="keyword">const</span>&amp; s) {</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> it = i; it &lt;= j; it++) {</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(it, 0, s);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; }</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; }</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; </div>
-<div class="line"><a name="l00168"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a"> 168</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a" title="subvector form i-th to j-th">subVector</a>(<span class="keywordtype">size_t</span> i, <span class="keywordtype">size_t</span> j) {</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(i, 0, j, 0));</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589"> 173</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589" title="return +(*this)">positive</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; </div>
-<div class="line"><a name="l00178"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c"> 178</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c" title="return -(*this)">negative</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274" title="return -(*this)">negative</a>());</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div>
-<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac"> 183</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac" title="return (*this)+v">add</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6" title="return (*this) + m.">add</a>(v.matrix_));</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; </div>
-<div class="line"><a name="l00188"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533"> 188</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533" title="return (*this)-v">sub</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c" title="return (*this) - m.">sub</a>(v.matrix_));</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
-<div class="line"><a name="l00193"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c"> 193</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c" title="return (*this)*s , where s is a scalar">mul</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(s));</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; </div>
-<div class="line"><a name="l00198"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908"> 198</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908" title="return (*this)/s , where s is a scalar">div</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce" title="return (*this) / s. s is a scalar">div</a>(s));</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
-<div class="line"><a name="l00203"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452"> 203</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452" title="dot">dot</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0" title="return itself&#39;s transpose matrix">transpose</a>().<a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(v.matrix_).<a class="code" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b" title="Access the entry at r x c.">entry</a>(0, 0);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; }</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27"> 208</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27" title="sqrt of length2 ">length</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">return</span> Scalar(sqrt((<span class="keywordtype">double</span>)<a class="code" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e" title="same as (*this).dot(*this)">length2</a>()));</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; </div>
-<div class="line"><a name="l00213"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e"> 213</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e" title="same as (*this).dot(*this)">length2</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452" title="dot">dot</a>(*<span class="keyword">this</span>);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; </div>
-<div class="line"><a name="l00218"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee"> 218</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee" title="return a normalize form of itself">normalize</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908" title="return (*this)/s , where s is a scalar">div</a>(<a class="code" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27" title="sqrt of length2 ">length</a>());</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; }</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; </div>
-<div class="line"><a name="l00223"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448"> 223</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448" title="Let itself be normalize form.">normalized</a>() {</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0" title="copy from ...">copyFrom</a>(<a class="code" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee" title="return a normalize form of itself">normalize</a>());</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div>
-<div class="line"><a name="l00229"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623"> 229</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623" title="same as copyFrom">operator=</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v) {</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0" title="copy from ...">copyFrom</a>(v);</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; </div>
-<div class="line"><a name="l00234"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a"> 234</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a" title="same as entry(i)">operator()</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8" title="return i -th entry">entry</a>(i);</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; }</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
-<div class="line"><a name="l00239"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8"> 239</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8" title="same as positive()">operator+</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589" title="return +(*this)">positive</a>();</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; }</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; </div>
-<div class="line"><a name="l00244"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a"> 244</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a" title="same as negative()">operator-</a>()<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c" title="return -(*this)">negative</a>();</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; }</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; </div>
-<div class="line"><a name="l00249"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c"> 249</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c" title="same as add(v)">operator+</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac" title="return (*this)+v">add</a>(v);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; }</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; </div>
-<div class="line"><a name="l00254"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d"> 254</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d" title="same as sub(v)">operator-</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533" title="return (*this)-v">sub</a>(v);</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; </div>
-<div class="line"><a name="l00259"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1"> 259</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1" title="same as dot(v)">operator*</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452" title="dot">dot</a>(v);</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; </div>
-<div class="line"><a name="l00264"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c"> 264</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c" title="same as mul(s)">operator*</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c" title="return (*this)*s , where s is a scalar">mul</a>(s);</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; }</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; </div>
-<div class="line"><a name="l00269"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e"> 269</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e" title="same as div(s)">operator/</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908" title="return (*this)/s , where s is a scalar">div</a>(s);</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; }</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;};</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;}</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="preprocessor">#endif // math_Vector_H__</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815"> 61</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815" title="constructor">Vector</a>(std::vector&lt;Scalar&gt; <span class="keyword">const</span>&amp; v): matrix_(v.size(), 1, Scalar(0)) {</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, I = v.size(); i &lt; I; i++) {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(i, 0, v[i]);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd"> 75</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd" title="constructor">Vector</a>(<span class="keywordtype">size_t</span> d, Scalar <span class="keyword">const</span>&amp; e): matrix_(d, 1, e) {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3"> 79</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3" title="destructor">~Vector</a>() {</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0"> 83</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0" title="copy from ...">copyFrom</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v) {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413" title="copy">copyFrom</a>(v.matrix_);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e"> 89</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e" title="reference from ...">referenceFrom</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v) {</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec" title="reference">referenceFrom</a>(v.matrix_);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084"> 95</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084" title="Return a dimension x 1 matrix form of it.">matrix</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> matrix_;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a"> 100</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a" title="return dimension">dimension</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>();</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ada37bc2df18e7c892d4b5e2ac34bf025"> 111</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classmeow_1_1Vector.html#ada37bc2df18e7c892d4b5e2ac34bf025" title="resize the dimension">dimension</a>(<span class="keywordtype">size_t</span> d, Scalar <span class="keyword">const</span>&amp; s) {</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178" title="Return number of rows.">rows</a>(d, s);</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a" title="return dimension">dimension</a>();</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e"> 120</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e" title="Return whether dimension&gt;0 is true or not.">valid</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a" title="return dimension">dimension</a>() &gt; 0);</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8"> 125</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a> <a class="code" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8" title="return i -th entry">entry</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(i, 0);</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a"> 135</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a> <a class="code" href="classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a" title="change i -th entry">entry</a>(<span class="keywordtype">size_t</span> i, Scalar <span class="keyword">const</span>&amp; s) {</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(i, 0, s);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8" title="return i -th entry">entry</a>(i);</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe"> 141</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">ScalarRef</a> <a class="code" href="classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe" title="return i -th entry with non-constant type">entryGet</a>(<span class="keywordtype">size_t</span> i) {</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b" title="Get the entry at r x c.">entryGet</a>(i);</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618"> 152</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618" title="change i -th to j -th entries">entries</a>(<span class="keywordtype">size_t</span> i, <span class="keywordtype">size_t</span> j, Scalar <span class="keyword">const</span>&amp; s) {</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> it = i; it &lt;= j; ++it) {</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; matrix_.<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(it, 0, s);</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; }</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; }</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a"> 159</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a" title="subvector form i-th to j-th">subVector</a>(<span class="keywordtype">size_t</span> i, <span class="keywordtype">size_t</span> j) {</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8" title="Return a rLast-rFirst+1 x cLast-cFirst+1 matrix.">subMatrix</a>(i, 0, j, 0));</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589"> 164</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589" title="return +(*this)">positive</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c"> 169</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c" title="return -(*this)">negative</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274" title="return -(*this)">negative</a>());</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac"> 174</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac" title="return (*this)+v">add</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6" title="return (*this) + m.">add</a>(v.matrix_));</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; }</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533"> 179</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533" title="return (*this)-v">sub</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c" title="return (*this) - m.">sub</a>(v.matrix_));</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
+<div class="line"><a name="l00184"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c"> 184</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c" title="return (*this)*s , where s is a scalar">mul</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(s));</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
+<div class="line"><a name="l00189"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908"> 189</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908" title="return (*this)/s , where s is a scalar">div</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61" title="constructor">Vector</a>(matrix_.<a class="code" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce" title="return (*this) / s. s is a scalar">div</a>(s));</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452"> 194</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452" title="dot">dot</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">return</span> matrix_.<a class="code" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0" title="return itself&#39;s transpose matrix">transpose</a>().<a class="code" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd" title="return (*this) times m.">mul</a>(v.matrix_).<a class="code" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4" title="Access the entry at r x c.">entry</a>(0, 0);</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27"> 199</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27" title="sqrt of length2 ">length</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span> Scalar(sqrt((<span class="keywordtype">double</span>)<a class="code" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e" title="same as (*this).dot(*this)">length2</a>()));</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; }</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div>
+<div class="line"><a name="l00204"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e"> 204</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e" title="same as (*this).dot(*this)">length2</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452" title="dot">dot</a>(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div>
+<div class="line"><a name="l00209"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee"> 209</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee" title="return a normalize form of itself">normalize</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908" title="return (*this)/s , where s is a scalar">div</a>(<a class="code" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27" title="sqrt of length2 ">length</a>());</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; }</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div>
+<div class="line"><a name="l00214"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448"> 214</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448" title="Let itself be normalize form.">normalized</a>() {</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0" title="copy from ...">copyFrom</a>(<a class="code" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee" title="return a normalize form of itself">normalize</a>());</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; }</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div>
+<div class="line"><a name="l00220"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623"> 220</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a>&amp; <a class="code" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623" title="same as copyFrom">operator=</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v) {</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0" title="copy from ...">copyFrom</a>(v);</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
+<div class="line"><a name="l00225"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a"> 225</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a" title="same as entry(i)">operator()</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8" title="return i -th entry">entry</a>(i);</div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8"> 230</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8" title="same as positive()">operator+</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589" title="return +(*this)">positive</a>();</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;</div>
+<div class="line"><a name="l00235"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a"> 235</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a" title="same as negative()">operator-</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c" title="return -(*this)">negative</a>();</div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; }</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c"> 240</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c" title="same as add(v)">operator+</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac" title="return (*this)+v">add</a>(v);</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; }</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;</div>
+<div class="line"><a name="l00245"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d"> 245</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d" title="same as sub(v)">operator-</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533" title="return (*this)-v">sub</a>(v);</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div>
+<div class="line"><a name="l00250"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1"> 250</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1" title="same as dot(v)">operator*</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452" title="dot">dot</a>(v);</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div>
+<div class="line"><a name="l00255"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c"> 255</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c" title="same as mul(s)">operator*</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c" title="return (*this)*s , where s is a scalar">mul</a>(s);</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; }</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;</div>
+<div class="line"><a name="l00260"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e"> 260</a></span>&#160; <a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector</a> <a class="code" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e" title="same as div(s)">operator/</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908" title="return (*this)/s , where s is a scalar">div</a>(s);</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; }</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;};</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="preprocessor">#endif // math_Vector_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -243,7 +241,7 @@ $(document).ready(function(){initNavTree('Vector_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="Vector_8h.html">Vector.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Vectors_8h.html b/doc/html/Vectors_8h.html
index eefe7df..ed76e93 100644
--- a/doc/html/Vectors_8h.html
+++ b/doc/html/Vectors_8h.html
@@ -89,7 +89,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a57e9e528cb28fd6752031b735908fb6.html">geo</a></li><li class="navelem"><a class="el" href="Vectors_8h.html">Vectors.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/Vectors_8h_source.html b/doc/html/Vectors_8h_source.html
index 10da370..0a95355 100644
--- a/doc/html/Vectors_8h_source.html
+++ b/doc/html/Vectors_8h_source.html
@@ -76,159 +76,159 @@ $(document).ready(function(){initNavTree('Vectors_8h_source.html','');});
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda"> 23</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(): x_(0), y_(0) {</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; }</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a01aeddc4e436a8c97e0e570a089ea6c2"> 27</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a01aeddc4e436a8c97e0e570a089ea6c2" title="consturctor (from another Vector2D)">Vector2D</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v): x_(v.x_), y_(v.y_) {</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; }</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a713952e42ea15ee86187a14b677e9555"> 31</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a713952e42ea15ee86187a14b677e9555" title="constructor (s, s)">Vector2D</a>(Scalar <span class="keyword">const</span>&amp; s): x_(s), y_(s) {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a989ff27c4ef1dacd3f1b37b81dff0fa2"> 35</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a989ff27c4ef1dacd3f1b37b81dff0fa2" title="constructor (sx, sy)">Vector2D</a>(Scalar <span class="keyword">const</span>&amp; sx, Scalar <span class="keyword">const</span>&amp; sy): x_(sx), y_(sy) {</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; }</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#ade618c2ccb5a6c1915495e5b0e34cba4"> 39</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#ade618c2ccb5a6c1915495e5b0e34cba4" title="constructor (from another Vector)">Vector2D</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; v): x_(v(0)), y_(v(1)) {</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; }</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a62a15858053f7c6c80aa9a896dd6d78d"> 43</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a62a15858053f7c6c80aa9a896dd6d78d" title="constructor (from another Vector, i-th)">Vector2D</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; v, <span class="keywordtype">size_t</span> i): x_(v(i)), y_(v(i + 1)) {</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a3782df3eec67c68edae1afdd64e18d27"> 47</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a3782df3eec67c68edae1afdd64e18d27" title="destructor">~Vector2D</a>() {</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#adced5720013a8be2883df4a82e091483"> 51</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#adced5720013a8be2883df4a82e091483" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73" title="modify x and y">xy</a>(v.<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>(), v.<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3"> 56</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">return</span> x_;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a23046c79acf88b719292022ea4e8d171"> 61</a></span>&#160; Scalar&amp; <a class="code" href="classmeow_1_1Vector2D.html#a23046c79acf88b719292022ea4e8d171" title="access x with non constant reference">xGet</a>() {</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> x_;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a26a246441af25df6aa76708cf98fb9e6"> 66</a></span>&#160; Scalar&amp; <a class="code" href="classmeow_1_1Vector2D.html#a26a246441af25df6aa76708cf98fb9e6" title="access y with non constant reference">yGet</a>() {</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> y_;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74"> 71</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">return</span> y_;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a1bb44937c6a470a483740aa6527a90b9"> 76</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a1bb44937c6a470a483740aa6527a90b9" title="modify x">x</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; x_ = s;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>();</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a48f420d0f701c059f86f33cdfdf630b7"> 82</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a48f420d0f701c059f86f33cdfdf630b7" title="modify y">y</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; y_ = s;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>();</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73"> 88</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73" title="modify x and y">xy</a>(Scalar <span class="keyword">const</span>&amp; sx, Scalar <span class="keyword">const</span>&amp; sy){</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>(sx);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>(sy);</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2"> 95</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2" title="return +(*this)">positive</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a8d389c0b1a9cc2b3a9dec7fec05bbad8"> 100</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#a8d389c0b1a9cc2b3a9dec7fec05bbad8" title="return -(*this)">negative</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(-<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>(), -<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a2e768dd00d86dafa8adefc4ffc4edc9e"> 105</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#a2e768dd00d86dafa8adefc4ffc4edc9e" title="return count-clockwise rotate 90 degree of itself">right</a>()<span class="keyword">const</span>{</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(-<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>(), <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>());</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; </div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a52467da33d126ff24f4c2757ee37ed4d"> 110</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#a52467da33d126ff24f4c2757ee37ed4d" title="return (*this)+v">add</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() + v.<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() + v.<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a56f0d3848a5508b33d6c564e2eebb75e"> 115</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a56f0d3848a5508b33d6c564e2eebb75e" title="Let itself add v.">added</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73" title="modify x and y">xy</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() + v.<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() + v.<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#ad7b3e23827cfc3db7fbcc12c70db398a"> 120</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#ad7b3e23827cfc3db7fbcc12c70db398a" title="return (*this)-v">sub</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() - v.<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() - v.<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a274c5cd3e139978539655a0191f03579"> 125</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a274c5cd3e139978539655a0191f03579" title="Let itself substract v.">subed</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73" title="modify x and y">xy</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() - v.<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() - v.<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#ac3d894445c7dfa8b0cbe8ec2c1dfd1c2"> 130</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#ac3d894445c7dfa8b0cbe8ec2c1dfd1c2" title="return (*this)*s , where s is a scalar">mul</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() * s, <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() * s);</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
<div class="line"><a name="l00135"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a4e0422609e71a9e16b41fceca451d63c"> 135</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a4e0422609e71a9e16b41fceca451d63c" title="Let itself mulitple s.">muled</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73" title="modify x and y">xy</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() * s, <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() * s);</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; </div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#acbb2ec7aa2897e93b3ff9964565ae8fc"> 140</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#acbb2ec7aa2897e93b3ff9964565ae8fc" title="return (*this)/s , where s is a scalar">div</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() / s, <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() / s);</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; </div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
<div class="line"><a name="l00145"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a045c6189a70574b1465131d59410fa16"> 145</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a045c6189a70574b1465131d59410fa16" title="Let itself divide s.">dived</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73" title="modify x and y">xy</a>(<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() / s, <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() / s);</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
<div class="line"><a name="l00150"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a8c65e501c1eeafe7f504c3b834743320"> 150</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector2D.html#a8c65e501c1eeafe7f504c3b834743320" title="same as dot(v)">mul</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490" title="dot">dot</a>(v);</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; </div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div>
<div class="line"><a name="l00155"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490"> 155</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490" title="dot">dot</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() * v.<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() + <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() * v.<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; </div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#adc7dbbcc85cacd7ca22b466335f250ae"> 160</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector2D.html#adc7dbbcc85cacd7ca22b466335f250ae" title="cross">cross</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() * v.<a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() - <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>() * v.<a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>();</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5"> 165</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5" title="sqrt of length2">length</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> Scalar(sqrt(<span class="keywordtype">double</span>(<a class="code" href="classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538" title="same as dot(*this) ">length2</a>())));</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; </div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538"> 170</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538" title="same as dot(*this) ">length2</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490" title="dot">dot</a>(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
<div class="line"><a name="l00175"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#aa5da315ea365b2ca374704a3e8dded9b"> 175</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#aa5da315ea365b2ca374704a3e8dded9b" title="return normalize form of itself">normalize</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#acbb2ec7aa2897e93b3ff9964565ae8fc" title="return (*this)/s , where s is a scalar">div</a>(<a class="code" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5" title="sqrt of length2">length</a>());</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; </div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#ad60642b6b0dc4a6626e1d9eb917e6b45"> 180</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#ad60642b6b0dc4a6626e1d9eb917e6b45" title="normalize itself">normalized</a>() {</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a045c6189a70574b1465131d59410fa16" title="Let itself divide s.">dived</a>(<a class="code" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5" title="sqrt of length2">length</a>());</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; }</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; </div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div>
<div class="line"><a name="l00185"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#aa6ae22d99360ff9e0b623e1744576733"> 185</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#aa6ae22d99360ff9e0b623e1744576733" title="return rotate theta degree of itself">rotate</a>(Scalar <span class="keyword">const</span>&amp; theta)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; Scalar cs(cos(-<span class="keywordtype">double</span>(theta)));</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; Scalar sn(sin(-<span class="keywordtype">double</span>(theta)));</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D&lt;Scalar&gt;</a> new_x(cs, sn);</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda" title="consturctor (0, 0)">Vector2D</a>(new_x.<a class="code" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490" title="dot">dot</a>(*<span class="keyword">this</span>), new_x.<a class="code" href="classmeow_1_1Vector2D.html#adc7dbbcc85cacd7ca22b466335f250ae" title="cross">cross</a>(*<span class="keyword">this</span>));</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; </div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#af3fd0ff1b8f9ca6df82b8659cadafb7d"> 193</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#af3fd0ff1b8f9ca6df82b8659cadafb7d" title="Let itself rotate theta degree.">rotated</a>(Scalar <span class="keyword">const</span>&amp; theta) {</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#adced5720013a8be2883df4a82e091483" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Vector2D.html#aa6ae22d99360ff9e0b623e1744576733" title="return rotate theta degree of itself">rotate</a>(theta));</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; </div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
<div class="line"><a name="l00198"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#affe23a69e939807c11ee8763ca79debf"> 198</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <a class="code" href="classmeow_1_1Vector2D.html#affe23a69e939807c11ee8763ca79debf" title="return reflect from given vector v ">reflect</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span> v.<a class="code" href="classmeow_1_1Vector2D.html#ac3d894445c7dfa8b0cbe8ec2c1dfd1c2" title="return (*this)*s , where s is a scalar">mul</a>(v.<a class="code" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490" title="dot">dot</a>(*<span class="keyword">this</span>) * 2 / v.<a class="code" href="classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538" title="same as dot(*this) ">length2</a>()).<a class="code" href="classmeow_1_1Vector2D.html#ad7b3e23827cfc3db7fbcc12c70db398a" title="return (*this)-v">sub</a>(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; </div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
<div class="line"><a name="l00203"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a21850fb1a57df44425330ede4cfee331"> 203</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a21850fb1a57df44425330ede4cfee331" title="reflect itself given vector v ">reflected</a>(<a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#adced5720013a8be2883df4a82e091483" title="copy">copyFrom</a>(reflecte(v));</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; }</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; </div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div>
<div class="line"><a name="l00208"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#added6ab5bb058ef53f919724333454fd"> 208</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Vector2D.html#added6ab5bb058ef53f919724333454fd" title="return a 2x1 matrix form of itself">matrix</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keyword">static</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(2, 1, Scalar(0));</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; ret(0, 0, <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>());</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; ret(1, 0, <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">return</span> ret;</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; }</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; </div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div>
<div class="line"><a name="l00216"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a715f0f3cb62fddd7723b38d4211bb6db"> 216</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Vector2D.html#a715f0f3cb62fddd7723b38d4211bb6db" title="return a 3x1 matrix form of itself">matrix</a>(Scalar <span class="keyword">const</span>&amp; homo)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keyword">static</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(3, 1, Scalar(0));</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; ret(0, 0, <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>());</div>
@@ -236,11 +236,11 @@ $(document).ready(function(){initNavTree('Vectors_8h_source.html','');});
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; ret(2, 0, homo);</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> ret;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; </div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
<div class="line"><a name="l00224"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a2a0cd6731b85b71649dca56d719a1633"> 224</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a2a0cd6731b85b71649dca56d719a1633">operator()</a>(<span class="keywordtype">size_t</span> n)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">return</span> (n == 0 ? <a class="code" href="classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3" title="access x">x</a>() : <a class="code" href="classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74" title="access y">y</a>());</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; </div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div>
<div class="line"><a name="l00228"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector2D.html#a16a2ba46dfff7929b291df9aa0952422"> 228</a></span>&#160; <a class="code" href="classmeow_1_1Vector2D.html" title="2D&#39;s vector">Vector2D</a>&amp; <a class="code" href="classmeow_1_1Vector2D.html#a16a2ba46dfff7929b291df9aa0952422">operator()</a>(Scalar <span class="keyword">const</span>&amp; sx, Scalar <span class="keyword">const</span>&amp; sy) {</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73" title="modify x and y">xy</a>(sx, sy);</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; }</div>
@@ -269,170 +269,170 @@ $(document).ready(function(){initNavTree('Vectors_8h_source.html','');});
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00260"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97"> 260</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(): x_(0), y_(0), z_(0) {</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; </div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;</div>
<div class="line"><a name="l00264"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a6c1f0e4d1d28cbb32fa4cc5e4d7bf390"> 264</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a6c1f0e4d1d28cbb32fa4cc5e4d7bf390" title="consturctor (from another Vector3D)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v): x_(v.x_), y_(v.y_), z_(v.z_) {</div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; }</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; </div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div>
<div class="line"><a name="l00268"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a8f670a62f3f3ff3a6d7f7326e9d4bfd8"> 268</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a8f670a62f3f3ff3a6d7f7326e9d4bfd8" title="constructor (s, s)">Vector3D</a>(Scalar <span class="keyword">const</span>&amp; s): x_(s), y_(s), z_(s) {</div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; </div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div>
<div class="line"><a name="l00272"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a0244832892d238c66945cbb39e2a5d6c"> 272</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(Scalar <span class="keyword">const</span>&amp; sx,</div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; Scalar <span class="keyword">const</span>&amp; sy,</div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; Scalar <span class="keyword">const</span>&amp; sz): x_(sx), y_(sy), z_(sz) {</div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; </div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div>
<div class="line"><a name="l00278"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#afae72511a31b5260ee93130d0654093f"> 278</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#afae72511a31b5260ee93130d0654093f" title="constructor (from another Vector)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; v): x_(v(0)), y_(v(1)), z_(v(2)) {</div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; }</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; </div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div>
<div class="line"><a name="l00282"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a360cc4bdfaca40a1b9e80590dd13e523"> 282</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a360cc4bdfaca40a1b9e80590dd13e523" title="constructor (from another Vector, i-th)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector.html" title="vector ">Vector&lt;Scalar&gt;</a> <span class="keyword">const</span>&amp; v, <span class="keywordtype">size_t</span> i): x_(v(i)), y_(v(i+1)), z_(v(i+2)){</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; </div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div>
<div class="line"><a name="l00286"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a76e749898519070a7918a9cf382d87d7"> 286</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a76e749898519070a7918a9cf382d87d7" title="destructor">~Vector3D</a>(){</div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; }</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; </div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;</div>
<div class="line"><a name="l00290"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab266a5252dd1243b726584724f8f843d"> 290</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#ab266a5252dd1243b726584724f8f843d" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v){</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514" title="modify x and y">xyz</a>(v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(), v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(), v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>());</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; </div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div>
<div class="line"><a name="l00295"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e"> 295</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>()<span class="keyword"> const</span>{</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">return</span> x_;</div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; </div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;</div>
<div class="line"><a name="l00300"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf"> 300</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>()<span class="keyword"> const</span>{</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">return</span> y_;</div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; </div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;</div>
<div class="line"><a name="l00305"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950"> 305</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>()<span class="keyword"> const</span>{</div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> z_;</div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; </div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;</div>
<div class="line"><a name="l00310"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a001a44809826f9cd17dbd652c790c455"> 310</a></span>&#160; Scalar&amp; <a class="code" href="classmeow_1_1Vector3D.html#a001a44809826f9cd17dbd652c790c455" title="access x with non constant reference">xGet</a>() {</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">return</span> x_;</div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; </div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;</div>
<div class="line"><a name="l00315"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab3603b9ca292877febc1aec42b29b0ae"> 315</a></span>&#160; Scalar&amp; <a class="code" href="classmeow_1_1Vector3D.html#ab3603b9ca292877febc1aec42b29b0ae" title="access y with non constant reference">yGet</a>() {</div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">return</span> y_;</div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; </div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;</div>
<div class="line"><a name="l00320"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a49b26941a2b323519ee22fbabdd0ce24"> 320</a></span>&#160; Scalar&amp; <a class="code" href="classmeow_1_1Vector3D.html#a49b26941a2b323519ee22fbabdd0ce24" title="access z with non constant reference">zGet</a>() {</div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">return</span> z_;</div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; }</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; </div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;</div>
<div class="line"><a name="l00325"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ae7254b17c13defe2123565c17c9856a7"> 325</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector3D.html#ae7254b17c13defe2123565c17c9856a7" title="modify x">x</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; x_ = s;</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>();</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; </div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;</div>
<div class="line"><a name="l00331"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab520fe8f88aa2df1af1bfb91bac28fb2"> 331</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector3D.html#ab520fe8f88aa2df1af1bfb91bac28fb2" title="modify y">y</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; y_ = s;</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>();</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; }</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; </div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;</div>
<div class="line"><a name="l00337"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#aaa3b1182e639a91df5d58d6e5223ad39"> 337</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector3D.html#aaa3b1182e639a91df5d58d6e5223ad39" title="modify z">z</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; z_ = s;</div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>();</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; }</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; </div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div>
<div class="line"><a name="l00343"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514"> 343</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514" title="modify x and y">xyz</a>(Scalar <span class="keyword">const</span>&amp; sx, Scalar <span class="keyword">const</span>&amp; sy, Scalar <span class="keyword">const</span>&amp; sz) {</div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(sx);</div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(sy);</div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>(sz);</div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; }</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; </div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;</div>
<div class="line"><a name="l00351"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a8fc395992d84b816307f72026d1e7125"> 351</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#a8fc395992d84b816307f72026d1e7125" title="return +(*this)">positive</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; }</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; </div>
+<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;</div>
<div class="line"><a name="l00356"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab71feb692f3ce13de6815fa1b2b21be8"> 356</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#ab71feb692f3ce13de6815fa1b2b21be8" title="return -(*this)">negative</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(-<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(), -<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(), -<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>());</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; }</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; </div>
+<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;</div>
<div class="line"><a name="l00361"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a1b950da187dd750e25b31f3f267234b5"> 361</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#a1b950da187dd750e25b31f3f267234b5" title="return (*this)+v">add</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() + v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() + v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() + v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>());</div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; </div>
+<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div>
<div class="line"><a name="l00366"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#aa26ba31625ebeeb07c41925335c1afcc"> 366</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#aa26ba31625ebeeb07c41925335c1afcc" title="Let itself add v.">added</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514" title="modify x and y">xyz</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() + v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() + v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() + v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>());</div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; }</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; </div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;</div>
<div class="line"><a name="l00371"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab509fd9ef3b79fb13cc04cfec798dcc2"> 371</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#ab509fd9ef3b79fb13cc04cfec798dcc2" title="return (*this)-v">sub</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() - v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() - v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() - v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>());</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; }</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; </div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div>
<div class="line"><a name="l00376"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a65995d7ae4ba5652e162be215a5ec1ea"> 376</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a65995d7ae4ba5652e162be215a5ec1ea" title="Let itself substract v.">subed</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514" title="modify x and y">xyz</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() - v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() - v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(), <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() - v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>());</div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; </div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;</div>
<div class="line"><a name="l00381"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a"> 381</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a" title="return (*this)*s , where s is a scalar">mul</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() * s, <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() * s, <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() * s);</div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; }</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; </div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div>
<div class="line"><a name="l00386"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a840c9c1ab9734c0687241cc6636fe915"> 386</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a840c9c1ab9734c0687241cc6636fe915" title="Let itself mulitple s.">muled</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514" title="modify x and y">xyz</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() * s, <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() * s, <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() * s);</div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; }</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; </div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div>
<div class="line"><a name="l00391"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a9449f90146085ac5901eb0c75b316b87"> 391</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#a9449f90146085ac5901eb0c75b316b87" title="return (*this)/s , where s is a scalar">div</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() / s, <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() / s, <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() / s);</div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; </div>
+<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;</div>
<div class="line"><a name="l00396"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a7d6973544b3b3c4bd34055c34d3da73b"> 396</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a7d6973544b3b3c4bd34055c34d3da73b" title="Let itself divide s.">dived</a>(Scalar <span class="keyword">const</span>&amp; s) {</div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514" title="modify x and y">xyz</a>(<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() / s, <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() / s, <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() / s);</div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; </div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;</div>
<div class="line"><a name="l00401"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a04201f13c26a2f6abc9b1c7b0ff313cc"> 401</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector3D.html#a04201f13c26a2f6abc9b1c7b0ff313cc" title="same as dot(v)">mul</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396" title="dot">dot</a>(v);</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; }</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; </div>
+<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;</div>
<div class="line"><a name="l00406"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396"> 406</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396" title="dot">dot</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() + <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() + <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>();</div>
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; }</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; </div>
+<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;</div>
<div class="line"><a name="l00411"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#afc6474b0219c6135f9e268404edc93e0"> 411</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#afc6474b0219c6135f9e268404edc93e0" title="cross">cross</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97" title="consturctor (0, 0)">Vector3D</a>(<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() - <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>(),</div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() - <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>(),</div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() - <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() * v.<a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>());</div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; }</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; </div>
+<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;</div>
<div class="line"><a name="l00418"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a2ec32fffb7a0355d46c52826f85aa506"> 418</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a2ec32fffb7a0355d46c52826f85aa506" title="crossed">crossed</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#ab266a5252dd1243b726584724f8f843d" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Vector3D.html#afc6474b0219c6135f9e268404edc93e0" title="cross">cross</a>(v));</div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; }</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; </div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div>
<div class="line"><a name="l00423"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ae5d23addf232794f4635bdf6221ef7ec"> 423</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector3D.html#ae5d23addf232794f4635bdf6221ef7ec" title="sqrt of length2">length</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">return</span> Scalar(sqrt(<span class="keywordtype">double</span>(<a class="code" href="classmeow_1_1Vector3D.html#ab378a6b96d9e5d9a75f21ee3bf107bde" title="same as dot(*this) ">length2</a>())));</div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; }</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; </div>
+<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;</div>
<div class="line"><a name="l00428"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab378a6b96d9e5d9a75f21ee3bf107bde"> 428</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector3D.html#ab378a6b96d9e5d9a75f21ee3bf107bde" title="same as dot(*this) ">length2</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396" title="dot">dot</a>(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; }</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; </div>
+<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;</div>
<div class="line"><a name="l00433"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#aa9f6d3c5f4e5dd0952633822451d98b8"> 433</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#aa9f6d3c5f4e5dd0952633822451d98b8" title="return normalize form of itself">normalize</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a9449f90146085ac5901eb0c75b316b87" title="return (*this)/s , where s is a scalar">div</a>(<a class="code" href="classmeow_1_1Vector3D.html#ae5d23addf232794f4635bdf6221ef7ec" title="sqrt of length2">length</a>());</div>
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; }</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; </div>
+<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;</div>
<div class="line"><a name="l00438"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#af4f99f5a4871892e3975e41c8137f69c"> 438</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#af4f99f5a4871892e3975e41c8137f69c" title="normalize itself">normalized</a>() {</div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a7d6973544b3b3c4bd34055c34d3da73b" title="Let itself divide s.">dived</a>(<a class="code" href="classmeow_1_1Vector3D.html#ae5d23addf232794f4635bdf6221ef7ec" title="sqrt of length2">length</a>());</div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; }</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; </div>
+<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;</div>
<div class="line"><a name="l00443"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#aa733fcc0936ef22613df75f9dabd853b"> 443</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#aa733fcc0936ef22613df75f9dabd853b" title="return rotate theta degree by axis of itself">rotate</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; axis, <span class="keywordtype">double</span> theta)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> a(axis.<a class="code" href="classmeow_1_1Vector3D.html#aa9f6d3c5f4e5dd0952633822451d98b8" title="return normalize form of itself">normalize</a>());</div>
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> xx(<a class="code" href="classmeow_1_1Vector3D.html#ab509fd9ef3b79fb13cc04cfec798dcc2" title="return (*this)-v">sub</a>(a) .<a class="code" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a" title="return (*this)*s , where s is a scalar">mul</a>(cos(theta)));</div>
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> yy(a.cross(*this).mul(sin(theta)));</div>
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">return</span> a.<a class="code" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a" title="return (*this)*s , where s is a scalar">mul</a>(a.dot(*<span class="keyword">this</span>)).<a class="code" href="classmeow_1_1Vector3D.html#a1b950da187dd750e25b31f3f267234b5" title="return (*this)+v">add</a>(xx).<a class="code" href="classmeow_1_1Vector3D.html#a1b950da187dd750e25b31f3f267234b5" title="return (*this)+v">add</a>(yy);</div>
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; </div>
+<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;</div>
<div class="line"><a name="l00451"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a27a06ec4ab5e4f6d3d59eeffa5a31617"> 451</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a27a06ec4ab5e4f6d3d59eeffa5a31617" title="Let itself rotate theta degree.">rotated</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; axis, <span class="keywordtype">double</span> theta) {</div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#ab266a5252dd1243b726584724f8f843d" title="copy">copyFrom</a>(<a class="code" href="classmeow_1_1Vector3D.html#aa733fcc0936ef22613df75f9dabd853b" title="return rotate theta degree by axis of itself">rotate</a>(axis, theta));</div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; }</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; </div>
+<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div>
<div class="line"><a name="l00456"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a47b8cbd8a6738bbdbe713aa342a1d53f"> 456</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#a47b8cbd8a6738bbdbe713aa342a1d53f" title="return reflect from given vector v ">reflect</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">return</span> v.<a class="code" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a" title="return (*this)*s , where s is a scalar">mul</a>(v.<a class="code" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396" title="dot">dot</a>(*<span class="keyword">this</span>) * 2 / v.<a class="code" href="classmeow_1_1Vector3D.html#ab378a6b96d9e5d9a75f21ee3bf107bde" title="same as dot(*this) ">length2</a>()).<a class="code" href="classmeow_1_1Vector3D.html#ab509fd9ef3b79fb13cc04cfec798dcc2" title="return (*this)-v">sub</a>(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; </div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div>
<div class="line"><a name="l00461"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#af4f968f581bfbcf57afcd1bbf1d3bee2"> 461</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#af4f968f581bfbcf57afcd1bbf1d3bee2" title="reflect itself given vector v ">reflected</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#ab266a5252dd1243b726584724f8f843d" title="copy">copyFrom</a>(reflecte(v));</div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; }</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; </div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;</div>
<div class="line"><a name="l00466"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ae03fb93d06c60fd2901875ead10c8c72"> 466</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Vector3D.html#ae03fb93d06c60fd2901875ead10c8c72" title="return a 3x1 matrix form of itself">matrix</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keyword">static</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(3, 1, Scalar(0));</div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; ret(0, 0, <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>());</div>
@@ -440,7 +440,7 @@ $(document).ready(function(){initNavTree('Vectors_8h_source.html','');});
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; ret(2, 0, <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>());</div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">return</span> ret;</div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; }</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; </div>
+<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div>
<div class="line"><a name="l00475"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#acb2fc741a0bd039b38b1ae5cec103265"> 475</a></span>&#160; <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> <a class="code" href="classmeow_1_1Vector3D.html#acb2fc741a0bd039b38b1ae5cec103265" title="return a 3x1 matrix form of itself">matrix</a>(Scalar <span class="keyword">const</span>&amp; homo)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keyword">static</span> <a class="code" href="classmeow_1_1Matrix.html">Matrix&lt;Scalar&gt;</a> ret(4, 1, Scalar(0));</div>
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; ret(0, 0, <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>());</div>
@@ -449,11 +449,11 @@ $(document).ready(function(){initNavTree('Vectors_8h_source.html','');});
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; ret(3, 0, homo);</div>
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="keywordflow">return</span> ret;</div>
<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; }</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; </div>
+<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;</div>
<div class="line"><a name="l00484"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#aebeef94d26c97cf43566070ce5501baf"> 484</a></span>&#160; Scalar <span class="keyword">const</span>&amp; <a class="code" href="classmeow_1_1Vector3D.html#aebeef94d26c97cf43566070ce5501baf">operator()</a>(<span class="keywordtype">size_t</span> n)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">return</span> (n == 0 ? <a class="code" href="classmeow_1_1Vector3D.html#a647a1a8b562c05d615328559f557257e" title="access x">x</a>() : (n == 1 ? <a class="code" href="classmeow_1_1Vector3D.html#a128085dc3d052f9479f3486fc3882caf" title="access y">y</a>() : <a class="code" href="classmeow_1_1Vector3D.html#a2d3855af7fd18b94faa89cceffa3d950" title="access z">z</a>()));</div>
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; }</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; </div>
+<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div>
<div class="line"><a name="l00488"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ac49ceadb4ac36acaa0031160a1e1b099"> 488</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#ac49ceadb4ac36acaa0031160a1e1b099">operator()</a>(Scalar <span class="keyword">const</span>&amp; sx, Scalar <span class="keyword">const</span>&amp; sy, Scalar <span class="keyword">const</span>&amp; sz) {</div>
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a4d95f04693bc608375a5dffb3f8d6514" title="modify x and y">xyz</a>(sx, sy, sz);</div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; }</div>
@@ -466,7 +466,7 @@ $(document).ready(function(){initNavTree('Vectors_8h_source.html','');});
<div class="line"><a name="l00497"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a7e274b5303baca7caec05d34a4e72ccc"> 497</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#a7e274b5303baca7caec05d34a4e72ccc">operator*</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a" title="return (*this)*s , where s is a scalar">mul</a>(s); }</div>
<div class="line"><a name="l00498"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab19d15aa3ecbe2f2b87ce077a0bd7a46"> 498</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <a class="code" href="classmeow_1_1Vector3D.html#ab19d15aa3ecbe2f2b87ce077a0bd7a46">operator/</a>(Scalar <span class="keyword">const</span>&amp; s)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a9449f90146085ac5901eb0c75b316b87" title="return (*this)/s , where s is a scalar">div</a>(s); }</div>
<div class="line"><a name="l00499"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ab868dfd428a801abe173085826a40c97"> 499</a></span>&#160; Scalar <a class="code" href="classmeow_1_1Vector3D.html#ab868dfd428a801abe173085826a40c97">operator*</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a" title="return (*this)*s , where s is a scalar">mul</a>(v); }</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; </div>
+<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;</div>
<div class="line"><a name="l00501"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a336dbab9f61ee8196ce4c577a169a927"> 501</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a336dbab9f61ee8196ce4c577a169a927">operator=</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v) { <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#ab266a5252dd1243b726584724f8f843d" title="copy">copyFrom</a>(v); }</div>
<div class="line"><a name="l00502"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#ad8effb8709fe565734bc1c8f94dc0ef1"> 502</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#ad8effb8709fe565734bc1c8f94dc0ef1">operator+=</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v) { <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#aa26ba31625ebeeb07c41925335c1afcc" title="Let itself add v.">added</a>(v); }</div>
<div class="line"><a name="l00503"></a><span class="lineno"><a class="code" href="classmeow_1_1Vector3D.html#a238bd646690e1ac1660726e007b05d92"> 503</a></span>&#160; <a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a>&amp; <a class="code" href="classmeow_1_1Vector3D.html#a238bd646690e1ac1660726e007b05d92">operator-=</a>(<a class="code" href="classmeow_1_1Vector3D.html" title="3D&#39;s vector">Vector3D</a> <span class="keyword">const</span>&amp; v) { <span class="keywordflow">return</span> <a class="code" href="classmeow_1_1Vector3D.html#a65995d7ae4ba5652e162be215a5ec1ea" title="Let itself substract v.">subed</a>(v); }</div>
@@ -484,7 +484,7 @@ $(document).ready(function(){initNavTree('Vectors_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a57e9e528cb28fd6752031b735908fb6.html">geo</a></li><li class="navelem"><a class="el" href="Vectors_8h.html">Vectors.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ViewPort_8h.html b/doc/html/ViewPort_8h.html
index edbb0f6..2de069b 100644
--- a/doc/html/ViewPort_8h.html
+++ b/doc/html/ViewPort_8h.html
@@ -83,7 +83,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="ViewPort_8h.html">ViewPort.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/ViewPort_8h_source.html b/doc/html/ViewPort_8h_source.html
index c4e3cf5..5b4b469 100644
--- a/doc/html/ViewPort_8h_source.html
+++ b/doc/html/ViewPort_8h_source.html
@@ -81,7 +81,7 @@ $(document).ready(function(){initNavTree('ViewPort_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="ViewPort_8h.html">ViewPort.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/WatchBall_8h.html b/doc/html/WatchBall_8h.html
index 2fb1ba2..4b0bdba 100644
--- a/doc/html/WatchBall_8h.html
+++ b/doc/html/WatchBall_8h.html
@@ -89,7 +89,7 @@ Namespaces</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="WatchBall_8h.html">WatchBall.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/WatchBall_8h_source.html b/doc/html/WatchBall_8h_source.html
index f8f9240..37f4a33 100644
--- a/doc/html/WatchBall_8h_source.html
+++ b/doc/html/WatchBall_8h_source.html
@@ -230,7 +230,7 @@ $(document).ready(function(){initNavTree('WatchBall_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li><li class="navelem"><a class="el" href="WatchBall_8h.html">WatchBall.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/YUV__Space_8h.html b/doc/html/YUV__Space_8h.html
index 5638f11..2ba36a7 100644
--- a/doc/html/YUV__Space_8h.html
+++ b/doc/html/YUV__Space_8h.html
@@ -103,7 +103,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="YUV__Space_8h.html">YUV_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/YUV__Space_8h_source.html b/doc/html/YUV__Space_8h_source.html
index 18b29df..a449440 100644
--- a/doc/html/YUV__Space_8h_source.html
+++ b/doc/html/YUV__Space_8h_source.html
@@ -177,7 +177,7 @@ $(document).ready(function(){initNavTree('YUV__Space_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="YUV__Space_8h.html">YUV_Space.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/annotated.html b/doc/html/annotated.html
index 60d509c..5e86a67 100644
--- a/doc/html/annotated.html
+++ b/doc/html/annotated.html
@@ -96,21 +96,23 @@ $(document).ready(function(){initNavTree('annotated.html','');});
<tr id="row_0_30_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Rotation3D.html" target="_self">Rotation3D</a></td><td class="desc">Rotation a point/vector alone an axis with given angle in 3D world</td></tr>
<tr id="row_0_31_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Matrix.html" target="_self">Matrix</a></td><td class="desc"><b>matrix</b> </td></tr>
<tr id="row_0_32_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Transformation.html" target="_self">Transformation</a></td><td class="desc">A base class for implementing kinds of transformations</td></tr>
-<tr id="row_0_33_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1BallProjection.html" target="_self">BallProjection</a></td><td class="desc">A ball projection is to project the given vector to a hyper-sphere</td></tr>
-<tr id="row_0_34_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1PhotoProjection.html" target="_self">PhotoProjection</a></td><td class="desc">A <b>photo</b> <b>projection</b> is a kind of transformation that project point/vector to a flat <b>photo</b> </td></tr>
-<tr id="row_0_35_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">Vector</a></td><td class="desc"><b>vector</b> </td></tr>
-<tr id="row_0_36_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjArray.html" target="_self">ObjArray</a></td><td class="desc">純粹把 <code>std::vector</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
-<tr id="row_0_37_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjBase.html" target="_self">ObjBase</a></td><td class="desc">一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能</td></tr>
-<tr id="row_0_38_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjDictionary.html" target="_self">ObjDictionary</a></td><td class="desc">純粹把 <code>std::map</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
-<tr id="row_0_39_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjProperties.html" target="_self">ObjProperties</a></td><td class="desc">目前擺爛中</td></tr>
-<tr id="row_0_40_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjSelector.html" target="_self">ObjSelector</a></td><td class="desc">利用register的概念, 達到runtime用string選擇要new的class</td></tr>
-<tr id="row_0_41_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjType.html" target="_self">ObjType</a></td><td class="desc">純粹把給定的 <code>Type</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
-<tr id="row_0_42_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__int.html" target="_self">ReaderWriter_int</a></td><td class="desc"></td></tr>
-<tr id="row_0_43_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__size__t.html" target="_self">ReaderWriter_size_t</a></td><td class="desc"></td></tr>
-<tr id="row_0_44_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__double.html" target="_self">ReaderWriter_double</a></td><td class="desc"></td></tr>
-<tr id="row_0_45_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__string.html" target="_self">ReaderWriter_string</a></td><td class="desc"></td></tr>
-<tr id="row_0_46_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">Self</a></td><td class="desc">具有copy on write, 且擁有比C++更靈活的reference機制</td></tr>
-<tr id="row_0_47_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Usage.html" target="_self">Usage</a></td><td class="desc">管理參數設置, 自訂usage document, 分析argc, argv</td></tr>
+<tr id="row_0_33_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1TransformatePipeline.html" target="_self">TransformatePipeline</a></td><td class="desc"><a class="el" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a> for transformations</td></tr>
+<tr id="row_0_34_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1BallProjection.html" target="_self">BallProjection</a></td><td class="desc">A ball projection is to project the given vector to a hyper-sphere</td></tr>
+<tr id="row_0_35_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1PhotoProjection.html" target="_self">PhotoProjection</a></td><td class="desc">A <b>photo</b> <b>projection</b> is a kind of transformation that project point/vector to a flat <b>photo</b> </td></tr>
+<tr id="row_0_36_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">Vector</a></td><td class="desc"><b>vector</b> </td></tr>
+<tr id="row_0_37_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjArray.html" target="_self">ObjArray</a></td><td class="desc">純粹把 <code>std::vector</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
+<tr id="row_0_38_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjBase.html" target="_self">ObjBase</a></td><td class="desc">一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能</td></tr>
+<tr id="row_0_39_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjDictionary.html" target="_self">ObjDictionary</a></td><td class="desc">純粹把 <code>std::map</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
+<tr id="row_0_40_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjProperties.html" target="_self">ObjProperties</a></td><td class="desc">目前擺爛中</td></tr>
+<tr id="row_0_41_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjSelector.html" target="_self">ObjSelector</a></td><td class="desc">利用register的概念, 達到runtime用string選擇要new的class</td></tr>
+<tr id="row_0_42_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjType.html" target="_self">ObjType</a></td><td class="desc">純粹把給定的 <code>Type</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
+<tr id="row_0_43_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__int.html" target="_self">ReaderWriter_int</a></td><td class="desc"></td></tr>
+<tr id="row_0_44_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__size__t.html" target="_self">ReaderWriter_size_t</a></td><td class="desc"></td></tr>
+<tr id="row_0_45_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__double.html" target="_self">ReaderWriter_double</a></td><td class="desc"></td></tr>
+<tr id="row_0_46_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__string.html" target="_self">ReaderWriter_string</a></td><td class="desc"></td></tr>
+<tr id="row_0_47_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Pipeline.html" target="_self">Pipeline</a></td><td class="desc"><b>pipeline</b> </td></tr>
+<tr id="row_0_48_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">Self</a></td><td class="desc">具有copy on write, 且擁有比C++更靈活的reference機制</td></tr>
+<tr id="row_0_49_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Usage.html" target="_self">Usage</a></td><td class="desc">管理參數設置, 自訂usage document, 分析argc, argv</td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
@@ -119,7 +121,7 @@ $(document).ready(function(){initNavTree('annotated.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classdouble.html b/doc/html/classdouble.html
index 21468fa..c07ac54 100644
--- a/doc/html/classdouble.html
+++ b/doc/html/classdouble.html
@@ -65,7 +65,7 @@ $(document).ready(function(){initNavTree('classdouble.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classdouble.html">double</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classes.html b/doc/html/classes.html
index 04b522a..01204f9 100644
--- a/doc/html/classes.html
+++ b/doc/html/classes.html
@@ -66,38 +66,40 @@ $(document).ready(function(){initNavTree('classes.html','');});
</td></tr>
<tr><td valign="top"><a class="el" href="classmeow_1_1FeaturePointsDetector.html">FeaturePointsDetector</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ReaderWriter__size__t.html">ReaderWriter_size_t</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="classmeow_1_1BallProjection.html">BallProjection</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html">FeaturePointsDetector_Harris</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ReaderWriter__string.html">ReaderWriter_string</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Vector.html">Vector</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1BinaryIndexTree.html">BinaryIndexTree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1FeaturePointsMatch.html">FeaturePointsMatch</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1MergeableHeap.html">MergeableHeap</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1RGBf__Space.html">RGBf_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Vector2D.html">Vector2D</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1Bitmap.html">Bitmap</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html">FeaturePointsMatch_K_Match</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_O"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;O&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="classmeow_1_1RGBi__Space.html">RGBi_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Vector3D.html">Vector3D</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1BinaryIndexTree.html">BinaryIndexTree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1FeaturePointsMatch.html">FeaturePointsMatch</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">Pipeline::Myself::MediumInfo</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1RGBf__Space.html">RGBf_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Vector2D.html">Vector2D</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1Bitmap.html">Bitmap</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html">FeaturePointsMatch_K_Match</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1MergeableHeap.html">MergeableHeap</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1RGBi__Space.html">RGBi_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Vector3D.html">Vector3D</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;C&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_H"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;H&#160;&#160;</div></td></tr></table>
+</td><td rowspan="2" valign="bottom"><a name="letter_O"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;O&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="classmeow_1_1Rotation3D.html">Rotation3D</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ViewPort.html">ViewPort</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1ObjArray.html">ObjArray</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
+<tr><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="classmeow_1_1VP__Tree.html">VP_Tree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1Camera.html">Camera</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1HashTableList.html">HashTableList</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;W&#160;&#160;</div></td></tr></table>
+<tr><td valign="top"><a class="el" href="classmeow_1_1Camera.html">Camera</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1HashTableList.html">HashTableList</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjArray.html">ObjArray</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;W&#160;&#160;</div></td></tr></table>
</td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1Color3__Space.html">Color3_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1HSLf__Space.html">HSLf_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjDictionary.html">ObjDictionary</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1SegmentTree.html">SegmentTree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1Color3__Space.html">Color3_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1HSLf__Space.html">HSLf_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1SegmentTree.html">SegmentTree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;D&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="classmeow_1_1HSVf__Space.html">HSVf_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjProperties.html">ObjProperties</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Self.html">Self</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1WatchBall.html">WatchBall</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
+</td><td valign="top"><a class="el" href="classmeow_1_1HSVf__Space.html">HSVf_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjDictionary.html">ObjDictionary</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Self.html">Self</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1WatchBall.html">WatchBall</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;I&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="classmeow_1_1ObjSelector.html">ObjSelector</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1SplayTree.html">SplayTree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_Y"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;Y&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classmeow_1_1ObjProperties.html">ObjProperties</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1SplayTree.html">SplayTree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_Y"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;Y&#160;&#160;</div></td></tr></table>
</td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1DisjointSet.html">DisjointSet</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjType.html">ObjType</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1SplayTree__Range.html">SplayTree_Range</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1DisjointSet.html">DisjointSet</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjSelector.html">ObjSelector</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1SplayTree__Range.html">SplayTree_Range</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_E"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;E&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="classmeow_1_1IdentityPoints.html">IdentityPoints</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;P&#160;&#160;</div></td></tr></table>
-</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classmeow_1_1IdentityPoints.html">IdentityPoints</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ObjType.html">ObjType</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="classmeow_1_1YUVf__Space.html">YUVf_Space</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_K"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;K&#160;&#160;</div></td></tr></table>
+</td><td rowspan="2" valign="bottom"><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;P&#160;&#160;</div></td></tr></table>
</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html">SplayTree_Range::Element</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Photo.html">Photo</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1SplayTree_1_1Element.html">SplayTree::Element</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1KD__Tree.html">KD_Tree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1PhotoProjection.html">PhotoProjection</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;U&#160;&#160;</div></td></tr></table>
-</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html">SplayTree_Range::Element</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1SplayTree_1_1Element.html">SplayTree::Element</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1KD__Tree.html">KD_Tree</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Photo.html">Photo</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_F"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;F&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_L"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;L&#160;&#160;</div></td></tr></table>
-</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classmeow_1_1PhotoProjection.html">PhotoProjection</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;U&#160;&#160;</div></td></tr></table>
</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1Usage.html">Usage</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="classmeow_1_1FeaturePoint.html">FeaturePoint</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1LinearTransformation.html">LinearTransformation</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1ReaderWriter__double.html">ReaderWriter_double</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classmeow_1_1FeaturePoint.html">FeaturePoint</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classmeow_1_1LinearTransformation.html">LinearTransformation</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classmeow_1_1Usage.html">Usage</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td></td><td></td><td></td><td></td></tr>
+<tr><td></td><td></td><td valign="top"><a class="el" href="classmeow_1_1ReaderWriter__double.html">ReaderWriter_double</a> (<a class="el" href="namespacemeow.html">meow</a>)&#160;&#160;&#160;</td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
</table>
<div class="qindex"><a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a>&#160;|&#160;<a class="qindex" href="#letter_V">V</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a>&#160;|&#160;<a class="qindex" href="#letter_Y">Y</a></div>
@@ -107,7 +109,7 @@ $(document).ready(function(){initNavTree('classes.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classint.html b/doc/html/classint.html
index f73ed3c..d78f1e3 100644
--- a/doc/html/classint.html
+++ b/doc/html/classint.html
@@ -65,7 +65,7 @@ $(document).ready(function(){initNavTree('classint.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classint.html">int</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1BallProjection-members.html b/doc/html/classmeow_1_1BallProjection-members.html
index 46af04d..a7ecf25 100644
--- a/doc/html/classmeow_1_1BallProjection-members.html
+++ b/doc/html/classmeow_1_1BallProjection-members.html
@@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1BallProjection.html','');
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1BallProjection.html b/doc/html/classmeow_1_1BallProjection.html
index 1ae29d6..23d87f1 100644
--- a/doc/html/classmeow_1_1BallProjection.html
+++ b/doc/html/classmeow_1_1BallProjection.html
@@ -163,7 +163,7 @@ Additional Inherited Members</h2></td></tr>
<tr class="memdesc:abe781169171fa3b8206a91e166779d74 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy from the specified one. <a href="#abe781169171fa3b8206a91e166779d74">More...</a><br/></td></tr>
<tr class="separator:abe781169171fa3b8206a91e166779d74 inherit pro_methods_classmeow_1_1Transformation"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5">referenceFrom</a> (<a class="el" href="classmeow_1_1Transformation.html">Transformation</a> const &amp;b)</td></tr>
-<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ceference from the specified one. <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
+<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">reference from the specified one <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
<tr class="separator:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@@ -736,7 +736,7 @@ template&lt;class Scalar &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1BallProjection.html">BallProjection</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1BinaryIndexTree-members.html b/doc/html/classmeow_1_1BinaryIndexTree-members.html
index 594a5c3..f91ab81 100644
--- a/doc/html/classmeow_1_1BinaryIndexTree-members.html
+++ b/doc/html/classmeow_1_1BinaryIndexTree-members.html
@@ -73,7 +73,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1BinaryIndexTree.html','')
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1BinaryIndexTree.html b/doc/html/classmeow_1_1BinaryIndexTree.html
index 761997a..96d17f0 100644
--- a/doc/html/classmeow_1_1BinaryIndexTree.html
+++ b/doc/html/classmeow_1_1BinaryIndexTree.html
@@ -344,7 +344,7 @@ template&lt;class Value &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1BinaryIndexTree.html">BinaryIndexTree</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Bitmap-members.html b/doc/html/classmeow_1_1Bitmap-members.html
index 2512219..3d949ce 100644
--- a/doc/html/classmeow_1_1Bitmap-members.html
+++ b/doc/html/classmeow_1_1Bitmap-members.html
@@ -103,7 +103,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Bitmap.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Bitmap.html b/doc/html/classmeow_1_1Bitmap.html
index 3c865f3..f4bdeee 100644
--- a/doc/html/classmeow_1_1Bitmap.html
+++ b/doc/html/classmeow_1_1Bitmap.html
@@ -182,8 +182,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -1480,7 +1482,7 @@ template&lt;class Pixel&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Bitmap.html">Bitmap</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Camera-members.html b/doc/html/classmeow_1_1Camera-members.html
index fdfc708..9f790fc 100644
--- a/doc/html/classmeow_1_1Camera-members.html
+++ b/doc/html/classmeow_1_1Camera-members.html
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Camera.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Camera.html b/doc/html/classmeow_1_1Camera.html
index ae442d8..c4d28d8 100644
--- a/doc/html/classmeow_1_1Camera.html
+++ b/doc/html/classmeow_1_1Camera.html
@@ -170,8 +170,10 @@ Static Public Member Functions</h2></td></tr>
<tr class="separator:af291cd0bd6253338e05f60bea9878b64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
@@ -979,7 +981,7 @@ template&lt;class Pixel&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Camera.html">Camera</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Color3__Space-members.html b/doc/html/classmeow_1_1Color3__Space-members.html
index d8e07b1..93a42fd 100644
--- a/doc/html/classmeow_1_1Color3__Space-members.html
+++ b/doc/html/classmeow_1_1Color3__Space-members.html
@@ -86,7 +86,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Color3__Space.html','');}
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Color3__Space.html b/doc/html/classmeow_1_1Color3__Space.html
index 41da7ad..02728b0 100644
--- a/doc/html/classmeow_1_1Color3__Space.html
+++ b/doc/html/classmeow_1_1Color3__Space.html
@@ -640,7 +640,7 @@ template&lt;class T&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Color3__Space.html">Color3_Space</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1DisjointSet-members.html b/doc/html/classmeow_1_1DisjointSet-members.html
index f13c362..8e1610b 100644
--- a/doc/html/classmeow_1_1DisjointSet-members.html
+++ b/doc/html/classmeow_1_1DisjointSet-members.html
@@ -74,7 +74,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1DisjointSet.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1DisjointSet.html b/doc/html/classmeow_1_1DisjointSet.html
index 380e979..738f0a7 100644
--- a/doc/html/classmeow_1_1DisjointSet.html
+++ b/doc/html/classmeow_1_1DisjointSet.html
@@ -343,7 +343,7 @@ Public Member Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1DisjointSet.html">DisjointSet</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePoint-members.html b/doc/html/classmeow_1_1FeaturePoint-members.html
index 826119f..9a09e13 100644
--- a/doc/html/classmeow_1_1FeaturePoint-members.html
+++ b/doc/html/classmeow_1_1FeaturePoint-members.html
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1FeaturePoint.html','');})
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePoint.html b/doc/html/classmeow_1_1FeaturePoint.html
index ded740b..aa71ff4 100644
--- a/doc/html/classmeow_1_1FeaturePoint.html
+++ b/doc/html/classmeow_1_1FeaturePoint.html
@@ -136,29 +136,37 @@ Public Member Functions</h2></td></tr>
<tr class="memdesc:a54b483836901fd5ad6b3c115f3afda69"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as description(i) <a href="#a54b483836901fd5ad6b3c115f3afda69">More...</a><br/></td></tr>
<tr class="separator:a54b483836901fd5ad6b3c115f3afda69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54a0ca59d340d0bcd969609a0682d2d9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePoint.html#a54a0ca59d340d0bcd969609a0682d2d9">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:a54a0ca59d340d0bcd969609a0682d2d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#a54a0ca59d340d0bcd969609a0682d2d9">More...</a><br/></td></tr>
<tr class="separator:a54a0ca59d340d0bcd969609a0682d2d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48908e47535a5528207f8dff2db85ba4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePoint.html#a48908e47535a5528207f8dff2db85ba4">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a48908e47535a5528207f8dff2db85ba4"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a48908e47535a5528207f8dff2db85ba4">More...</a><br/></td></tr>
<tr class="separator:a48908e47535a5528207f8dff2db85ba4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7244e348b529719748d1643a6f11adbf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf">create</a> () const </td></tr>
+<tr class="memdesc:a7244e348b529719748d1643a6f11adbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#a7244e348b529719748d1643a6f11adbf">More...</a><br/></td></tr>
<tr class="separator:a7244e348b529719748d1643a6f11adbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a989fc819567e6b430a36351216a1b4b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePoint.html#a989fc819567e6b430a36351216a1b4b4">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const &amp;b)</td></tr>
<tr class="separator:a989fc819567e6b430a36351216a1b4b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ffb238473ef9f745eb79670fc46da13"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">ctype</a> () const </td></tr>
+<tr class="memdesc:a1ffb238473ef9f745eb79670fc46da13"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a1ffb238473ef9f745eb79670fc46da13">More...</a><br/></td></tr>
<tr class="separator:a1ffb238473ef9f745eb79670fc46da13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6ee7c5a267d5c64e3b021b0397880d1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1">type</a> () const </td></tr>
+<tr class="memdesc:ab6ee7c5a267d5c64e3b021b0397880d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#ab6ee7c5a267d5c64e3b021b0397880d1">More...</a><br/></td></tr>
<tr class="separator:ab6ee7c5a267d5c64e3b021b0397880d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
<tr class="separator:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a79725f50866832762db87184eb528619">More...</a><br/></td></tr>
<tr class="separator:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -369,6 +377,8 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>.</p>
</div>
@@ -396,6 +406,8 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>用C-style string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>.</p>
</div>
@@ -820,6 +832,17 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">meow::ObjBase</a>.</p>
</div>
@@ -875,6 +898,8 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>用std::string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>.</p>
</div>
@@ -919,6 +944,17 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件寫入檔案, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">meow::ObjBase</a>.</p>
</div>
@@ -933,7 +969,7 @@ template&lt;class Scalar , class Description &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1FeaturePoint.html">FeaturePoint</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsDetector-members.html b/doc/html/classmeow_1_1FeaturePointsDetector-members.html
index a7ae5f6..fb84613 100644
--- a/doc/html/classmeow_1_1FeaturePointsDetector-members.html
+++ b/doc/html/classmeow_1_1FeaturePointsDetector-members.html
@@ -80,7 +80,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1FeaturePointsDetector.htm
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsDetector.html b/doc/html/classmeow_1_1FeaturePointsDetector.html
index 19fd234..4d514dc 100644
--- a/doc/html/classmeow_1_1FeaturePointsDetector.html
+++ b/doc/html/classmeow_1_1FeaturePointsDetector.html
@@ -86,16 +86,22 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
<tr class="separator:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#ae9e9e5c664b7a92e54a3616983f39ba8">More...</a><br/></td></tr>
<tr class="separator:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a4c1f5cb4b05559197148a8f6524bfc34">More...</a><br/></td></tr>
<tr class="separator:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">create</a> () const </td></tr>
+<tr class="memdesc:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#ac9114e6917bca03b8f3c89694214b57c">More...</a><br/></td></tr>
<tr class="separator:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a79725f50866832762db87184eb528619">More...</a><br/></td></tr>
<tr class="separator:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">ctype</a> () const </td></tr>
+<tr class="memdesc:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a4aae58e8005739abe6d091d8b55a21e8">More...</a><br/></td></tr>
<tr class="separator:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a> () const </td></tr>
+<tr class="memdesc:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#a63a4911bb073281820fe9b7a9908ba72">More...</a><br/></td></tr>
<tr class="separator:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
@@ -110,8 +116,10 @@ Protected Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
@@ -204,7 +212,7 @@ template&lt;class Pixel &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1FeaturePointsDetector.html">FeaturePointsDetector</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsDetector__Harris-members.html b/doc/html/classmeow_1_1FeaturePointsDetector__Harris-members.html
index 381b8fc..cbe221d 100644
--- a/doc/html/classmeow_1_1FeaturePointsDetector__Harris-members.html
+++ b/doc/html/classmeow_1_1FeaturePointsDetector__Harris-members.html
@@ -103,7 +103,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1FeaturePointsDetector__Ha
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsDetector__Harris.html b/doc/html/classmeow_1_1FeaturePointsDetector__Harris.html
index 4d94944..c76b1ce 100644
--- a/doc/html/classmeow_1_1FeaturePointsDetector__Harris.html
+++ b/doc/html/classmeow_1_1FeaturePointsDetector__Harris.html
@@ -185,8 +185,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1FeaturePointsDetector"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1FeaturePointsDetector')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1FeaturePointsDetector.html">meow::FeaturePointsDetector&lt; Pixel &gt;</a></td></tr>
<tr class="memitem:ad8ce3d515825b6e3b8c4865ebe7c8d76 inherit pro_methods_classmeow_1_1FeaturePointsDetector"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsDetector.html#ad8ce3d515825b6e3b8c4865ebe7c8d76">FeaturePointsDetector</a> ()</td></tr>
@@ -1079,7 +1081,7 @@ template&lt;class Pixel &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html">FeaturePointsDetector_Harris</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsMatch-members.html b/doc/html/classmeow_1_1FeaturePointsMatch-members.html
index fb9e40e..fd7384f 100644
--- a/doc/html/classmeow_1_1FeaturePointsMatch-members.html
+++ b/doc/html/classmeow_1_1FeaturePointsMatch-members.html
@@ -85,7 +85,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1FeaturePointsMatch.html',
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsMatch.html b/doc/html/classmeow_1_1FeaturePointsMatch.html
index 3579ba2..538ce2e 100644
--- a/doc/html/classmeow_1_1FeaturePointsMatch.html
+++ b/doc/html/classmeow_1_1FeaturePointsMatch.html
@@ -102,16 +102,22 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
<tr class="separator:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#ae9e9e5c664b7a92e54a3616983f39ba8">More...</a><br/></td></tr>
<tr class="separator:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a4c1f5cb4b05559197148a8f6524bfc34">More...</a><br/></td></tr>
<tr class="separator:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">create</a> () const </td></tr>
+<tr class="memdesc:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#ac9114e6917bca03b8f3c89694214b57c">More...</a><br/></td></tr>
<tr class="separator:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a79725f50866832762db87184eb528619">More...</a><br/></td></tr>
<tr class="separator:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">ctype</a> () const </td></tr>
+<tr class="memdesc:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a4aae58e8005739abe6d091d8b55a21e8">More...</a><br/></td></tr>
<tr class="separator:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a> () const </td></tr>
+<tr class="memdesc:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#a63a4911bb073281820fe9b7a9908ba72">More...</a><br/></td></tr>
<tr class="separator:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
@@ -126,8 +132,10 @@ Protected Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Typedef Documentation</h2>
@@ -391,7 +399,7 @@ template&lt;class Scalar , class Description &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1FeaturePointsMatch.html">FeaturePointsMatch</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsMatch__K__Match-members.html b/doc/html/classmeow_1_1FeaturePointsMatch__K__Match-members.html
index e7322f2..d14e40d 100644
--- a/doc/html/classmeow_1_1FeaturePointsMatch__K__Match-members.html
+++ b/doc/html/classmeow_1_1FeaturePointsMatch__K__Match-members.html
@@ -94,7 +94,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1FeaturePointsMatch__K__Ma
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1FeaturePointsMatch__K__Match.html b/doc/html/classmeow_1_1FeaturePointsMatch__K__Match.html
index 82c809b..1ec0b85 100644
--- a/doc/html/classmeow_1_1FeaturePointsMatch__K__Match.html
+++ b/doc/html/classmeow_1_1FeaturePointsMatch__K__Match.html
@@ -123,16 +123,22 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a11beaa0b96effbc990c3d7d3c6922e9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a6e657c4cb57c418e39ed91b35aae448c">FPMKM</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a11beaa0b96effbc990c3d7d3c6922e9a">operator=</a> (<a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a6e657c4cb57c418e39ed91b35aae448c">FPMKM</a> const &amp;b)</td></tr>
<tr class="separator:a11beaa0b96effbc990c3d7d3c6922e9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbdc25595aeb8280c11543fec230e1a6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#acbdc25595aeb8280c11543fec230e1a6">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:acbdc25595aeb8280c11543fec230e1a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#acbdc25595aeb8280c11543fec230e1a6">More...</a><br/></td></tr>
<tr class="separator:acbdc25595aeb8280c11543fec230e1a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a207813017b7eab06672ec324968e6caa"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a207813017b7eab06672ec324968e6caa">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a207813017b7eab06672ec324968e6caa"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a207813017b7eab06672ec324968e6caa">More...</a><br/></td></tr>
<tr class="separator:a207813017b7eab06672ec324968e6caa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa320097355fccd00677bd0413935ee5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5">create</a> () const </td></tr>
+<tr class="memdesc:aaa320097355fccd00677bd0413935ee5"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#aaa320097355fccd00677bd0413935ee5">More...</a><br/></td></tr>
<tr class="separator:aaa320097355fccd00677bd0413935ee5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5aa47ae36052a5916515a2e504f2c53"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *ptr)</td></tr>
+<tr class="memdesc:ab5aa47ae36052a5916515a2e504f2c53"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#ab5aa47ae36052a5916515a2e504f2c53">More...</a><br/></td></tr>
<tr class="separator:ab5aa47ae36052a5916515a2e504f2c53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c89f6a79cba1b477c31e294ec7d9c71"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">ctype</a> () const </td></tr>
+<tr class="memdesc:a2c89f6a79cba1b477c31e294ec7d9c71"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a2c89f6a79cba1b477c31e294ec7d9c71">More...</a><br/></td></tr>
<tr class="separator:a2c89f6a79cba1b477c31e294ec7d9c71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab10e50514ac4b0de505800b1894dbb0a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a">type</a> () const </td></tr>
+<tr class="memdesc:ab10e50514ac4b0de505800b1894dbb0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#ab10e50514ac4b0de505800b1894dbb0a">More...</a><br/></td></tr>
<tr class="separator:ab10e50514ac4b0de505800b1894dbb0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classmeow_1_1FeaturePointsMatch"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmeow_1_1FeaturePointsMatch')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmeow_1_1FeaturePointsMatch.html">meow::FeaturePointsMatch&lt; Scalar, Description &gt;</a></td></tr>
<tr class="memitem:a8b90a39f83d8b86e324eab3cb45064a2 inherit pub_methods_classmeow_1_1FeaturePointsMatch"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch.html#a8b90a39f83d8b86e324eab3cb45064a2">~FeaturePointsMatch</a> ()</td></tr>
@@ -145,8 +151,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1FeaturePointsMatch"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1FeaturePointsMatch')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1FeaturePointsMatch.html">meow::FeaturePointsMatch&lt; Scalar, Description &gt;</a></td></tr>
<tr class="memitem:a474b17d1df14547565c6536a73e8484d inherit pro_methods_classmeow_1_1FeaturePointsMatch"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1FeaturePointsMatch.html#a474b17d1df14547565c6536a73e8484d">FeaturePointsMatch</a> ()</td></tr>
@@ -247,7 +255,7 @@ template&lt;class Scalar , class Description &gt; </div>
<td class="memname"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a>* <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html">meow::FeaturePointsMatch_K_Match</a>&lt; Scalar, Description &gt;::copyFrom </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *&#160;</td>
- <td class="paramname"><em>ptr</em></td><td>)</td>
+ <td class="paramname"><em>b</em></td><td>)</td>
<td></td>
</tr>
</table>
@@ -258,6 +266,15 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>複製, 預設使用operator= </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>資料來源 </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>this</code> </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>.</p>
</div>
@@ -285,6 +302,8 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>.</p>
</div>
@@ -312,6 +331,8 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>用C-style string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>.</p>
</div>
@@ -680,6 +701,17 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">meow::ObjBase</a>.</p>
</div>
@@ -733,6 +765,8 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>用std::string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>.</p>
</div>
@@ -777,6 +811,17 @@ template&lt;class Scalar , class Description &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件寫入檔案, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">meow::ObjBase</a>.</p>
</div>
@@ -791,7 +836,7 @@ template&lt;class Scalar , class Description &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html">FeaturePointsMatch_K_Match</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1HSLf__Space-members.html b/doc/html/classmeow_1_1HSLf__Space-members.html
index 528f0a6..55c10b6 100644
--- a/doc/html/classmeow_1_1HSLf__Space-members.html
+++ b/doc/html/classmeow_1_1HSLf__Space-members.html
@@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1HSLf__Space.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1HSLf__Space.html b/doc/html/classmeow_1_1HSLf__Space.html
index 63668cb..7adc226 100644
--- a/doc/html/classmeow_1_1HSLf__Space.html
+++ b/doc/html/classmeow_1_1HSLf__Space.html
@@ -941,7 +941,7 @@ Additional Inherited Members</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1HSLf__Space.html">HSLf_Space</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1HSVf__Space-members.html b/doc/html/classmeow_1_1HSVf__Space-members.html
index 0109697..5a68b35 100644
--- a/doc/html/classmeow_1_1HSVf__Space-members.html
+++ b/doc/html/classmeow_1_1HSVf__Space-members.html
@@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1HSVf__Space.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1HSVf__Space.html b/doc/html/classmeow_1_1HSVf__Space.html
index 7d362bd..3a9654b 100644
--- a/doc/html/classmeow_1_1HSVf__Space.html
+++ b/doc/html/classmeow_1_1HSVf__Space.html
@@ -941,7 +941,7 @@ Additional Inherited Members</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1HSVf__Space.html">HSVf_Space</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1HashTableList-members.html b/doc/html/classmeow_1_1HashTableList-members.html
index 171a82a..d0375db 100644
--- a/doc/html/classmeow_1_1HashTableList-members.html
+++ b/doc/html/classmeow_1_1HashTableList-members.html
@@ -86,7 +86,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1HashTableList.html','');}
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1HashTableList.html b/doc/html/classmeow_1_1HashTableList.html
index 63141de..df8a25d 100644
--- a/doc/html/classmeow_1_1HashTableList.html
+++ b/doc/html/classmeow_1_1HashTableList.html
@@ -691,7 +691,7 @@ template&lt;class Data , class HashFunc &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1HashTableList.html">HashTableList</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1IdentityPoints-members.html b/doc/html/classmeow_1_1IdentityPoints-members.html
index 1f70589..eccd177 100644
--- a/doc/html/classmeow_1_1IdentityPoints-members.html
+++ b/doc/html/classmeow_1_1IdentityPoints-members.html
@@ -102,7 +102,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1IdentityPoints.html','');
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1IdentityPoints.html b/doc/html/classmeow_1_1IdentityPoints.html
index c2fc819..08ef061 100644
--- a/doc/html/classmeow_1_1IdentityPoints.html
+++ b/doc/html/classmeow_1_1IdentityPoints.html
@@ -183,8 +183,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -1114,7 +1116,7 @@ template&lt;class ID, class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1IdentityPoints.html">IdentityPoints</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1KD__Tree-members.html b/doc/html/classmeow_1_1KD__Tree-members.html
index c03b60f..c9c3446 100644
--- a/doc/html/classmeow_1_1KD__Tree-members.html
+++ b/doc/html/classmeow_1_1KD__Tree-members.html
@@ -78,7 +78,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1KD__Tree.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1KD__Tree.html b/doc/html/classmeow_1_1KD__Tree.html
index 9124cf0..b2b984e 100644
--- a/doc/html/classmeow_1_1KD__Tree.html
+++ b/doc/html/classmeow_1_1KD__Tree.html
@@ -454,7 +454,7 @@ template&lt;class Vector , class Scalar &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1KD__Tree.html">KD_Tree</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1LinearTransformation-members.html b/doc/html/classmeow_1_1LinearTransformation-members.html
index 3cf37cd..5992912 100644
--- a/doc/html/classmeow_1_1LinearTransformation-members.html
+++ b/doc/html/classmeow_1_1LinearTransformation-members.html
@@ -95,7 +95,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1LinearTransformation.html
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1LinearTransformation.html b/doc/html/classmeow_1_1LinearTransformation.html
index 1e16279..5f14257 100644
--- a/doc/html/classmeow_1_1LinearTransformation.html
+++ b/doc/html/classmeow_1_1LinearTransformation.html
@@ -160,7 +160,7 @@ Protected Member Functions</h2></td></tr>
<tr class="memdesc:abe781169171fa3b8206a91e166779d74 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy from the specified one. <a href="#abe781169171fa3b8206a91e166779d74">More...</a><br/></td></tr>
<tr class="separator:abe781169171fa3b8206a91e166779d74 inherit pro_methods_classmeow_1_1Transformation"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5">referenceFrom</a> (<a class="el" href="classmeow_1_1Transformation.html">Transformation</a> const &amp;b)</td></tr>
-<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ceference from the specified one. <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
+<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">reference from the specified one <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
<tr class="separator:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@@ -494,7 +494,7 @@ template&lt;class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1LinearTransformation.html">LinearTransformation</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Matrix-members.html b/doc/html/classmeow_1_1Matrix-members.html
index 25240af..c8aecff 100644
--- a/doc/html/classmeow_1_1Matrix-members.html
+++ b/doc/html/classmeow_1_1Matrix-members.html
@@ -68,51 +68,54 @@ $(document).ready(function(){initNavTree('classmeow_1_1Matrix.html','');});
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413">copyFrom</a>(Matrix const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce">div</a>(Entry const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12">entries</a>(ssize_t rFirst, ssize_t rLast, ssize_t cFirst, ssize_t cLast, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b">entry</a>(size_t r, size_t c) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f">entry</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c">identitied</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f">identity</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd">inverse</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170">inversed</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29">Matrix</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5">Matrix</a>(Matrix const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74">Matrix</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd">mul</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab">mul</a>(Entry const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274">negative</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147">operator()</a>(size_t r, size_t c) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a1dc03cd2475a4c5f34afbe0cb498e472">operator()</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2">operator*</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341">operator*</a>(Entry const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84">operator+</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5">operator+</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1">operator-</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5">operator-</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a">operator/</a>(Entry const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602">operator=</a>(Matrix const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc">positive</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec">referenceFrom</a>(Matrix const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120">reset</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c">row</a>(size_t r) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178">rows</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325">rows</a>(size_t r, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c">size</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605">size</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c">sub</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8">subMatrix</a>(size_t rFirst, size_t rLast, size_t cFirst, size_t cLast) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0">transpose</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304">transposed</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56">triangular</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016">triangulared</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405">valid</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e">~Matrix</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4">entry</a>(size_t r, size_t c) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a73dd7adb618b48aaabfa4d21ba08a33a">entry</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b">entryGet</a>(size_t r, size_t c)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">EntryRef</a> typedef</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> typedef</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c">identitied</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f">identity</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd">inverse</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170">inversed</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29">Matrix</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5">Matrix</a>(Matrix const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74">Matrix</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd">mul</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab">mul</a>(Entry const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274">negative</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32">operator()</a>(size_t r, size_t c) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a162d35e1ce93b7777c975efcdaa46992">operator()</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2">operator*</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341">operator*</a>(Entry const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84">operator+</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5">operator+</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1">operator-</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5">operator-</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a">operator/</a>(Entry const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602">operator=</a>(Matrix const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc">positive</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec">referenceFrom</a>(Matrix const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120">reset</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c">row</a>(size_t r) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178">rows</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325">rows</a>(size_t r, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c">size</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605">size</a>(size_t r, size_t c, Entry const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c">sub</a>(Matrix const &amp;m) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8">subMatrix</a>(size_t rFirst, size_t rLast, size_t cFirst, size_t cLast) const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0">transpose</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304">transposed</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56">triangular</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016">triangulared</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405">valid</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e">~Matrix</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Matrix.html">meow::Matrix&lt; Entry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Matrix.html b/doc/html/classmeow_1_1Matrix.html
index f5938f5..d85d630 100644
--- a/doc/html/classmeow_1_1Matrix.html
+++ b/doc/html/classmeow_1_1Matrix.html
@@ -56,6 +56,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Matrix.html','');});
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
+<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classmeow_1_1Matrix-members.html">List of all members</a> </div>
<div class="headertitle">
@@ -68,6 +69,15 @@ $(document).ready(function(){initNavTree('classmeow_1_1Matrix.html','');});
<p><code>#include &quot;<a class="el" href="Matrix_8h_source.html">Matrix.h</a>&quot;</code></p>
<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ab05bcd1bd8b1f8d4f250d6b3b87e023e"><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; Entry &gt;<br class="typebreak"/>
+::reference&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">EntryRef</a></td></tr>
+<tr class="separator:ab05bcd1bd8b1f8d4f250d6b3b87e023e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ac7c3d6ad50154043969005fa292981"><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; Entry &gt;<br class="typebreak"/>
+::const_reference&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a></td></tr>
+<tr class="separator:a1ac7c3d6ad50154043969005fa292981"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2dc9f17e38ba52376822744d2fc48f29"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29">Matrix</a> ()</td></tr>
@@ -112,12 +122,15 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:ac492cefa5df3a4ac6c9799931fb93605"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605">size</a> (size_t r, size_t c, Entry const &amp;e)</td></tr>
<tr class="memdesc:ac492cefa5df3a4ac6c9799931fb93605"><td class="mdescLeft">&#160;</td><td class="mdescRight">resize <a href="#ac492cefa5df3a4ac6c9799931fb93605">More...</a><br/></td></tr>
<tr class="separator:ac492cefa5df3a4ac6c9799931fb93605"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a46a12f45237e654e0140387d7290eb8b"><td class="memItemLeft" align="right" valign="top">Entry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b">entry</a> (size_t r, size_t c) const </td></tr>
-<tr class="memdesc:a46a12f45237e654e0140387d7290eb8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the entry at <em>r</em> x <em>c</em>. <a href="#a46a12f45237e654e0140387d7290eb8b">More...</a><br/></td></tr>
-<tr class="separator:a46a12f45237e654e0140387d7290eb8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aaba0981e54a17f0df8af9dabe9cad06f"><td class="memItemLeft" align="right" valign="top">Entry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f">entry</a> (size_t r, size_t c, Entry const &amp;e)</td></tr>
-<tr class="memdesc:aaba0981e54a17f0df8af9dabe9cad06f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change the entry at <em>r</em> x <em>c</em>. <a href="#aaba0981e54a17f0df8af9dabe9cad06f">More...</a><br/></td></tr>
-<tr class="separator:aaba0981e54a17f0df8af9dabe9cad06f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6adeb974bfb77936ed41e1a57726d7a4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4">entry</a> (size_t r, size_t c) const </td></tr>
+<tr class="memdesc:a6adeb974bfb77936ed41e1a57726d7a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the entry at <em>r</em> x <em>c</em>. <a href="#a6adeb974bfb77936ed41e1a57726d7a4">More...</a><br/></td></tr>
+<tr class="separator:a6adeb974bfb77936ed41e1a57726d7a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73dd7adb618b48aaabfa4d21ba08a33a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a73dd7adb618b48aaabfa4d21ba08a33a">entry</a> (size_t r, size_t c, Entry const &amp;e)</td></tr>
+<tr class="memdesc:a73dd7adb618b48aaabfa4d21ba08a33a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change the entry at <em>r</em> x <em>c</em>. <a href="#a73dd7adb618b48aaabfa4d21ba08a33a">More...</a><br/></td></tr>
+<tr class="separator:a73dd7adb618b48aaabfa4d21ba08a33a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab49fa7564c37c6bc164dc368a94fed6b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">EntryRef</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b">entryGet</a> (size_t r, size_t c)</td></tr>
+<tr class="memdesc:ab49fa7564c37c6bc164dc368a94fed6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the entry at <em>r</em> x <em>c</em>. <a href="#ab49fa7564c37c6bc164dc368a94fed6b">More...</a><br/></td></tr>
+<tr class="separator:ab49fa7564c37c6bc164dc368a94fed6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13384643dc412817fdcd8f1834a02d12"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12">entries</a> (ssize_t rFirst, ssize_t rLast, ssize_t cFirst, ssize_t cLast, Entry const &amp;e)</td></tr>
<tr class="memdesc:a13384643dc412817fdcd8f1834a02d12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change the entries from <em>rFirst</em> x <em>cFirst</em> to <em>rLast</em> x <em>cLast</em>. <a href="#a13384643dc412817fdcd8f1834a02d12">More...</a><br/></td></tr>
<tr class="separator:a13384643dc412817fdcd8f1834a02d12"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -178,12 +191,12 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a50bf284fe7beae52bb1bd0868486a602"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602">operator=</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a> const &amp;m)</td></tr>
<tr class="memdesc:a50bf284fe7beae52bb1bd0868486a602"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <em>copyFrom</em> <a href="#a50bf284fe7beae52bb1bd0868486a602">More...</a><br/></td></tr>
<tr class="separator:a50bf284fe7beae52bb1bd0868486a602"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a78b4b8b4ee30d02cb726bf7b8ac13147"><td class="memItemLeft" align="right" valign="top">Entry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147">operator()</a> (size_t r, size_t c) const </td></tr>
-<tr class="memdesc:a78b4b8b4ee30d02cb726bf7b8ac13147"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <em>entry(r,c)</em> <a href="#a78b4b8b4ee30d02cb726bf7b8ac13147">More...</a><br/></td></tr>
-<tr class="separator:a78b4b8b4ee30d02cb726bf7b8ac13147"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1dc03cd2475a4c5f34afbe0cb498e472"><td class="memItemLeft" align="right" valign="top">Entry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a1dc03cd2475a4c5f34afbe0cb498e472">operator()</a> (size_t r, size_t c, Entry const &amp;e)</td></tr>
-<tr class="memdesc:a1dc03cd2475a4c5f34afbe0cb498e472"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <em>entry(r,c,e)</em> <a href="#a1dc03cd2475a4c5f34afbe0cb498e472">More...</a><br/></td></tr>
-<tr class="separator:a1dc03cd2475a4c5f34afbe0cb498e472"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37b9a0774b087006307acb3f95ad7f32"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32">operator()</a> (size_t r, size_t c) const </td></tr>
+<tr class="memdesc:a37b9a0774b087006307acb3f95ad7f32"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <em>entry(r,c)</em> <a href="#a37b9a0774b087006307acb3f95ad7f32">More...</a><br/></td></tr>
+<tr class="separator:a37b9a0774b087006307acb3f95ad7f32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a162d35e1ce93b7777c975efcdaa46992"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#a162d35e1ce93b7777c975efcdaa46992">operator()</a> (size_t r, size_t c, Entry const &amp;e)</td></tr>
+<tr class="memdesc:a162d35e1ce93b7777c975efcdaa46992"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <em>entry(r,c,e)</em> <a href="#a162d35e1ce93b7777c975efcdaa46992">More...</a><br/></td></tr>
+<tr class="separator:a162d35e1ce93b7777c975efcdaa46992"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade31d2339af552ba1df230c8383e2f84"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84">operator+</a> () const </td></tr>
<tr class="memdesc:ade31d2339af552ba1df230c8383e2f84"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <em><a class="el" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc" title="return +(*this)">positive()</a></em> <a href="#ade31d2339af552ba1df230c8383e2f84">More...</a><br/></td></tr>
<tr class="separator:ade31d2339af552ba1df230c8383e2f84"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -212,7 +225,36 @@ class meow::Matrix&lt; Entry &gt;</h3>
<p><b>matrix</b> </p>
<dl class="section author"><dt>Author</dt><dd>cat_leopard </dd></dl>
-</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+</div><h2 class="groupheader">Member Typedef Documentation</h2>
+<a class="anchor" id="ab05bcd1bd8b1f8d4f250d6b3b87e023e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Entry&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef std::vector&lt;Entry&gt;::reference <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::<a class="el" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">EntryRef</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1ac7c3d6ad50154043969005fa292981"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Entry&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef std::vector&lt;Entry&gt;::const_reference <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::<a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a2dc9f17e38ba52376822744d2fc48f29"></a>
<div class="memitem">
<div class="memproto">
@@ -619,7 +661,7 @@ template&lt;class Entry&gt; </div>
</div>
</div>
-<a class="anchor" id="a46a12f45237e654e0140387d7290eb8b"></a>
+<a class="anchor" id="a6adeb974bfb77936ed41e1a57726d7a4"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -629,7 +671,7 @@ template&lt;class Entry&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">Entry <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::entry </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::entry </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>r</em>, </td>
@@ -657,7 +699,7 @@ template&lt;class Entry&gt; </div>
</div>
</div>
-<a class="anchor" id="aaba0981e54a17f0df8af9dabe9cad06f"></a>
+<a class="anchor" id="a73dd7adb618b48aaabfa4d21ba08a33a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -667,7 +709,7 @@ template&lt;class Entry&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">Entry <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::entry </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::entry </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>r</em>, </td>
@@ -701,6 +743,44 @@ template&lt;class Entry&gt; </div>
</div>
</div>
+<a class="anchor" id="ab49fa7564c37c6bc164dc368a94fed6b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Entry&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">EntryRef</a> <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::entryGet </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>r</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get the entry at <em>r</em> x <em>c</em>. </p>
+
+</div>
+</div>
<a class="anchor" id="abc6f5c824ee47cb15094729ca91f2e7c"></a>
<div class="memitem">
<div class="memproto">
@@ -895,7 +975,7 @@ template&lt;class Entry&gt; </div>
</div>
</div>
-<a class="anchor" id="a78b4b8b4ee30d02cb726bf7b8ac13147"></a>
+<a class="anchor" id="a37b9a0774b087006307acb3f95ad7f32"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -905,7 +985,7 @@ template&lt;class Entry&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">Entry <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::operator() </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::operator() </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>r</em>, </td>
@@ -933,7 +1013,7 @@ template&lt;class Entry&gt; </div>
</div>
</div>
-<a class="anchor" id="a1dc03cd2475a4c5f34afbe0cb498e472"></a>
+<a class="anchor" id="a162d35e1ce93b7777c975efcdaa46992"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -943,7 +1023,7 @@ template&lt;class Entry&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">Entry <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::operator() </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">EntryRefK</a> <a class="el" href="classmeow_1_1Matrix.html">meow::Matrix</a>&lt; Entry &gt;::operator() </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>r</em>, </td>
@@ -1724,7 +1804,7 @@ template&lt;class Entry&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Matrix.js b/doc/html/classmeow_1_1Matrix.js
index 66d50d2..28c367f 100644
--- a/doc/html/classmeow_1_1Matrix.js
+++ b/doc/html/classmeow_1_1Matrix.js
@@ -1,5 +1,7 @@
var classmeow_1_1Matrix =
[
+ [ "EntryRef", "classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e", null ],
+ [ "EntryRefK", "classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981", null ],
[ "Matrix", "classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29", null ],
[ "Matrix", "classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5", null ],
[ "Matrix", "classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74", null ],
@@ -11,8 +13,9 @@ var classmeow_1_1Matrix =
[ "copyFrom", "classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413", null ],
[ "div", "classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce", null ],
[ "entries", "classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12", null ],
- [ "entry", "classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b", null ],
- [ "entry", "classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f", null ],
+ [ "entry", "classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4", null ],
+ [ "entry", "classmeow_1_1Matrix.html#a73dd7adb618b48aaabfa4d21ba08a33a", null ],
+ [ "entryGet", "classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b", null ],
[ "identitied", "classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c", null ],
[ "identity", "classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f", null ],
[ "inverse", "classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd", null ],
@@ -20,8 +23,8 @@ var classmeow_1_1Matrix =
[ "mul", "classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd", null ],
[ "mul", "classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab", null ],
[ "negative", "classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274", null ],
- [ "operator()", "classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147", null ],
- [ "operator()", "classmeow_1_1Matrix.html#a1dc03cd2475a4c5f34afbe0cb498e472", null ],
+ [ "operator()", "classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32", null ],
+ [ "operator()", "classmeow_1_1Matrix.html#a162d35e1ce93b7777c975efcdaa46992", null ],
[ "operator*", "classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2", null ],
[ "operator*", "classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341", null ],
[ "operator+", "classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84", null ],
diff --git a/doc/html/classmeow_1_1MergeableHeap-members.html b/doc/html/classmeow_1_1MergeableHeap-members.html
index 21974a6..27faaf1 100644
--- a/doc/html/classmeow_1_1MergeableHeap-members.html
+++ b/doc/html/classmeow_1_1MergeableHeap-members.html
@@ -80,7 +80,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1MergeableHeap.html','');}
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1MergeableHeap.html b/doc/html/classmeow_1_1MergeableHeap.html
index 489303a..e10f052 100644
--- a/doc/html/classmeow_1_1MergeableHeap.html
+++ b/doc/html/classmeow_1_1MergeableHeap.html
@@ -493,7 +493,7 @@ template&lt;class Element &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1MergeableHeap.html">MergeableHeap</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjArray-members.html b/doc/html/classmeow_1_1ObjArray-members.html
index b2fac48..fc248b3 100644
--- a/doc/html/classmeow_1_1ObjArray-members.html
+++ b/doc/html/classmeow_1_1ObjArray-members.html
@@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ObjArray.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjArray.html b/doc/html/classmeow_1_1ObjArray.html
index a99ff8e..935c7af 100644
--- a/doc/html/classmeow_1_1ObjArray.html
+++ b/doc/html/classmeow_1_1ObjArray.html
@@ -118,16 +118,22 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:aa9e6268b6d7ea3c7b53101a7a175e360"><td class="memItemLeft" align="right" valign="top">T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjArray.html#aa9e6268b6d7ea3c7b53101a7a175e360">operator[]</a> (size_t i)</td></tr>
<tr class="separator:aa9e6268b6d7ea3c7b53101a7a175e360"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a089627fcba2e80760993e3aff1705a70"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:a089627fcba2e80760993e3aff1705a70"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#a089627fcba2e80760993e3aff1705a70">More...</a><br/></td></tr>
<tr class="separator:a089627fcba2e80760993e3aff1705a70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bc18d106d33e0a2f00f6e9ebf443b74"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a3bc18d106d33e0a2f00f6e9ebf443b74"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a3bc18d106d33e0a2f00f6e9ebf443b74">More...</a><br/></td></tr>
<tr class="separator:a3bc18d106d33e0a2f00f6e9ebf443b74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35d6363d1432059e3dd7c3c43ca006ae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae">create</a> () const </td></tr>
+<tr class="memdesc:a35d6363d1432059e3dd7c3c43ca006ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#a35d6363d1432059e3dd7c3c43ca006ae">More...</a><br/></td></tr>
<tr class="separator:a35d6363d1432059e3dd7c3c43ca006ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a339fcf38102846e361db6aa1e896c044"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a339fcf38102846e361db6aa1e896c044"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a339fcf38102846e361db6aa1e896c044">More...</a><br/></td></tr>
<tr class="separator:a339fcf38102846e361db6aa1e896c044"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8be408ac8b9b6515fc55dfecd418ceb5"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">ctype</a> () const </td></tr>
+<tr class="memdesc:a8be408ac8b9b6515fc55dfecd418ceb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a8be408ac8b9b6515fc55dfecd418ceb5">More...</a><br/></td></tr>
<tr class="separator:a8be408ac8b9b6515fc55dfecd418ceb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fe5956bfb52c17632b00338c7da5d5c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c">type</a> () const </td></tr>
+<tr class="memdesc:a8fe5956bfb52c17632b00338c7da5d5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#a8fe5956bfb52c17632b00338c7da5d5c">More...</a><br/></td></tr>
<tr class="separator:a8fe5956bfb52c17632b00338c7da5d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
@@ -137,8 +143,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -365,6 +373,15 @@ template&lt;class T &gt; </div>
</table>
</div><div class="memdoc">
+<p>複製, 預設使用operator= </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>資料來源 </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>this</code> </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>.</p>
</div>
@@ -392,6 +409,8 @@ template&lt;class T &gt; </div>
</table>
</div><div class="memdoc">
+<p>回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>.</p>
</div>
@@ -419,6 +438,8 @@ template&lt;class T &gt; </div>
</table>
</div><div class="memdoc">
+<p>用C-style string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>.</p>
</div>
@@ -679,6 +700,17 @@ template&lt;class T &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">meow::ObjBase</a>.</p>
</div>
@@ -819,6 +851,8 @@ template&lt;class T &gt; </div>
</table>
</div><div class="memdoc">
+<p>用std::string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>.</p>
</div>
@@ -863,6 +897,17 @@ template&lt;class T &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件寫入檔案, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">meow::ObjBase</a>.</p>
</div>
@@ -877,7 +922,7 @@ template&lt;class T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ObjArray.html">ObjArray</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjBase-members.html b/doc/html/classmeow_1_1ObjBase-members.html
index 9093d53..a41de67 100644
--- a/doc/html/classmeow_1_1ObjBase-members.html
+++ b/doc/html/classmeow_1_1ObjBase-members.html
@@ -77,7 +77,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ObjBase.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjBase.html b/doc/html/classmeow_1_1ObjBase.html
index eb81e92..54883bb 100644
--- a/doc/html/classmeow_1_1ObjBase.html
+++ b/doc/html/classmeow_1_1ObjBase.html
@@ -96,23 +96,31 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
<tr class="separator:a0ae0da4160bf2556411b4c126c649234"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9e9e5c664b7a92e54a3616983f39ba8"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:ae9e9e5c664b7a92e54a3616983f39ba8"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#ae9e9e5c664b7a92e54a3616983f39ba8">More...</a><br/></td></tr>
<tr class="separator:ae9e9e5c664b7a92e54a3616983f39ba8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c1f5cb4b05559197148a8f6524bfc34"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a4c1f5cb4b05559197148a8f6524bfc34"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a4c1f5cb4b05559197148a8f6524bfc34">More...</a><br/></td></tr>
<tr class="separator:a4c1f5cb4b05559197148a8f6524bfc34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9114e6917bca03b8f3c89694214b57c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">create</a> () const </td></tr>
+<tr class="memdesc:ac9114e6917bca03b8f3c89694214b57c"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#ac9114e6917bca03b8f3c89694214b57c">More...</a><br/></td></tr>
<tr class="separator:ac9114e6917bca03b8f3c89694214b57c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79725f50866832762db87184eb528619"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a79725f50866832762db87184eb528619"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a79725f50866832762db87184eb528619">More...</a><br/></td></tr>
<tr class="separator:a79725f50866832762db87184eb528619"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aae58e8005739abe6d091d8b55a21e8"><td class="memItemLeft" align="right" valign="top">virtual char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">ctype</a> () const </td></tr>
+<tr class="memdesc:a4aae58e8005739abe6d091d8b55a21e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a4aae58e8005739abe6d091d8b55a21e8">More...</a><br/></td></tr>
<tr class="separator:a4aae58e8005739abe6d091d8b55a21e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63a4911bb073281820fe9b7a9908ba72"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a> () const </td></tr>
+<tr class="memdesc:a63a4911bb073281820fe9b7a9908ba72"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#a63a4911bb073281820fe9b7a9908ba72">More...</a><br/></td></tr>
<tr class="separator:a63a4911bb073281820fe9b7a9908ba72"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
@@ -193,7 +201,16 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p>Reimplemented in <a class="el" href="classmeow_1_1Bitmap.html#a998a6a9607f8552ace65cce0d251042c">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Photo.html#a0e947011dcb0db21760c89663acd2208">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a51ea4943d3c0515466a801ec63ba44ea">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6b17e68e14290ebfdcdd59a0724cdc41">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6b17e68e14290ebfdcdd59a0724cdc41">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#a898f8ad46598a01633f444804853a3bd">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#a5dff4c1129c6d74de1938bea9309a408">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52">meow::ObjProperties&lt; SID &gt;</a>.</p>
+<p>複製, 預設使用operator= </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>資料來源 </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>this</code> </dd></dl>
+
+<p>Reimplemented in <a class="el" href="classmeow_1_1Photo.html#a0e947011dcb0db21760c89663acd2208">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Bitmap.html#a998a6a9607f8552ace65cce0d251042c">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a51ea4943d3c0515466a801ec63ba44ea">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6b17e68e14290ebfdcdd59a0724cdc41">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6b17e68e14290ebfdcdd59a0724cdc41">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#a898f8ad46598a01633f444804853a3bd">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#a5dff4c1129c6d74de1938bea9309a408">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52">meow::ObjProperties&lt; SID &gt;</a>.</p>
</div>
</div>
@@ -218,7 +235,9 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p>Reimplemented in <a class="el" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Photo.html#a449f74fa427154f943d6abee255431aa">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae7a96030ea8d06322b632c89eb65655d">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#ae2c8bc97ac7d09b886fe59a8f88c2145">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">meow::ObjProperties&lt; SID &gt;</a>.</p>
+<p>回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> </p>
+
+<p>Reimplemented in <a class="el" href="classmeow_1_1Photo.html#a449f74fa427154f943d6abee255431aa">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae7a96030ea8d06322b632c89eb65655d">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#ae2c8bc97ac7d09b886fe59a8f88c2145">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">meow::ObjProperties&lt; SID &gt;</a>.</p>
</div>
</div>
@@ -243,7 +262,9 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p>Reimplemented in <a class="el" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Photo.html#a93fdf3b617d8b1c751823074fca049a9">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a00be866b3cf9bd2469e0eef32a3b2287">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#ae90d4c4d8125919ae8807d89790bed61">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#ae90d4c4d8125919ae8807d89790bed61">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#afcba8229502523255913392c592eabce">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a">meow::ObjProperties&lt; SID &gt;</a>.</p>
+<p>用C-style string回傳這個class的type name </p>
+
+<p>Reimplemented in <a class="el" href="classmeow_1_1Photo.html#a93fdf3b617d8b1c751823074fca049a9">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a00be866b3cf9bd2469e0eef32a3b2287">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#ae90d4c4d8125919ae8807d89790bed61">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#ae90d4c4d8125919ae8807d89790bed61">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#afcba8229502523255913392c592eabce">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a">meow::ObjProperties&lt; SID &gt;</a>.</p>
</div>
</div>
@@ -268,6 +289,8 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
+<p>用C-style string回傳base的type name </p>
+
</div>
</div>
<a class="anchor" id="a4c1f5cb4b05559197148a8f6524bfc34"></a>
@@ -308,6 +331,17 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
+<p>將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented in <a class="el" href="classmeow_1_1Photo.html#a97cc535d734fdf53457c84ef5f0bdc50">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Bitmap.html#a3b13a4923d68de65bb7e21712185bec8">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a3bf522cf08285d1afbaca76c643ea4a7">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a66b8a6b980dad9b2cb71cb0823304c51">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a66b8a6b980dad9b2cb71cb0823304c51">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#a18cac43a61f741c191148bfef76e3d85">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#aaa82f998dfc1acde6607650ab6514492">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#a48908e47535a5528207f8dff2db85ba4">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a207813017b7eab06672ec324968e6caa">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a4d7d0978d10735798e76e707ee9faa5a">meow::ObjProperties&lt; SID &gt;</a>.</p>
</div>
@@ -333,7 +367,9 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p>Reimplemented in <a class="el" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Photo.html#a84cf3012af5e67b4aafc1ee7eafd70d1">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae13f041624113e4b87d49befc2e1d77a">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6ce521c18a45b50bd8b75201480b97f7">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6ce521c18a45b50bd8b75201480b97f7">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#ab8478f0460b456da11863ab9e7542bd1">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">meow::ObjProperties&lt; SID &gt;</a>.</p>
+<p>用std::string回傳這個class的type name </p>
+
+<p>Reimplemented in <a class="el" href="classmeow_1_1Photo.html#a84cf3012af5e67b4aafc1ee7eafd70d1">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae13f041624113e4b87d49befc2e1d77a">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6ce521c18a45b50bd8b75201480b97f7">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a6ce521c18a45b50bd8b75201480b97f7">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#ab8478f0460b456da11863ab9e7542bd1">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">meow::ObjProperties&lt; SID &gt;</a>.</p>
</div>
</div>
@@ -358,6 +394,8 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
+<p>用std::string回傳base的type name </p>
+
</div>
</div>
<a class="anchor" id="ae9e9e5c664b7a92e54a3616983f39ba8"></a>
@@ -398,6 +436,17 @@ Protected Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
+<p>將物件寫入檔案, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented in <a class="el" href="classmeow_1_1Photo.html#ab92324c852686bcad5e374aa9ae8e952">meow::Photo&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Bitmap.html#aad700e26eae54cb653919c165dcc98dd">meow::Bitmap&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a83d9ec3557a4251dc98dae1ab7146a14">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a7ecba020418b86d76db75e9f636aae9a">meow::IdentityPoints&lt; ID, Scalar &gt;</a>, <a class="el" href="classmeow_1_1IdentityPoints.html#a7ecba020418b86d76db75e9f636aae9a">meow::IdentityPoints&lt; int, double &gt;</a>, <a class="el" href="classmeow_1_1WatchBall.html#a33cb0d690e6da55580f1747c7fb72e7a">meow::WatchBall&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1Camera.html#acb6443a3ce77804575ec55209b3a1960">meow::Camera&lt; Pixel &gt;</a>, <a class="el" href="classmeow_1_1FeaturePoint.html#a54a0ca59d340d0bcd969609a0682d2d9">meow::FeaturePoint&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#acbdc25595aeb8280c11543fec230e1a6">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>, <a class="el" href="classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70">meow::ObjArray&lt; T &gt;</a>, <a class="el" href="classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c">meow::ObjDictionary&lt; Key, Value &gt;</a>, <a class="el" href="classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944">meow::ObjType&lt; Type, ReaderWriter &gt;</a>, and <a class="el" href="classmeow_1_1ObjProperties.html#a7ebb7d21a575adbf9cbed10db807c6b6">meow::ObjProperties&lt; SID &gt;</a>.</p>
</div>
@@ -412,7 +461,7 @@ Protected Member Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjDictionary-members.html b/doc/html/classmeow_1_1ObjDictionary-members.html
index c83681c..f657eba 100644
--- a/doc/html/classmeow_1_1ObjDictionary-members.html
+++ b/doc/html/classmeow_1_1ObjDictionary-members.html
@@ -94,7 +94,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ObjDictionary.html','');}
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjDictionary.html b/doc/html/classmeow_1_1ObjDictionary.html
index c201779..5a8f6c3 100644
--- a/doc/html/classmeow_1_1ObjDictionary.html
+++ b/doc/html/classmeow_1_1ObjDictionary.html
@@ -116,16 +116,22 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:ad22d7c7dc4d35417e9657eb88ca0dfbb"><td class="memItemLeft" align="right" valign="top">Value &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjDictionary.html#ad22d7c7dc4d35417e9657eb88ca0dfbb">operator[]</a> (Key const &amp;k)</td></tr>
<tr class="separator:ad22d7c7dc4d35417e9657eb88ca0dfbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2393452e9533fab679565068545f109c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:a2393452e9533fab679565068545f109c"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#a2393452e9533fab679565068545f109c">More...</a><br/></td></tr>
<tr class="separator:a2393452e9533fab679565068545f109c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b1bd9fe09676aca74aec34bf5ea7137"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a0b1bd9fe09676aca74aec34bf5ea7137"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a0b1bd9fe09676aca74aec34bf5ea7137">More...</a><br/></td></tr>
<tr class="separator:a0b1bd9fe09676aca74aec34bf5ea7137"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14ce0fcedf7619c0b442588e185a7eeb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb">create</a> () const </td></tr>
+<tr class="memdesc:a14ce0fcedf7619c0b442588e185a7eeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#a14ce0fcedf7619c0b442588e185a7eeb">More...</a><br/></td></tr>
<tr class="separator:a14ce0fcedf7619c0b442588e185a7eeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f2e32f6eb11904c2547fae0ff9ab3d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a8f2e32f6eb11904c2547fae0ff9ab3d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a8f2e32f6eb11904c2547fae0ff9ab3d6">More...</a><br/></td></tr>
<tr class="separator:a8f2e32f6eb11904c2547fae0ff9ab3d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee3a1722f6061987a242b9b33e5fcc64"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">ctype</a> () const </td></tr>
+<tr class="memdesc:aee3a1722f6061987a242b9b33e5fcc64"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#aee3a1722f6061987a242b9b33e5fcc64">More...</a><br/></td></tr>
<tr class="separator:aee3a1722f6061987a242b9b33e5fcc64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5114823fcc2476aa45a965e4af66d6c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c">type</a> () const </td></tr>
+<tr class="memdesc:af5114823fcc2476aa45a965e4af66d6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#af5114823fcc2476aa45a965e4af66d6c">More...</a><br/></td></tr>
<tr class="separator:af5114823fcc2476aa45a965e4af66d6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
@@ -135,8 +141,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -327,6 +335,15 @@ template&lt;class Key , class Value &gt; </div>
</table>
</div><div class="memdoc">
+<p>複製, 預設使用operator= </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>資料來源 </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>this</code> </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>.</p>
</div>
@@ -354,6 +371,8 @@ template&lt;class Key , class Value &gt; </div>
</table>
</div><div class="memdoc">
+<p>回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>.</p>
</div>
@@ -381,6 +400,8 @@ template&lt;class Key , class Value &gt; </div>
</table>
</div><div class="memdoc">
+<p>用C-style string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>.</p>
</div>
@@ -666,6 +687,17 @@ template&lt;class Key , class Value &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">meow::ObjBase</a>.</p>
</div>
@@ -744,6 +776,8 @@ template&lt;class Key , class Value &gt; </div>
</table>
</div><div class="memdoc">
+<p>用std::string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>.</p>
</div>
@@ -788,6 +822,17 @@ template&lt;class Key , class Value &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件寫入檔案, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">meow::ObjBase</a>.</p>
</div>
@@ -802,7 +847,7 @@ template&lt;class Key , class Value &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ObjDictionary.html">ObjDictionary</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjProperties-members.html b/doc/html/classmeow_1_1ObjProperties-members.html
index d5c79a4..b5ec720 100644
--- a/doc/html/classmeow_1_1ObjProperties-members.html
+++ b/doc/html/classmeow_1_1ObjProperties-members.html
@@ -89,7 +89,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ObjProperties.html','');}
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjProperties.html b/doc/html/classmeow_1_1ObjProperties.html
index 1027836..3ed23fb 100644
--- a/doc/html/classmeow_1_1ObjProperties.html
+++ b/doc/html/classmeow_1_1ObjProperties.html
@@ -103,16 +103,22 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:af14e8afbd6807b61429d4f84291d6cee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjProperties.html">ObjProperties</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjProperties.html#af14e8afbd6807b61429d4f84291d6cee">properties</a> (<a class="el" href="classmeow_1_1ObjProperties.html">ObjProperties</a> const &amp;p)</td></tr>
<tr class="separator:af14e8afbd6807b61429d4f84291d6cee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ebb7d21a575adbf9cbed10db807c6b6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjProperties.html#a7ebb7d21a575adbf9cbed10db807c6b6">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:a7ebb7d21a575adbf9cbed10db807c6b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#a7ebb7d21a575adbf9cbed10db807c6b6">More...</a><br/></td></tr>
<tr class="separator:a7ebb7d21a575adbf9cbed10db807c6b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d7d0978d10735798e76e707ee9faa5a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjProperties.html#a4d7d0978d10735798e76e707ee9faa5a">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a4d7d0978d10735798e76e707ee9faa5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a4d7d0978d10735798e76e707ee9faa5a">More...</a><br/></td></tr>
<tr class="separator:a4d7d0978d10735798e76e707ee9faa5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3345d121cc8a6b25baad2cbd80d23164"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">create</a> () const </td></tr>
+<tr class="memdesc:a3345d121cc8a6b25baad2cbd80d23164"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#a3345d121cc8a6b25baad2cbd80d23164">More...</a><br/></td></tr>
<tr class="separator:a3345d121cc8a6b25baad2cbd80d23164"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bc4f097d783426457a784a39266ba52"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a4bc4f097d783426457a784a39266ba52"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a4bc4f097d783426457a784a39266ba52">More...</a><br/></td></tr>
<tr class="separator:a4bc4f097d783426457a784a39266ba52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55ee94dd2d564eaee8250ed517b6779a"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a">ctype</a> () const </td></tr>
+<tr class="memdesc:a55ee94dd2d564eaee8250ed517b6779a"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a55ee94dd2d564eaee8250ed517b6779a">More...</a><br/></td></tr>
<tr class="separator:a55ee94dd2d564eaee8250ed517b6779a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6283d69f9c6430c3b2601d7f0267bb84"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">type</a> () const </td></tr>
+<tr class="memdesc:a6283d69f9c6430c3b2601d7f0267bb84"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#a6283d69f9c6430c3b2601d7f0267bb84">More...</a><br/></td></tr>
<tr class="separator:a6283d69f9c6430c3b2601d7f0267bb84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
@@ -122,8 +128,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -220,6 +228,15 @@ template&lt;size_t SID&gt; </div>
</table>
</div><div class="memdoc">
+<p>複製, 預設使用operator= </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>資料來源 </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>this</code> </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>.</p>
</div>
@@ -247,6 +264,8 @@ template&lt;size_t SID&gt; </div>
</table>
</div><div class="memdoc">
+<p>回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>.</p>
</div>
@@ -274,6 +293,8 @@ template&lt;size_t SID&gt; </div>
</table>
</div><div class="memdoc">
+<p>用C-style string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>.</p>
</div>
@@ -492,6 +513,17 @@ template&lt;size_t SID&gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">meow::ObjBase</a>.</p>
</div>
@@ -519,6 +551,8 @@ template&lt;size_t SID&gt; </div>
</table>
</div><div class="memdoc">
+<p>用std::string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>.</p>
</div>
@@ -563,6 +597,17 @@ template&lt;size_t SID&gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件寫入檔案, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">meow::ObjBase</a>.</p>
</div>
@@ -577,7 +622,7 @@ template&lt;size_t SID&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ObjProperties.html">ObjProperties</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjSelector-members.html b/doc/html/classmeow_1_1ObjSelector-members.html
index 8c2f946..0d9c726 100644
--- a/doc/html/classmeow_1_1ObjSelector-members.html
+++ b/doc/html/classmeow_1_1ObjSelector-members.html
@@ -81,7 +81,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ObjSelector.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjSelector.html b/doc/html/classmeow_1_1ObjSelector.html
index a10e991..f516361 100644
--- a/doc/html/classmeow_1_1ObjSelector.html
+++ b/doc/html/classmeow_1_1ObjSelector.html
@@ -607,7 +607,7 @@ template&lt;size_t id&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ObjSelector.html">ObjSelector</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjType-members.html b/doc/html/classmeow_1_1ObjType-members.html
index a10acdb..35311bc 100644
--- a/doc/html/classmeow_1_1ObjType-members.html
+++ b/doc/html/classmeow_1_1ObjType-members.html
@@ -88,7 +88,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ObjType.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ObjType.html b/doc/html/classmeow_1_1ObjType.html
index 34409d4..56ad131 100644
--- a/doc/html/classmeow_1_1ObjType.html
+++ b/doc/html/classmeow_1_1ObjType.html
@@ -82,12 +82,12 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a6a625052a5579e4897a95e9ca6663136"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136">ObjType</a> ()</td></tr>
<tr class="memdesc:a6a625052a5579e4897a95e9ca6663136"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#a6a625052a5579e4897a95e9ca6663136">More...</a><br/></td></tr>
<tr class="separator:a6a625052a5579e4897a95e9ca6663136"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1b2ab2b0b31756ed1e1a011f6e50c993"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993">ObjType</a> (<a class="el" href="classmeow_1_1ObjType.html">ObjType</a> const &amp;a)</td></tr>
-<tr class="memdesc:a1b2ab2b0b31756ed1e1a011f6e50c993"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor, 並且copy資料 <a href="#a1b2ab2b0b31756ed1e1a011f6e50c993">More...</a><br/></td></tr>
-<tr class="separator:a1b2ab2b0b31756ed1e1a011f6e50c993"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd125762822efc8ff890479bac6fafe4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#afd125762822efc8ff890479bac6fafe4">ObyType</a> (Type const &amp;t)</td></tr>
<tr class="memdesc:afd125762822efc8ff890479bac6fafe4"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor, 並且給值 <a href="#afd125762822efc8ff890479bac6fafe4">More...</a><br/></td></tr>
<tr class="separator:afd125762822efc8ff890479bac6fafe4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b2ab2b0b31756ed1e1a011f6e50c993"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993">ObjType</a> (<a class="el" href="classmeow_1_1ObjType.html">ObjType</a> const &amp;a)</td></tr>
+<tr class="memdesc:a1b2ab2b0b31756ed1e1a011f6e50c993"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor, 並且copy資料 <a href="#a1b2ab2b0b31756ed1e1a011f6e50c993">More...</a><br/></td></tr>
+<tr class="separator:a1b2ab2b0b31756ed1e1a011f6e50c993"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac703cec17ecfe6869a016c0ff072918c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#ac703cec17ecfe6869a016c0ff072918c">~ObjType</a> ()</td></tr>
<tr class="separator:ac703cec17ecfe6869a016c0ff072918c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9deb0425763909a5b74aca7bd0c116f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjType.html">ObjType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4">copyFrom</a> (<a class="el" href="classmeow_1_1ObjType.html">ObjType</a> const &amp;a)</td></tr>
@@ -105,16 +105,22 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:afc34507295cf5bdbb1b5fd22c1c43f9a"><td class="memItemLeft" align="right" valign="top">Type &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#afc34507295cf5bdbb1b5fd22c1c43f9a">operator()</a> ()</td></tr>
<tr class="separator:afc34507295cf5bdbb1b5fd22c1c43f9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0adbddc5a4ef305c2637b6694355944"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:af0adbddc5a4ef305c2637b6694355944"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#af0adbddc5a4ef305c2637b6694355944">More...</a><br/></td></tr>
<tr class="separator:af0adbddc5a4ef305c2637b6694355944"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ff33aabcb80ffc2d870b6ce73a6d4fe"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a8ff33aabcb80ffc2d870b6ce73a6d4fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a8ff33aabcb80ffc2d870b6ce73a6d4fe">More...</a><br/></td></tr>
<tr class="separator:a8ff33aabcb80ffc2d870b6ce73a6d4fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19f8291125626675d15b4394283b8180"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">create</a> () const </td></tr>
+<tr class="memdesc:a19f8291125626675d15b4394283b8180"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#a19f8291125626675d15b4394283b8180">More...</a><br/></td></tr>
<tr class="separator:a19f8291125626675d15b4394283b8180"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a392c841c8012ebd9a62f514a74e4b535"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a392c841c8012ebd9a62f514a74e4b535"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a392c841c8012ebd9a62f514a74e4b535">More...</a><br/></td></tr>
<tr class="separator:a392c841c8012ebd9a62f514a74e4b535"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7d34cb241aa7d74c9c52918c98dab49"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">ctype</a> () const </td></tr>
+<tr class="memdesc:ae7d34cb241aa7d74c9c52918c98dab49"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#ae7d34cb241aa7d74c9c52918c98dab49">More...</a><br/></td></tr>
<tr class="separator:ae7d34cb241aa7d74c9c52918c98dab49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afaa74a571889ea5281ab3de5636f7e0f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f">type</a> () const </td></tr>
+<tr class="memdesc:afaa74a571889ea5281ab3de5636f7e0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#afaa74a571889ea5281ab3de5636f7e0f">More...</a><br/></td></tr>
<tr class="separator:afaa74a571889ea5281ab3de5636f7e0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
@@ -124,8 +130,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -294,6 +302,15 @@ template&lt;class Type , class ReaderWriter &gt; </div>
</table>
</div><div class="memdoc">
+<p>複製, 預設使用operator= </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>資料來源 </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>this</code> </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>.</p>
</div>
@@ -321,6 +338,8 @@ template&lt;class Type , class ReaderWriter &gt; </div>
</table>
</div><div class="memdoc">
+<p>回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>.</p>
</div>
@@ -348,6 +367,8 @@ template&lt;class Type , class ReaderWriter &gt; </div>
</table>
</div><div class="memdoc">
+<p>用C-style string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>.</p>
</div>
@@ -521,6 +542,17 @@ template&lt;class Type , class ReaderWriter &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">meow::ObjBase</a>.</p>
</div>
@@ -574,6 +606,8 @@ template&lt;class Type , class ReaderWriter &gt; </div>
</table>
</div><div class="memdoc">
+<p>用std::string回傳這個class的type name </p>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>.</p>
</div>
@@ -618,6 +652,17 @@ template&lt;class Type , class ReaderWriter &gt; </div>
</table>
</div><div class="memdoc">
+<p>將物件寫入檔案, 預設implement為直接回傳 <code>false</code> </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>檔案 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">bin</td><td>是否為binary模式 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">fg</td><td>使用者自訂的argument </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>成功或失敗 </dd></dl>
+
<p>Reimplemented from <a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">meow::ObjBase</a>.</p>
</div>
@@ -632,7 +677,7 @@ template&lt;class Type , class ReaderWriter &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ObjType.html">ObjType</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Photo-members.html b/doc/html/classmeow_1_1Photo-members.html
index caf01a3..2a20339 100644
--- a/doc/html/classmeow_1_1Photo-members.html
+++ b/doc/html/classmeow_1_1Photo-members.html
@@ -105,7 +105,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Photo.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Photo.html b/doc/html/classmeow_1_1Photo.html
index 3152887..4efd82b 100644
--- a/doc/html/classmeow_1_1Photo.html
+++ b/doc/html/classmeow_1_1Photo.html
@@ -189,8 +189,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -1412,7 +1414,7 @@ template&lt;class Pixel&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Photo.html">Photo</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1PhotoProjection-members.html b/doc/html/classmeow_1_1PhotoProjection-members.html
index 9c16452..c19c106 100644
--- a/doc/html/classmeow_1_1PhotoProjection-members.html
+++ b/doc/html/classmeow_1_1PhotoProjection-members.html
@@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1PhotoProjection.html','')
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1PhotoProjection.html b/doc/html/classmeow_1_1PhotoProjection.html
index dd3ae5b..c419efe 100644
--- a/doc/html/classmeow_1_1PhotoProjection.html
+++ b/doc/html/classmeow_1_1PhotoProjection.html
@@ -161,7 +161,7 @@ Additional Inherited Members</h2></td></tr>
<tr class="memdesc:abe781169171fa3b8206a91e166779d74 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy from the specified one. <a href="#abe781169171fa3b8206a91e166779d74">More...</a><br/></td></tr>
<tr class="separator:abe781169171fa3b8206a91e166779d74 inherit pro_methods_classmeow_1_1Transformation"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5">referenceFrom</a> (<a class="el" href="classmeow_1_1Transformation.html">Transformation</a> const &amp;b)</td></tr>
-<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ceference from the specified one. <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
+<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="mdescLeft">&#160;</td><td class="mdescRight">reference from the specified one <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
<tr class="separator:a9b6ec99d8363742f77c63a49ba9467b5 inherit pro_methods_classmeow_1_1Transformation"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@@ -716,7 +716,7 @@ template&lt;class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1PhotoProjection.html">PhotoProjection</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Pipeline-members.html b/doc/html/classmeow_1_1Pipeline-members.html
new file mode 100644
index 0000000..b2013f2
--- /dev/null
+++ b/doc/html/classmeow_1_1Pipeline-members.html
@@ -0,0 +1,95 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('classmeow_1_1Pipeline.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">meow::Pipeline&lt; Input, Output, Medium &gt; Member List</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a>, including all inherited members.</p>
+<table class="directory">
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4">backAdd</a>(Medium const *ptr, bool auto_delete)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5">backDel</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47">copyFrom</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7">empty</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9">first</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c">frontAdd</a>(Medium const *ptr, bool auto_delete)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5">frontDel</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395">goThrough</a>(Input const &amp;in) const =0</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374">goThroughInv</a>(Output const &amp;in) const </td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8">inversable</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234">last</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">MediumPointerIteratorK</a> typedef</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e">operator=</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3">pipe</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4">Pipeline</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7">Pipeline</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02">referenceFrom</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1">size</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a">~Pipeline</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/classmeow_1_1Pipeline.html b/doc/html/classmeow_1_1Pipeline.html
new file mode 100644
index 0000000..0c97864
--- /dev/null
+++ b/doc/html/classmeow_1_1Pipeline.html
@@ -0,0 +1,751 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: meow::Pipeline&lt; Input, Output, Medium &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('classmeow_1_1Pipeline.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-types">Protected Types</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="classmeow_1_1Pipeline-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">meow::Pipeline&lt; Input, Output, Medium &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><b>pipeline</b>
+ <a href="classmeow_1_1Pipeline.html#details">More...</a></p>
+
+<p><code>#include &quot;<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a>&quot;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a3cffd384d9b8969122adda3b9087352a"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a">~Pipeline</a> ()</td></tr>
+<tr class="memdesc:a3cffd384d9b8969122adda3b9087352a"><td class="mdescLeft">&#160;</td><td class="mdescRight">destructor <a href="#a3cffd384d9b8969122adda3b9087352a">More...</a><br/></td></tr>
+<tr class="separator:a3cffd384d9b8969122adda3b9087352a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41613bf7d08d61043b8791665bdb2395"><td class="memItemLeft" align="right" valign="top">virtual Output&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395">goThrough</a> (Input const &amp;in) const =0</td></tr>
+<tr class="memdesc:a41613bf7d08d61043b8791665bdb2395"><td class="mdescLeft">&#160;</td><td class="mdescRight">go <a href="#a41613bf7d08d61043b8791665bdb2395">More...</a><br/></td></tr>
+<tr class="separator:a41613bf7d08d61043b8791665bdb2395"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f135be41a794fe8c6ac88e4b954feb8"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8">inversable</a> ()</td></tr>
+<tr class="memdesc:a2f135be41a794fe8c6ac88e4b954feb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">return whether this pipeline can reverse <a href="#a2f135be41a794fe8c6ac88e4b954feb8">More...</a><br/></td></tr>
+<tr class="separator:a2f135be41a794fe8c6ac88e4b954feb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8a007463d13af873d9ab6e5926be374"><td class="memItemLeft" align="right" valign="top">virtual Input&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374">goThroughInv</a> (Output const &amp;in) const </td></tr>
+<tr class="memdesc:ad8a007463d13af873d9ab6e5926be374"><td class="mdescLeft">&#160;</td><td class="mdescRight">reverse go <a href="#ad8a007463d13af873d9ab6e5926be374">More...</a><br/></td></tr>
+<tr class="separator:ad8a007463d13af873d9ab6e5926be374"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad68f17ba679781f8d8996de3f742584c"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c">frontAdd</a> (Medium const *ptr, bool auto_delete)</td></tr>
+<tr class="memdesc:ad68f17ba679781f8d8996de3f742584c"><td class="mdescLeft">&#160;</td><td class="mdescRight">add a medium to the front of this pipeline <a href="#ad68f17ba679781f8d8996de3f742584c">More...</a><br/></td></tr>
+<tr class="separator:ad68f17ba679781f8d8996de3f742584c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bc72f0b75abb48b8c5212813b8dc8f4"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4">backAdd</a> (Medium const *ptr, bool auto_delete)</td></tr>
+<tr class="memdesc:a1bc72f0b75abb48b8c5212813b8dc8f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">add a medium to the back of this pipeline <a href="#a1bc72f0b75abb48b8c5212813b8dc8f4">More...</a><br/></td></tr>
+<tr class="separator:a1bc72f0b75abb48b8c5212813b8dc8f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ce35017ddf9c669a095290a3ebed8c5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5">frontDel</a> ()</td></tr>
+<tr class="memdesc:a6ce35017ddf9c669a095290a3ebed8c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">remove a medium from the front of this pipeline <a href="#a6ce35017ddf9c669a095290a3ebed8c5">More...</a><br/></td></tr>
+<tr class="separator:a6ce35017ddf9c669a095290a3ebed8c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8263e4d001096fb013fea1465d5fa4d5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5">backDel</a> ()</td></tr>
+<tr class="memdesc:a8263e4d001096fb013fea1465d5fa4d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">add a medium from the back of this pipeline <a href="#a8263e4d001096fb013fea1465d5fa4d5">More...</a><br/></td></tr>
+<tr class="separator:a8263e4d001096fb013fea1465d5fa4d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ae87626df1cef4c04a11af40c6765b1"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1">size</a> () const </td></tr>
+<tr class="memdesc:a0ae87626df1cef4c04a11af40c6765b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">return how many medium in this pipeline <a href="#a0ae87626df1cef4c04a11af40c6765b1">More...</a><br/></td></tr>
+<tr class="separator:a0ae87626df1cef4c04a11af40c6765b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade80a603d4ce3d9761ec57a2087749c7"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7">empty</a> () const </td></tr>
+<tr class="memdesc:ade80a603d4ce3d9761ec57a2087749c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as (<a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1" title="return how many medium in this pipeline">size()</a> == 0) <a href="#ade80a603d4ce3d9761ec57a2087749c7">More...</a><br/></td></tr>
+<tr class="separator:ade80a603d4ce3d9761ec57a2087749c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a68341b2e6f51ec85d585f1f5fc658da9"><td class="memItemLeft" align="right" valign="top">virtual Medium const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9">first</a> () const </td></tr>
+<tr class="memdesc:a68341b2e6f51ec85d585f1f5fc658da9"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the const-pointer of the first medium <a href="#a68341b2e6f51ec85d585f1f5fc658da9">More...</a><br/></td></tr>
+<tr class="separator:a68341b2e6f51ec85d585f1f5fc658da9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46fba2a5d88bf742223732e523e7d234"><td class="memItemLeft" align="right" valign="top">virtual Medium const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234">last</a> () const </td></tr>
+<tr class="memdesc:a46fba2a5d88bf742223732e523e7d234"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the const-pointer of the last medium <a href="#a46fba2a5d88bf742223732e523e7d234">More...</a><br/></td></tr>
+<tr class="separator:a46fba2a5d88bf742223732e523e7d234"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-types"></a>
+Protected Types</h2></td></tr>
+<tr class="memitem:ab5c5d983ab507579bb2958339caa6356"><td class="memItemLeft" align="right" valign="top">typedef std::list&lt; Medium <br class="typebreak"/>
+const * &gt;::const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">MediumPointerIteratorK</a></td></tr>
+<tr class="separator:ab5c5d983ab507579bb2958339caa6356"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:ad6ff2086fe68c50f526739f3d781bab4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4">Pipeline</a> ()</td></tr>
+<tr class="memdesc:ad6ff2086fe68c50f526739f3d781bab4"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor with empty contain <a href="#ad6ff2086fe68c50f526739f3d781bab4">More...</a><br/></td></tr>
+<tr class="separator:ad6ff2086fe68c50f526739f3d781bab4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9acf9a46f19f097629ce2eeb690a23d7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7">Pipeline</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a9acf9a46f19f097629ce2eeb690a23d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy constructor <a href="#a9acf9a46f19f097629ce2eeb690a23d7">More...</a><br/></td></tr>
+<tr class="separator:a9acf9a46f19f097629ce2eeb690a23d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a146677fa11b0b47af3000d4b0a72fc47"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47">copyFrom</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a146677fa11b0b47af3000d4b0a72fc47"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy contain from gived pipeline <a href="#a146677fa11b0b47af3000d4b0a72fc47">More...</a><br/></td></tr>
+<tr class="separator:a146677fa11b0b47af3000d4b0a72fc47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43280db4560580c0b1618810caab4b02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02">referenceFrom</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a43280db4560580c0b1618810caab4b02"><td class="mdescLeft">&#160;</td><td class="mdescRight">reference from gived pipeline <a href="#a43280db4560580c0b1618810caab4b02">More...</a><br/></td></tr>
+<tr class="separator:a43280db4560580c0b1618810caab4b02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107cc18a159ceb2fcde495363c55047e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e">operator=</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a107cc18a159ceb2fcde495363c55047e"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <code>copyFrom(p)</code> <a href="#a107cc18a159ceb2fcde495363c55047e">More...</a><br/></td></tr>
+<tr class="separator:a107cc18a159ceb2fcde495363c55047e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8425f0a6a4dff7b3bd54f5a0323839c3"><td class="memItemLeft" align="right" valign="top">std::list&lt; Medium const * &gt; const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3">pipe</a> () const </td></tr>
+<tr class="memdesc:a8425f0a6a4dff7b3bd54f5a0323839c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">return const-reference of the pipe list <a href="#a8425f0a6a4dff7b3bd54f5a0323839c3">More...</a><br/></td></tr>
+<tr class="separator:a8425f0a6a4dff7b3bd54f5a0323839c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;class Input, class Output, class Medium&gt;<br/>
+class meow::Pipeline&lt; Input, Output, Medium &gt;</h3>
+
+<p><b>pipeline</b> </p>
+</div><h2 class="groupheader">Member Typedef Documentation</h2>
+<a class="anchor" id="ab5c5d983ab507579bb2958339caa6356"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef std::list&lt;Medium const*&gt;::const_iterator <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::<a class="el" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">MediumPointerIteratorK</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ad6ff2086fe68c50f526739f3d781bab4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>constructor with empty contain </p>
+
+</div>
+</div>
+<a class="anchor" id="a9acf9a46f19f097629ce2eeb690a23d7"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a>&lt; Input, Output, Medium &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>copy constructor </p>
+
+</div>
+</div>
+<a class="anchor" id="a3cffd384d9b8969122adda3b9087352a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::~<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>destructor </p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a1bc72f0b75abb48b8c5212813b8dc8f4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::backAdd </td>
+ <td>(</td>
+ <td class="paramtype">Medium const *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>auto_delete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>add a medium to the back of this pipeline </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>pointer to the medium </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">auto_delete</td><td>should I delete this pointer when destructor </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Reimplemented in <a class="el" href="classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb">meow::TransformatePipeline&lt; Scalar &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a8263e4d001096fb013fea1465d5fa4d5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::backDel </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>add a medium from the back of this pipeline </p>
+<dl class="section return"><dt>Returns</dt><dd>successful or not </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a146677fa11b0b47af3000d4b0a72fc47"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a>&amp; <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::copyFrom </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a>&lt; Input, Output, Medium &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>copy contain from gived pipeline </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">p</td><td>gived pipeline </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>*this</code> </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ade80a603d4ce3d9761ec57a2087749c7"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::empty </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>same as (<a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1" title="return how many medium in this pipeline">size()</a> == 0) </p>
+
+</div>
+</div>
+<a class="anchor" id="a68341b2e6f51ec85d585f1f5fc658da9"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual Medium const* <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::first </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>get the const-pointer of the first medium </p>
+
+</div>
+</div>
+<a class="anchor" id="ad68f17ba679781f8d8996de3f742584c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::frontAdd </td>
+ <td>(</td>
+ <td class="paramtype">Medium const *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>auto_delete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>add a medium to the front of this pipeline </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>pointer to the medium </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">auto_delete</td><td>should I delete this pointer when destructor </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>successful or not </dd></dl>
+
+<p>Reimplemented in <a class="el" href="classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a">meow::TransformatePipeline&lt; Scalar &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a6ce35017ddf9c669a095290a3ebed8c5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::frontDel </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>remove a medium from the front of this pipeline </p>
+<dl class="section return"><dt>Returns</dt><dd>successful or not </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a41613bf7d08d61043b8791665bdb2395"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual Output <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::goThrough </td>
+ <td>(</td>
+ <td class="paramtype">Input const &amp;&#160;</td>
+ <td class="paramname"><em>in</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>go </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>input data </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>output data </dd></dl>
+
+<p>Implemented in <a class="el" href="classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb">meow::TransformatePipeline&lt; Scalar &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad8a007463d13af873d9ab6e5926be374"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual Input <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::goThroughInv </td>
+ <td>(</td>
+ <td class="paramtype">Output const &amp;&#160;</td>
+ <td class="paramname"><em>in</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>reverse go </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>input data </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>output data </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2f135be41a794fe8c6ac88e4b954feb8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::inversable </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return whether this pipeline can reverse </p>
+<p>Default is unable </p>
+
+</div>
+</div>
+<a class="anchor" id="a46fba2a5d88bf742223732e523e7d234"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual Medium const* <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::last </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>get the const-pointer of the last medium </p>
+
+</div>
+</div>
+<a class="anchor" id="a107cc18a159ceb2fcde495363c55047e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a>&amp; <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::operator= </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a>&lt; Input, Output, Medium &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>same as <code>copyFrom(p)</code> </p>
+
+</div>
+</div>
+<a class="anchor" id="a8425f0a6a4dff7b3bd54f5a0323839c3"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::list&lt;Medium const*&gt; const&amp; <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::pipe </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return const-reference of the pipe list </p>
+
+</div>
+</div>
+<a class="anchor" id="a43280db4560580c0b1618810caab4b02"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a>&amp; <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::referenceFrom </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a>&lt; Input, Output, Medium &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>reference from gived pipeline </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">p</td><td>gived pipeline </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>*this</code> </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0ae87626df1cef4c04a11af40c6765b1"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual size_t <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::size </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return how many medium in this pipeline </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>meowpp/<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a></li>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/classmeow_1_1Pipeline.js b/doc/html/classmeow_1_1Pipeline.js
new file mode 100644
index 0000000..821d8e5
--- /dev/null
+++ b/doc/html/classmeow_1_1Pipeline.js
@@ -0,0 +1,22 @@
+var classmeow_1_1Pipeline =
+[
+ [ "MediumPointerIteratorK", "classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356", null ],
+ [ "Pipeline", "classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4", null ],
+ [ "Pipeline", "classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7", null ],
+ [ "~Pipeline", "classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a", null ],
+ [ "backAdd", "classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4", null ],
+ [ "backDel", "classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5", null ],
+ [ "copyFrom", "classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47", null ],
+ [ "empty", "classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7", null ],
+ [ "first", "classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9", null ],
+ [ "frontAdd", "classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c", null ],
+ [ "frontDel", "classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5", null ],
+ [ "goThrough", "classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395", null ],
+ [ "goThroughInv", "classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374", null ],
+ [ "inversable", "classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8", null ],
+ [ "last", "classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234", null ],
+ [ "operator=", "classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e", null ],
+ [ "pipe", "classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3", null ],
+ [ "referenceFrom", "classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02", null ],
+ [ "size", "classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1", null ]
+]; \ No newline at end of file
diff --git a/doc/html/classmeow_1_1RGBf__Space-members.html b/doc/html/classmeow_1_1RGBf__Space-members.html
index d2f3c0b..7f1176e 100644
--- a/doc/html/classmeow_1_1RGBf__Space-members.html
+++ b/doc/html/classmeow_1_1RGBf__Space-members.html
@@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1RGBf__Space.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1RGBf__Space.html b/doc/html/classmeow_1_1RGBf__Space.html
index 63027e8..9b18d75 100644
--- a/doc/html/classmeow_1_1RGBf__Space.html
+++ b/doc/html/classmeow_1_1RGBf__Space.html
@@ -941,7 +941,7 @@ Additional Inherited Members</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1RGBf__Space.html">RGBf_Space</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1RGBi__Space-members.html b/doc/html/classmeow_1_1RGBi__Space-members.html
index 5a0927c..9bd7a74 100644
--- a/doc/html/classmeow_1_1RGBi__Space-members.html
+++ b/doc/html/classmeow_1_1RGBi__Space-members.html
@@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1RGBi__Space.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1RGBi__Space.html b/doc/html/classmeow_1_1RGBi__Space.html
index 092739d..7bfc7da 100644
--- a/doc/html/classmeow_1_1RGBi__Space.html
+++ b/doc/html/classmeow_1_1RGBi__Space.html
@@ -941,7 +941,7 @@ Additional Inherited Members</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1RGBi__Space.html">RGBi_Space</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__double-members.html b/doc/html/classmeow_1_1ReaderWriter__double-members.html
index b69e80e..db71c29 100644
--- a/doc/html/classmeow_1_1ReaderWriter__double-members.html
+++ b/doc/html/classmeow_1_1ReaderWriter__double-members.html
@@ -69,7 +69,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ReaderWriter__double.html
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__double.html b/doc/html/classmeow_1_1ReaderWriter__double.html
index 736bccc..202ae53 100644
--- a/doc/html/classmeow_1_1ReaderWriter__double.html
+++ b/doc/html/classmeow_1_1ReaderWriter__double.html
@@ -174,7 +174,7 @@ Static Public Member Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ReaderWriter__double.html">ReaderWriter_double</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__int-members.html b/doc/html/classmeow_1_1ReaderWriter__int-members.html
index 226f250..1504d50 100644
--- a/doc/html/classmeow_1_1ReaderWriter__int-members.html
+++ b/doc/html/classmeow_1_1ReaderWriter__int-members.html
@@ -69,7 +69,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ReaderWriter__int.html','
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__int.html b/doc/html/classmeow_1_1ReaderWriter__int.html
index 7b869b4..28c3179 100644
--- a/doc/html/classmeow_1_1ReaderWriter__int.html
+++ b/doc/html/classmeow_1_1ReaderWriter__int.html
@@ -174,7 +174,7 @@ Static Public Member Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ReaderWriter__int.html">ReaderWriter_int</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__size__t-members.html b/doc/html/classmeow_1_1ReaderWriter__size__t-members.html
index 1c90505..f0a9f2e 100644
--- a/doc/html/classmeow_1_1ReaderWriter__size__t-members.html
+++ b/doc/html/classmeow_1_1ReaderWriter__size__t-members.html
@@ -69,7 +69,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ReaderWriter__size__t.htm
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__size__t.html b/doc/html/classmeow_1_1ReaderWriter__size__t.html
index c82c06a..0bafc01 100644
--- a/doc/html/classmeow_1_1ReaderWriter__size__t.html
+++ b/doc/html/classmeow_1_1ReaderWriter__size__t.html
@@ -174,7 +174,7 @@ Static Public Member Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ReaderWriter__size__t.html">ReaderWriter_size_t</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__string-members.html b/doc/html/classmeow_1_1ReaderWriter__string-members.html
index 1173357..ec28cd3 100644
--- a/doc/html/classmeow_1_1ReaderWriter__string-members.html
+++ b/doc/html/classmeow_1_1ReaderWriter__string-members.html
@@ -69,7 +69,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ReaderWriter__string.html
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ReaderWriter__string.html b/doc/html/classmeow_1_1ReaderWriter__string.html
index 892a3e4..ba0e065 100644
--- a/doc/html/classmeow_1_1ReaderWriter__string.html
+++ b/doc/html/classmeow_1_1ReaderWriter__string.html
@@ -174,7 +174,7 @@ Static Public Member Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ReaderWriter__string.html">ReaderWriter_string</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Rotation3D-members.html b/doc/html/classmeow_1_1Rotation3D-members.html
index 38846a2..bd88df7 100644
--- a/doc/html/classmeow_1_1Rotation3D-members.html
+++ b/doc/html/classmeow_1_1Rotation3D-members.html
@@ -105,7 +105,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Rotation3D.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Rotation3D.html b/doc/html/classmeow_1_1Rotation3D.html
index 5ccce18..2359006 100644
--- a/doc/html/classmeow_1_1Rotation3D.html
+++ b/doc/html/classmeow_1_1Rotation3D.html
@@ -919,7 +919,7 @@ template&lt;class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Rotation3D.html">Rotation3D</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SegmentTree-members.html b/doc/html/classmeow_1_1SegmentTree-members.html
index ea5be66..843278f 100644
--- a/doc/html/classmeow_1_1SegmentTree-members.html
+++ b/doc/html/classmeow_1_1SegmentTree-members.html
@@ -77,7 +77,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1SegmentTree.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SegmentTree.html b/doc/html/classmeow_1_1SegmentTree.html
index 3c6082d..9a2b901 100644
--- a/doc/html/classmeow_1_1SegmentTree.html
+++ b/doc/html/classmeow_1_1SegmentTree.html
@@ -476,7 +476,7 @@ template&lt;class Value &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1SegmentTree.html">SegmentTree</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Self-members.html b/doc/html/classmeow_1_1Self-members.html
index 220cd88..c28fdad 100644
--- a/doc/html/classmeow_1_1Self-members.html
+++ b/doc/html/classmeow_1_1Self-members.html
@@ -61,16 +61,22 @@ $(document).ready(function(){initNavTree('classmeow_1_1Self.html','');});
<p>This is the complete list of members for <a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a>, including all inherited members.</p>
<table class="directory">
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828">copyFrom</a>(Self const &amp;s)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d">equal</a>(Self const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6">operator()</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99">operator-&gt;</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2">operator-&gt;</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675">operator=</a>(Self const &amp;a)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f">referenceFrom</a>(Self const &amp;s)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730">COPY_FROM</a> enum value</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2">copyFrom</a>(Self const &amp;s)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e">duplicateFrom</a>(Self const &amp;s, DuplicateType t)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">DuplicateType</a> enum name</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d">equal</a>(Self const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6">operator()</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99">operator-&gt;</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2">operator-&gt;</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675">operator=</a>(Self const &amp;a)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822">REFERENCE_FROM</a> enum value</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d">referenceFrom</a>(Self const &amp;s)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c">referenceLess</a>(Self const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9">same</a>(Self const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937">Self</a>(bool create_body)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d">Self</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#af3220c1e1d7966c6dbaf4ec62f8cbc2f">Self</a>(Data const &amp;d)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#af98a65e83bb96c0860d91a5013b269ef">Self</a>(Self const &amp;b, DuplicateType d=COPY_FROM)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Self.html#a000ede7e217c31401cc0a4b1c6749ee5">Self</a>(Self const &amp;b)</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc">~Self</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Self.html">meow::Self&lt; Data &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
@@ -79,7 +85,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Self.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Self.html b/doc/html/classmeow_1_1Self.html
index d753e2b..d8e34ad 100644
--- a/doc/html/classmeow_1_1Self.html
+++ b/doc/html/classmeow_1_1Self.html
@@ -56,6 +56,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Self.html','');});
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
+<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classmeow_1_1Self-members.html">List of all members</a> </div>
<div class="headertitle">
@@ -68,13 +69,27 @@ $(document).ready(function(){initNavTree('classmeow_1_1Self.html','');});
<p><code>#include &quot;<a class="el" href="Self_8h_source.html">Self.h</a>&quot;</code></p>
<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:aa7d169e9d20d590f3e571206084797f8"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">DuplicateType</a> { <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730">COPY_FROM</a>,
+<a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822">REFERENCE_FROM</a>
+ }</td></tr>
+<tr class="memdesc:aa7d169e9d20d590f3e571206084797f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製資料的方法 <a href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">More...</a><br/></td></tr>
+<tr class="separator:aa7d169e9d20d590f3e571206084797f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
-<tr class="memitem:a0db7c98f250aeee3b06a49ebe0f16937"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937">Self</a> (bool create_body)</td></tr>
-<tr class="memdesc:a0db7c98f250aeee3b06a49ebe0f16937"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#a0db7c98f250aeee3b06a49ebe0f16937">More...</a><br/></td></tr>
-<tr class="separator:a0db7c98f250aeee3b06a49ebe0f16937"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b39fcc4b184809f9aeaeb1c9a0bac2d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d">Self</a> ()</td></tr>
+<tr class="memdesc:a6b39fcc4b184809f9aeaeb1c9a0bac2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor, 並宣告一個實體 <a href="#a6b39fcc4b184809f9aeaeb1c9a0bac2d">More...</a><br/></td></tr>
+<tr class="separator:a6b39fcc4b184809f9aeaeb1c9a0bac2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3220c1e1d7966c6dbaf4ec62f8cbc2f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#af3220c1e1d7966c6dbaf4ec62f8cbc2f">Self</a> (Data const &amp;d)</td></tr>
+<tr class="memdesc:af3220c1e1d7966c6dbaf4ec62f8cbc2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">connstructor, 宣告一個實體, 其中該實體的constructor用copy constructor <a href="#af3220c1e1d7966c6dbaf4ec62f8cbc2f">More...</a><br/></td></tr>
+<tr class="separator:af3220c1e1d7966c6dbaf4ec62f8cbc2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af98a65e83bb96c0860d91a5013b269ef"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#af98a65e83bb96c0860d91a5013b269ef">Self</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;b, <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">DuplicateType</a> d=<a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730">COPY_FROM</a>)</td></tr>
+<tr class="memdesc:af98a65e83bb96c0860d91a5013b269ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor, 使用給定的Self當作init value, 並且可以指定要用 reference還是copy <a href="#af98a65e83bb96c0860d91a5013b269ef">More...</a><br/></td></tr>
+<tr class="separator:af98a65e83bb96c0860d91a5013b269ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a000ede7e217c31401cc0a4b1c6749ee5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a000ede7e217c31401cc0a4b1c6749ee5">Self</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;b)</td></tr>
-<tr class="memdesc:a000ede7e217c31401cc0a4b1c6749ee5"><td class="mdescLeft">&#160;</td><td class="mdescRight">不允許copy constructor <a href="#a000ede7e217c31401cc0a4b1c6749ee5">More...</a><br/></td></tr>
+<tr class="memdesc:a000ede7e217c31401cc0a4b1c6749ee5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disallow copy constructor. <a href="#a000ede7e217c31401cc0a4b1c6749ee5">More...</a><br/></td></tr>
<tr class="separator:a000ede7e217c31401cc0a4b1c6749ee5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada16564a03665b10810a6342d61044bc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc">~Self</a> ()</td></tr>
<tr class="memdesc:ada16564a03665b10810a6342d61044bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">解構子 <a href="#ada16564a03665b10810a6342d61044bc">More...</a><br/></td></tr>
@@ -88,12 +103,15 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a5962339e9ee49312ab770f1119256ca6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Self.html">Self</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6">operator()</a> () const </td></tr>
<tr class="memdesc:a5962339e9ee49312ab770f1119256ca6"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳非const型態的自己 <a href="#a5962339e9ee49312ab770f1119256ca6">More...</a><br/></td></tr>
<tr class="separator:a5962339e9ee49312ab770f1119256ca6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7ae7da730705bf2330a259308e5a6828"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828">copyFrom</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;s)</td></tr>
-<tr class="memdesc:a7ae7da730705bf2330a259308e5a6828"><td class="mdescLeft">&#160;</td><td class="mdescRight">將給定的 <code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> 的資料複製到自己這裡 <a href="#a7ae7da730705bf2330a259308e5a6828">More...</a><br/></td></tr>
-<tr class="separator:a7ae7da730705bf2330a259308e5a6828"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a576e99ba0ba6e8263b4d2cfd9238440f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f">referenceFrom</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;s)</td></tr>
-<tr class="memdesc:a576e99ba0ba6e8263b4d2cfd9238440f"><td class="mdescLeft">&#160;</td><td class="mdescRight">將自己reference 到給定的 <code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> <a href="#a576e99ba0ba6e8263b4d2cfd9238440f">More...</a><br/></td></tr>
-<tr class="separator:a576e99ba0ba6e8263b4d2cfd9238440f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cd016a38a09f479fe2ed83eb1ebdae2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2">copyFrom</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;s)</td></tr>
+<tr class="memdesc:a9cd016a38a09f479fe2ed83eb1ebdae2"><td class="mdescLeft">&#160;</td><td class="mdescRight">將給定的 <code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> 的資料複製到自己這裡 <a href="#a9cd016a38a09f479fe2ed83eb1ebdae2">More...</a><br/></td></tr>
+<tr class="separator:a9cd016a38a09f479fe2ed83eb1ebdae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63e1570c927c7fa3b95b71fe978e355d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d">referenceFrom</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;s)</td></tr>
+<tr class="memdesc:a63e1570c927c7fa3b95b71fe978e355d"><td class="mdescLeft">&#160;</td><td class="mdescRight">將自己reference 到給定的 <code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> <a href="#a63e1570c927c7fa3b95b71fe978e355d">More...</a><br/></td></tr>
+<tr class="separator:a63e1570c927c7fa3b95b71fe978e355d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4256bfc598bb0db76141ffce506806e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e">duplicateFrom</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;s, <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">DuplicateType</a> t)</td></tr>
+<tr class="memdesc:ae4256bfc598bb0db76141ffce506806e"><td class="mdescLeft">&#160;</td><td class="mdescRight">依據給定DuplicateType選擇要呼叫copyFrom還是referenceFrom <a href="#ae4256bfc598bb0db76141ffce506806e">More...</a><br/></td></tr>
+<tr class="separator:ae4256bfc598bb0db76141ffce506806e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3671e44693b79e2f987f59652d46ca9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9">same</a> (<a class="el" href="classmeow_1_1Self.html">Self</a> const &amp;s) const </td></tr>
<tr class="memdesc:ab3671e44693b79e2f987f59652d46ca9"><td class="mdescLeft">&#160;</td><td class="mdescRight">比對兩個 <code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> 是否指向同一個reference <a href="#ab3671e44693b79e2f987f59652d46ca9">More...</a><br/></td></tr>
<tr class="separator:ab3671e44693b79e2f987f59652d46ca9"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -118,53 +136,129 @@ class meow::Self&lt; Data &gt;</h3>
<div class="line"><span class="keyword">private</span>:</div>
<div class="line"> <span class="keyword">struct </span>Myself {</div>
<div class="line"> <span class="keywordtype">int</span> data;</div>
-<div class="line"> Myself(){</div>
+<div class="line"> Myself() { <span class="comment">// 必要</span></div>
<div class="line"> data = 0;</div>
<div class="line"> }</div>
+<div class="line"> Myself(Myself <span class="keyword">const</span>&amp; b): data(b.data) { <span class="comment">// 必要, copy constructor</span></div>
+<div class="line"> }</div>
<div class="line"> ~Myself() {</div>
<div class="line"> }</div>
-<div class="line"> Myself <a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(Myself <span class="keyword">const</span>&amp; ms)<span class="keyword"> const </span>{</div>
-<div class="line"> data = ms.data;</div>
+<div class="line"> <span class="keywordtype">bool</span> operator==(Myself <span class="keyword">const</span>&amp; b)<span class="keyword"> const </span>{ <span class="comment">// 不一定需要(有用到equal()才要)</span></div>
+<div class="line"> <span class="keywordflow">return</span> (data == b.data);</div>
<div class="line"> }</div>
<div class="line"> };</div>
+<div class="line"></div>
<div class="line"> Self&lt;Myself&gt; <span class="keyword">const</span> <span class="keyword">self</span>;</div>
<div class="line"><span class="keyword">public</span>:</div>
-<div class="line"> A(): self(true) { <span class="comment">// self(true) 表示要建立實體, 即struct Myself</span></div>
-<div class="line"> }</div>
-<div class="line"> A(A <span class="keyword">const</span>&amp; a): self(false) { <span class="comment">// for std::swap</span></div>
-<div class="line"> <a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(a);</div>
-<div class="line"> }</div>
-<div class="line"> <span class="comment">// A(A const&amp; a); // disable 模糊用法, 與上者二選一</span></div>
-<div class="line"> A(A <span class="keyword">const</span>&amp; a, <span class="keywordtype">bool</span> reference): self(false) {</div>
-<div class="line"> <span class="keywordflow">if</span> (reference) {</div>
-<div class="line"> <a class="code" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f" title="將自己reference 到給定的 Self ">referenceFrom</a>(a);</div>
-<div class="line"> } <span class="keywordflow">else</span> {</div>
-<div class="line"> <a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(a);</div>
-<div class="line"> }</div>
-<div class="line"> }</div>
-<div class="line"> ~A() {</div>
-<div class="line"> }</div>
+<div class="line"> A(): self() { } <span class="comment">// 預設呼叫Myself()</span></div>
+<div class="line"> A(A <span class="keyword">const</span>&amp; a): self(a.self, <a class="code" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730" title="跟一般的複製一樣">COPY_FROM</a>) { } <span class="comment">// 用Myself(b)做到copyFrom</span></div>
+<div class="line"> ~A() { }</div>
<div class="line"> <span class="keywordtype">void</span> setMemeber(<span class="keywordtype">int</span> k) {</div>
<div class="line"> <span class="keyword">self</span>()-&gt;data = k; <span class="comment">// self()-&gt;?? 可以有write權限</span></div>
<div class="line"> }</div>
<div class="line"> <span class="keywordtype">int</span> getMemember(<span class="keywordtype">int</span> wh)<span class="keyword"> const </span>{</div>
<div class="line"> <span class="keywordflow">return</span> <span class="keyword">self</span>-&gt;data; <span class="comment">// self-&gt;?? 只有const</span></div>
<div class="line"> }</div>
-<div class="line"> A <a class="code" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f" title="將自己reference 到給定的 Self ">referenceFrom</a>(A <span class="keyword">const</span>&amp; a) {</div>
-<div class="line"> <span class="keyword">self</span>.referenceFrom(a.self);</div>
+<div class="line"> A <a class="code" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d" title="將自己reference 到給定的 Self ">referenceFrom</a>(A <span class="keyword">const</span>&amp; a) {</div>
+<div class="line"> <span class="keyword">self</span>.<a class="code" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d" title="將自己reference 到給定的 Self ">referenceFrom</a>(a.self);</div>
<div class="line"> }</div>
-<div class="line"> A <a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(A <span class="keyword">const</span>&amp; a) {</div>
-<div class="line"> <span class="keyword">self</span>.copyFrom(a.self);</div>
+<div class="line"> A <a class="code" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(A <span class="keyword">const</span>&amp; a) {</div>
+<div class="line"> <span class="keyword">self</span>.<a class="code" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(a.self);</div>
<div class="line"> }</div>
<div class="line"> A&amp; <a class="code" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675" title="將 operator= 給disable掉">operator=</a>(A <span class="keyword">const</span>&amp; b) { <span class="comment">// for std::swap</span></div>
-<div class="line"> <a class="code" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(b);</div>
+<div class="line"> <a class="code" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2" title="將給定的 Self 的資料複製到自己這裡">copyFrom</a>(b);</div>
<div class="line"> }</div>
-<div class="line"> A&amp; <a class="code" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675" title="將 operator= 給disable掉">operator=</a>(A <span class="keyword">const</span>&amp; b); <span class="comment">// 避免諢亂用法</span></div>
<div class="line">};</div>
</div><!-- fragment --><dl class="section author"><dt>Author</dt><dd>cathook</dd></dl>
<dl class="section warning"><dt>Warning</dt><dd><code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> 這個class會把<code>operator=</code> 給disable掉, 所以使用它當 kernel的class預設的 <code>operator=</code> 都會無法使用 </dd></dl>
-</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" id="a0db7c98f250aeee3b06a49ebe0f16937"></a>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="aa7d169e9d20d590f3e571206084797f8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Data&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">meow::Self::DuplicateType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>複製資料的方法 </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730"></a>COPY_FROM</em>&nbsp;</td><td class="fielddoc">
+<p>跟一般的複製一樣 </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822"></a>REFERENCE_FROM</em>&nbsp;</td><td class="fielddoc">
+<p>參照, 執行完兩個Self會完全等效 </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a6b39fcc4b184809f9aeaeb1c9a0bac2d"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Data&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::<a class="el" href="classmeow_1_1Self.html">Self</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>constructor, 並宣告一個實體 </p>
+
+</div>
+</div>
+<a class="anchor" id="af3220c1e1d7966c6dbaf4ec62f8cbc2f"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Data&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::<a class="el" href="classmeow_1_1Self.html">Self</a> </td>
+ <td>(</td>
+ <td class="paramtype">Data const &amp;&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>connstructor, 宣告一個實體, 其中該實體的constructor用copy constructor </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>Inital data </td></tr>
+ </table>
+ </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="af98a65e83bb96c0860d91a5013b269ef"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -176,9 +270,19 @@ template&lt;class Data&gt; </div>
<tr>
<td class="memname"><a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::<a class="el" href="classmeow_1_1Self.html">Self</a> </td>
<td>(</td>
- <td class="paramtype">bool&#160;</td>
- <td class="paramname"><em>create_body</em></td><td>)</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Self.html">Self</a>&lt; Data &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">DuplicateType</a>&#160;</td>
+ <td class="paramname"><em>d</em> = <code><a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730">COPY_FROM</a></code>&#160;</td>
+ </tr>
+ <tr>
<td></td>
+ <td>)</td>
+ <td></td><td></td>
</tr>
</table>
</td>
@@ -188,10 +292,11 @@ template&lt;class Data&gt; </div>
</table>
</div><div class="memdoc">
-<p>constructor </p>
+<p>constructor, 使用給定的Self當作init value, 並且可以指定要用 reference還是copy </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
- <tr><td class="paramdir">[in]</td><td class="paramname">create_body</td><td>是否要new一個實體資料 (如果constructor完, 馬上就要 <code><a class="el" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828" title="將給定的 Self 的資料複製到自己這裡">copyFrom()</a></code> , 或是 <code><a class="el" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f" title="將自己reference 到給定的 Self ">referenceFrom()</a></code> 的話 不太需要 new一個實體, 否則基本上都要 </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>給定的Self </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>指定要用copy還是reference </td></tr>
</table>
</dd>
</dl>
@@ -214,7 +319,7 @@ template&lt;class Data&gt; </div>
</table>
</div><div class="memdoc">
-<p>不允許copy constructor </p>
+<p>Disallow copy constructor. </p>
</div>
</div>
@@ -246,7 +351,7 @@ template&lt;class Data&gt; </div>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
-<a class="anchor" id="a7ae7da730705bf2330a259308e5a6828"></a>
+<a class="anchor" id="a9cd016a38a09f479fe2ed83eb1ebdae2"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -256,7 +361,7 @@ template&lt;class Data&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">void <a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::copyFrom </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Self.html">Self</a> const&amp; <a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::copyFrom </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classmeow_1_1Self.html">Self</a>&lt; Data &gt; const &amp;&#160;</td>
<td class="paramname"><em>s</em></td><td>)</td>
@@ -277,11 +382,57 @@ template&lt;class Data&gt; </div>
</table>
</dd>
</dl>
-<dl class="section return"><dt>Returns</dt><dd>無</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>*this</dd></dl>
<dl class="section note"><dt>Note</dt><dd>與reference的差別是, copy之後若該給定的 <code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> 有資料修改, this 這邊 <b>不會</b> 被改到 </dd></dl>
</div>
</div>
+<a class="anchor" id="ae4256bfc598bb0db76141ffce506806e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Data&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Self.html">Self</a> const&amp; <a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::duplicateFrom </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Self.html">Self</a>&lt; Data &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">DuplicateType</a>&#160;</td>
+ <td class="paramname"><em>t</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>依據給定DuplicateType選擇要呼叫copyFrom還是referenceFrom </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>給定的 <code><a class="el" href="classmeow_1_1Self.html" title="具有copy on write, 且擁有比C++更靈活的reference機制">Self</a></code> </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">t</td><td>給定的 <code>DuplicateType</code> </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>*this </dd></dl>
+
+</div>
+</div>
<a class="anchor" id="a91098e2218c358470e81d64f35d6491d"></a>
<div class="memitem">
<div class="memproto">
@@ -419,7 +570,7 @@ template&lt;class Data&gt; </div>
</div>
</div>
-<a class="anchor" id="a576e99ba0ba6e8263b4d2cfd9238440f"></a>
+<a class="anchor" id="a63e1570c927c7fa3b95b71fe978e355d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -429,7 +580,7 @@ template&lt;class Data&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">void <a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::referenceFrom </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Self.html">Self</a> const&amp; <a class="el" href="classmeow_1_1Self.html">meow::Self</a>&lt; Data &gt;::referenceFrom </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classmeow_1_1Self.html">Self</a>&lt; Data &gt; const &amp;&#160;</td>
<td class="paramname"><em>s</em></td><td>)</td>
@@ -450,7 +601,7 @@ template&lt;class Data&gt; </div>
</table>
</dd>
</dl>
-<dl class="section return"><dt>Returns</dt><dd>無</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>*this</dd></dl>
<dl class="section note"><dt>Note</dt><dd>把reference想像成指標會比較容易思考, 譬如 <code>a.referenceFrom(b)</code> <code>b.referenceFrom(c)</code> 相當於 <b>a指向b原本指的記憶體位置</b>, <b>b指向c原本指的記憶體位置</b> , 之後更動c時, 只有b會被牽連 </dd></dl>
</div>
@@ -535,7 +686,7 @@ template&lt;class Data&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Self.html">Self</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Self.js b/doc/html/classmeow_1_1Self.js
index 559c2bc..0c49568 100644
--- a/doc/html/classmeow_1_1Self.js
+++ b/doc/html/classmeow_1_1Self.js
@@ -1,15 +1,22 @@
var classmeow_1_1Self =
[
- [ "Self", "classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937", null ],
+ [ "DuplicateType", "classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8", [
+ [ "COPY_FROM", "classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730", null ],
+ [ "REFERENCE_FROM", "classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822", null ]
+ ] ],
+ [ "Self", "classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d", null ],
+ [ "Self", "classmeow_1_1Self.html#af3220c1e1d7966c6dbaf4ec62f8cbc2f", null ],
+ [ "Self", "classmeow_1_1Self.html#af98a65e83bb96c0860d91a5013b269ef", null ],
[ "Self", "classmeow_1_1Self.html#a000ede7e217c31401cc0a4b1c6749ee5", null ],
[ "~Self", "classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc", null ],
- [ "copyFrom", "classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828", null ],
+ [ "copyFrom", "classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2", null ],
+ [ "duplicateFrom", "classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e", null ],
[ "equal", "classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d", null ],
[ "operator()", "classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6", null ],
[ "operator->", "classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99", null ],
[ "operator->", "classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2", null ],
[ "operator=", "classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675", null ],
- [ "referenceFrom", "classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f", null ],
+ [ "referenceFrom", "classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d", null ],
[ "referenceLess", "classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c", null ],
[ "same", "classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9", null ]
]; \ No newline at end of file
diff --git a/doc/html/classmeow_1_1SplayTree-members.html b/doc/html/classmeow_1_1SplayTree-members.html
index 53b3017..7e3c201 100644
--- a/doc/html/classmeow_1_1SplayTree-members.html
+++ b/doc/html/classmeow_1_1SplayTree-members.html
@@ -92,7 +92,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1SplayTree.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SplayTree.html b/doc/html/classmeow_1_1SplayTree.html
index 1480394..7f507c5 100644
--- a/doc/html/classmeow_1_1SplayTree.html
+++ b/doc/html/classmeow_1_1SplayTree.html
@@ -909,7 +909,7 @@ template&lt;class Key , class Value &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1SplayTree.html">SplayTree</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SplayTree_1_1Element-members.html b/doc/html/classmeow_1_1SplayTree_1_1Element-members.html
index 71310af..53ec96e 100644
--- a/doc/html/classmeow_1_1SplayTree_1_1Element-members.html
+++ b/doc/html/classmeow_1_1SplayTree_1_1Element-members.html
@@ -78,7 +78,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1SplayTree_1_1Element.html
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SplayTree_1_1Element.html b/doc/html/classmeow_1_1SplayTree_1_1Element.html
index 9de318f..07180b0 100644
--- a/doc/html/classmeow_1_1SplayTree_1_1Element.html
+++ b/doc/html/classmeow_1_1SplayTree_1_1Element.html
@@ -413,7 +413,7 @@ template&lt;class Key , class Value &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1SplayTree.html">SplayTree</a></li><li class="navelem"><a class="el" href="classmeow_1_1SplayTree_1_1Element.html">Element</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SplayTree__Range-members.html b/doc/html/classmeow_1_1SplayTree__Range-members.html
index 03003b8..01399e5 100644
--- a/doc/html/classmeow_1_1SplayTree__Range-members.html
+++ b/doc/html/classmeow_1_1SplayTree__Range-members.html
@@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1SplayTree__Range.html',''
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SplayTree__Range.html b/doc/html/classmeow_1_1SplayTree__Range.html
index 1554231..4518d68 100644
--- a/doc/html/classmeow_1_1SplayTree__Range.html
+++ b/doc/html/classmeow_1_1SplayTree__Range.html
@@ -1044,7 +1044,7 @@ template&lt;class Key , class Value &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1SplayTree__Range.html">SplayTree_Range</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SplayTree__Range_1_1Element-members.html b/doc/html/classmeow_1_1SplayTree__Range_1_1Element-members.html
index 0a0af9a..9b74d5a 100644
--- a/doc/html/classmeow_1_1SplayTree__Range_1_1Element-members.html
+++ b/doc/html/classmeow_1_1SplayTree__Range_1_1Element-members.html
@@ -78,7 +78,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1SplayTree__Range_1_1Eleme
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1SplayTree__Range_1_1Element.html b/doc/html/classmeow_1_1SplayTree__Range_1_1Element.html
index bbe2294..124719c 100644
--- a/doc/html/classmeow_1_1SplayTree__Range_1_1Element.html
+++ b/doc/html/classmeow_1_1SplayTree__Range_1_1Element.html
@@ -413,7 +413,7 @@ template&lt;class Key , class Value &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1SplayTree__Range.html">SplayTree_Range</a></li><li class="navelem"><a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html">Element</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1TransformatePipeline-members.html b/doc/html/classmeow_1_1TransformatePipeline-members.html
new file mode 100644
index 0000000..0b22657
--- /dev/null
+++ b/doc/html/classmeow_1_1TransformatePipeline-members.html
@@ -0,0 +1,105 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('classmeow_1_1TransformatePipeline.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">meow::TransformatePipeline&lt; Scalar &gt; Member List</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a>, including all inherited members.</p>
+<table class="directory">
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb">backAdd</a>(Transformate&lt; Scalar &gt; const *ptr, bool auto_delete)</td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5">backDel</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47">copyFrom</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7">empty</a>() const</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9">first</a>() const</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a">frontAdd</a>(Transformate&lt; Scalar &gt; const *ptr, bool auto_delete)</td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5">frontDel</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb">goThrough</a>(Matrix&lt; Scalar &gt; const &amp;input) const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374">goThroughInv</a>(Matrix&lt; Scalar &gt;const &amp;in) const</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae">inputCols</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c">inputRows</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8">inversable</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f">jacobian</a>(Matrix&lt; Scalar &gt; const &amp;input, size_t i) const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#a6299f8399a390371f4665c6800da0fc2">jacobian</a>(Matrix&lt; Scalar &gt; const &amp;input, size_t i, size_t j) const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234">last</a>() const</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">MediumPointerIteratorK</a> typedef</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e">operator=</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad">outputCols</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97">outputRows</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3">pipe</a>() const</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4">Pipeline</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7">Pipeline</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02">referenceFrom</a>(Pipeline const &amp;p)</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1">size</a>() const</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855">transformate</a>(Matrix&lt; Scalar &gt; const &amp;input) const </td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b">TransformatePipeline</a>()</td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20">TransrormatePipeline</a>(TransformatePipeline const &amp;b)</td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a">~Pipeline</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09">~TransformatePipeline</a>()</td><td class="entry"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/classmeow_1_1TransformatePipeline.html b/doc/html/classmeow_1_1TransformatePipeline.html
new file mode 100644
index 0000000..58e3cdc
--- /dev/null
+++ b/doc/html/classmeow_1_1TransformatePipeline.html
@@ -0,0 +1,683 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: meow::TransformatePipeline&lt; Scalar &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('classmeow_1_1TransformatePipeline.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classmeow_1_1TransformatePipeline-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">meow::TransformatePipeline&lt; Scalar &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>a pipeline for transformations
+ <a href="classmeow_1_1TransformatePipeline.html#details">More...</a></p>
+
+<p><code>#include &quot;<a class="el" href="Transformation_8h_source.html">Transformation.h</a>&quot;</code></p>
+<div class="dynheader">
+Inheritance diagram for meow::TransformatePipeline&lt; Scalar &gt;:</div>
+<div class="dyncontent">
+ <div class="center">
+ <img src="classmeow_1_1TransformatePipeline.png" usemap="#meow::TransformatePipeline&lt; Scalar &gt;_map" alt=""/>
+ <map id="meow::TransformatePipeline&lt; Scalar &gt;_map" name="meow::TransformatePipeline&lt; Scalar &gt;_map">
+<area href="classmeow_1_1Pipeline.html" alt="meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;" shape="rect" coords="0,0,464,24"/>
+</map>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac6ab080d88daaadaa1d25e673da5b33b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b">TransformatePipeline</a> ()</td></tr>
+<tr class="memdesc:ac6ab080d88daaadaa1d25e673da5b33b"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#ac6ab080d88daaadaa1d25e673da5b33b">More...</a><br/></td></tr>
+<tr class="separator:ac6ab080d88daaadaa1d25e673da5b33b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6c9f60e836fc48abb12dce4025fae20"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20">TransrormatePipeline</a> (<a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a> const &amp;b)</td></tr>
+<tr class="memdesc:ae6c9f60e836fc48abb12dce4025fae20"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy constructor <a href="#ae6c9f60e836fc48abb12dce4025fae20">More...</a><br/></td></tr>
+<tr class="separator:ae6c9f60e836fc48abb12dce4025fae20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac96b1c183cec4ba8b16b09281108d09"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09">~TransformatePipeline</a> ()</td></tr>
+<tr class="memdesc:aac96b1c183cec4ba8b16b09281108d09"><td class="mdescLeft">&#160;</td><td class="mdescRight">destructor <a href="#aac96b1c183cec4ba8b16b09281108d09">More...</a><br/></td></tr>
+<tr class="separator:aac96b1c183cec4ba8b16b09281108d09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0b055af22eef651755af283feb8d45c"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c">inputRows</a> () const </td></tr>
+<tr class="memdesc:aa0b055af22eef651755af283feb8d45c"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the number of rows of the input matrix <a href="#aa0b055af22eef651755af283feb8d45c">More...</a><br/></td></tr>
+<tr class="separator:aa0b055af22eef651755af283feb8d45c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacb91bcfe8e35bd0cffc0ee71ea00dae"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae">inputCols</a> () const </td></tr>
+<tr class="memdesc:aacb91bcfe8e35bd0cffc0ee71ea00dae"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the number of columns of the input matrix <a href="#aacb91bcfe8e35bd0cffc0ee71ea00dae">More...</a><br/></td></tr>
+<tr class="separator:aacb91bcfe8e35bd0cffc0ee71ea00dae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a963050e6b1919534713c812aaa194b97"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97">outputRows</a> () const </td></tr>
+<tr class="memdesc:a963050e6b1919534713c812aaa194b97"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the number of rows of the output matrix <a href="#a963050e6b1919534713c812aaa194b97">More...</a><br/></td></tr>
+<tr class="separator:a963050e6b1919534713c812aaa194b97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab13242986b383dc646c0093acca589ad"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad">outputCols</a> () const </td></tr>
+<tr class="memdesc:ab13242986b383dc646c0093acca589ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the number of columns of the output matrix <a href="#ab13242986b383dc646c0093acca589ad">More...</a><br/></td></tr>
+<tr class="separator:ab13242986b383dc646c0093acca589ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bf648e2cd72cf49c625ba7190d33a1a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a">frontAdd</a> (Transformate&lt; Scalar &gt; const *ptr, bool auto_delete)</td></tr>
+<tr class="memdesc:a9bf648e2cd72cf49c625ba7190d33a1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">add a transformation to the front of this pipeline <a href="#a9bf648e2cd72cf49c625ba7190d33a1a">More...</a><br/></td></tr>
+<tr class="separator:a9bf648e2cd72cf49c625ba7190d33a1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f1ce65ee36ddc970c7ef851e805d5bb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb">backAdd</a> (Transformate&lt; Scalar &gt; const *ptr, bool auto_delete)</td></tr>
+<tr class="memdesc:a3f1ce65ee36ddc970c7ef851e805d5bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">add a transformation to the front of this pipeline <a href="#a3f1ce65ee36ddc970c7ef851e805d5bb">More...</a><br/></td></tr>
+<tr class="separator:a3f1ce65ee36ddc970c7ef851e805d5bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32e82edbed6cebb49b9ebdf9addd08bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb">goThrough</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;input) const </td></tr>
+<tr class="memdesc:a32e82edbed6cebb49b9ebdf9addd08bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <code>transformate(input)</code> <a href="#a32e82edbed6cebb49b9ebdf9addd08bb">More...</a><br/></td></tr>
+<tr class="separator:a32e82edbed6cebb49b9ebdf9addd08bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c63df15f8033cc09664292ee7d01855"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855">transformate</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;input) const </td></tr>
+<tr class="memdesc:a4c63df15f8033cc09664292ee7d01855"><td class="mdescLeft">&#160;</td><td class="mdescRight">Do a series of transformations. <a href="#a4c63df15f8033cc09664292ee7d01855">More...</a><br/></td></tr>
+<tr class="separator:a4c63df15f8033cc09664292ee7d01855"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432a32213f3d19262185de45d828883f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f">jacobian</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;input, size_t i) const </td></tr>
+<tr class="memdesc:a432a32213f3d19262185de45d828883f"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the jacobian matrix of the transformations, which derivate by the <code>i</code> -th entry of the input vector <a href="#a432a32213f3d19262185de45d828883f">More...</a><br/></td></tr>
+<tr class="separator:a432a32213f3d19262185de45d828883f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6299f8399a390371f4665c6800da0fc2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html#a6299f8399a390371f4665c6800da0fc2">jacobian</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;input, size_t i, size_t j) const </td></tr>
+<tr class="memdesc:a6299f8399a390371f4665c6800da0fc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the jacobian matrix of the transformations, which derivate by the <code>j</code> -th parameter of the <code>i</code> -th transformation. <a href="#a6299f8399a390371f4665c6800da0fc2">More...</a><br/></td></tr>
+<tr class="separator:a6299f8399a390371f4665c6800da0fc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classmeow_1_1Pipeline"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmeow_1_1Pipeline')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td></tr>
+<tr class="memitem:a3cffd384d9b8969122adda3b9087352a inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a">~Pipeline</a> ()</td></tr>
+<tr class="memdesc:a3cffd384d9b8969122adda3b9087352a inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">destructor <a href="#a3cffd384d9b8969122adda3b9087352a">More...</a><br/></td></tr>
+<tr class="separator:a3cffd384d9b8969122adda3b9087352a inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f135be41a794fe8c6ac88e4b954feb8 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8">inversable</a> ()</td></tr>
+<tr class="memdesc:a2f135be41a794fe8c6ac88e4b954feb8 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">return whether this pipeline can reverse <a href="#a2f135be41a794fe8c6ac88e4b954feb8">More...</a><br/></td></tr>
+<tr class="separator:a2f135be41a794fe8c6ac88e4b954feb8 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8a007463d13af873d9ab6e5926be374 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374">goThroughInv</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;const &amp;in) const</td></tr>
+<tr class="memdesc:ad8a007463d13af873d9ab6e5926be374 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">reverse go <a href="#ad8a007463d13af873d9ab6e5926be374">More...</a><br/></td></tr>
+<tr class="separator:ad8a007463d13af873d9ab6e5926be374 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ce35017ddf9c669a095290a3ebed8c5 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5">frontDel</a> ()</td></tr>
+<tr class="memdesc:a6ce35017ddf9c669a095290a3ebed8c5 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">remove a medium from the front of this pipeline <a href="#a6ce35017ddf9c669a095290a3ebed8c5">More...</a><br/></td></tr>
+<tr class="separator:a6ce35017ddf9c669a095290a3ebed8c5 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8263e4d001096fb013fea1465d5fa4d5 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5">backDel</a> ()</td></tr>
+<tr class="memdesc:a8263e4d001096fb013fea1465d5fa4d5 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">add a medium from the back of this pipeline <a href="#a8263e4d001096fb013fea1465d5fa4d5">More...</a><br/></td></tr>
+<tr class="separator:a8263e4d001096fb013fea1465d5fa4d5 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ae87626df1cef4c04a11af40c6765b1 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1">size</a> () const</td></tr>
+<tr class="memdesc:a0ae87626df1cef4c04a11af40c6765b1 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">return how many medium in this pipeline <a href="#a0ae87626df1cef4c04a11af40c6765b1">More...</a><br/></td></tr>
+<tr class="separator:a0ae87626df1cef4c04a11af40c6765b1 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade80a603d4ce3d9761ec57a2087749c7 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7">empty</a> () const</td></tr>
+<tr class="memdesc:ade80a603d4ce3d9761ec57a2087749c7 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as (size() == 0) <a href="#ade80a603d4ce3d9761ec57a2087749c7">More...</a><br/></td></tr>
+<tr class="separator:ade80a603d4ce3d9761ec57a2087749c7 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a68341b2e6f51ec85d585f1f5fc658da9 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual Transformate&lt; Scalar &gt;<br class="typebreak"/>
+const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9">first</a> () const</td></tr>
+<tr class="memdesc:a68341b2e6f51ec85d585f1f5fc658da9 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the const-pointer of the first medium <a href="#a68341b2e6f51ec85d585f1f5fc658da9">More...</a><br/></td></tr>
+<tr class="separator:a68341b2e6f51ec85d585f1f5fc658da9 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46fba2a5d88bf742223732e523e7d234 inherit pub_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">virtual Transformate&lt; Scalar &gt;<br class="typebreak"/>
+const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234">last</a> () const</td></tr>
+<tr class="memdesc:a46fba2a5d88bf742223732e523e7d234 inherit pub_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the const-pointer of the last medium <a href="#a46fba2a5d88bf742223732e523e7d234">More...</a><br/></td></tr>
+<tr class="separator:a46fba2a5d88bf742223732e523e7d234 inherit pub_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_types_classmeow_1_1Pipeline"><td colspan="2" onclick="javascript:toggleInherit('pro_types_classmeow_1_1Pipeline')"><img src="closed.png" alt="-"/>&#160;Protected Types inherited from <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td></tr>
+<tr class="memitem:ab5c5d983ab507579bb2958339caa6356 inherit pro_types_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">typedef std::list<br class="typebreak"/>
+&lt; Transformate&lt; Scalar &gt;const * &gt;<br class="typebreak"/>
+::const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">MediumPointerIteratorK</a></td></tr>
+<tr class="separator:ab5c5d983ab507579bb2958339caa6356 inherit pro_types_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_classmeow_1_1Pipeline"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1Pipeline')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td></tr>
+<tr class="memitem:ad6ff2086fe68c50f526739f3d781bab4 inherit pro_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4">Pipeline</a> ()</td></tr>
+<tr class="memdesc:ad6ff2086fe68c50f526739f3d781bab4 inherit pro_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor with empty contain <a href="#ad6ff2086fe68c50f526739f3d781bab4">More...</a><br/></td></tr>
+<tr class="separator:ad6ff2086fe68c50f526739f3d781bab4 inherit pro_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9acf9a46f19f097629ce2eeb690a23d7 inherit pro_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7">Pipeline</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a9acf9a46f19f097629ce2eeb690a23d7 inherit pro_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy constructor <a href="#a9acf9a46f19f097629ce2eeb690a23d7">More...</a><br/></td></tr>
+<tr class="separator:a9acf9a46f19f097629ce2eeb690a23d7 inherit pro_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a146677fa11b0b47af3000d4b0a72fc47 inherit pro_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47">copyFrom</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a146677fa11b0b47af3000d4b0a72fc47 inherit pro_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy contain from gived pipeline <a href="#a146677fa11b0b47af3000d4b0a72fc47">More...</a><br/></td></tr>
+<tr class="separator:a146677fa11b0b47af3000d4b0a72fc47 inherit pro_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43280db4560580c0b1618810caab4b02 inherit pro_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02">referenceFrom</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a43280db4560580c0b1618810caab4b02 inherit pro_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">reference from gived pipeline <a href="#a43280db4560580c0b1618810caab4b02">More...</a><br/></td></tr>
+<tr class="separator:a43280db4560580c0b1618810caab4b02 inherit pro_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107cc18a159ceb2fcde495363c55047e inherit pro_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e">operator=</a> (<a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a> const &amp;p)</td></tr>
+<tr class="memdesc:a107cc18a159ceb2fcde495363c55047e inherit pro_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">same as <code>copyFrom(p)</code> <a href="#a107cc18a159ceb2fcde495363c55047e">More...</a><br/></td></tr>
+<tr class="separator:a107cc18a159ceb2fcde495363c55047e inherit pro_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8425f0a6a4dff7b3bd54f5a0323839c3 inherit pro_methods_classmeow_1_1Pipeline"><td class="memItemLeft" align="right" valign="top">std::list&lt; Transformate<br class="typebreak"/>
+&lt; Scalar &gt;const * &gt; const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3">pipe</a> () const</td></tr>
+<tr class="memdesc:a8425f0a6a4dff7b3bd54f5a0323839c3 inherit pro_methods_classmeow_1_1Pipeline"><td class="mdescLeft">&#160;</td><td class="mdescRight">return const-reference of the pipe list <a href="#a8425f0a6a4dff7b3bd54f5a0323839c3">More...</a><br/></td></tr>
+<tr class="separator:a8425f0a6a4dff7b3bd54f5a0323839c3 inherit pro_methods_classmeow_1_1Pipeline"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;class Scalar&gt;<br/>
+class meow::TransformatePipeline&lt; Scalar &gt;</h3>
+
+<p>a pipeline for transformations </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac6ab080d88daaadaa1d25e673da5b33b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::<a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>constructor </p>
+
+</div>
+</div>
+<a class="anchor" id="aac96b1c183cec4ba8b16b09281108d09"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::~<a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>destructor </p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a3f1ce65ee36ddc970c7ef851e805d5bb"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::backAdd </td>
+ <td>(</td>
+ <td class="paramtype">Transformate&lt; Scalar &gt; const *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>auto_delete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>add a transformation to the front of this pipeline </p>
+<p>It will test if the shape of the output matrix of the gived transformation is equal to the shape of the input matrix of the last transformation of the pipeline now. If they are not equal, the method will immediate return <code>false</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer to the transformation </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">auto_delete</td><td>Indicate whether the given transformation should be <code>delete</code> when destruct event occured. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>successful or not. </dd></dl>
+
+<p>Reimplemented from <a class="el" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a9bf648e2cd72cf49c625ba7190d33a1a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::frontAdd </td>
+ <td>(</td>
+ <td class="paramtype">Transformate&lt; Scalar &gt; const *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>auto_delete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>add a transformation to the front of this pipeline </p>
+<p>It will test if the shape of the output matrix of the gived transformation is equal to the shape of the input matrix of the first transformation of the pipeline now. If they are not equal, the method will immediate return <code>false</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer to the transformation </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">auto_delete</td><td>Indicate whether the given transformation should be <code>delete</code> when destruct event occured. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>successful or not. </dd></dl>
+
+<p>Reimplemented from <a class="el" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a32e82edbed6cebb49b9ebdf9addd08bb"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt;Scalar&gt; <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::goThrough </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>same as <code>transformate(input)</code> </p>
+
+<p>Implements <a class="el" href="classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aacb91bcfe8e35bd0cffc0ee71ea00dae"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::inputCols </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return the number of columns of the input matrix </p>
+
+</div>
+</div>
+<a class="anchor" id="aa0b055af22eef651755af283feb8d45c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::inputRows </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return the number of rows of the input matrix </p>
+
+</div>
+</div>
+<a class="anchor" id="a432a32213f3d19262185de45d828883f"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt;Scalar&gt; <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::jacobian </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>i</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return the jacobian matrix of the transformations, which derivate by the <code>i</code> -th entry of the input vector </p>
+<p>Assume that the pipeline is like below: </p>
+<p class="formulaDsp">
+<img class="formulaDsp" alt="\[ v_{output} = H(h_1, h_2, G(g_1, g_2, g_3, F(f_1, v_{input}))) \]" src="form_55.png"/>
+</p>
+<p> Where</p>
+<ul>
+<li><img class="formulaInl" alt="$ f_1, g_1, g_2, g_3, h_1, h_2 $" src="form_56.png"/> is the parameters of the transformations <img class="formulaInl" alt="$ F, G, H $" src="form_57.png"/></li>
+<li><img class="formulaInl" alt="$ v_{input}(x,y,z), v_{output} $" src="form_51.png"/> is the input/output vector of the whole pipeline.</li>
+</ul>
+<p>Then according to the chain rule, the jacobian matrix(derivate by <img class="formulaInl" alt="$ y $" src="form_52.png"/>) is: </p>
+<p class="formulaDsp">
+<img class="formulaDsp" alt="\[ M_{jacobian} = \frac{\partial H(h_1, h_2, G(g_1, g_2, g_3, F(f_1, v_{input})))} {\partial G(g_1, g_2, g_3, F(f_1, v_{input})) } \frac{\partial G(g_1, g_2, g_3, F(f_1, v_{input})) } {\partial F(f_1, v_{input}) } \frac{\partial F(f_1, v_{input}) } {\partial v_{input} } \frac{\partial v_{input} } {\partial y } \]" src="form_58.png"/>
+</p>
+<p> Where </p>
+<p class="formulaDsp">
+<img class="formulaDsp" alt="\[ \frac{\partial v_{input}}{\partial y} = \left[ \begin{array}{c} 0 \\ 1 \\ 0 \\ \end{array} \right] \]" src="form_54.png"/>
+</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>the input matrix </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">i</td><td>the index of the derivate scalar </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>a jacobian matrix </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6299f8399a390371f4665c6800da0fc2"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt;Scalar&gt; <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::jacobian </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>i</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>j</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return the jacobian matrix of the transformations, which derivate by the <code>j</code> -th parameter of the <code>i</code> -th transformation. </p>
+<p>Assume that the pipeline is like below: </p>
+<p class="formulaDsp">
+<img class="formulaDsp" alt="\[ v_{output} = I(i_1,i_2, H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input})))) \]" src="form_59.png"/>
+</p>
+<ul>
+<li><img class="formulaInl" alt="$ f_1, g_1, g_2, g_3, h_1, h_2, i_1, i_2 $" src="form_64.png"/> is the parameters of the transformations <img class="formulaInl" alt="$ F, G, H, I $" src="form_61.png"/></li>
+<li><img class="formulaInl" alt="$ v_{input}(x,y,z), v_{output} $" src="form_51.png"/> is the input/output vector of the whole pipeline.</li>
+</ul>
+<p>Then according to the chain rule, the jacobian matrix(derivate by <img class="formulaInl" alt="$ g_2 $" src="form_62.png"/>) is: </p>
+<p class="formulaDsp">
+<img class="formulaDsp" alt="\[ M_{jacobian} = \frac{\partial I(i_1,i_2, H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))))} {\partial H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))) } \frac{\partial H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))) } {\partial G(g_1,g_2,g_3, F(f_1, v_{input})) } \frac{\partial G(g_1,g_2,g_3, F(f_1, v_{input})) } {\partial g_2 } \]" src="form_63.png"/>
+</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>the input matrix </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">i</td><td>the index of the transformation </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">j</td><td>the index of the derivate parameter </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>a jacobian matrix </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab13242986b383dc646c0093acca589ad"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::outputCols </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return the number of columns of the output matrix </p>
+
+</div>
+</div>
+<a class="anchor" id="a963050e6b1919534713c812aaa194b97"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::outputRows </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return the number of rows of the output matrix </p>
+
+</div>
+</div>
+<a class="anchor" id="a4c63df15f8033cc09664292ee7d01855"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt;Scalar&gt; <a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::transformate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Do a series of transformations. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>the input matrix </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the result </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae6c9f60e836fc48abb12dce4025fae20"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1TransformatePipeline.html">meow::TransformatePipeline</a>&lt; Scalar &gt;::TransrormatePipeline </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a>&lt; Scalar &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>b</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>copy constructor </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>meowpp/math/<a class="el" href="Transformation_8h_source.html">Transformation.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a></li>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/classmeow_1_1TransformatePipeline.js b/doc/html/classmeow_1_1TransformatePipeline.js
new file mode 100644
index 0000000..6e94e49
--- /dev/null
+++ b/doc/html/classmeow_1_1TransformatePipeline.js
@@ -0,0 +1,16 @@
+var classmeow_1_1TransformatePipeline =
+[
+ [ "TransformatePipeline", "classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b", null ],
+ [ "~TransformatePipeline", "classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09", null ],
+ [ "backAdd", "classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb", null ],
+ [ "frontAdd", "classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a", null ],
+ [ "goThrough", "classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb", null ],
+ [ "inputCols", "classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae", null ],
+ [ "inputRows", "classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c", null ],
+ [ "jacobian", "classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f", null ],
+ [ "jacobian", "classmeow_1_1TransformatePipeline.html#a6299f8399a390371f4665c6800da0fc2", null ],
+ [ "outputCols", "classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad", null ],
+ [ "outputRows", "classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97", null ],
+ [ "transformate", "classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855", null ],
+ [ "TransrormatePipeline", "classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20", null ]
+]; \ No newline at end of file
diff --git a/doc/html/classmeow_1_1TransformatePipeline.png b/doc/html/classmeow_1_1TransformatePipeline.png
new file mode 100644
index 0000000..01ff21f
--- /dev/null
+++ b/doc/html/classmeow_1_1TransformatePipeline.png
Binary files differ
diff --git a/doc/html/classmeow_1_1Transformation-members.html b/doc/html/classmeow_1_1Transformation-members.html
index 8d5ecad..d643c5c 100644
--- a/doc/html/classmeow_1_1Transformation-members.html
+++ b/doc/html/classmeow_1_1Transformation-members.html
@@ -86,7 +86,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Transformation.html','');
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Transformation.html b/doc/html/classmeow_1_1Transformation.html
index 30d7194..8d3092b 100644
--- a/doc/html/classmeow_1_1Transformation.html
+++ b/doc/html/classmeow_1_1Transformation.html
@@ -138,7 +138,7 @@ Protected Member Functions</h2></td></tr>
<tr class="memdesc:abe781169171fa3b8206a91e166779d74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy from the specified one. <a href="#abe781169171fa3b8206a91e166779d74">More...</a><br/></td></tr>
<tr class="separator:abe781169171fa3b8206a91e166779d74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b6ec99d8363742f77c63a49ba9467b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5">referenceFrom</a> (<a class="el" href="classmeow_1_1Transformation.html">Transformation</a> const &amp;b)</td></tr>
-<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ceference from the specified one. <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
+<tr class="memdesc:a9b6ec99d8363742f77c63a49ba9467b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">reference from the specified one <a href="#a9b6ec99d8363742f77c63a49ba9467b5">More...</a><br/></td></tr>
<tr class="separator:a9b6ec99d8363742f77c63a49ba9467b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@@ -146,7 +146,7 @@ Protected Member Functions</h2></td></tr>
class meow::Transformation&lt; Scalar &gt;</h3>
<p>A base class for implementing kinds of transformations. </p>
-<p>We define that the input and output form of our transformations all be <b>matrix</b> . Some advance methods such as calculating jacobian matrix will order that the input form must be a vector. </p>
+<p>We define that the input and output form of our transformations all be <b>matrix</b> . Some advance methods such as calculating jacobian matrix will require that the input form must be a vector. </p>
<dl class="section author"><dt>Author</dt><dd>cat_leopard </dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a129b2465033d0f6c8f57e4ee36c52b6c"></a>
@@ -758,7 +758,7 @@ template&lt;class Scalar&gt; </div>
</table>
</div><div class="memdoc">
-<p>Ceference from the specified one. </p>
+<p>reference from the specified one </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>The specified one </td></tr>
@@ -853,7 +853,7 @@ template&lt;class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Usage-members.html b/doc/html/classmeow_1_1Usage-members.html
index 630279a..12b04e4 100644
--- a/doc/html/classmeow_1_1Usage-members.html
+++ b/doc/html/classmeow_1_1Usage-members.html
@@ -62,21 +62,21 @@ $(document).ready(function(){initNavTree('classmeow_1_1Usage.html','');});
<p>This is the complete list of members for <a class="el" href="classmeow_1_1Usage.html">meow::Usage</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1">arguments</a>(int argc, char **argv, String *errmsg)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841">hasOptionSetup</a>(unsigned char opt) const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf">hasOptionSetup</a>(String opt) const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#ad7db9a4197d9b281c47df0800ed63df0">import</a>(Usage const &amp;usage)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a1fbd15f59f3fdbe5e817d540505d6d6c">optionAdd</a>(unsigned char opt, String const &amp;des)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#af5a6f3dc4d2250dce3bd74d3de48714d">optionAdd</a>(unsigned char opt, String const &amp;des, String const &amp;val_type, String const &amp;val_default, bool must)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac">optionValue</a>(unsigned char opt, size_t index) const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399">optionValueAcceptAdd</a>(unsigned char opt, String const &amp;val, String const &amp;des)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d">optionValuesSize</a>(unsigned char opt) const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2">optionAdd</a>(String opt, String const &amp;des)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#af4642c5d19cda946047934b3d1463f02">optionAdd</a>(String opt, String const &amp;des, String const &amp;val_type, String const &amp;val_default, bool must)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f">optionValue</a>(String opt, size_t index) const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242">optionValueAcceptAdd</a>(String opt, String const &amp;val, String const &amp;des)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb">optionValuesSize</a>(String opt) const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d">procArg</a>(size_t index) const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee">procArgs</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752">procArgsSize</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241">update</a>(Usage const &amp;usage)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99">usage</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400">Usage</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649">Usage</a>(String const &amp;name)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db">Usage</a>(Usage const &amp;usage)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400">Usage</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649">Usage</a>(String const &amp;name)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db">Usage</a>(Usage const &amp;usage)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99">usage</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709">usageBeginAdd</a>(String const &amp;des)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Usage.html#a4ee38098e5abdb6932a32c13a30f584d">usageEndAdd</a>(String const &amp;des)</td><td class="entry"><a class="el" href="classmeow_1_1Usage.html">meow::Usage</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
@@ -85,7 +85,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Usage.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Usage.html b/doc/html/classmeow_1_1Usage.html
index 68e689a..93e170d 100644
--- a/doc/html/classmeow_1_1Usage.html
+++ b/doc/html/classmeow_1_1Usage.html
@@ -85,24 +85,24 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:ac09c339c31d602eca40df02c582d5241"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241">update</a> (<a class="el" href="classmeow_1_1Usage.html">Usage</a> const &amp;<a class="el" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99">usage</a>)</td></tr>
<tr class="memdesc:ac09c339c31d602eca40df02c582d5241"><td class="mdescLeft">&#160;</td><td class="mdescRight">將另一個usage的選項設置加進來 <a href="#ac09c339c31d602eca40df02c582d5241">More...</a><br/></td></tr>
<tr class="separator:ac09c339c31d602eca40df02c582d5241"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1fbd15f59f3fdbe5e817d540505d6d6c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#a1fbd15f59f3fdbe5e817d540505d6d6c">optionAdd</a> (unsigned char opt, String const &amp;des)</td></tr>
-<tr class="memdesc:a1fbd15f59f3fdbe5e817d540505d6d6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">新增一個沒有額外選項的選項 <a href="#a1fbd15f59f3fdbe5e817d540505d6d6c">More...</a><br/></td></tr>
-<tr class="separator:a1fbd15f59f3fdbe5e817d540505d6d6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af5a6f3dc4d2250dce3bd74d3de48714d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#af5a6f3dc4d2250dce3bd74d3de48714d">optionAdd</a> (unsigned char opt, String const &amp;des, String const &amp;val_type, String const &amp;val_default, bool must)</td></tr>
-<tr class="memdesc:af5a6f3dc4d2250dce3bd74d3de48714d"><td class="mdescLeft">&#160;</td><td class="mdescRight">新增一個有額外選項的選項 <a href="#af5a6f3dc4d2250dce3bd74d3de48714d">More...</a><br/></td></tr>
-<tr class="separator:af5a6f3dc4d2250dce3bd74d3de48714d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a71ba10481062ed7088187cf27d7e0399"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399">optionValueAcceptAdd</a> (unsigned char opt, String const &amp;val, String const &amp;des)</td></tr>
-<tr class="memdesc:a71ba10481062ed7088187cf27d7e0399"><td class="mdescLeft">&#160;</td><td class="mdescRight">針對-(opt)新增一個可接受的額外選項 <a href="#a71ba10481062ed7088187cf27d7e0399">More...</a><br/></td></tr>
-<tr class="separator:a71ba10481062ed7088187cf27d7e0399"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a095271836eecf23940608c0eafcff841"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841">hasOptionSetup</a> (unsigned char opt) const </td></tr>
-<tr class="memdesc:a095271836eecf23940608c0eafcff841"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳是否有設定此選項 <a href="#a095271836eecf23940608c0eafcff841">More...</a><br/></td></tr>
-<tr class="separator:a095271836eecf23940608c0eafcff841"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:acf478b89a1208024f9f37f1fe04add0d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d">optionValuesSize</a> (unsigned char opt) const </td></tr>
-<tr class="memdesc:acf478b89a1208024f9f37f1fe04add0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳參數 <b>-</b>(opt) 被設置幾次 <a href="#acf478b89a1208024f9f37f1fe04add0d">More...</a><br/></td></tr>
-<tr class="separator:acf478b89a1208024f9f37f1fe04add0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a79dc9b39f0fa7c810e1c8cee29e2adac"><td class="memItemLeft" align="right" valign="top">String&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac">optionValue</a> (unsigned char opt, size_t index) const </td></tr>
-<tr class="memdesc:a79dc9b39f0fa7c810e1c8cee29e2adac"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳參數 <b>-</b>(opt) 的第 <b>index</b> 個額外選項 <a href="#a79dc9b39f0fa7c810e1c8cee29e2adac">More...</a><br/></td></tr>
-<tr class="separator:a79dc9b39f0fa7c810e1c8cee29e2adac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af40b0323858e6af56562351554c4dfe2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2">optionAdd</a> (String opt, String const &amp;des)</td></tr>
+<tr class="memdesc:af40b0323858e6af56562351554c4dfe2"><td class="mdescLeft">&#160;</td><td class="mdescRight">新增一個沒有額外選項的選項 <a href="#af40b0323858e6af56562351554c4dfe2">More...</a><br/></td></tr>
+<tr class="separator:af40b0323858e6af56562351554c4dfe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4642c5d19cda946047934b3d1463f02"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#af4642c5d19cda946047934b3d1463f02">optionAdd</a> (String opt, String const &amp;des, String const &amp;val_type, String const &amp;val_default, bool must)</td></tr>
+<tr class="memdesc:af4642c5d19cda946047934b3d1463f02"><td class="mdescLeft">&#160;</td><td class="mdescRight">新增一個有額外選項的選項 <a href="#af4642c5d19cda946047934b3d1463f02">More...</a><br/></td></tr>
+<tr class="separator:af4642c5d19cda946047934b3d1463f02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa2f7c0049d1d09ae08ba8fed6f2a242"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242">optionValueAcceptAdd</a> (String opt, String const &amp;val, String const &amp;des)</td></tr>
+<tr class="memdesc:aaa2f7c0049d1d09ae08ba8fed6f2a242"><td class="mdescLeft">&#160;</td><td class="mdescRight">針對-(opt)新增一個可接受的額外選項 <a href="#aaa2f7c0049d1d09ae08ba8fed6f2a242">More...</a><br/></td></tr>
+<tr class="separator:aaa2f7c0049d1d09ae08ba8fed6f2a242"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24d6ad17571474211da242b19bc5bdcf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf">hasOptionSetup</a> (String opt) const </td></tr>
+<tr class="memdesc:a24d6ad17571474211da242b19bc5bdcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳是否有設定此選項 <a href="#a24d6ad17571474211da242b19bc5bdcf">More...</a><br/></td></tr>
+<tr class="separator:a24d6ad17571474211da242b19bc5bdcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf96a39021fa349a881f850176b56bbb"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb">optionValuesSize</a> (String opt) const </td></tr>
+<tr class="memdesc:abf96a39021fa349a881f850176b56bbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳參數 <b>-</b>(opt) 被設置幾次 <a href="#abf96a39021fa349a881f850176b56bbb">More...</a><br/></td></tr>
+<tr class="separator:abf96a39021fa349a881f850176b56bbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4decdd19345adcda3854fd13e3379d4f"><td class="memItemLeft" align="right" valign="top">String&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f">optionValue</a> (String opt, size_t index) const </td></tr>
+<tr class="memdesc:a4decdd19345adcda3854fd13e3379d4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳參數 <b>-</b>(opt) 的第 <b>index</b> 個額外選項 <a href="#a4decdd19345adcda3854fd13e3379d4f">More...</a><br/></td></tr>
+<tr class="separator:a4decdd19345adcda3854fd13e3379d4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef05aaef7ba6433b2f4c5f313f9c0752"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752">procArgsSize</a> () const </td></tr>
<tr class="memdesc:aef05aaef7ba6433b2f4c5f313f9c0752"><td class="mdescLeft">&#160;</td><td class="mdescRight">取得有幾個process arguments <a href="#aef05aaef7ba6433b2f4c5f313f9c0752">More...</a><br/></td></tr>
<tr class="separator:aef05aaef7ba6433b2f4c5f313f9c0752"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -267,7 +267,7 @@ Public Member Functions</h2></td></tr>
</div>
</div>
-<a class="anchor" id="a095271836eecf23940608c0eafcff841"></a>
+<a class="anchor" id="a24d6ad17571474211da242b19bc5bdcf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -277,7 +277,7 @@ Public Member Functions</h2></td></tr>
<tr>
<td class="memname">bool meow::Usage::hasOptionSetup </td>
<td>(</td>
- <td class="paramtype">unsigned char&#160;</td>
+ <td class="paramtype">String&#160;</td>
<td class="paramname"><em>opt</em></td><td>)</td>
<td> const</td>
</tr>
@@ -333,7 +333,7 @@ Public Member Functions</h2></td></tr>
</div>
</div>
-<a class="anchor" id="a1fbd15f59f3fdbe5e817d540505d6d6c"></a>
+<a class="anchor" id="af40b0323858e6af56562351554c4dfe2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -343,7 +343,7 @@ Public Member Functions</h2></td></tr>
<tr>
<td class="memname">bool meow::Usage::optionAdd </td>
<td>(</td>
- <td class="paramtype">unsigned char&#160;</td>
+ <td class="paramtype">String&#160;</td>
<td class="paramname"><em>opt</em>, </td>
</tr>
<tr>
@@ -377,7 +377,7 @@ Public Member Functions</h2></td></tr>
</div>
</div>
-<a class="anchor" id="af5a6f3dc4d2250dce3bd74d3de48714d"></a>
+<a class="anchor" id="af4642c5d19cda946047934b3d1463f02"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -387,7 +387,7 @@ Public Member Functions</h2></td></tr>
<tr>
<td class="memname">bool meow::Usage::optionAdd </td>
<td>(</td>
- <td class="paramtype">unsigned char&#160;</td>
+ <td class="paramtype">String&#160;</td>
<td class="paramname"><em>opt</em>, </td>
</tr>
<tr>
@@ -442,7 +442,7 @@ Public Member Functions</h2></td></tr>
</div>
</div>
-<a class="anchor" id="a79dc9b39f0fa7c810e1c8cee29e2adac"></a>
+<a class="anchor" id="a4decdd19345adcda3854fd13e3379d4f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -452,7 +452,7 @@ Public Member Functions</h2></td></tr>
<tr>
<td class="memname">String meow::Usage::optionValue </td>
<td>(</td>
- <td class="paramtype">unsigned char&#160;</td>
+ <td class="paramtype">String&#160;</td>
<td class="paramname"><em>opt</em>, </td>
</tr>
<tr>
@@ -486,7 +486,7 @@ Public Member Functions</h2></td></tr>
</div>
</div>
-<a class="anchor" id="a71ba10481062ed7088187cf27d7e0399"></a>
+<a class="anchor" id="aaa2f7c0049d1d09ae08ba8fed6f2a242"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -496,7 +496,7 @@ Public Member Functions</h2></td></tr>
<tr>
<td class="memname">bool meow::Usage::optionValueAcceptAdd </td>
<td>(</td>
- <td class="paramtype">unsigned char&#160;</td>
+ <td class="paramtype">String&#160;</td>
<td class="paramname"><em>opt</em>, </td>
</tr>
<tr>
@@ -537,7 +537,7 @@ Public Member Functions</h2></td></tr>
</div>
</div>
-<a class="anchor" id="acf478b89a1208024f9f37f1fe04add0d"></a>
+<a class="anchor" id="abf96a39021fa349a881f850176b56bbb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -547,7 +547,7 @@ Public Member Functions</h2></td></tr>
<tr>
<td class="memname">size_t meow::Usage::optionValuesSize </td>
<td>(</td>
- <td class="paramtype">unsigned char&#160;</td>
+ <td class="paramtype">String&#160;</td>
<td class="paramname"><em>opt</em></td><td>)</td>
<td> const</td>
</tr>
@@ -788,7 +788,7 @@ Public Member Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Usage.html">Usage</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Usage.js b/doc/html/classmeow_1_1Usage.js
index 556eb06..03424da 100644
--- a/doc/html/classmeow_1_1Usage.js
+++ b/doc/html/classmeow_1_1Usage.js
@@ -4,13 +4,13 @@ var classmeow_1_1Usage =
[ "Usage", "classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649", null ],
[ "Usage", "classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db", null ],
[ "arguments", "classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1", null ],
- [ "hasOptionSetup", "classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841", null ],
+ [ "hasOptionSetup", "classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf", null ],
[ "import", "classmeow_1_1Usage.html#ad7db9a4197d9b281c47df0800ed63df0", null ],
- [ "optionAdd", "classmeow_1_1Usage.html#a1fbd15f59f3fdbe5e817d540505d6d6c", null ],
- [ "optionAdd", "classmeow_1_1Usage.html#af5a6f3dc4d2250dce3bd74d3de48714d", null ],
- [ "optionValue", "classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac", null ],
- [ "optionValueAcceptAdd", "classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399", null ],
- [ "optionValuesSize", "classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d", null ],
+ [ "optionAdd", "classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2", null ],
+ [ "optionAdd", "classmeow_1_1Usage.html#af4642c5d19cda946047934b3d1463f02", null ],
+ [ "optionValue", "classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f", null ],
+ [ "optionValueAcceptAdd", "classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242", null ],
+ [ "optionValuesSize", "classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb", null ],
[ "procArg", "classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d", null ],
[ "procArgs", "classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee", null ],
[ "procArgsSize", "classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752", null ],
diff --git a/doc/html/classmeow_1_1VP__Tree-members.html b/doc/html/classmeow_1_1VP__Tree-members.html
index b7759b8..c068a49 100644
--- a/doc/html/classmeow_1_1VP__Tree-members.html
+++ b/doc/html/classmeow_1_1VP__Tree-members.html
@@ -81,7 +81,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1VP__Tree.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1VP__Tree.html b/doc/html/classmeow_1_1VP__Tree.html
index 3f793fe..b951082 100644
--- a/doc/html/classmeow_1_1VP__Tree.html
+++ b/doc/html/classmeow_1_1VP__Tree.html
@@ -545,7 +545,7 @@ template&lt;class Vector, class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1VP__Tree.html">VP_Tree</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Vector-members.html b/doc/html/classmeow_1_1Vector-members.html
index 90a1230..6c4bcec 100644
--- a/doc/html/classmeow_1_1Vector-members.html
+++ b/doc/html/classmeow_1_1Vector-members.html
@@ -68,33 +68,35 @@ $(document).ready(function(){initNavTree('classmeow_1_1Vector.html','');});
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908">div</a>(Scalar const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452">dot</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618">entries</a>(size_t i, size_t j, Scalar const &amp;s)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8">entry</a>(size_t i) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a5050e9117204a6dbdcc7cf5038845c00">entry</a>(size_t i, Scalar const &amp;s)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27">length</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e">length2</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084">matrix</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c">mul</a>(Scalar const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c">negative</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee">normalize</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448">normalized</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a">operator()</a>(size_t i) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1">operator*</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c">operator*</a>(Scalar const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8">operator+</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c">operator+</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a">operator-</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d">operator-</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e">operator/</a>(Scalar const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623">operator=</a>(Vector const &amp;v)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589">positive</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e">referenceFrom</a>(Vector const &amp;v)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533">sub</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a">subVector</a>(size_t i, size_t j)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e">valid</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61">Vector</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6">Vector</a>(Vector const &amp;v)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073">Vector</a>(Matrix&lt; Scalar &gt; const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
- <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#af4966b6e2df19fa6d2752460b1e8afff">Vector</a>(Matrix&lt; Scalar &gt; const &amp;m, size_t i)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8">entry</a>(size_t i) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a">entry</a>(size_t i, Scalar const &amp;s)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe">entryGet</a>(size_t i)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27">length</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e">length2</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084">matrix</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c">mul</a>(Scalar const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c">negative</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee">normalize</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448">normalized</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a">operator()</a>(size_t i) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1">operator*</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c">operator*</a>(Scalar const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8">operator+</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c">operator+</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a">operator-</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d">operator-</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e">operator/</a>(Scalar const &amp;s) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623">operator=</a>(Vector const &amp;v)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589">positive</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e">referenceFrom</a>(Vector const &amp;v)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">ScalarRef</a> typedef</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a> typedef</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533">sub</a>(Vector const &amp;v) const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a">subVector</a>(size_t i, size_t j)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e">valid</a>() const </td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61">Vector</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6">Vector</a>(Vector const &amp;v)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073">Vector</a>(Matrix&lt; Scalar &gt; const &amp;m)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815">Vector</a>(std::vector&lt; Scalar &gt; const &amp;v)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd">Vector</a>(size_t d, Scalar const &amp;e)</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3">~Vector</a>()</td><td class="entry"><a class="el" href="classmeow_1_1Vector.html">meow::Vector&lt; Scalar &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
@@ -104,7 +106,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Vector.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Vector.html b/doc/html/classmeow_1_1Vector.html
index b3857ca..d26570b 100644
--- a/doc/html/classmeow_1_1Vector.html
+++ b/doc/html/classmeow_1_1Vector.html
@@ -55,6 +55,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Vector.html','');});
<div id="doc-content">
<div class="header">
<div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classmeow_1_1Vector-members.html">List of all members</a> </div>
<div class="headertitle">
@@ -67,6 +68,13 @@ $(document).ready(function(){initNavTree('classmeow_1_1Vector.html','');});
<p><code>#include &quot;<a class="el" href="Vector_8h_source.html">Vector.h</a>&quot;</code></p>
<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ac7464dd163607b1a6417e438a639d050"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;::EntryRefK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a></td></tr>
+<tr class="separator:ac7464dd163607b1a6417e438a639d050"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29e75e2dd5e46da4c7b95354c8787a30"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt;::EntryRef&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">ScalarRef</a></td></tr>
+<tr class="separator:a29e75e2dd5e46da4c7b95354c8787a30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a68530affccd332248e476cc3e188cd61"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61">Vector</a> ()</td></tr>
@@ -78,9 +86,6 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a34ca34c834e47288894cec2445e5b073"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073">Vector</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;m)</td></tr>
<tr class="memdesc:a34ca34c834e47288894cec2445e5b073"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#a34ca34c834e47288894cec2445e5b073">More...</a><br/></td></tr>
<tr class="separator:a34ca34c834e47288894cec2445e5b073"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af4966b6e2df19fa6d2752460b1e8afff"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#af4966b6e2df19fa6d2752460b1e8afff">Vector</a> (<a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;m, size_t i)</td></tr>
-<tr class="memdesc:af4966b6e2df19fa6d2752460b1e8afff"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#af4966b6e2df19fa6d2752460b1e8afff">More...</a><br/></td></tr>
-<tr class="separator:af4966b6e2df19fa6d2752460b1e8afff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58f997cdc6b98a76ae13bba6d685d815"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815">Vector</a> (std::vector&lt; Scalar &gt; const &amp;v)</td></tr>
<tr class="memdesc:a58f997cdc6b98a76ae13bba6d685d815"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#a58f997cdc6b98a76ae13bba6d685d815">More...</a><br/></td></tr>
<tr class="separator:a58f997cdc6b98a76ae13bba6d685d815"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -108,12 +113,15 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a98f150719042e458d52a1476ae9fd52e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e">valid</a> () const </td></tr>
<tr class="memdesc:a98f150719042e458d52a1476ae9fd52e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return whether <code>dimension&gt;0</code> is true or not. <a href="#a98f150719042e458d52a1476ae9fd52e">More...</a><br/></td></tr>
<tr class="separator:a98f150719042e458d52a1476ae9fd52e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af5ecb8d9cc811a2d56e1725c4bfd30e8"><td class="memItemLeft" align="right" valign="top">Scalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8">entry</a> (size_t i) const </td></tr>
-<tr class="memdesc:af5ecb8d9cc811a2d56e1725c4bfd30e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">return <em>i</em> -th entry <a href="#af5ecb8d9cc811a2d56e1725c4bfd30e8">More...</a><br/></td></tr>
-<tr class="separator:af5ecb8d9cc811a2d56e1725c4bfd30e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5050e9117204a6dbdcc7cf5038845c00"><td class="memItemLeft" align="right" valign="top">Scalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a5050e9117204a6dbdcc7cf5038845c00">entry</a> (size_t i, Scalar const &amp;s)</td></tr>
-<tr class="memdesc:a5050e9117204a6dbdcc7cf5038845c00"><td class="mdescLeft">&#160;</td><td class="mdescRight">change <em>i</em> -th entry <a href="#a5050e9117204a6dbdcc7cf5038845c00">More...</a><br/></td></tr>
-<tr class="separator:a5050e9117204a6dbdcc7cf5038845c00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2413f452c3d8b76208d99f7256c9ade8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8">entry</a> (size_t i) const </td></tr>
+<tr class="memdesc:a2413f452c3d8b76208d99f7256c9ade8"><td class="mdescLeft">&#160;</td><td class="mdescRight">return <em>i</em> -th entry <a href="#a2413f452c3d8b76208d99f7256c9ade8">More...</a><br/></td></tr>
+<tr class="separator:a2413f452c3d8b76208d99f7256c9ade8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0a1b850f2db26637b88900ba2e1911a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a">entry</a> (size_t i, Scalar const &amp;s)</td></tr>
+<tr class="memdesc:ab0a1b850f2db26637b88900ba2e1911a"><td class="mdescLeft">&#160;</td><td class="mdescRight">change <em>i</em> -th entry <a href="#ab0a1b850f2db26637b88900ba2e1911a">More...</a><br/></td></tr>
+<tr class="separator:ab0a1b850f2db26637b88900ba2e1911a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35b4e136e93445279372f70e4caf00fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">ScalarRef</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe">entryGet</a> (size_t i)</td></tr>
+<tr class="memdesc:a35b4e136e93445279372f70e4caf00fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">return <em>i</em> -th entry with non-constant type <a href="#a35b4e136e93445279372f70e4caf00fe">More...</a><br/></td></tr>
+<tr class="separator:a35b4e136e93445279372f70e4caf00fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc55ef7402cf4114ea5696df18545618"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618">entries</a> (size_t i, size_t j, Scalar const &amp;s)</td></tr>
<tr class="memdesc:adc55ef7402cf4114ea5696df18545618"><td class="mdescLeft">&#160;</td><td class="mdescRight">change <em>i</em> -th to <em>j</em> -th entries <a href="#adc55ef7402cf4114ea5696df18545618">More...</a><br/></td></tr>
<tr class="separator:adc55ef7402cf4114ea5696df18545618"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -187,36 +195,37 @@ class meow::Vector&lt; Scalar &gt;</h3>
<p><b>vector</b> </p>
<dl class="section author"><dt>Author</dt><dd>cat_leopard </dd></dl>
-</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" id="a68530affccd332248e476cc3e188cd61"></a>
+</div><h2 class="groupheader">Member Typedef Documentation</h2>
+<a class="anchor" id="a29e75e2dd5e46da4c7b95354c8787a30"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Scalar&gt; </div>
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname"><a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::<a class="el" href="classmeow_1_1Vector.html">Vector</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
+ <td class="memname">typedef <a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt;Scalar&gt;::EntryRef <a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::<a class="el" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">ScalarRef</a></td>
</tr>
</table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
</div><div class="memdoc">
-<p>constructor </p>
-<p>With <b>dimension=0</b>, which means <b>invalid</b>. </p>
+</div>
+</div>
+<a class="anchor" id="ac7464dd163607b1a6417e438a639d050"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt;Scalar&gt;::EntryRefK <a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::<a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
</div>
</div>
-<a class="anchor" id="a7def8437ada844cc6b6dc9769aba1ee6"></a>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a68530affccd332248e476cc3e188cd61"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -228,8 +237,7 @@ template&lt;class Scalar&gt; </div>
<tr>
<td class="memname"><a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::<a class="el" href="classmeow_1_1Vector.html">Vector</a> </td>
<td>(</td>
- <td class="paramtype"><a class="el" href="classmeow_1_1Vector.html">Vector</a>&lt; Scalar &gt; const &amp;&#160;</td>
- <td class="paramname"><em>v</em></td><td>)</td>
+ <td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
@@ -241,17 +249,11 @@ template&lt;class Scalar&gt; </div>
</div><div class="memdoc">
<p>constructor </p>
-<p>Copy from another vector</p>
-<dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramdir">[in]</td><td class="paramname">v</td><td>another vector </td></tr>
- </table>
- </dd>
-</dl>
+<p>With <b>dimension=0</b>, which means <b>invalid</b>. </p>
</div>
</div>
-<a class="anchor" id="a34ca34c834e47288894cec2445e5b073"></a>
+<a class="anchor" id="a7def8437ada844cc6b6dc9769aba1ee6"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -263,8 +265,8 @@ template&lt;class Scalar&gt; </div>
<tr>
<td class="memname"><a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::<a class="el" href="classmeow_1_1Vector.html">Vector</a> </td>
<td>(</td>
- <td class="paramtype"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;&#160;</td>
- <td class="paramname"><em>m</em></td><td>)</td>
+ <td class="paramtype"><a class="el" href="classmeow_1_1Vector.html">Vector</a>&lt; Scalar &gt; const &amp;&#160;</td>
+ <td class="paramname"><em>v</em></td><td>)</td>
<td></td>
</tr>
</table>
@@ -276,17 +278,17 @@ template&lt;class Scalar&gt; </div>
</div><div class="memdoc">
<p>constructor </p>
-<p>From matrix's first column</p>
+<p>Copy from another vector</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
- <tr><td class="paramdir">[in]</td><td class="paramname">m</td><td>matrix </td></tr>
+ <tr><td class="paramdir">[in]</td><td class="paramname">v</td><td>another vector </td></tr>
</table>
</dd>
</dl>
</div>
</div>
-<a class="anchor" id="af4966b6e2df19fa6d2752460b1e8afff"></a>
+<a class="anchor" id="a34ca34c834e47288894cec2445e5b073"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -299,18 +301,8 @@ template&lt;class Scalar&gt; </div>
<td class="memname"><a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::<a class="el" href="classmeow_1_1Vector.html">Vector</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classmeow_1_1Matrix.html">Matrix</a>&lt; Scalar &gt; const &amp;&#160;</td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">size_t&#160;</td>
- <td class="paramname"><em>i</em>&#160;</td>
- </tr>
- <tr>
+ <td class="paramname"><em>m</em></td><td>)</td>
<td></td>
- <td>)</td>
- <td></td><td></td>
</tr>
</table>
</td>
@@ -321,11 +313,10 @@ template&lt;class Scalar&gt; </div>
</div><div class="memdoc">
<p>constructor </p>
-<p>From matrix's <em>i-th</em> column</p>
+<p>From matrix's first column</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">m</td><td>matrix </td></tr>
- <tr><td class="paramdir">[in]</td><td class="paramname">i</td><td>i-th </td></tr>
</table>
</dd>
</dl>
@@ -678,7 +669,7 @@ template&lt;class Scalar&gt; </div>
</div>
</div>
-<a class="anchor" id="af5ecb8d9cc811a2d56e1725c4bfd30e8"></a>
+<a class="anchor" id="a2413f452c3d8b76208d99f7256c9ade8"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -688,7 +679,7 @@ template&lt;class Scalar&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">Scalar <a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::entry </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a> <a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::entry </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
@@ -706,7 +697,7 @@ template&lt;class Scalar&gt; </div>
</div>
</div>
-<a class="anchor" id="a5050e9117204a6dbdcc7cf5038845c00"></a>
+<a class="anchor" id="ab0a1b850f2db26637b88900ba2e1911a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
@@ -716,7 +707,7 @@ template&lt;class Scalar&gt; </div>
<td class="mlabels-left">
<table class="memname">
<tr>
- <td class="memname">Scalar <a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::entry </td>
+ <td class="memname"><a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">ScalarRefK</a> <a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::entry </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>i</em>, </td>
@@ -751,6 +742,34 @@ template&lt;class Scalar&gt; </div>
</div>
</div>
+<a class="anchor" id="a35b4e136e93445279372f70e4caf00fe"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Scalar&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">ScalarRef</a> <a class="el" href="classmeow_1_1Vector.html">meow::Vector</a>&lt; Scalar &gt;::entryGet </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>i</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>return <em>i</em> -th entry with non-constant type </p>
+
+</div>
+</div>
<a class="anchor" id="afc7cc691dd00ab41fd56d798c13a6a27"></a>
<div class="memitem">
<div class="memproto">
@@ -1350,7 +1369,7 @@ template&lt;class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Vector.html">Vector</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:49 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Vector.js b/doc/html/classmeow_1_1Vector.js
index a72f72c..16b8b9c 100644
--- a/doc/html/classmeow_1_1Vector.js
+++ b/doc/html/classmeow_1_1Vector.js
@@ -1,9 +1,10 @@
var classmeow_1_1Vector =
[
+ [ "ScalarRef", "classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30", null ],
+ [ "ScalarRefK", "classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050", null ],
[ "Vector", "classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61", null ],
[ "Vector", "classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6", null ],
[ "Vector", "classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073", null ],
- [ "Vector", "classmeow_1_1Vector.html#af4966b6e2df19fa6d2752460b1e8afff", null ],
[ "Vector", "classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815", null ],
[ "Vector", "classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd", null ],
[ "~Vector", "classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3", null ],
@@ -14,8 +15,9 @@ var classmeow_1_1Vector =
[ "div", "classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908", null ],
[ "dot", "classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452", null ],
[ "entries", "classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618", null ],
- [ "entry", "classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8", null ],
- [ "entry", "classmeow_1_1Vector.html#a5050e9117204a6dbdcc7cf5038845c00", null ],
+ [ "entry", "classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8", null ],
+ [ "entry", "classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a", null ],
+ [ "entryGet", "classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe", null ],
[ "length", "classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27", null ],
[ "length2", "classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e", null ],
[ "matrix", "classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084", null ],
diff --git a/doc/html/classmeow_1_1Vector2D-members.html b/doc/html/classmeow_1_1Vector2D-members.html
index aec2398..240ab39 100644
--- a/doc/html/classmeow_1_1Vector2D-members.html
+++ b/doc/html/classmeow_1_1Vector2D-members.html
@@ -121,7 +121,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Vector2D.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Vector2D.html b/doc/html/classmeow_1_1Vector2D.html
index 01aac3e..a5bc2fa 100644
--- a/doc/html/classmeow_1_1Vector2D.html
+++ b/doc/html/classmeow_1_1Vector2D.html
@@ -1740,7 +1740,7 @@ template&lt;class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Vector2D.html">Vector2D</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Vector3D-members.html b/doc/html/classmeow_1_1Vector3D-members.html
index 6e173c7..ef3a0ee 100644
--- a/doc/html/classmeow_1_1Vector3D-members.html
+++ b/doc/html/classmeow_1_1Vector3D-members.html
@@ -123,7 +123,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1Vector3D.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1Vector3D.html b/doc/html/classmeow_1_1Vector3D.html
index beccfd0..360eb6f 100644
--- a/doc/html/classmeow_1_1Vector3D.html
+++ b/doc/html/classmeow_1_1Vector3D.html
@@ -1843,7 +1843,7 @@ template&lt;class Scalar&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Vector3D.html">Vector3D</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ViewPort-members.html b/doc/html/classmeow_1_1ViewPort-members.html
index fa8489a..4e1f6e9 100644
--- a/doc/html/classmeow_1_1ViewPort-members.html
+++ b/doc/html/classmeow_1_1ViewPort-members.html
@@ -77,7 +77,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1ViewPort.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1ViewPort.html b/doc/html/classmeow_1_1ViewPort.html
index f2adc45..cda98cd 100644
--- a/doc/html/classmeow_1_1ViewPort.html
+++ b/doc/html/classmeow_1_1ViewPort.html
@@ -81,21 +81,29 @@ Additional Inherited Members</h2></td></tr>
<tr class="memitem:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234">~ObjBase</a> ()</td></tr>
<tr class="separator:a0ae0da4160bf2556411b4c126c649234 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8">write</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg) const </td></tr>
+<tr class="memdesc:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件寫入檔案, 預設implement為直接回傳 <code>false</code> <a href="#ae9e9e5c664b7a92e54a3616983f39ba8">More...</a><br/></td></tr>
<tr class="separator:ae9e9e5c664b7a92e54a3616983f39ba8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34">read</a> (FILE *f, bool bin, unsigned <a class="el" href="classint.html">int</a> fg)</td></tr>
+<tr class="memdesc:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">將物件從檔案讀出, 預設implement為直接回傳 <code>false</code> <a href="#a4c1f5cb4b05559197148a8f6524bfc34">More...</a><br/></td></tr>
<tr class="separator:a4c1f5cb4b05559197148a8f6524bfc34 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">create</a> () const </td></tr>
+<tr class="memdesc:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">回傳一個new出來的物件, 預設implement為直接回傳 <code>NULL</code> <a href="#ac9114e6917bca03b8f3c89694214b57c">More...</a><br/></td></tr>
<tr class="separator:ac9114e6917bca03b8f3c89694214b57c inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">copyFrom</a> (<a class="el" href="classmeow_1_1ObjBase.html">ObjBase</a> const *b)</td></tr>
+<tr class="memdesc:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">複製, 預設使用operator= <a href="#a79725f50866832762db87184eb528619">More...</a><br/></td></tr>
<tr class="separator:a79725f50866832762db87184eb528619 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">ctype</a> () const </td></tr>
+<tr class="memdesc:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳這個class的type name <a href="#a4aae58e8005739abe6d091d8b55a21e8">More...</a><br/></td></tr>
<tr class="separator:a4aae58e8005739abe6d091d8b55a21e8 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">type</a> () const </td></tr>
+<tr class="memdesc:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳這個class的type name <a href="#a63a4911bb073281820fe9b7a9908ba72">More...</a><br/></td></tr>
<tr class="separator:a63a4911bb073281820fe9b7a9908ba72 inherit pub_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -113,7 +121,7 @@ Additional Inherited Members</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1ViewPort.html">ViewPort</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1WatchBall-members.html b/doc/html/classmeow_1_1WatchBall-members.html
index 45010b9..eb53d6f 100644
--- a/doc/html/classmeow_1_1WatchBall-members.html
+++ b/doc/html/classmeow_1_1WatchBall-members.html
@@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1WatchBall.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1WatchBall.html b/doc/html/classmeow_1_1WatchBall.html
index 0446fd8..8f37070 100644
--- a/doc/html/classmeow_1_1WatchBall.html
+++ b/doc/html/classmeow_1_1WatchBall.html
@@ -166,8 +166,10 @@ Public Member Functions</h2></td></tr>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">ctypeBase</a> ()</td></tr>
+<tr class="memdesc:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用C-style string回傳base的type name <a href="#ab42310e3f3a7cd558dd91381c8dd23d8">More...</a><br/></td></tr>
<tr class="separator:ab42310e3f3a7cd558dd91381c8dd23d8 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3">typeBase</a> ()</td></tr>
+<tr class="memdesc:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">用std::string回傳base的type name <a href="#a75dce38f89ce11cb06e0454e7c1039d3">More...</a><br/></td></tr>
<tr class="separator:a75dce38f89ce11cb06e0454e7c1039d3 inherit pub_static_methods_classmeow_1_1ObjBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classmeow_1_1ObjBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmeow_1_1ObjBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmeow_1_1ObjBase.html">meow::ObjBase</a></td></tr>
<tr class="memitem:abe7a7138b5a81eb66da51b74bc3996ff inherit pro_methods_classmeow_1_1ObjBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff">ObjBase</a> ()</td></tr>
@@ -941,7 +943,7 @@ template&lt;class Pixel &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1WatchBall.html">WatchBall</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:36 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1YUVf__Space-members.html b/doc/html/classmeow_1_1YUVf__Space-members.html
index 2490375..31e30b9 100644
--- a/doc/html/classmeow_1_1YUVf__Space-members.html
+++ b/doc/html/classmeow_1_1YUVf__Space-members.html
@@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('classmeow_1_1YUVf__Space.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/classmeow_1_1YUVf__Space.html b/doc/html/classmeow_1_1YUVf__Space.html
index 642d3fe..64555df 100644
--- a/doc/html/classmeow_1_1YUVf__Space.html
+++ b/doc/html/classmeow_1_1YUVf__Space.html
@@ -941,7 +941,7 @@ Additional Inherited Members</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1YUVf__Space.html">YUVf_Space</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:34 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:47 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/dir_115d3279a93b9c99d8f569a34543848f.html b/doc/html/dir_115d3279a93b9c99d8f569a34543848f.html
index a51ccfa..06fdbd8 100644
--- a/doc/html/dir_115d3279a93b9c99d8f569a34543848f.html
+++ b/doc/html/dir_115d3279a93b9c99d8f569a34543848f.html
@@ -91,7 +91,7 @@ Files</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_115d3279a93b9c99d8f569a34543848f.html">gra</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/dir_540a4c8f2977878a343351220ffba92b.html b/doc/html/dir_540a4c8f2977878a343351220ffba92b.html
index 27e55e9..4939cdd 100644
--- a/doc/html/dir_540a4c8f2977878a343351220ffba92b.html
+++ b/doc/html/dir_540a4c8f2977878a343351220ffba92b.html
@@ -81,7 +81,7 @@ Files</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_540a4c8f2977878a343351220ffba92b.html">oo</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.html b/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.html
index 6ecf96d..619b5d6 100644
--- a/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.html
+++ b/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.html
@@ -85,7 +85,7 @@ Files</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.js b/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.js
index e78e476..32319aa 100644
--- a/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.js
+++ b/doc/html/dir_77e0ab67466b1e7d76f50725a5ab9910.js
@@ -10,9 +10,7 @@ var dir_77e0ab67466b1e7d76f50725a5ab9910 =
[ "Matrix", "classmeow_1_1Matrix.html", "classmeow_1_1Matrix" ]
] ],
[ "methods.h", "methods_8h.html", "methods_8h" ],
- [ "Transformation.h", "Transformation_8h.html", [
- [ "Transformation", "classmeow_1_1Transformation.html", "classmeow_1_1Transformation" ]
- ] ],
+ [ "Transformation.h", "Transformation_8h.html", "Transformation_8h" ],
[ "Transformations.h", "Transformations_8h.html", [
[ "BallProjection", "classmeow_1_1BallProjection.html", "classmeow_1_1BallProjection" ],
[ "PhotoProjection", "classmeow_1_1PhotoProjection.html", "classmeow_1_1PhotoProjection" ]
diff --git a/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.html b/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.html
index 7a4bbc8..491e3d4 100644
--- a/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.html
+++ b/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.html
@@ -76,6 +76,8 @@ Directories</h2></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
Files</h2></td></tr>
+<tr class="memitem:Pipeline_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="Pipeline_8h.html">Pipeline.h</a> <a href="Pipeline_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:Self_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="Self_8h.html">Self.h</a> <a href="Self_8h_source.html">[code]</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:Usage_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="Usage_8h.html">Usage.h</a> <a href="Usage_8h_source.html">[code]</a></td></tr>
@@ -90,7 +92,7 @@ Files</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.js b/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.js
index 9ea3499..0d1aeae 100644
--- a/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.js
+++ b/doc/html/dir_92fecd8d02dd5e7a67429447fdf0f60f.js
@@ -6,6 +6,10 @@ var dir_92fecd8d02dd5e7a67429447fdf0f60f =
[ "gra", "dir_115d3279a93b9c99d8f569a34543848f.html", "dir_115d3279a93b9c99d8f569a34543848f" ],
[ "math", "dir_77e0ab67466b1e7d76f50725a5ab9910.html", "dir_77e0ab67466b1e7d76f50725a5ab9910" ],
[ "oo", "dir_540a4c8f2977878a343351220ffba92b.html", "dir_540a4c8f2977878a343351220ffba92b" ],
+ [ "Pipeline.h", "Pipeline_8h.html", [
+ [ "Pipeline", "classmeow_1_1Pipeline.html", "classmeow_1_1Pipeline" ],
+ [ "MediumInfo", "structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html", "structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo" ]
+ ] ],
[ "Self.h", "Self_8h.html", [
[ "Self", "classmeow_1_1Self.html", "classmeow_1_1Self" ]
] ],
diff --git a/doc/html/dir_a17ff8dcb3a1c1b842af541700214096.html b/doc/html/dir_a17ff8dcb3a1c1b842af541700214096.html
index c4442b1..7f0433b 100644
--- a/doc/html/dir_a17ff8dcb3a1c1b842af541700214096.html
+++ b/doc/html/dir_a17ff8dcb3a1c1b842af541700214096.html
@@ -85,7 +85,7 @@ Files</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a17ff8dcb3a1c1b842af541700214096.html">dsa</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/dir_a57e9e528cb28fd6752031b735908fb6.html b/doc/html/dir_a57e9e528cb28fd6752031b735908fb6.html
index d4c458a..d61d06c 100644
--- a/doc/html/dir_a57e9e528cb28fd6752031b735908fb6.html
+++ b/doc/html/dir_a57e9e528cb28fd6752031b735908fb6.html
@@ -71,7 +71,7 @@ Files</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_a57e9e528cb28fd6752031b735908fb6.html">geo</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/dir_f6840b2fecd08a3779df34f0add0e074.html b/doc/html/dir_f6840b2fecd08a3779df34f0add0e074.html
index f385973..2d6563a 100644
--- a/doc/html/dir_f6840b2fecd08a3779df34f0add0e074.html
+++ b/doc/html/dir_f6840b2fecd08a3779df34f0add0e074.html
@@ -79,7 +79,7 @@ Files</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:37 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/files.html b/doc/html/files.html
index 31dfa33..5221b87 100644
--- a/doc/html/files.html
+++ b/doc/html/files.html
@@ -106,9 +106,10 @@ $(document).ready(function(){initNavTree('files.html','');});
<tr id="row_0_5_3_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="ObjProperties_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="ObjProperties_8h.html" target="_self">ObjProperties.h</a></td><td class="desc"></td></tr>
<tr id="row_0_5_4_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="ObjSelector_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="ObjSelector_8h.html" target="_self">ObjSelector.h</a></td><td class="desc"></td></tr>
<tr id="row_0_5_5_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="ObjTypes_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="ObjTypes_8h.html" target="_self">ObjTypes.h</a></td><td class="desc"></td></tr>
-<tr id="row_0_6_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="Self_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="Self_8h.html" target="_self">Self.h</a></td><td class="desc"></td></tr>
-<tr id="row_0_7_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="Usage_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="Usage_8h.html" target="_self">Usage.h</a></td><td class="desc"></td></tr>
-<tr id="row_0_8_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="utility_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="utility_8h.html" target="_self">utility.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_6_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="Pipeline_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="Pipeline_8h.html" target="_self">Pipeline.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_7_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="Self_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="Self_8h.html" target="_self">Self.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_8_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="Usage_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="Usage_8h.html" target="_self">Usage.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_9_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="utility_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="utility_8h.html" target="_self">utility.h</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
@@ -117,7 +118,7 @@ $(document).ready(function(){initNavTree('files.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/form_50.png b/doc/html/form_50.png
new file mode 100644
index 0000000..dc13885
--- /dev/null
+++ b/doc/html/form_50.png
Binary files differ
diff --git a/doc/html/form_51.png b/doc/html/form_51.png
new file mode 100644
index 0000000..b3d3417
--- /dev/null
+++ b/doc/html/form_51.png
Binary files differ
diff --git a/doc/html/form_52.png b/doc/html/form_52.png
new file mode 100644
index 0000000..b3d2d8d
--- /dev/null
+++ b/doc/html/form_52.png
Binary files differ
diff --git a/doc/html/form_53.png b/doc/html/form_53.png
new file mode 100644
index 0000000..a9b3a10
--- /dev/null
+++ b/doc/html/form_53.png
Binary files differ
diff --git a/doc/html/form_54.png b/doc/html/form_54.png
new file mode 100644
index 0000000..c8456bb
--- /dev/null
+++ b/doc/html/form_54.png
Binary files differ
diff --git a/doc/html/form_55.png b/doc/html/form_55.png
new file mode 100644
index 0000000..54f90ce
--- /dev/null
+++ b/doc/html/form_55.png
Binary files differ
diff --git a/doc/html/form_56.png b/doc/html/form_56.png
new file mode 100644
index 0000000..4519ca9
--- /dev/null
+++ b/doc/html/form_56.png
Binary files differ
diff --git a/doc/html/form_57.png b/doc/html/form_57.png
new file mode 100644
index 0000000..aeed9d5
--- /dev/null
+++ b/doc/html/form_57.png
Binary files differ
diff --git a/doc/html/form_58.png b/doc/html/form_58.png
new file mode 100644
index 0000000..56855f0
--- /dev/null
+++ b/doc/html/form_58.png
Binary files differ
diff --git a/doc/html/form_59.png b/doc/html/form_59.png
new file mode 100644
index 0000000..360e60b
--- /dev/null
+++ b/doc/html/form_59.png
Binary files differ
diff --git a/doc/html/form_60.png b/doc/html/form_60.png
new file mode 100644
index 0000000..abac1f5
--- /dev/null
+++ b/doc/html/form_60.png
Binary files differ
diff --git a/doc/html/form_61.png b/doc/html/form_61.png
new file mode 100644
index 0000000..62e9242
--- /dev/null
+++ b/doc/html/form_61.png
Binary files differ
diff --git a/doc/html/form_62.png b/doc/html/form_62.png
new file mode 100644
index 0000000..1db2415
--- /dev/null
+++ b/doc/html/form_62.png
Binary files differ
diff --git a/doc/html/form_63.png b/doc/html/form_63.png
new file mode 100644
index 0000000..7f9d20e
--- /dev/null
+++ b/doc/html/form_63.png
Binary files differ
diff --git a/doc/html/form_64.png b/doc/html/form_64.png
new file mode 100644
index 0000000..abac1f5
--- /dev/null
+++ b/doc/html/form_64.png
Binary files differ
diff --git a/doc/html/formula.repository b/doc/html/formula.repository
index b50a0ed..bfa1d28 100644
--- a/doc/html/formula.repository
+++ b/doc/html/formula.repository
@@ -48,3 +48,18 @@
\form#47:\[ R \times \left[ \begin{array}{c} \frac{x_1}{L} \\ \frac{x_2}{L} \\ \frac{x_3}{L} \\ . \\ . \\ . \\ \frac{x_N}{L} \\ \end{array} \right] \]
\form#48:\[ f \times \left[ \begin{array}{ccccc} \frac{-1}{x_N} & 0 & 0 & ... & \frac{1}{x_N^2} \\ 0 & \frac{-1}{x_N} & 0 & ... & \frac{1}{x_N^2} \\ 0 & 0 & \frac{-1}{x_N} & ... & \frac{1}{x_N^2} \\ . & . & . & & . \\ . & . & . & & . \\ . & . & . & & . \\ 0 & 0 & 0 & ... & 0 \\ \end{array} \right] \]
\form#49:\[ f \times \left[ \begin{array}{c} \frac{-x_1}{x_N} \\ \frac{-x_2}{x_N} \\ \frac{-x_3}{x_N} \\ . \\ . \\ . \\ -1 \\ \end{array} \right] \]
+\form#50:\[ v_{output} = H(h_1, G(g_1, g_2, g_3, F(f_1, v_{input}))) \]
+\form#51:$ v_{input}(x,y,z), v_{output} $
+\form#52:$ y $
+\form#53:\[ m_{jacobian} = \frac{\partial H(h_1, G(g_1, g_2, g_3, F(f_1, v_{input})))} {\partial G(g_1, g_2, g_3, F(f_1, v_{input})) } \frac{\partial G(g_1, g_2, g_3, F(f_1, v_{input}))} {\partial F(f_1, v_{input}) } \frac{\partial F(f_1, v_{input})} {\partial v_{input} } \frac{\partial v_{input}} {\partial y} \]
+\form#54:\[ \frac{\partial v_{input}}{\partial y} = \left[ \begin{array}{c} 0 \\ 1 \\ 0 \\ \end{array} \right] \]
+\form#55:\[ v_{output} = H(h_1, h_2, G(g_1, g_2, g_3, F(f_1, v_{input}))) \]
+\form#56:$ f_1, g_1, g_2, g_3, h_1, h_2 $
+\form#57:$ F, G, H $
+\form#58:\[ M_{jacobian} = \frac{\partial H(h_1, h_2, G(g_1, g_2, g_3, F(f_1, v_{input})))} {\partial G(g_1, g_2, g_3, F(f_1, v_{input})) } \frac{\partial G(g_1, g_2, g_3, F(f_1, v_{input})) } {\partial F(f_1, v_{input}) } \frac{\partial F(f_1, v_{input}) } {\partial v_{input} } \frac{\partial v_{input} } {\partial y } \]
+\form#59:\[ v_{output} = I(i_1,i_2, H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input})))) \]
+\form#60:$ f_1, g_1,g_2,g_3, h_1,h_2, i_1,i_2 $
+\form#61:$ F, G, H, I $
+\form#62:$ g_2 $
+\form#63:\[ M_{jacobian} = \frac{\partial I(i_1,i_2, H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))))} {\partial H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))) } \frac{\partial H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))) } {\partial G(g_1,g_2,g_3, F(f_1, v_{input})) } \frac{\partial G(g_1,g_2,g_3, F(f_1, v_{input})) } {\partial g_2 } \]
+\form#64:$ f_1, g_1, g_2, g_3, h_1, h_2, i_1, i_2 $
diff --git a/doc/html/functions.html b/doc/html/functions.html
index 7bc9f30..72d49fa 100644
--- a/doc/html/functions.html
+++ b/doc/html/functions.html
@@ -72,8 +72,8 @@ $(document).ready(function(){initNavTree('functions.html','');});
, <a class="el" href="classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>added()
-: <a class="el" href="classmeow_1_1Vector2D.html#a56f0d3848a5508b33d6c564e2eebb75e">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#aa26ba31625ebeeb07c41925335c1afcc">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#aa26ba31625ebeeb07c41925335c1afcc">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#a56f0d3848a5508b33d6c564e2eebb75e">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>all()
: <a class="el" href="classmeow_1_1HashTableList.html#af3ac22fd18ce14878e881331883397b8">meow::HashTableList&lt; Data, HashFunc &gt;</a>
@@ -81,6 +81,9 @@ $(document).ready(function(){initNavTree('functions.html','');});
<li>arguments()
: <a class="el" href="classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1">meow::Usage</a>
</li>
+<li>autoDel_
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
+</li>
<li>axisAngle()
: <a class="el" href="classmeow_1_1Rotation3D.html#a757a196f261a28693061c5e16be97ab6">meow::Rotation3D&lt; Scalar &gt;</a>
</li>
@@ -91,7 +94,7 @@ $(document).ready(function(){initNavTree('functions.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x62.html b/doc/html/functions_0x62.html
index cac0a4d..6c28c7e 100644
--- a/doc/html/functions_0x62.html
+++ b/doc/html/functions_0x62.html
@@ -61,6 +61,13 @@ $(document).ready(function(){initNavTree('functions_0x62.html','');});
: <a class="el" href="classmeow_1_1RGBi__Space.html#a8a8779fb88ac2f2a97b00f3764035483">meow::RGBi_Space</a>
, <a class="el" href="classmeow_1_1RGBf__Space.html#ab6c357531cc39c41299f933988084ebc">meow::RGBf_Space</a>
</li>
+<li>backAdd()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb">meow::TransformatePipeline&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
+<li>backDel()
+: <a class="el" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>BallProjection()
: <a class="el" href="classmeow_1_1BallProjection.html#a1efa5c200a9d5605453b47e3856ccf28">meow::BallProjection&lt; Scalar &gt;</a>
</li>
@@ -75,18 +82,21 @@ $(document).ready(function(){initNavTree('functions_0x62.html','');});
: <a class="el" href="classmeow_1_1Photo.html#a49ada6e814bd2280af12183897227e62">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>Bitmap()
-: <a class="el" href="classmeow_1_1Bitmap.html#af4c9896dc2cdc714be5106bef45430c8">meow::Bitmap&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Bitmap.html#ab313e096befabd933633cb75b870f75c">meow::Bitmap&lt; Pixel &gt;</a>
+</li>
+<li>bitmap()
+: <a class="el" href="classmeow_1_1Photo.html#a511f65855ee9f102c2472ce236ba7d3c">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>bitmapGet()
: <a class="el" href="classmeow_1_1Photo.html#a07c8ca1846fc97005a7d960c5fc703a7">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>bMax()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a2ce95550fd5c89fc71f0715fc8ac573b">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a029c3bd52ae818462558742dc2be0904">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#a029c3bd52ae818462558742dc2be0904">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a2ce95550fd5c89fc71f0715fc8ac573b">meow::RGBi_Space</a>
</li>
<li>bMin()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a612c6b94ae15541855dcd9dd15056ff8">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a130bbee98fdd279a415e18aa0ca2f13c">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#a130bbee98fdd279a415e18aa0ca2f13c">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a612c6b94ae15541855dcd9dd15056ff8">meow::RGBi_Space</a>
</li>
<li>boundleAdjustment2D()
: <a class="el" href="classmeow_1_1Camera.html#af291cd0bd6253338e05f60bea9878b64">meow::Camera&lt; Pixel &gt;</a>
@@ -102,7 +112,7 @@ $(document).ready(function(){initNavTree('functions_0x62.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x63.html b/doc/html/functions_0x63.html
index 292cbb7..34b1853 100644
--- a/doc/html/functions_0x63.html
+++ b/doc/html/functions_0x63.html
@@ -63,6 +63,9 @@ $(document).ready(function(){initNavTree('functions_0x63.html','');});
<li>camera()
: <a class="el" href="classmeow_1_1WatchBall.html#afa8f3bf18dcd5295802777c1d9a25d71">meow::WatchBall&lt; Pixel &gt;</a>
</li>
+<li>cameras()
+: <a class="el" href="classmeow_1_1WatchBall.html#a6dc606fde781e28da367e4d5ef023341">meow::WatchBall&lt; Pixel &gt;</a>
+</li>
<li>Cameras
: <a class="el" href="classmeow_1_1WatchBall.html#a1626a844f77feebc5f0f71bcd71bf20c">meow::WatchBall&lt; Pixel &gt;</a>
</li>
@@ -107,27 +110,33 @@ $(document).ready(function(){initNavTree('functions_0x63.html','');});
<li>cols()
: <a class="el" href="classmeow_1_1Matrix.html#a30d16679bb6843c5e35aae81738f3306">meow::Matrix&lt; Entry &gt;</a>
</li>
+<li>COPY_FROM
+: <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730">meow::Self&lt; Data &gt;</a>
+</li>
<li>copyFrom()
-: <a class="el" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74">meow::Transformation&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+: <a class="el" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2">meow::Self&lt; Data &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+, <a class="el" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52">meow::ObjProperties&lt; SID &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74">meow::Transformation&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1BallProjection.html#aec71a15af880bdaea8042986c11e2187">meow::BallProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1">meow::Color3_Space&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#a7e50cbeeead963d95d661783ee2a9285">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>
+, <a class="el" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46">meow::PhotoProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1">meow::Color3_Space&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Color3__Space.html#ab8be12bacd0e877151189383654029c8">meow::Color3_Space&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a8886e87d000181823e3532791e6a8288">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1Color3__Space.html#ab8be12bacd0e877151189383654029c8">meow::Color3_Space&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1HashTableList.html#a3d769d64e448f0bdbe52514e06b73f54">meow::HashTableList&lt; Data, HashFunc &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Rotation3D.html#a8ce437d591d81cc81be959d6f27e71c9">meow::Rotation3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a7e50cbeeead963d95d661783ee2a9285">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a3f9a65eeb600d0b9fba60855b560ab33">meow::MergeableHeap&lt; Element &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52">meow::ObjProperties&lt; SID &gt;</a>
-, <a class="el" href="classmeow_1_1WatchBall.html#abf464a7507044d2bca58ce6b686c5a73">meow::WatchBall&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Photo.html#a0e947011dcb0db21760c89663acd2208">meow::Photo&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1SegmentTree.html#a889f38048ffe08ce3c80911878faac44">meow::SegmentTree&lt; Value &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#aaea89fe0e873d4a2ceafad1519064d9a">meow::SplayTree&lt; Key, Value &gt;::Element</a>
-, <a class="el" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828">meow::Self&lt; Data &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#ae1ea1968aad3345a61257ba5db970429">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab5aa47ae36052a5916515a2e504f2c53">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#aafc78f8d6abc95d52ba1062c14946cd5">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#ace7c7fb2416ca7afd7df627a0fe57ed0">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#acb88cb76b50884221cbb58d2adcb4329">meow::SplayTree_Range&lt; Key, Value &gt;</a>
@@ -139,27 +148,29 @@ $(document).ready(function(){initNavTree('functions_0x63.html','');});
, <a class="el" href="classmeow_1_1FeaturePoint.html#af4eb7b53a35a3011954d6d92e364db19">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#aa0bcd7cc0afbe1dc6fa06eef32c9c1f3">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c5ee9a105e6c74bf54e061f5cc04c21">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a6b17e68e14290ebfdcdd59a0724cdc41">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1IdentityPoints.html#ae1ea1968aad3345a61257ba5db970429">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#a53bc0c60fb3abd9e95999990c6f132e6">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1WatchBall.html#a898f8ad46598a01633f444804853a3bd">meow::WatchBall&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1WatchBall.html#abf464a7507044d2bca58ce6b686c5a73">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1LinearTransformation.html#afb3ea3e2653152b7b5a8bbad952d3f0e">meow::LinearTransformation&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Rotation3D.html#a8ce437d591d81cc81be959d6f27e71c9">meow::Rotation3D&lt; Scalar &gt;</a>
+</li>
+<li>counter_
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
</li>
<li>create()
-: <a class="el" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3">meow::Camera&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+: <a class="el" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">meow::ObjProperties&lt; SID &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb">meow::ObjSelector&lt; id &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae7a96030ea8d06322b632c89eb65655d">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1WatchBall.html#ae2c8bc97ac7d09b886fe59a8f88c2145">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">meow::ObjProperties&lt; SID &gt;</a>
+, <a class="el" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3">meow::Camera&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>
-, <a class="el" href="classmeow_1_1Photo.html#a449f74fa427154f943d6abee255431aa">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb">meow::ObjSelector&lt; id &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+, <a class="el" href="classmeow_1_1Photo.html#a449f74fa427154f943d6abee255431aa">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
</li>
<li>cross()
: <a class="el" href="classmeow_1_1Vector3D.html#afc6474b0219c6135f9e268404edc93e0">meow::Vector3D&lt; Scalar &gt;</a>
@@ -169,19 +180,19 @@ $(document).ready(function(){initNavTree('functions_0x63.html','');});
: <a class="el" href="classmeow_1_1Vector3D.html#a2ec32fffb7a0355d46c52826f85aa506">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>ctype()
-: <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>
+: <a class="el" href="classmeow_1_1IdentityPoints.html#ae90d4c4d8125919ae8807d89790bed61">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>
+, <a class="el" href="classmeow_1_1Photo.html#a93fdf3b617d8b1c751823074fca049a9">meow::Photo&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#ae90d4c4d8125919ae8807d89790bed61">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1WatchBall.html#afcba8229502523255913392c592eabce">meow::WatchBall&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a00be866b3cf9bd2469e0eef32a3b2287">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18">meow::Camera&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+, <a class="el" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a">meow::ObjProperties&lt; SID &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1WatchBall.html#afcba8229502523255913392c592eabce">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#a93fdf3b617d8b1c751823074fca049a9">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
</li>
<li>ctypeBase()
: <a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">meow::ObjBase</a>
@@ -193,7 +204,7 @@ $(document).ready(function(){initNavTree('functions_0x63.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x64.html b/doc/html/functions_0x64.html
index a053c94..0f9baf0 100644
--- a/doc/html/functions_0x64.html
+++ b/doc/html/functions_0x64.html
@@ -81,9 +81,9 @@ $(document).ready(function(){initNavTree('functions_0x64.html','');});
: <a class="el" href="classmeow_1_1DisjointSet.html#a8c55a16b0320c28854ed59795bc2bf3d">meow::DisjointSet</a>
</li>
<li>div()
-: <a class="el" href="classmeow_1_1Vector2D.html#acbb2ec7aa2897e93b3ff9964565ae8fc">meow::Vector2D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#acbb2ec7aa2897e93b3ff9964565ae8fc">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#a9449f90146085ac5901eb0c75b316b87">meow::Vector3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>dived()
@@ -91,9 +91,15 @@ $(document).ready(function(){initNavTree('functions_0x64.html','');});
, <a class="el" href="classmeow_1_1Vector2D.html#a045c6189a70574b1465131d59410fa16">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>dot()
-: <a class="el" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452">meow::Vector&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452">meow::Vector&lt; Scalar &gt;</a>
+</li>
+<li>duplicateFrom()
+: <a class="el" href="classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e">meow::Self&lt; Data &gt;</a>
+</li>
+<li>DuplicateType
+: <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">meow::Self&lt; Data &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -102,7 +108,7 @@ $(document).ready(function(){initNavTree('functions_0x64.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x65.html b/doc/html/functions_0x65.html
index 16d555c..f345de8 100644
--- a/doc/html/functions_0x65.html
+++ b/doc/html/functions_0x65.html
@@ -69,39 +69,48 @@ $(document).ready(function(){initNavTree('functions_0x65.html','');});
, <a class="el" href="classmeow_1_1IdentityPoints.html#a58a91f88750306e4ede279dabd7a1791">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a0cf27c92cf52d3f125a0e01e6b62bce0">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#afedaaaf1ed8b066a43d8e12081f6c878">meow::ObjDictionary&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a531fff6c8a72f09168701a0612b20af7">meow::MergeableHeap&lt; Element &gt;</a>
</li>
<li>end()
-: <a class="el" href="classmeow_1_1ObjDictionary.html#aeb8765e90349daee27bcf9e6c2672676">meow::ObjDictionary&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1ObjDictionary.html#ae5f44ae004be8f10a1c9f5e65eeebc75">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#abcdab5caa27fecfd980595681381a4dc">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#ad3aaed040f619a3b14c3f9b598b7fecc">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#ae5f44ae004be8f10a1c9f5e65eeebc75">meow::ObjDictionary&lt; Key, Value &gt;</a>
</li>
<li>entries()
: <a class="el" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>entry()
-: <a class="el" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b">meow::Matrix&lt; Entry &gt;</a>
+: <a class="el" href="classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a">meow::Vector&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8">meow::Vector&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a83d175206d5bae2542a818200dd64c9b">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a56b6b9b5e415c084ece7f0c214f0e8f0">meow::ObjArray&lt; T &gt;</a>
+</li>
+<li>entryGet()
+: <a class="el" href="classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe">meow::Vector&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b">meow::Matrix&lt; Entry &gt;</a>
+</li>
+<li>EntryRef
+: <a class="el" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">meow::Matrix&lt; Entry &gt;</a>
+</li>
+<li>EntryRefK
+: <a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>equal()
: <a class="el" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d">meow::Self&lt; Data &gt;</a>
</li>
<li>erase()
-: <a class="el" href="classmeow_1_1VP__Tree.html#aa53e215a7e6daa3edfba4201602c8894">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1KD__Tree.html#adb0aaa5a70a7255935d8a4326c454434">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#aef1f4e901e3e17a67e45aa2b9f9b61db">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#ae3cffdbb135d3f2518092c2e4b993e1f">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1KD__Tree.html#adb0aaa5a70a7255935d8a4326c454434">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1VP__Tree.html#aa53e215a7e6daa3edfba4201602c8894">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>exist()
-: <a class="el" href="classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0">meow::ObjSelector&lt; id &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#ae60f2a947516d6d6f037cc106c00d3be">meow::ObjDictionary&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1IdentityPoints.html#a171499ffe3d474aa3632b1a31b6402a0">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1HashTableList.html#a65227191dccd021a0802810ffe007040">meow::HashTableList&lt; Data, HashFunc &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a171499ffe3d474aa3632b1a31b6402a0">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0">meow::ObjSelector&lt; id &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#ae60f2a947516d6d6f037cc106c00d3be">meow::ObjDictionary&lt; Key, Value &gt;</a>
</li>
<li>expand()
: <a class="el" href="classmeow_1_1WatchBall.html#a00fcbbce6d9e4748a9b093983e591c19">meow::WatchBall&lt; Pixel &gt;</a>
@@ -113,7 +122,7 @@ $(document).ready(function(){initNavTree('functions_0x65.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x66.html b/doc/html/functions_0x66.html
index 66ea238..b16a3ac 100644
--- a/doc/html/functions_0x66.html
+++ b/doc/html/functions_0x66.html
@@ -85,6 +85,7 @@ $(document).ready(function(){initNavTree('functions_0x66.html','');});
<li>first()
: <a class="el" href="classmeow_1_1SplayTree.html#ad8c3814cbfbcc9f754b62a74368ddc0b">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a74207c8c8023d62111171cd64abfbe77">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
</li>
<li>fixedPoints2D()
: <a class="el" href="classmeow_1_1Camera.html#a2fde4fdfcb105e8a44b3333c78f55b6b">meow::Camera&lt; Pixel &gt;</a>
@@ -96,24 +97,29 @@ $(document).ready(function(){initNavTree('functions_0x66.html','');});
: <a class="el" href="classmeow_1_1Camera.html#aa6bfaf360ab9b78adfde7005747368d4">meow::Camera&lt; Pixel &gt;</a>
</li>
<li>focal()
-: <a class="el" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#a1fbde3a8b2be3662cf67a035cf887be9">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#ab7b4b1f6b3f8100ea670500f168cb1e4">meow::Photo&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Photo.html#ab7b4b1f6b3f8100ea670500f168cb1e4">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5">meow::PhotoProjection&lt; Scalar &gt;</a>
</li>
<li>forceBuild()
-: <a class="el" href="classmeow_1_1KD__Tree.html#a09bf16356618fde6d256a843b87f44b6">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1VP__Tree.html#aa4adfa52bd1cee8703b49a5ecf906733">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1VP__Tree.html#aa4adfa52bd1cee8703b49a5ecf906733">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1KD__Tree.html#a09bf16356618fde6d256a843b87f44b6">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>FPD_Harris()
-: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a6c985645f3e3c3d649edb72c08168cf3">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a0f9868d0d8e412908bc28ba56b6eaf9c">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
</li>
<li>FPMKM()
-: <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a6e657c4cb57c418e39ed91b35aae448c">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+: <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a42dcafedd8ed16536de65bedbda0a0ed">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
</li>
<li>from
: <a class="el" href="structmeow_1_1FeaturePointIndexPair.html#af0c72f723fbe96c29b36295e6e3ac5bc">meow::FeaturePointIndexPair</a>
</li>
+<li>frontAdd()
+: <a class="el" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
+<li>frontDel()
+: <a class="el" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>func()
: <a class="el" href="classmeow_1_1HashTableList.html#aaf4154c2534c861455149261c0194f00">meow::HashTableList&lt; Data, HashFunc &gt;</a>
</li>
@@ -124,7 +130,7 @@ $(document).ready(function(){initNavTree('functions_0x66.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x67.html b/doc/html/functions_0x67.html
index 5b644b2..0a13412 100644
--- a/doc/html/functions_0x67.html
+++ b/doc/html/functions_0x67.html
@@ -75,12 +75,19 @@ $(document).ready(function(){initNavTree('functions_0x67.html','');});
, <a class="el" href="classmeow_1_1RGBf__Space.html#a48e591bedfc479b2193dd00ac5986f9f">meow::RGBf_Space</a>
</li>
<li>gMax()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#a65d8088fb8b755f0b3f173dcda552789">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#a4b3d58a5a52f1ebee9e7477a9f0bd291">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#a4b3d58a5a52f1ebee9e7477a9f0bd291">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#a65d8088fb8b755f0b3f173dcda552789">meow::RGBf_Space</a>
</li>
<li>gMin()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#aeb0cd2d681af6a70861ff371bf596e17">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#aa56cd3fabe6e32ede7f7761836dd7253">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#aa56cd3fabe6e32ede7f7761836dd7253">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#aeb0cd2d681af6a70861ff371bf596e17">meow::RGBf_Space</a>
+</li>
+<li>goThrough()
+: <a class="el" href="classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
+<li>goThroughInv()
+: <a class="el" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
</li>
<li>gradiancedX()
: <a class="el" href="classmeow_1_1Bitmap.html#a1630de00aebe37d58e04d6b9fc69eafb">meow::Bitmap&lt; Pixel &gt;</a>
@@ -101,7 +108,7 @@ $(document).ready(function(){initNavTree('functions_0x67.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x68.html b/doc/html/functions_0x68.html
index 1c5fa11..d3f9c18 100644
--- a/doc/html/functions_0x68.html
+++ b/doc/html/functions_0x68.html
@@ -65,7 +65,7 @@ $(document).ready(function(){initNavTree('functions_0x68.html','');});
: <a class="el" href="classmeow_1_1HashTableList.html#a327ccf67321d9b5061dbe01c287bd7e3">meow::HashTableList&lt; Data, HashFunc &gt;</a>
</li>
<li>hasOptionSetup()
-: <a class="el" href="classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf">meow::Usage</a>
</li>
<li>height()
: <a class="el" href="classmeow_1_1Bitmap.html#a2290360ab49bdf1f33dc717fce71d5df">meow::Bitmap&lt; Pixel &gt;</a>
@@ -120,7 +120,7 @@ $(document).ready(function(){initNavTree('functions_0x68.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x69.html b/doc/html/functions_0x69.html
index 31639df..31ec7f9 100644
--- a/doc/html/functions_0x69.html
+++ b/doc/html/functions_0x69.html
@@ -104,23 +104,27 @@ $(document).ready(function(){initNavTree('functions_0x69.html','');});
</li>
<li>inputCols()
: <a class="el" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>inputRows()
: <a class="el" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>insert()
-: <a class="el" href="classmeow_1_1ObjDictionary.html#a9784fbd0eaab219216abdcba4f326ead">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range.html#a5e80acef8cd1a6732f5cfec65ab69d54">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree.html#a0ae5e48da8d18ad8b2dc839d1c1b5582">meow::SplayTree&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range.html#a5e80acef8cd1a6732f5cfec65ab69d54">meow::SplayTree_Range&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1KD__Tree.html#ad1af6def42b23b9b4acef03d32774b9e">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree.html#a0ae5e48da8d18ad8b2dc839d1c1b5582">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1VP__Tree.html#a2319a3995c4b6ad415a4997764e83b3f">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a9784fbd0eaab219216abdcba4f326ead">meow::ObjDictionary&lt; Key, Value &gt;</a>
</li>
<li>inside()
-: <a class="el" href="classmeow_1_1Camera.html#a55e165212b212a58b0090b1496a1a40a">meow::Camera&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Photo.html#a43ac8952d85ea584dc9ea9a0424dbb98">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Camera.html#a55e165212b212a58b0090b1496a1a40a">meow::Camera&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#ae1d328ee4c0971d4a90fb1f05bea1e66">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>inversable()
-: <a class="el" href="classmeow_1_1Transformation.html#a71a1e75ebcf4d692cb9f0dcfeba1c1e4">meow::Transformation&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#a71a1e75ebcf4d692cb9f0dcfeba1c1e4">meow::Transformation&lt; Scalar &gt;</a>
</li>
<li>inverse()
: <a class="el" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd">meow::Matrix&lt; Entry &gt;</a>
@@ -135,7 +139,7 @@ $(document).ready(function(){initNavTree('functions_0x69.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x6a.html b/doc/html/functions_0x6a.html
index 99362f8..587c38e 100644
--- a/doc/html/functions_0x6a.html
+++ b/doc/html/functions_0x6a.html
@@ -60,16 +60,17 @@ $(document).ready(function(){initNavTree('functions_0x6a.html','');});
<li>jacobian()
: <a class="el" href="classmeow_1_1Rotation3D.html#a4846e5870c41f3694678d8acf032b8df">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#a18590a4501b79a9ad38eb8fa3c966eb8">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1BallProjection.html#ad2d62da97dd4b527c254e62a1ec949d8">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3">meow::PhotoProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f">meow::TransformatePipeline&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1BallProjection.html#a4fb7773f5566e93435ba56defbb7efc6">meow::BallProjection&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#a97b459877b4e508193071fa166a126c9">meow::Transformation&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1BallProjection.html#ad2d62da97dd4b527c254e62a1ec949d8">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1BallProjection.html#a4fb7773f5566e93435ba56defbb7efc6">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a6299f8399a390371f4665c6800da0fc2">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>jacobianInv()
-: <a class="el" href="classmeow_1_1Rotation3D.html#af2a38c66668f6dcc11005e8f42b81f2f">meow::Rotation3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Transformation.html#a0186764bb80869bd80b81efb5bb1ee95">meow::Transformation&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Rotation3D.html#ae12a31cabc1260bd7256734f0e04acfb">meow::Rotation3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Rotation3D.html#ae12a31cabc1260bd7256734f0e04acfb">meow::Rotation3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#a4e7e3b24d0879eddc53951dfb357db0b">meow::Transformation&lt; Scalar &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -78,7 +79,7 @@ $(document).ready(function(){initNavTree('functions_0x6a.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x6b.html b/doc/html/functions_0x6b.html
index 7ec0300..bda779a 100644
--- a/doc/html/functions_0x6b.html
+++ b/doc/html/functions_0x6b.html
@@ -71,7 +71,7 @@ $(document).ready(function(){initNavTree('functions_0x6b.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x6c.html b/doc/html/functions_0x6c.html
index b46a46c..34b795c 100644
--- a/doc/html/functions_0x6c.html
+++ b/doc/html/functions_0x6c.html
@@ -62,12 +62,13 @@ $(document).ready(function(){initNavTree('functions_0x6c.html','');});
</li>
<li>last()
: <a class="el" href="classmeow_1_1SplayTree__Range.html#afd72a714bb2b7bce0ceedad1dea9e264">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a805efe9b5f4bac68fd62908eb7cf3501">meow::SplayTree&lt; Key, Value &gt;</a>
</li>
<li>length()
-: <a class="el" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5">meow::Vector2D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27">meow::Vector&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#ae5d23addf232794f4635bdf6221ef7ec">meow::Vector3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>length2()
: <a class="el" href="classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538">meow::Vector2D&lt; Scalar &gt;</a>
@@ -78,7 +79,7 @@ $(document).ready(function(){initNavTree('functions_0x6c.html','');});
: <a class="el" href="classmeow_1_1HSLf__Space.html#a5dd4d3ea93f86b627d51936b7388da44">meow::HSLf_Space</a>
</li>
<li>LinearTransformation()
-: <a class="el" href="classmeow_1_1LinearTransformation.html#a799ed3fafc41010b87807b46e9b9c222">meow::LinearTransformation&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1LinearTransformation.html#a4d73d74510c76bdbe176a8d498be185e">meow::LinearTransformation&lt; Scalar &gt;</a>
</li>
<li>lMax()
: <a class="el" href="classmeow_1_1HSLf__Space.html#a93c3d32fd0bc4aab24835409688cdf72">meow::HSLf_Space</a>
@@ -87,8 +88,8 @@ $(document).ready(function(){initNavTree('functions_0x6c.html','');});
: <a class="el" href="classmeow_1_1HSLf__Space.html#a41ab2ddd1544632a138e2660e4c9152a">meow::HSLf_Space</a>
</li>
<li>lowerBound()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#a92ca3967d0f433a57b5057d61183f2aa">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree.html#a48d6f8f0af07a6620bd73a92db226ce6">meow::SplayTree&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree.html#a48d6f8f0af07a6620bd73a92db226ce6">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#a92ca3967d0f433a57b5057d61183f2aa">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -97,7 +98,7 @@ $(document).ready(function(){initNavTree('functions_0x6c.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x6d.html b/doc/html/functions_0x6d.html
index 5e6c6ef..9648754 100644
--- a/doc/html/functions_0x6d.html
+++ b/doc/html/functions_0x6d.html
@@ -93,6 +93,12 @@ $(document).ready(function(){initNavTree('functions_0x6d.html','');});
<li>maxV()
: <a class="el" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07">meow::Color3_Space&lt; T &gt;</a>
</li>
+<li>MediumInfo()
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#ac7f042f7c96e2170e5c13f5d98fb5d0a">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
+</li>
+<li>MediumPointerIteratorK
+: <a class="el" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>merge()
: <a class="el" href="classmeow_1_1DisjointSet.html#a410399290f718332f5c3df1854182198">meow::DisjointSet</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a3638f12db8da212244cb6ab7e37332db">meow::MergeableHeap&lt; Element &gt;</a>
@@ -103,8 +109,8 @@ $(document).ready(function(){initNavTree('functions_0x6d.html','');});
: <a class="el" href="classmeow_1_1MergeableHeap.html#a7ef8e2deae0058c91eda490005b978f7">meow::MergeableHeap&lt; Element &gt;</a>
</li>
<li>mergeAfter()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#a53a6ba929a8500fa74e0991e120d3401">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree.html#a17f0fea3a3f4c7a548743bee7e5a285c">meow::SplayTree&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree.html#a17f0fea3a3f4c7a548743bee7e5a285c">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#a53a6ba929a8500fa74e0991e120d3401">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>min()
: <a class="el" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">meow::Color3_Space&lt; T &gt;</a>
@@ -119,21 +125,21 @@ $(document).ready(function(){initNavTree('functions_0x6d.html','');});
: <a class="el" href="classmeow_1_1ObjType.html#a0eac1bd069ebdde20f422ef6a5ffb7cb">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
</li>
<li>moveTo()
-: <a class="el" href="classmeow_1_1SplayTree.html#a169eca2b27a5ec844bd79bba2bb75412">meow::SplayTree&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1MergeableHeap.html#acec8dde15d23e729aba90d98417db845">meow::MergeableHeap&lt; Element &gt;</a>
+: <a class="el" href="classmeow_1_1MergeableHeap.html#acec8dde15d23e729aba90d98417db845">meow::MergeableHeap&lt; Element &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree.html#a169eca2b27a5ec844bd79bba2bb75412">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a17483e5f0028004cc4bf46699591fafe">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>mul()
-: <a class="el" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#a04201f13c26a2f6abc9b1c7b0ff313cc">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Vector2D.html#ac3d894445c7dfa8b0cbe8ec2c1dfd1c2">meow::Vector2D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c">meow::Vector&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a04201f13c26a2f6abc9b1c7b0ff313cc">meow::Vector3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>muled()
-: <a class="el" href="classmeow_1_1Vector2D.html#a4e0422609e71a9e16b41fceca451d63c">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a840c9c1ab9734c0687241cc6636fe915">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#a840c9c1ab9734c0687241cc6636fe915">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#a4e0422609e71a9e16b41fceca451d63c">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>MyFeaturePoint
: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a6d7cd13c351d03b759fc007da55533bd">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
@@ -148,7 +154,7 @@ $(document).ready(function(){initNavTree('functions_0x6d.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x6e.html b/doc/html/functions_0x6e.html
index 2694055..97173e6 100644
--- a/doc/html/functions_0x6e.html
+++ b/doc/html/functions_0x6e.html
@@ -86,7 +86,7 @@ $(document).ready(function(){initNavTree('functions_0x6e.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x6f.html b/doc/html/functions_0x6f.html
index 5ea77a6..5df772e 100644
--- a/doc/html/functions_0x6f.html
+++ b/doc/html/functions_0x6f.html
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('functions_0x6f.html','');});
, <a class="el" href="classmeow_1_1Bitmap.html#a646c781896c74a7af4814da06cabf9e5">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#ab214706427b962a1404ee8fcfefd6465">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ac3d52bb2286377febbe692480e9afa75">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>operator*()
: <a class="el" href="classmeow_1_1HSLf__Space.html#a4cdbbac5bcfbcd5546e41d1c1480fad4">meow::HSLf_Space</a>
@@ -156,7 +156,8 @@ $(document).ready(function(){initNavTree('functions_0x6f.html','');});
, <a class="el" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99">meow::Self&lt; Data &gt;</a>
</li>
<li>operator/()
-: <a class="el" href="classmeow_1_1HSLf__Space.html#a88eb3f94b211a3e29c80c334f0f8e963">meow::HSLf_Space</a>
+: <a class="el" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1HSLf__Space.html#a88eb3f94b211a3e29c80c334f0f8e963">meow::HSLf_Space</a>
, <a class="el" href="classmeow_1_1HSVf__Space.html#ae8368184fb8579d83d4f883191b8502e">meow::HSVf_Space</a>
, <a class="el" href="classmeow_1_1RGBi__Space.html#a618ccc99b535547833004fc8d83b14ee">meow::RGBi_Space</a>
, <a class="el" href="classmeow_1_1RGBf__Space.html#a9e1faa7ce3cfefeb07eb7b8051daf932">meow::RGBf_Space</a>
@@ -164,82 +165,84 @@ $(document).ready(function(){initNavTree('functions_0x6f.html','');});
, <a class="el" href="classmeow_1_1Vector2D.html#abe7d948febd4ea0faf80be7ffc369692">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#ab19d15aa3ecbe2f2b87ce077a0bd7a46">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>operator/=()
: <a class="el" href="classmeow_1_1Vector2D.html#af164380cbababa279dee2bedb81ec080">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#a882b59cc16aaaa5b136dc60d1d6eecbd">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>operator=()
-: <a class="el" href="classmeow_1_1ObjType.html#add76ed06952275dbb3c2ce0176cf0c7b">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#aab9f554d028c13587d29abe0dc5fa1bd">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#a431988ab812016af01e8ab960da9222a">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90">meow::PhotoProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Bitmap.html#aba3ea0e5f48b63363c91ae4168dbd0bb">meow::Bitmap&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a87b0f4542b07951f207a1c9d3e327c81">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#ab97f03da439edeb8834fd6e7a3487f65">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a11beaa0b96effbc990c3d7d3c6922e9a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1Rotation3D.html#a3e0095d1f506d6f11c434d55e454aca6">meow::Rotation3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1MergeableHeap.html#a304bacba11be0772b10505b6053a57e1">meow::MergeableHeap&lt; Element &gt;</a>
, <a class="el" href="classmeow_1_1WatchBall.html#a69948640465200ca8fadc364aad98b23">meow::WatchBall&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#a87b0f4542b07951f207a1c9d3e327c81">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a126d57eee520aa17868ce74112249e12">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
-, <a class="el" href="classmeow_1_1SegmentTree.html#a765e794af604ab7c20a4245dfafcf14c">meow::SegmentTree&lt; Value &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a336dbab9f61ee8196ce4c577a169a927">meow::Vector3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1Rotation3D.html#a3e0095d1f506d6f11c434d55e454aca6">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1BallProjection.html#a8e7e0ddd31c51bbaa934f77aee760f18">meow::BallProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1VP__Tree.html#a7c73bb25b40f440b48267f94fa4561ad">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Bitmap.html#aba3ea0e5f48b63363c91ae4168dbd0bb">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#a6af08a219ca313ddd086db6d3a8685d7">meow::SplayTree&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1RGBi__Space.html#a6b4567461811d8f877b0234ca6662a76">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1Vector2D.html#a470def2d8b1789e0cbb8ede298893242">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1YUVf__Space.html#acd8f8d7472bfa816669e601243c0c2df">meow::YUVf_Space</a>
-, <a class="el" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675">meow::Self&lt; Data &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#aab9f554d028c13587d29abe0dc5fa1bd">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90">meow::PhotoProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a11beaa0b96effbc990c3d7d3c6922e9a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#a6af08a219ca313ddd086db6d3a8685d7">meow::SplayTree&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1Camera.html#adc22e067c44d2cf143c3cf4cba9abdbf">meow::Camera&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623">meow::Vector&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675">meow::Self&lt; Data &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#add76ed06952275dbb3c2ce0176cf0c7b">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+, <a class="el" href="classmeow_1_1Vector3D.html#a336dbab9f61ee8196ce4c577a169a927">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a126d57eee520aa17868ce74112249e12">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#af93643b667895835f97e32e30959ca9e">meow::SplayTree_Range&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#aef1da0d72d3a88851bd805d489fb6ea0">meow::SplayTree&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1HashTableList.html#a9f9493e2044df374ac9e650303fdf212">meow::HashTableList&lt; Data, HashFunc &gt;</a>
-, <a class="el" href="classmeow_1_1HSLf__Space.html#a3d4ccb8d33991e2edb64904669d2a21c">meow::HSLf_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a431988ab812016af01e8ab960da9222a">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1HSVf__Space.html#a96d429221b88c5e568813d8a42c49af0">meow::HSVf_Space</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a8c2bcc67932db294e3b4e9f665ff505d">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1MergeableHeap.html#a304bacba11be0772b10505b6053a57e1">meow::MergeableHeap&lt; Element &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#a2bab58e7d4bb768cd5140db86c448f4c">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range.html#af93643b667895835f97e32e30959ca9e">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#a470def2d8b1789e0cbb8ede298893242">meow::Vector2D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1HSLf__Space.html#a3d4ccb8d33991e2edb64904669d2a21c">meow::HSLf_Space</a>
+, <a class="el" href="classmeow_1_1SegmentTree.html#a765e794af604ab7c20a4245dfafcf14c">meow::SegmentTree&lt; Value &gt;</a>
+, <a class="el" href="classmeow_1_1YUVf__Space.html#acd8f8d7472bfa816669e601243c0c2df">meow::YUVf_Space</a>
+, <a class="el" href="classmeow_1_1IdentityPoints.html#a8c2bcc67932db294e3b4e9f665ff505d">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1HashTableList.html#a9f9493e2044df374ac9e650303fdf212">meow::HashTableList&lt; Data, HashFunc &gt;</a>
+, <a class="el" href="classmeow_1_1VP__Tree.html#a7c73bb25b40f440b48267f94fa4561ad">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>operator==()
-: <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#aeaf7740977e75749cd8656066d05808b">meow::SplayTree&lt; Key, Value &gt;::Element</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a42f71bf3aa7e009582e628e87763482d">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a42f71bf3aa7e009582e628e87763482d">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
+, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#aeaf7740977e75749cd8656066d05808b">meow::SplayTree&lt; Key, Value &gt;::Element</a>
, <a class="el" href="structmeow_1_1FeaturePointIndexPair.html#ad4bc29dd8931fa3c6fa8139bb51b7f4a">meow::FeaturePointIndexPair</a>
</li>
<li>operator[]()
-: <a class="el" href="classmeow_1_1ObjDictionary.html#ad22d7c7dc4d35417e9657eb88ca0dfbb">meow::ObjDictionary&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePoint.html#a54b483836901fd5ad6b3c115f3afda69">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a9f02a4ccc46616b7923c5834e02d53bc">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a2a4e8bffccdf807bfe6feb9d838ab44d">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePoint.html#a54b483836901fd5ad6b3c115f3afda69">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#ad22d7c7dc4d35417e9657eb88ca0dfbb">meow::ObjDictionary&lt; Key, Value &gt;</a>
</li>
<li>operator~()
: <a class="el" href="classmeow_1_1Vector2D.html#ae2fe5b97bf837bc29bb6d819772f4ea0">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>optionAdd()
-: <a class="el" href="classmeow_1_1Usage.html#af5a6f3dc4d2250dce3bd74d3de48714d">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2">meow::Usage</a>
</li>
<li>optionValue()
-: <a class="el" href="classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f">meow::Usage</a>
</li>
<li>optionValueAcceptAdd()
-: <a class="el" href="classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242">meow::Usage</a>
</li>
<li>optionValuesSize()
-: <a class="el" href="classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb">meow::Usage</a>
</li>
<li>order()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#a6e33546a3cb07d56548a1f64aa1fc711">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree.html#ad91ceed4303b4fc5b115b067d304debc">meow::SplayTree&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree.html#ad91ceed4303b4fc5b115b067d304debc">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#a6e33546a3cb07d56548a1f64aa1fc711">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>outputCols()
-: <a class="el" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8">meow::Transformation&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad">meow::TransformatePipeline&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8">meow::Transformation&lt; Scalar &gt;</a>
</li>
<li>outputRows()
: <a class="el" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>override()
: <a class="el" href="classmeow_1_1SegmentTree.html#a2f300a5fd5ffdd19e4b3efc6899a7439">meow::SegmentTree&lt; Value &gt;</a>
@@ -251,7 +254,7 @@ $(document).ready(function(){initNavTree('functions_0x6f.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x70.html b/doc/html/functions_0x70.html
index 5876106..11052d7 100644
--- a/doc/html/functions_0x70.html
+++ b/doc/html/functions_0x70.html
@@ -107,9 +107,15 @@ $(document).ready(function(){initNavTree('functions_0x70.html','');});
<li>PhotoProjection()
: <a class="el" href="classmeow_1_1PhotoProjection.html#a902922d6be5fcb6ce2ce563031913e36">meow::PhotoProjection&lt; Scalar &gt;</a>
</li>
+<li>pipe()
+: <a class="el" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
+<li>Pipeline()
+: <a class="el" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>pixel()
: <a class="el" href="classmeow_1_1Bitmap.html#ac8f41ae97e068549565e9ac83ffef888">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#a38c943a8bd30b309a8042599dcf9f1e7">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Photo.html#a3489796a4101da9291fff280cb89728e">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>pixels()
: <a class="el" href="classmeow_1_1Bitmap.html#a17f92dec30f314d832f040257d6d5584">meow::Bitmap&lt; Pixel &gt;</a>
@@ -127,9 +133,9 @@ $(document).ready(function(){initNavTree('functions_0x70.html','');});
: <a class="el" href="classmeow_1_1FeaturePoint.html#adb4e1f091fb82cdb2fbb6ed50bd3415a">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
</li>
<li>positive()
-: <a class="el" href="classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a8fc395992d84b816307f72026d1e7125">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#a8fc395992d84b816307f72026d1e7125">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>procArg()
@@ -142,7 +148,7 @@ $(document).ready(function(){initNavTree('functions_0x70.html','');});
: <a class="el" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752">meow::Usage</a>
</li>
<li>properties()
-: <a class="el" href="classmeow_1_1ObjProperties.html#af14e8afbd6807b61429d4f84291d6cee">meow::ObjProperties&lt; SID &gt;</a>
+: <a class="el" href="classmeow_1_1ObjProperties.html#a43ce997788ca81603e881a22285fd307">meow::ObjProperties&lt; SID &gt;</a>
</li>
<li>property()
: <a class="el" href="classmeow_1_1ObjProperties.html#af20d23e32a6658bb19685540c65c6a3a">meow::ObjProperties&lt; SID &gt;</a>
@@ -175,7 +181,7 @@ $(document).ready(function(){initNavTree('functions_0x70.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x71.html b/doc/html/functions_0x71.html
index d34dd7a..b456333 100644
--- a/doc/html/functions_0x71.html
+++ b/doc/html/functions_0x71.html
@@ -71,7 +71,7 @@ $(document).ready(function(){initNavTree('functions_0x71.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x72.html b/doc/html/functions_0x72.html
index b8a3e9f..13e662b 100644
--- a/doc/html/functions_0x72.html
+++ b/doc/html/functions_0x72.html
@@ -84,8 +84,12 @@ $(document).ready(function(){initNavTree('functions_0x72.html','');});
, <a class="el" href="classmeow_1_1WatchBall.html#a18cac43a61f741c191148bfef76e3d85">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74">meow::ObjArray&lt; T &gt;</a>
</li>
+<li>REFERENCE_FROM
+: <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822">meow::Self&lt; Data &gt;</a>
+</li>
<li>referenceFrom()
-: <a class="el" href="classmeow_1_1LinearTransformation.html#a573c034e179570f7a1c41f0c1de54c87">meow::LinearTransformation&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1WatchBall.html#a1480323a56f6f53799e56f4855d95b07">meow::WatchBall&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1LinearTransformation.html#a573c034e179570f7a1c41f0c1de54c87">meow::LinearTransformation&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Rotation3D.html#ac2919c38518ea677a85df8757bd8f0d9">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#a9b6ec99d8363742f77c63a49ba9467b5">meow::Transformation&lt; Scalar &gt;</a>
@@ -95,14 +99,14 @@ $(document).ready(function(){initNavTree('functions_0x72.html','');});
, <a class="el" href="classmeow_1_1ObjArray.html#aa09ddb0d17ebb93520b211dc29ad2904">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#ab0a4c64950a5a89012a913202fac027b">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1ObjType.html#a14617b585e4b852ab63321ad0af076e7">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
-, <a class="el" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f">meow::Self&lt; Data &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d">meow::Self&lt; Data &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#affd5f41b44fa6afc55f2a3eb3f01cc4d">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e">meow::Camera&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#af5e944e79a1dfe6644fe429577734bc4">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#aedd26ad4f5ce224bf925271d467aaf06">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a881f9a17c264659c2604a79c1ae81286">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1IdentityPoints.html#a7ec681b9849372eb14ed46734a4f885e">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1WatchBall.html#a1480323a56f6f53799e56f4855d95b07">meow::WatchBall&lt; Pixel &gt;</a>
</li>
<li>referenceLess()
: <a class="el" href="classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c">meow::Self&lt; Data &gt;</a>
@@ -119,21 +123,20 @@ $(document).ready(function(){initNavTree('functions_0x72.html','');});
, <a class="el" href="classmeow_1_1Vector3D.html#af4f968f581bfbcf57afcd1bbf1d3bee2">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>reset()
-: <a class="el" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1Bitmap.html#ae7bcc670d666a784d6e5e8f14b74aa3d">meow::Bitmap&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Photo.html#aed3ed47ee1ddae0732e24af71b91a7b0">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1SegmentTree.html#a80c550b0a3b997bc541ae0947ae2f55d">meow::SegmentTree&lt; Value &gt;</a>
, <a class="el" href="classmeow_1_1BinaryIndexTree.html#a5634a9420ee864860bbf8605b9e17c32">meow::BinaryIndexTree&lt; Value &gt;</a>
, <a class="el" href="classmeow_1_1DisjointSet.html#a232841a6d2daeb2b974cd7cb7fe6bfb7">meow::DisjointSet</a>
, <a class="el" href="classmeow_1_1HashTableList.html#ac7417270658997ef1cb33221fba8d6e8">meow::HashTableList&lt; Data, HashFunc &gt;</a>
, <a class="el" href="classmeow_1_1KD__Tree.html#a45be7cf06442b1a75902faa266950121">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1SegmentTree.html#a80c550b0a3b997bc541ae0947ae2f55d">meow::SegmentTree&lt; Value &gt;</a>
, <a class="el" href="classmeow_1_1VP__Tree.html#ad1bffde18bc2f0fc955e78fe77333558">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Bitmap.html#ae7bcc670d666a784d6e5e8f14b74aa3d">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#ab5a901c44b8c5523def9b40f27a5fda3">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>rgb()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a0410f516652c05e244ba222bcefc0283">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a98433b465ab530b4ac90232726604d16">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#ab07979f6a7b9f6a45b75a6393ee6c385">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#aeffa5f21171d32f9b1e1528707aac42b">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#aeffa5f21171d32f9b1e1528707aac42b">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a0410f516652c05e244ba222bcefc0283">meow::RGBi_Space</a>
</li>
<li>RGBf_Space()
: <a class="el" href="classmeow_1_1RGBf__Space.html#ad7cb69aace8c4ee0197d5eca0aa89c66">meow::RGBf_Space</a>
@@ -143,34 +146,34 @@ $(document).ready(function(){initNavTree('functions_0x72.html','');});
, <a class="el" href="classmeow_1_1RGBf__Space.html#a2a2a36035097c796da37667ab737aaff">meow::RGBf_Space</a>
</li>
<li>RGBi_Space()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a9eb77a74b33dd6c61f821ad9e1f5d00d">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#a15514adce8ed62b5fa196031d0f821cb">meow::RGBi_Space</a>
</li>
<li>rgbMax()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a40f228f22ec8c35947a61d51a0e4c1fd">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a6b4da76d0c83cb321f61fb6387932203">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#a6b4da76d0c83cb321f61fb6387932203">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a40f228f22ec8c35947a61d51a0e4c1fd">meow::RGBi_Space</a>
</li>
<li>rgbMin()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#a33dd8ebb5015faa8540e67e51ea68e4f">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#abcf954ac596df3967581c533670a3339">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#abcf954ac596df3967581c533670a3339">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#a33dd8ebb5015faa8540e67e51ea68e4f">meow::RGBf_Space</a>
</li>
<li>rGet()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#afa902a6e87068e583c8747208f908f4e">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#a76b540bdf49bc8912c5f62aa875b1906">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#a76b540bdf49bc8912c5f62aa875b1906">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#afa902a6e87068e583c8747208f908f4e">meow::RGBf_Space</a>
</li>
<li>right()
: <a class="el" href="classmeow_1_1Vector2D.html#a2e768dd00d86dafa8adefc4ffc4edc9e">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>rLowerBound()
-: <a class="el" href="classmeow_1_1SplayTree.html#a06dd77ef9bd62d83a7571feca5324825">meow::SplayTree&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range.html#a05057d5df92737104b7431b4203cac11">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range.html#a05057d5df92737104b7431b4203cac11">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree.html#a06dd77ef9bd62d83a7571feca5324825">meow::SplayTree&lt; Key, Value &gt;</a>
</li>
<li>rMax()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#af473ccd4b8202097640ba9f19428caef">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#a93000ad239423bb98dda22c8d48bc614">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#a93000ad239423bb98dda22c8d48bc614">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#af473ccd4b8202097640ba9f19428caef">meow::RGBf_Space</a>
</li>
<li>rMin()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#aee2f300ff0ae724890d3d80d0cb7cbc3">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#acf9aab095784c66dc9b3969602f84384">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#acf9aab095784c66dc9b3969602f84384">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#aee2f300ff0ae724890d3d80d0cb7cbc3">meow::RGBf_Space</a>
</li>
<li>root()
: <a class="el" href="classmeow_1_1DisjointSet.html#a0b66ca7c5e19f640b521630f06b313c1">meow::DisjointSet</a>
@@ -184,10 +187,10 @@ $(document).ready(function(){initNavTree('functions_0x72.html','');});
, <a class="el" href="classmeow_1_1Vector2D.html#af3fd0ff1b8f9ca6df82b8659cadafb7d">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>rotation()
-: <a class="el" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370">meow::Camera&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Camera.html#aba398741215e99868380dff84e6aaee3">meow::Camera&lt; Pixel &gt;</a>
</li>
<li>Rotation3D()
-: <a class="el" href="classmeow_1_1Rotation3D.html#a90c102c7f74e8a36ac0d24bef6b06337">meow::Rotation3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Rotation3D.html#ab566bace2339705305d7e18c36116d2a">meow::Rotation3D&lt; Scalar &gt;</a>
</li>
<li>rotationGet()
: <a class="el" href="classmeow_1_1Camera.html#a54891144105d5e29a33b98d2fdf799e5">meow::Camera&lt; Pixel &gt;</a>
@@ -209,7 +212,7 @@ $(document).ready(function(){initNavTree('functions_0x72.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x73.html b/doc/html/functions_0x73.html
index 3e86bb8..1c27086 100644
--- a/doc/html/functions_0x73.html
+++ b/doc/html/functions_0x73.html
@@ -66,53 +66,61 @@ $(document).ready(function(){initNavTree('functions_0x73.html','');});
, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#aea48bcfd0ad50cbdcdc15128be5e8f15">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9">meow::Self&lt; Data &gt;</a>
</li>
+<li>ScalarRef
+: <a class="el" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">meow::Vector&lt; Scalar &gt;</a>
+</li>
+<li>ScalarRefK
+: <a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">meow::Vector&lt; Scalar &gt;</a>
+</li>
<li>SegmentTree()
: <a class="el" href="classmeow_1_1SegmentTree.html#a8e8365f0440c68f3c0853b94a7de3ccb">meow::SegmentTree&lt; Value &gt;</a>
</li>
<li>Self()
-: <a class="el" href="classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937">meow::Self&lt; Data &gt;</a>
+: <a class="el" href="classmeow_1_1Self.html#a000ede7e217c31401cc0a4b1c6749ee5">meow::Self&lt; Data &gt;</a>
</li>
<li>sGet()
: <a class="el" href="classmeow_1_1HSLf__Space.html#adb7cc82245b20e389d02224ac99444f2">meow::HSLf_Space</a>
, <a class="el" href="classmeow_1_1HSVf__Space.html#aa3a78aa9771124051ddeb73ecc0ae3c2">meow::HSVf_Space</a>
</li>
<li>size()
-: <a class="el" href="classmeow_1_1HashTableList.html#af8d49492c5f35bb18706e9fb72d18157">meow::HashTableList&lt; Data, HashFunc &gt;</a>
+: <a class="el" href="classmeow_1_1ObjArray.html#af6c846ed0992c4f1e0a765a6d3549628">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a0e265133214bd6b9f0dce6ce6dc6ca23">meow::ObjDictionary&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1DisjointSet.html#a1738123f2c0456bec373d4a8422d62b5">meow::DisjointSet</a>
+, <a class="el" href="classmeow_1_1ObjArray.html#ab77633d00d8e75f1e6dd548c07d780fe">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1HashTableList.html#af8d49492c5f35bb18706e9fb72d18157">meow::HashTableList&lt; Data, HashFunc &gt;</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a112454a9c92b71531429442e95953576">meow::MergeableHeap&lt; Element &gt;</a>
, <a class="el" href="classmeow_1_1SegmentTree.html#a8985a196cfb954bc469e7dae146ad4ed">meow::SegmentTree&lt; Value &gt;</a>
+, <a class="el" href="classmeow_1_1IdentityPoints.html#a48e856fca0660a5f56a13ccea992e3ea">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a40b663d34933b258e667f9205f469fdc">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#afce0f36427e9105a3405176ed4eddf58">meow::SplayTree_Range&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#a13b986e9310eb100c100fd62fa548233">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#ab77633d00d8e75f1e6dd548c07d780fe">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a48e856fca0660a5f56a13ccea992e3ea">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#a0e265133214bd6b9f0dce6ce6dc6ca23">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1DisjointSet.html#a1738123f2c0456bec373d4a8422d62b5">meow::DisjointSet</a>
</li>
<li>sMax()
-: <a class="el" href="classmeow_1_1HSVf__Space.html#a2aedcabd4c079b5662502642c919b974">meow::HSVf_Space</a>
-, <a class="el" href="classmeow_1_1HSLf__Space.html#ac04d25efca77d6e53ddb5de801593ea2">meow::HSLf_Space</a>
+: <a class="el" href="classmeow_1_1HSLf__Space.html#ac04d25efca77d6e53ddb5de801593ea2">meow::HSLf_Space</a>
+, <a class="el" href="classmeow_1_1HSVf__Space.html#a2aedcabd4c079b5662502642c919b974">meow::HSVf_Space</a>
</li>
<li>sMin()
: <a class="el" href="classmeow_1_1HSLf__Space.html#aa6f73697310484b178c2dac3acdf4f4b">meow::HSLf_Space</a>
, <a class="el" href="classmeow_1_1HSVf__Space.html#a042f969c34c4b708ef7c9ed2f914825b">meow::HSVf_Space</a>
</li>
<li>SplayTree()
-: <a class="el" href="classmeow_1_1SplayTree.html#a640cec3815f70c0a7eac811d7272c637">meow::SplayTree&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree.html#addfdea993d700469785b3e01631ec3c0">meow::SplayTree&lt; Key, Value &gt;</a>
</li>
<li>SplayTree_Range()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#acf3c8d90ff38a210ed9d64dd365d5e93">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range.html#aa5a5c774d04721cbe038ec883c01737a">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>splitOut()
: <a class="el" href="classmeow_1_1SplayTree.html#a36a55daf9150ae2d866075dedf1d583d">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a1594362228633d8b026bb0f8c343384f">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>sub()
-: <a class="el" href="classmeow_1_1Vector3D.html#ab509fd9ef3b79fb13cc04cfec798dcc2">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector2D.html#ad7b3e23827cfc3db7fbcc12c70db398a">meow::Vector2D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector3D.html#ab509fd9ef3b79fb13cc04cfec798dcc2">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector2D.html#ad7b3e23827cfc3db7fbcc12c70db398a">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>subed()
: <a class="el" href="classmeow_1_1Vector2D.html#a274c5cd3e139978539655a0191f03579">meow::Vector2D&lt; Scalar &gt;</a>
@@ -131,7 +139,7 @@ $(document).ready(function(){initNavTree('functions_0x73.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x74.html b/doc/html/functions_0x74.html
index 6ba3cea..627dbe2 100644
--- a/doc/html/functions_0x74.html
+++ b/doc/html/functions_0x74.html
@@ -70,7 +70,8 @@ $(document).ready(function(){initNavTree('functions_0x74.html','');});
: <a class="el" href="classmeow_1_1MergeableHeap.html#a7daf99f9cc15f0cfa2625da4623b9042">meow::MergeableHeap&lt; Element &gt;</a>
</li>
<li>transformate()
-: <a class="el" href="classmeow_1_1BallProjection.html#a2573c364dd1e0d7de32b1e2afc0bb1b5">meow::BallProjection&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855">meow::TransformatePipeline&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1BallProjection.html#a2573c364dd1e0d7de32b1e2afc0bb1b5">meow::BallProjection&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f">meow::PhotoProjection&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Rotation3D.html#a566ebd46881ef0165aab55a4cf4ca169">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#aa0c299b9ad13020a9eb460de01378ddc">meow::Transformation&lt; Scalar &gt;</a>
@@ -79,6 +80,9 @@ $(document).ready(function(){initNavTree('functions_0x74.html','');});
: <a class="el" href="classmeow_1_1Rotation3D.html#aa872f44ce5b53faadddc9493697cfe13">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#aa9a476c677e7efc805c0fbdccfb48b38">meow::Transformation&lt; Scalar &gt;</a>
</li>
+<li>TransformatePipeline()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
<li>Transformation()
: <a class="el" href="classmeow_1_1Transformation.html#a129b2465033d0f6c8f57e4ee36c52b6c">meow::Transformation&lt; Scalar &gt;</a>
</li>
@@ -88,6 +92,9 @@ $(document).ready(function(){initNavTree('functions_0x74.html','');});
<li>transposed()
: <a class="el" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304">meow::Matrix&lt; Entry &gt;</a>
</li>
+<li>TransrormatePipeline()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
<li>triangular()
: <a class="el" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56">meow::Matrix&lt; Entry &gt;</a>
</li>
@@ -96,17 +103,17 @@ $(document).ready(function(){initNavTree('functions_0x74.html','');});
</li>
<li>type()
: <a class="el" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1WatchBall.html#ab8478f0460b456da11863ab9e7542bd1">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#a84cf3012af5e67b4aafc1ee7eafd70d1">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1IdentityPoints.html#a6ce521c18a45b50bd8b75201480b97f7">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">meow::ObjProperties&lt; SID &gt;</a>
+, <a class="el" href="classmeow_1_1WatchBall.html#ab8478f0460b456da11863ab9e7542bd1">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>
+, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32">meow::Camera&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae13f041624113e4b87d49befc2e1d77a">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a6ce521c18a45b50bd8b75201480b97f7">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>
+, <a class="el" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">meow::ObjProperties&lt; SID &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1">meow::Bitmap&lt; Pixel &gt;</a>
</li>
<li>typeBase()
@@ -119,7 +126,7 @@ $(document).ready(function(){initNavTree('functions_0x74.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x75.html b/doc/html/functions_0x75.html
index 5c4b735..1dc66a1 100644
--- a/doc/html/functions_0x75.html
+++ b/doc/html/functions_0x75.html
@@ -78,11 +78,14 @@ $(document).ready(function(){initNavTree('functions_0x75.html','');});
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a492f68ede1f6423590ec2bfa3f839ab0">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>Usage()
-: <a class="el" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649">meow::Usage</a>
</li>
<li>usage()
: <a class="el" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99">meow::Usage</a>
</li>
+<li>Usage()
+: <a class="el" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400">meow::Usage</a>
+</li>
<li>usageBeginAdd()
: <a class="el" href="classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709">meow::Usage</a>
</li>
@@ -96,7 +99,7 @@ $(document).ready(function(){initNavTree('functions_0x75.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x76.html b/doc/html/functions_0x76.html
index 593a627..26be96f 100644
--- a/doc/html/functions_0x76.html
+++ b/doc/html/functions_0x76.html
@@ -90,26 +90,26 @@ $(document).ready(function(){initNavTree('functions_0x76.html','');});
: <a class="el" href="classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>Vector2D()
-: <a class="el" href="classmeow_1_1Vector2D.html#a62a15858053f7c6c80aa9a896dd6d78d">meow::Vector2D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>Vector3D()
-: <a class="el" href="classmeow_1_1Vector3D.html#afae72511a31b5260ee93130d0654093f">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#a62bd29ce86c81075ef240eb0d0fc0d97">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>Vectors
-: <a class="el" href="classmeow_1_1KD__Tree.html#afc143e90dba569c51b6eb146ba9df7f8">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1VP__Tree.html#a02c136810876c8713b9760aa8bb51aa4">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1VP__Tree.html#a02c136810876c8713b9760aa8bb51aa4">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1KD__Tree.html#afc143e90dba569c51b6eb146ba9df7f8">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>vGet()
-: <a class="el" href="classmeow_1_1HSVf__Space.html#a681393735e63a1de944373b071ebef18">meow::HSVf_Space</a>
-, <a class="el" href="classmeow_1_1YUVf__Space.html#a99e8bb42edb254ed1415f55ef1558ab0">meow::YUVf_Space</a>
+: <a class="el" href="classmeow_1_1YUVf__Space.html#a99e8bb42edb254ed1415f55ef1558ab0">meow::YUVf_Space</a>
+, <a class="el" href="classmeow_1_1HSVf__Space.html#a681393735e63a1de944373b071ebef18">meow::HSVf_Space</a>
</li>
<li>vMax()
-: <a class="el" href="classmeow_1_1HSVf__Space.html#ad603b398c6e50a238a87c0aad890ab2c">meow::HSVf_Space</a>
-, <a class="el" href="classmeow_1_1YUVf__Space.html#a3b168dd8186710b014f2e1d1b5ee1c63">meow::YUVf_Space</a>
+: <a class="el" href="classmeow_1_1YUVf__Space.html#a3b168dd8186710b014f2e1d1b5ee1c63">meow::YUVf_Space</a>
+, <a class="el" href="classmeow_1_1HSVf__Space.html#ad603b398c6e50a238a87c0aad890ab2c">meow::HSVf_Space</a>
</li>
<li>vMin()
-: <a class="el" href="classmeow_1_1HSVf__Space.html#afb8087a590e96a0da95793acf5d0228e">meow::HSVf_Space</a>
-, <a class="el" href="classmeow_1_1YUVf__Space.html#aba01d6b8d0d8840d0132ccd6b43d8c0c">meow::YUVf_Space</a>
+: <a class="el" href="classmeow_1_1YUVf__Space.html#aba01d6b8d0d8840d0132ccd6b43d8c0c">meow::YUVf_Space</a>
+, <a class="el" href="classmeow_1_1HSVf__Space.html#afb8087a590e96a0da95793acf5d0228e">meow::HSVf_Space</a>
</li>
<li>VP_Tree()
: <a class="el" href="classmeow_1_1VP__Tree.html#ab611c988f5c567498d40866e9eab3851">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
@@ -121,7 +121,7 @@ $(document).ready(function(){initNavTree('functions_0x76.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x77.html b/doc/html/functions_0x77.html
index 326dae3..0252a7c 100644
--- a/doc/html/functions_0x77.html
+++ b/doc/html/functions_0x77.html
@@ -92,7 +92,7 @@ $(document).ready(function(){initNavTree('functions_0x77.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x78.html b/doc/html/functions_0x78.html
index 49704c7..8ed1c64 100644
--- a/doc/html/functions_0x78.html
+++ b/doc/html/functions_0x78.html
@@ -78,7 +78,7 @@ $(document).ready(function(){initNavTree('functions_0x78.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x79.html b/doc/html/functions_0x79.html
index 9160808..b0c4fbc 100644
--- a/doc/html/functions_0x79.html
+++ b/doc/html/functions_0x79.html
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('functions_0x79.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x7a.html b/doc/html/functions_0x7a.html
index 67578f8..3ef8d3d 100644
--- a/doc/html/functions_0x7a.html
+++ b/doc/html/functions_0x7a.html
@@ -70,7 +70,7 @@ $(document).ready(function(){initNavTree('functions_0x7a.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_0x7e.html b/doc/html/functions_0x7e.html
index 37d975e..f562377 100644
--- a/doc/html/functions_0x7e.html
+++ b/doc/html/functions_0x7e.html
@@ -106,6 +106,9 @@ $(document).ready(function(){initNavTree('functions_0x7e.html','');});
<li>~Matrix()
: <a class="el" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e">meow::Matrix&lt; Entry &gt;</a>
</li>
+<li>~MediumInfo()
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a2cf1d9e410e152bc045017d966fa3e52">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
+</li>
<li>~MergeableHeap()
: <a class="el" href="classmeow_1_1MergeableHeap.html#a24a0a465dff230206e85f7b3c172553f">meow::MergeableHeap&lt; Element &gt;</a>
</li>
@@ -130,6 +133,9 @@ $(document).ready(function(){initNavTree('functions_0x7e.html','');});
<li>~Photo()
: <a class="el" href="classmeow_1_1Photo.html#ad3ba33208243966fe72db6c3a519e22d">meow::Photo&lt; Pixel &gt;</a>
</li>
+<li>~Pipeline()
+: <a class="el" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>~RGBf_Space()
: <a class="el" href="classmeow_1_1RGBf__Space.html#ab47d10e634067bbb0b7152d0f50b42a0">meow::RGBf_Space</a>
</li>
@@ -148,6 +154,9 @@ $(document).ready(function(){initNavTree('functions_0x7e.html','');});
<li>~SplayTree_Range()
: <a class="el" href="classmeow_1_1SplayTree__Range.html#afa919ebbc8feedc4c2ed2185d6207261">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
+<li>~TransformatePipeline()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
<li>~Transformation()
: <a class="el" href="classmeow_1_1Transformation.html#a96471a49fe0b9737ad5b98b8e917385e">meow::Transformation&lt; Scalar &gt;</a>
</li>
@@ -176,7 +185,7 @@ $(document).ready(function(){initNavTree('functions_0x7e.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_enum.html b/doc/html/functions_enum.html
new file mode 100644
index 0000000..0f3749b
--- /dev/null
+++ b/doc/html/functions_enum.html
@@ -0,0 +1,74 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Class Members - Enumerations</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_enum.html','');});
+</script>
+<div id="doc-content">
+<div class="contents">
+&#160;<ul>
+<li>DuplicateType
+: <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8">meow::Self&lt; Data &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_eval.html b/doc/html/functions_eval.html
new file mode 100644
index 0000000..6989f48
--- /dev/null
+++ b/doc/html/functions_eval.html
@@ -0,0 +1,77 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Class Members - Enumerator</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_eval.html','');});
+</script>
+<div id="doc-content">
+<div class="contents">
+&#160;<ul>
+<li>COPY_FROM
+: <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730">meow::Self&lt; Data &gt;</a>
+</li>
+<li>REFERENCE_FROM
+: <a class="el" href="classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822">meow::Self&lt; Data &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html
index 0a279d3..f0efb24 100644
--- a/doc/html/functions_func.html
+++ b/doc/html/functions_func.html
@@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('functions_func.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x62.html b/doc/html/functions_func_0x62.html
index ca77ae4..5a1d354 100644
--- a/doc/html/functions_func_0x62.html
+++ b/doc/html/functions_func_0x62.html
@@ -61,6 +61,13 @@ $(document).ready(function(){initNavTree('functions_func_0x62.html','');});
: <a class="el" href="classmeow_1_1RGBi__Space.html#a8a8779fb88ac2f2a97b00f3764035483">meow::RGBi_Space</a>
, <a class="el" href="classmeow_1_1RGBf__Space.html#ab6c357531cc39c41299f933988084ebc">meow::RGBf_Space</a>
</li>
+<li>backAdd()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb">meow::TransformatePipeline&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
+<li>backDel()
+: <a class="el" href="classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>BallProjection()
: <a class="el" href="classmeow_1_1BallProjection.html#a1efa5c200a9d5605453b47e3856ccf28">meow::BallProjection&lt; Scalar &gt;</a>
</li>
@@ -75,18 +82,21 @@ $(document).ready(function(){initNavTree('functions_func_0x62.html','');});
: <a class="el" href="classmeow_1_1Photo.html#a49ada6e814bd2280af12183897227e62">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>Bitmap()
-: <a class="el" href="classmeow_1_1Bitmap.html#af4c9896dc2cdc714be5106bef45430c8">meow::Bitmap&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Bitmap.html#ab313e096befabd933633cb75b870f75c">meow::Bitmap&lt; Pixel &gt;</a>
+</li>
+<li>bitmap()
+: <a class="el" href="classmeow_1_1Photo.html#a511f65855ee9f102c2472ce236ba7d3c">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>bitmapGet()
: <a class="el" href="classmeow_1_1Photo.html#a07c8ca1846fc97005a7d960c5fc703a7">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>bMax()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a2ce95550fd5c89fc71f0715fc8ac573b">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a029c3bd52ae818462558742dc2be0904">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#a029c3bd52ae818462558742dc2be0904">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a2ce95550fd5c89fc71f0715fc8ac573b">meow::RGBi_Space</a>
</li>
<li>bMin()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a612c6b94ae15541855dcd9dd15056ff8">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a130bbee98fdd279a415e18aa0ca2f13c">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#a130bbee98fdd279a415e18aa0ca2f13c">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a612c6b94ae15541855dcd9dd15056ff8">meow::RGBi_Space</a>
</li>
<li>boundleAdjustment2D()
: <a class="el" href="classmeow_1_1Camera.html#af291cd0bd6253338e05f60bea9878b64">meow::Camera&lt; Pixel &gt;</a>
@@ -102,7 +112,7 @@ $(document).ready(function(){initNavTree('functions_func_0x62.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x63.html b/doc/html/functions_func_0x63.html
index 458e22d..17b6f28 100644
--- a/doc/html/functions_func_0x63.html
+++ b/doc/html/functions_func_0x63.html
@@ -106,25 +106,26 @@ $(document).ready(function(){initNavTree('functions_func_0x63.html','');});
</li>
<li>copyFrom()
: <a class="el" href="classmeow_1_1Color3__Space.html#aa5c43cb67d674223a0a2361ac8de55c1">meow::Color3_Space&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828">meow::Self&lt; Data &gt;</a>
-, <a class="el" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1BallProjection.html#aec71a15af880bdaea8042986c11e2187">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>
, <a class="el" href="classmeow_1_1Color3__Space.html#ab8be12bacd0e877151189383654029c8">meow::Color3_Space&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0">meow::Vector&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a8886e87d000181823e3532791e6a8288">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1HashTableList.html#a3d769d64e448f0bdbe52514e06b73f54">meow::HashTableList&lt; Data, HashFunc &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619">meow::ObjBase</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a3f9a65eeb600d0b9fba60855b560ab33">meow::MergeableHeap&lt; Element &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74">meow::Transformation&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1SegmentTree.html#a889f38048ffe08ce3c80911878faac44">meow::SegmentTree&lt; Value &gt;</a>
, <a class="el" href="classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52">meow::ObjProperties&lt; SID &gt;</a>
-, <a class="el" href="classmeow_1_1WatchBall.html#a898f8ad46598a01633f444804853a3bd">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+, <a class="el" href="classmeow_1_1WatchBall.html#a898f8ad46598a01633f444804853a3bd">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#aaea89fe0e873d4a2ceafad1519064d9a">meow::SplayTree&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1SplayTree.html#aafc78f8d6abc95d52ba1062c14946cd5">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2">meow::Self&lt; Data &gt;</a>
, <a class="el" href="classmeow_1_1IdentityPoints.html#a6b17e68e14290ebfdcdd59a0724cdc41">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#ace7c7fb2416ca7afd7df627a0fe57ed0">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#acb88cb76b50884221cbb58d2adcb4329">meow::SplayTree_Range&lt; Key, Value &gt;</a>
@@ -145,18 +146,18 @@ $(document).ready(function(){initNavTree('functions_func_0x63.html','');});
</li>
<li>create()
: <a class="el" href="classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c">meow::ObjBase</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f">meow::Bitmap&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb">meow::ObjSelector&lt; id &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae7a96030ea8d06322b632c89eb65655d">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">meow::ObjProperties&lt; SID &gt;</a>
-, <a class="el" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aaa320097355fccd00677bd0413935ee5">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#a449f74fa427154f943d6abee255431aa">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1IdentityPoints.html#a464d62354fc3d12767b71632f9b27524">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1WatchBall.html#ae2c8bc97ac7d09b886fe59a8f88c2145">meow::WatchBall&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#ad3ec34460c84a4a20cf3cb418db76dc3">meow::Camera&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb">meow::ObjSelector&lt; id &gt;</a>
+, <a class="el" href="classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164">meow::ObjProperties&lt; SID &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb">meow::ObjDictionary&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Photo.html#a449f74fa427154f943d6abee255431aa">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1Bitmap.html#a07b1eb689498112691ca72e8c6ae453f">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#a7244e348b529719748d1643a6f11adbf">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
</li>
<li>cross()
@@ -167,19 +168,19 @@ $(document).ready(function(){initNavTree('functions_func_0x63.html','');});
: <a class="el" href="classmeow_1_1Vector3D.html#a2ec32fffb7a0355d46c52826f85aa506">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>ctype()
-: <a class="el" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1WatchBall.html#afcba8229502523255913392c592eabce">meow::WatchBall&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a">meow::ObjProperties&lt; SID &gt;</a>
+: <a class="el" href="classmeow_1_1WatchBall.html#afcba8229502523255913392c592eabce">meow::WatchBall&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>
, <a class="el" href="classmeow_1_1IdentityPoints.html#ae90d4c4d8125919ae8807d89790bed61">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a00be866b3cf9bd2469e0eef32a3b2287">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePoint.html#a1ffb238473ef9f745eb79670fc46da13">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
-, <a class="el" href="classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8">meow::ObjBase</a>
-, <a class="el" href="classmeow_1_1Photo.html#a93fdf3b617d8b1c751823074fca049a9">meow::Photo&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#af8debba04055594b8507c77b3dbd0ff7">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#a80ef6d606e9f79255b043c5c17cc4a18">meow::Camera&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a">meow::ObjProperties&lt; SID &gt;</a>
+, <a class="el" href="classmeow_1_1Photo.html#a93fdf3b617d8b1c751823074fca049a9">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64">meow::ObjDictionary&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a2c89f6a79cba1b477c31e294ec7d9c71">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a00be866b3cf9bd2469e0eef32a3b2287">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
</li>
<li>ctypeBase()
: <a class="el" href="classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8">meow::ObjBase</a>
@@ -191,7 +192,7 @@ $(document).ready(function(){initNavTree('functions_func_0x63.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x64.html b/doc/html/functions_func_0x64.html
index 202dd95..ae212b8 100644
--- a/doc/html/functions_func_0x64.html
+++ b/doc/html/functions_func_0x64.html
@@ -81,8 +81,8 @@ $(document).ready(function(){initNavTree('functions_func_0x64.html','');});
: <a class="el" href="classmeow_1_1DisjointSet.html#a8c55a16b0320c28854ed59795bc2bf3d">meow::DisjointSet</a>
</li>
<li>div()
-: <a class="el" href="classmeow_1_1Vector2D.html#acbb2ec7aa2897e93b3ff9964565ae8fc">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a9449f90146085ac5901eb0c75b316b87">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#a9449f90146085ac5901eb0c75b316b87">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#acbb2ec7aa2897e93b3ff9964565ae8fc">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908">meow::Vector&lt; Scalar &gt;</a>
</li>
@@ -91,9 +91,12 @@ $(document).ready(function(){initNavTree('functions_func_0x64.html','');});
, <a class="el" href="classmeow_1_1Vector2D.html#a045c6189a70574b1465131d59410fa16">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>dot()
-: <a class="el" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452">meow::Vector&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452">meow::Vector&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#aa8204ccaf2a6a0459f58f92defee3396">meow::Vector3D&lt; Scalar &gt;</a>
+</li>
+<li>duplicateFrom()
+: <a class="el" href="classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e">meow::Self&lt; Data &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -102,7 +105,7 @@ $(document).ready(function(){initNavTree('functions_func_0x64.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x65.html b/doc/html/functions_func_0x65.html
index d8ac299..a027dce 100644
--- a/doc/html/functions_func_0x65.html
+++ b/doc/html/functions_func_0x65.html
@@ -69,39 +69,42 @@ $(document).ready(function(){initNavTree('functions_func_0x65.html','');});
, <a class="el" href="classmeow_1_1IdentityPoints.html#a58a91f88750306e4ede279dabd7a1791">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a0cf27c92cf52d3f125a0e01e6b62bce0">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#afedaaaf1ed8b066a43d8e12081f6c878">meow::ObjDictionary&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a531fff6c8a72f09168701a0612b20af7">meow::MergeableHeap&lt; Element &gt;</a>
</li>
<li>end()
-: <a class="el" href="classmeow_1_1ObjDictionary.html#aeb8765e90349daee27bcf9e6c2672676">meow::ObjDictionary&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1ObjDictionary.html#ae5f44ae004be8f10a1c9f5e65eeebc75">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#abcdab5caa27fecfd980595681381a4dc">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#ad3aaed040f619a3b14c3f9b598b7fecc">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#ae5f44ae004be8f10a1c9f5e65eeebc75">meow::ObjDictionary&lt; Key, Value &gt;</a>
</li>
<li>entries()
: <a class="el" href="classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>entry()
-: <a class="el" href="classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b">meow::Matrix&lt; Entry &gt;</a>
+: <a class="el" href="classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8">meow::Vector&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#a83d175206d5bae2542a818200dd64c9b">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a56b6b9b5e415c084ece7f0c214f0e8f0">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a">meow::Vector&lt; Scalar &gt;</a>
+</li>
+<li>entryGet()
+: <a class="el" href="classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>equal()
: <a class="el" href="classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d">meow::Self&lt; Data &gt;</a>
</li>
<li>erase()
-: <a class="el" href="classmeow_1_1VP__Tree.html#aa53e215a7e6daa3edfba4201602c8894">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1KD__Tree.html#adb0aaa5a70a7255935d8a4326c454434">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1VP__Tree.html#aa53e215a7e6daa3edfba4201602c8894">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#aef1f4e901e3e17a67e45aa2b9f9b61db">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#ae3cffdbb135d3f2518092c2e4b993e1f">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1KD__Tree.html#adb0aaa5a70a7255935d8a4326c454434">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>exist()
-: <a class="el" href="classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0">meow::ObjSelector&lt; id &gt;</a>
+: <a class="el" href="classmeow_1_1IdentityPoints.html#a171499ffe3d474aa3632b1a31b6402a0">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#ae60f2a947516d6d6f037cc106c00d3be">meow::ObjDictionary&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0">meow::ObjSelector&lt; id &gt;</a>
, <a class="el" href="classmeow_1_1HashTableList.html#a65227191dccd021a0802810ffe007040">meow::HashTableList&lt; Data, HashFunc &gt;</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a171499ffe3d474aa3632b1a31b6402a0">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
</li>
<li>expand()
: <a class="el" href="classmeow_1_1WatchBall.html#a00fcbbce6d9e4748a9b093983e591c19">meow::WatchBall&lt; Pixel &gt;</a>
@@ -113,7 +116,7 @@ $(document).ready(function(){initNavTree('functions_func_0x65.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x66.html b/doc/html/functions_func_0x66.html
index e7927b3..448835b 100644
--- a/doc/html/functions_func_0x66.html
+++ b/doc/html/functions_func_0x66.html
@@ -77,27 +77,34 @@ $(document).ready(function(){initNavTree('functions_func_0x66.html','');});
<li>first()
: <a class="el" href="classmeow_1_1SplayTree.html#ad8c3814cbfbcc9f754b62a74368ddc0b">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a74207c8c8023d62111171cd64abfbe77">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
</li>
<li>fixedPoints2D()
-: <a class="el" href="classmeow_1_1Camera.html#a0073158eeefdc6ae662f5127485aa79e">meow::Camera&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Camera.html#a298f81d18e2339db23ed5339f59b7986">meow::Camera&lt; Pixel &gt;</a>
</li>
<li>fixedPoints2DGet()
: <a class="el" href="classmeow_1_1Camera.html#aa6bfaf360ab9b78adfde7005747368d4">meow::Camera&lt; Pixel &gt;</a>
</li>
<li>focal()
: <a class="el" href="classmeow_1_1Photo.html#ab7b4b1f6b3f8100ea670500f168cb1e4">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#a1fbde3a8b2be3662cf67a035cf887be9">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5">meow::PhotoProjection&lt; Scalar &gt;</a>
</li>
<li>forceBuild()
-: <a class="el" href="classmeow_1_1VP__Tree.html#aa4adfa52bd1cee8703b49a5ecf906733">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1KD__Tree.html#a09bf16356618fde6d256a843b87f44b6">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1KD__Tree.html#a09bf16356618fde6d256a843b87f44b6">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1VP__Tree.html#aa4adfa52bd1cee8703b49a5ecf906733">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>FPD_Harris()
: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a6c985645f3e3c3d649edb72c08168cf3">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
</li>
<li>FPMKM()
-: <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aa67e41546eb54e64fea560f5d0e50586">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+: <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a6e657c4cb57c418e39ed91b35aae448c">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+</li>
+<li>frontAdd()
+: <a class="el" href="classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
+<li>frontDel()
+: <a class="el" href="classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
</li>
<li>func()
: <a class="el" href="classmeow_1_1HashTableList.html#aaf4154c2534c861455149261c0194f00">meow::HashTableList&lt; Data, HashFunc &gt;</a>
@@ -109,7 +116,7 @@ $(document).ready(function(){initNavTree('functions_func_0x66.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x67.html b/doc/html/functions_func_0x67.html
index 32a2641..c8ad3ba 100644
--- a/doc/html/functions_func_0x67.html
+++ b/doc/html/functions_func_0x67.html
@@ -75,12 +75,19 @@ $(document).ready(function(){initNavTree('functions_func_0x67.html','');});
, <a class="el" href="classmeow_1_1RGBf__Space.html#a48e591bedfc479b2193dd00ac5986f9f">meow::RGBf_Space</a>
</li>
<li>gMax()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#a65d8088fb8b755f0b3f173dcda552789">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#a4b3d58a5a52f1ebee9e7477a9f0bd291">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#a4b3d58a5a52f1ebee9e7477a9f0bd291">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#a65d8088fb8b755f0b3f173dcda552789">meow::RGBf_Space</a>
</li>
<li>gMin()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#aeb0cd2d681af6a70861ff371bf596e17">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#aa56cd3fabe6e32ede7f7761836dd7253">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#aa56cd3fabe6e32ede7f7761836dd7253">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#aeb0cd2d681af6a70861ff371bf596e17">meow::RGBf_Space</a>
+</li>
+<li>goThrough()
+: <a class="el" href="classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
+<li>goThroughInv()
+: <a class="el" href="classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
</li>
<li>gradiancedX()
: <a class="el" href="classmeow_1_1Bitmap.html#a1630de00aebe37d58e04d6b9fc69eafb">meow::Bitmap&lt; Pixel &gt;</a>
@@ -101,7 +108,7 @@ $(document).ready(function(){initNavTree('functions_func_0x67.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x68.html b/doc/html/functions_func_0x68.html
index efa0711..dbeecc5 100644
--- a/doc/html/functions_func_0x68.html
+++ b/doc/html/functions_func_0x68.html
@@ -65,7 +65,7 @@ $(document).ready(function(){initNavTree('functions_func_0x68.html','');});
: <a class="el" href="classmeow_1_1HashTableList.html#a327ccf67321d9b5061dbe01c287bd7e3">meow::HashTableList&lt; Data, HashFunc &gt;</a>
</li>
<li>hasOptionSetup()
-: <a class="el" href="classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf">meow::Usage</a>
</li>
<li>height()
: <a class="el" href="classmeow_1_1Bitmap.html#a2290360ab49bdf1f33dc717fce71d5df">meow::Bitmap&lt; Pixel &gt;</a>
@@ -120,7 +120,7 @@ $(document).ready(function(){initNavTree('functions_func_0x68.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x69.html b/doc/html/functions_func_0x69.html
index 2d8cb89..aa54407 100644
--- a/doc/html/functions_func_0x69.html
+++ b/doc/html/functions_func_0x69.html
@@ -91,25 +91,27 @@ $(document).ready(function(){initNavTree('functions_func_0x69.html','');});
: <a class="el" href="classmeow_1_1Usage.html#ad7db9a4197d9b281c47df0800ed63df0">meow::Usage</a>
</li>
<li>inputCols()
-: <a class="el" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13">meow::Transformation&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae">meow::TransformatePipeline&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#a1b556b6b0798d4e03cae5cdc474dca13">meow::Transformation&lt; Scalar &gt;</a>
</li>
<li>inputRows()
: <a class="el" href="classmeow_1_1Transformation.html#a9c4d19fe8d95967596b06bc026bdf200">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>insert()
-: <a class="el" href="classmeow_1_1ObjDictionary.html#a9784fbd0eaab219216abdcba4f326ead">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1KD__Tree.html#ad1af6def42b23b9b4acef03d32774b9e">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range.html#a5e80acef8cd1a6732f5cfec65ab69d54">meow::SplayTree_Range&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1VP__Tree.html#a2319a3995c4b6ad415a4997764e83b3f">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a0ae5e48da8d18ad8b2dc839d1c1b5582">meow::SplayTree&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range.html#a5e80acef8cd1a6732f5cfec65ab69d54">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a9784fbd0eaab219216abdcba4f326ead">meow::ObjDictionary&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1KD__Tree.html#ad1af6def42b23b9b4acef03d32774b9e">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>inside()
: <a class="el" href="classmeow_1_1Photo.html#ae1d328ee4c0971d4a90fb1f05bea1e66">meow::Photo&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#a55e165212b212a58b0090b1496a1a40a">meow::Camera&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#a43ac8952d85ea584dc9ea9a0424dbb98">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>inversable()
: <a class="el" href="classmeow_1_1Transformation.html#a71a1e75ebcf4d692cb9f0dcfeba1c1e4">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
</li>
<li>inverse()
: <a class="el" href="classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd">meow::Matrix&lt; Entry &gt;</a>
@@ -124,7 +126,7 @@ $(document).ready(function(){initNavTree('functions_func_0x69.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x6a.html b/doc/html/functions_func_0x6a.html
index c56d81f..42e0d17 100644
--- a/doc/html/functions_func_0x6a.html
+++ b/doc/html/functions_func_0x6a.html
@@ -60,16 +60,17 @@ $(document).ready(function(){initNavTree('functions_func_0x6a.html','');});
<li>jacobian()
: <a class="el" href="classmeow_1_1Rotation3D.html#a4846e5870c41f3694678d8acf032b8df">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#a18590a4501b79a9ad38eb8fa3c966eb8">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1BallProjection.html#ad2d62da97dd4b527c254e62a1ec949d8">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3">meow::PhotoProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f">meow::TransformatePipeline&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1BallProjection.html#a4fb7773f5566e93435ba56defbb7efc6">meow::BallProjection&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#a97b459877b4e508193071fa166a126c9">meow::Transformation&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3">meow::PhotoProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1BallProjection.html#ad2d62da97dd4b527c254e62a1ec949d8">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1BallProjection.html#a4fb7773f5566e93435ba56defbb7efc6">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a6299f8399a390371f4665c6800da0fc2">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>jacobianInv()
-: <a class="el" href="classmeow_1_1Rotation3D.html#af2a38c66668f6dcc11005e8f42b81f2f">meow::Rotation3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Transformation.html#a0186764bb80869bd80b81efb5bb1ee95">meow::Transformation&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Rotation3D.html#ae12a31cabc1260bd7256734f0e04acfb">meow::Rotation3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Rotation3D.html#ae12a31cabc1260bd7256734f0e04acfb">meow::Rotation3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#a4e7e3b24d0879eddc53951dfb357db0b">meow::Transformation&lt; Scalar &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -78,7 +79,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6a.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x6b.html b/doc/html/functions_func_0x6b.html
index 7cd6e4d..226f6db 100644
--- a/doc/html/functions_func_0x6b.html
+++ b/doc/html/functions_func_0x6b.html
@@ -71,7 +71,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6b.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x6c.html b/doc/html/functions_func_0x6c.html
index 5ff63a0..c43ff01 100644
--- a/doc/html/functions_func_0x6c.html
+++ b/doc/html/functions_func_0x6c.html
@@ -62,12 +62,13 @@ $(document).ready(function(){initNavTree('functions_func_0x6c.html','');});
</li>
<li>last()
: <a class="el" href="classmeow_1_1SplayTree__Range.html#afd72a714bb2b7bce0ceedad1dea9e264">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a805efe9b5f4bac68fd62908eb7cf3501">meow::SplayTree&lt; Key, Value &gt;</a>
</li>
<li>length()
-: <a class="el" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5">meow::Vector2D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27">meow::Vector&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#ac32c4c5bd8ecf0a662dd12f3b6de15e5">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#ae5d23addf232794f4635bdf6221ef7ec">meow::Vector3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>length2()
: <a class="el" href="classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538">meow::Vector2D&lt; Scalar &gt;</a>
@@ -78,7 +79,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6c.html','');});
: <a class="el" href="classmeow_1_1HSLf__Space.html#a5dd4d3ea93f86b627d51936b7388da44">meow::HSLf_Space</a>
</li>
<li>LinearTransformation()
-: <a class="el" href="classmeow_1_1LinearTransformation.html#a799ed3fafc41010b87807b46e9b9c222">meow::LinearTransformation&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1LinearTransformation.html#a4d73d74510c76bdbe176a8d498be185e">meow::LinearTransformation&lt; Scalar &gt;</a>
</li>
<li>lMax()
: <a class="el" href="classmeow_1_1HSLf__Space.html#a93c3d32fd0bc4aab24835409688cdf72">meow::HSLf_Space</a>
@@ -87,8 +88,8 @@ $(document).ready(function(){initNavTree('functions_func_0x6c.html','');});
: <a class="el" href="classmeow_1_1HSLf__Space.html#a41ab2ddd1544632a138e2660e4c9152a">meow::HSLf_Space</a>
</li>
<li>lowerBound()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#a92ca3967d0f433a57b5057d61183f2aa">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree.html#a48d6f8f0af07a6620bd73a92db226ce6">meow::SplayTree&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree.html#a48d6f8f0af07a6620bd73a92db226ce6">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#a92ca3967d0f433a57b5057d61183f2aa">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -97,7 +98,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6c.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x6d.html b/doc/html/functions_func_0x6d.html
index ddeb883..75f84da 100644
--- a/doc/html/functions_func_0x6d.html
+++ b/doc/html/functions_func_0x6d.html
@@ -90,18 +90,21 @@ $(document).ready(function(){initNavTree('functions_func_0x6d.html','');});
<li>maxV()
: <a class="el" href="classmeow_1_1Color3__Space.html#a0bdfe0eaab4a77cdc8a1359518630a07">meow::Color3_Space&lt; T &gt;</a>
</li>
+<li>MediumInfo()
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#ac7f042f7c96e2170e5c13f5d98fb5d0a">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
+</li>
<li>merge()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#a42d874bda7b24108d0e861448eadce84">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree.html#a9d370115877428e58b1595458dc345a3">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1DisjointSet.html#a410399290f718332f5c3df1854182198">meow::DisjointSet</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a3638f12db8da212244cb6ab7e37332db">meow::MergeableHeap&lt; Element &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree.html#a9d370115877428e58b1595458dc345a3">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#a42d874bda7b24108d0e861448eadce84">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>MergeableHeap()
: <a class="el" href="classmeow_1_1MergeableHeap.html#a7ef8e2deae0058c91eda490005b978f7">meow::MergeableHeap&lt; Element &gt;</a>
</li>
<li>mergeAfter()
-: <a class="el" href="classmeow_1_1SplayTree.html#a17f0fea3a3f4c7a548743bee7e5a285c">meow::SplayTree&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range.html#a53a6ba929a8500fa74e0991e120d3401">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range.html#a53a6ba929a8500fa74e0991e120d3401">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree.html#a17f0fea3a3f4c7a548743bee7e5a285c">meow::SplayTree&lt; Key, Value &gt;</a>
</li>
<li>min()
: <a class="el" href="classmeow_1_1Color3__Space.html#a3351aea64c4ca1596694d6b95dce56df">meow::Color3_Space&lt; T &gt;</a>
@@ -113,17 +116,17 @@ $(document).ready(function(){initNavTree('functions_func_0x6d.html','');});
: <a class="el" href="classmeow_1_1ObjType.html#a0eac1bd069ebdde20f422ef6a5ffb7cb">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
</li>
<li>moveTo()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#a17483e5f0028004cc4bf46699591fafe">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1MergeableHeap.html#acec8dde15d23e729aba90d98417db845">meow::MergeableHeap&lt; Element &gt;</a>
+: <a class="el" href="classmeow_1_1MergeableHeap.html#acec8dde15d23e729aba90d98417db845">meow::MergeableHeap&lt; Element &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a169eca2b27a5ec844bd79bba2bb75412">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#a17483e5f0028004cc4bf46699591fafe">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>mul()
-: <a class="el" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab">meow::Matrix&lt; Entry &gt;</a>
+: <a class="el" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Vector2D.html#a8c65e501c1eeafe7f504c3b834743320">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1Vector2D.html#ac3d894445c7dfa8b0cbe8ec2c1dfd1c2">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#a04201f13c26a2f6abc9b1c7b0ff313cc">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Vector3D.html#a22717807229c6243b5d0fd4d370b578a">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>muled()
: <a class="el" href="classmeow_1_1Vector3D.html#a840c9c1ab9734c0687241cc6636fe915">meow::Vector3D&lt; Scalar &gt;</a>
@@ -136,7 +139,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6d.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x6e.html b/doc/html/functions_func_0x6e.html
index db6e38c..219ece9 100644
--- a/doc/html/functions_func_0x6e.html
+++ b/doc/html/functions_func_0x6e.html
@@ -86,7 +86,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6e.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x6f.html b/doc/html/functions_func_0x6f.html
index f835aa4..45a7b92 100644
--- a/doc/html/functions_func_0x6f.html
+++ b/doc/html/functions_func_0x6f.html
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6f.html','');});
, <a class="el" href="classmeow_1_1Bitmap.html#a646c781896c74a7af4814da06cabf9e5">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#ab214706427b962a1404ee8fcfefd6465">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ac3d52bb2286377febbe692480e9afa75">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>operator*()
: <a class="el" href="classmeow_1_1HSLf__Space.html#a4cdbbac5bcfbcd5546e41d1c1480fad4">meow::HSLf_Space</a>
@@ -156,7 +156,8 @@ $(document).ready(function(){initNavTree('functions_func_0x6f.html','');});
, <a class="el" href="classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99">meow::Self&lt; Data &gt;</a>
</li>
<li>operator/()
-: <a class="el" href="classmeow_1_1HSLf__Space.html#a88eb3f94b211a3e29c80c334f0f8e963">meow::HSLf_Space</a>
+: <a class="el" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1HSLf__Space.html#a88eb3f94b211a3e29c80c334f0f8e963">meow::HSLf_Space</a>
, <a class="el" href="classmeow_1_1HSVf__Space.html#ae8368184fb8579d83d4f883191b8502e">meow::HSVf_Space</a>
, <a class="el" href="classmeow_1_1RGBi__Space.html#a618ccc99b535547833004fc8d83b14ee">meow::RGBi_Space</a>
, <a class="el" href="classmeow_1_1RGBf__Space.html#a9e1faa7ce3cfefeb07eb7b8051daf932">meow::RGBf_Space</a>
@@ -164,82 +165,84 @@ $(document).ready(function(){initNavTree('functions_func_0x6f.html','');});
, <a class="el" href="classmeow_1_1Vector2D.html#abe7d948febd4ea0faf80be7ffc369692">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#ab19d15aa3ecbe2f2b87ce077a0bd7a46">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>operator/=()
: <a class="el" href="classmeow_1_1Vector2D.html#af164380cbababa279dee2bedb81ec080">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector3D.html#a882b59cc16aaaa5b136dc60d1d6eecbd">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>operator=()
-: <a class="el" href="classmeow_1_1ObjType.html#add76ed06952275dbb3c2ce0176cf0c7b">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#aab9f554d028c13587d29abe0dc5fa1bd">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#a431988ab812016af01e8ab960da9222a">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90">meow::PhotoProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Bitmap.html#aba3ea0e5f48b63363c91ae4168dbd0bb">meow::Bitmap&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a87b0f4542b07951f207a1c9d3e327c81">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#ab97f03da439edeb8834fd6e7a3487f65">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a11beaa0b96effbc990c3d7d3c6922e9a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1Rotation3D.html#a3e0095d1f506d6f11c434d55e454aca6">meow::Rotation3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1MergeableHeap.html#a304bacba11be0772b10505b6053a57e1">meow::MergeableHeap&lt; Element &gt;</a>
, <a class="el" href="classmeow_1_1WatchBall.html#a69948640465200ca8fadc364aad98b23">meow::WatchBall&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#a87b0f4542b07951f207a1c9d3e327c81">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a126d57eee520aa17868ce74112249e12">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
-, <a class="el" href="classmeow_1_1SegmentTree.html#a765e794af604ab7c20a4245dfafcf14c">meow::SegmentTree&lt; Value &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a336dbab9f61ee8196ce4c577a169a927">meow::Vector3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1Rotation3D.html#a3e0095d1f506d6f11c434d55e454aca6">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1BallProjection.html#a8e7e0ddd31c51bbaa934f77aee760f18">meow::BallProjection&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1VP__Tree.html#a7c73bb25b40f440b48267f94fa4561ad">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623">meow::Vector&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Bitmap.html#aba3ea0e5f48b63363c91ae4168dbd0bb">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#a6af08a219ca313ddd086db6d3a8685d7">meow::SplayTree&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1RGBi__Space.html#a6b4567461811d8f877b0234ca6662a76">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1Vector2D.html#a470def2d8b1789e0cbb8ede298893242">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1YUVf__Space.html#acd8f8d7472bfa816669e601243c0c2df">meow::YUVf_Space</a>
-, <a class="el" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675">meow::Self&lt; Data &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#aab9f554d028c13587d29abe0dc5fa1bd">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90">meow::PhotoProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#a11beaa0b96effbc990c3d7d3c6922e9a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#a6af08a219ca313ddd086db6d3a8685d7">meow::SplayTree&lt; Key, Value &gt;::Element</a>
, <a class="el" href="classmeow_1_1Camera.html#adc22e067c44d2cf143c3cf4cba9abdbf">meow::Camera&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623">meow::Vector&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675">meow::Self&lt; Data &gt;</a>
+, <a class="el" href="classmeow_1_1ObjType.html#add76ed06952275dbb3c2ce0176cf0c7b">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
+, <a class="el" href="classmeow_1_1Vector3D.html#a336dbab9f61ee8196ce4c577a169a927">meow::Vector3D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a126d57eee520aa17868ce74112249e12">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#af93643b667895835f97e32e30959ca9e">meow::SplayTree_Range&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#aef1da0d72d3a88851bd805d489fb6ea0">meow::SplayTree&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1HashTableList.html#a9f9493e2044df374ac9e650303fdf212">meow::HashTableList&lt; Data, HashFunc &gt;</a>
-, <a class="el" href="classmeow_1_1HSLf__Space.html#a3d4ccb8d33991e2edb64904669d2a21c">meow::HSLf_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a431988ab812016af01e8ab960da9222a">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1HSVf__Space.html#a96d429221b88c5e568813d8a42c49af0">meow::HSVf_Space</a>
-, <a class="el" href="classmeow_1_1IdentityPoints.html#a8c2bcc67932db294e3b4e9f665ff505d">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1MergeableHeap.html#a304bacba11be0772b10505b6053a57e1">meow::MergeableHeap&lt; Element &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#a2bab58e7d4bb768cd5140db86c448f4c">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range.html#af93643b667895835f97e32e30959ca9e">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#a470def2d8b1789e0cbb8ede298893242">meow::Vector2D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1HSLf__Space.html#a3d4ccb8d33991e2edb64904669d2a21c">meow::HSLf_Space</a>
+, <a class="el" href="classmeow_1_1SegmentTree.html#a765e794af604ab7c20a4245dfafcf14c">meow::SegmentTree&lt; Value &gt;</a>
+, <a class="el" href="classmeow_1_1YUVf__Space.html#acd8f8d7472bfa816669e601243c0c2df">meow::YUVf_Space</a>
+, <a class="el" href="classmeow_1_1IdentityPoints.html#a8c2bcc67932db294e3b4e9f665ff505d">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1HashTableList.html#a9f9493e2044df374ac9e650303fdf212">meow::HashTableList&lt; Data, HashFunc &gt;</a>
+, <a class="el" href="classmeow_1_1VP__Tree.html#a7c73bb25b40f440b48267f94fa4561ad">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
</li>
<li>operator==()
-: <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#aeaf7740977e75749cd8656066d05808b">meow::SplayTree&lt; Key, Value &gt;::Element</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a42f71bf3aa7e009582e628e87763482d">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range_1_1Element.html#a42f71bf3aa7e009582e628e87763482d">meow::SplayTree_Range&lt; Key, Value &gt;::Element</a>
+, <a class="el" href="classmeow_1_1SplayTree_1_1Element.html#aeaf7740977e75749cd8656066d05808b">meow::SplayTree&lt; Key, Value &gt;::Element</a>
, <a class="el" href="structmeow_1_1FeaturePointIndexPair.html#ad4bc29dd8931fa3c6fa8139bb51b7f4a">meow::FeaturePointIndexPair</a>
</li>
<li>operator[]()
-: <a class="el" href="classmeow_1_1ObjDictionary.html#ad22d7c7dc4d35417e9657eb88ca0dfbb">meow::ObjDictionary&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1FeaturePoint.html#a54b483836901fd5ad6b3c115f3afda69">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a9f02a4ccc46616b7923c5834e02d53bc">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a2a4e8bffccdf807bfe6feb9d838ab44d">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1FeaturePoint.html#a54b483836901fd5ad6b3c115f3afda69">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#ad22d7c7dc4d35417e9657eb88ca0dfbb">meow::ObjDictionary&lt; Key, Value &gt;</a>
</li>
<li>operator~()
: <a class="el" href="classmeow_1_1Vector2D.html#ae2fe5b97bf837bc29bb6d819772f4ea0">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>optionAdd()
-: <a class="el" href="classmeow_1_1Usage.html#af5a6f3dc4d2250dce3bd74d3de48714d">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2">meow::Usage</a>
</li>
<li>optionValue()
-: <a class="el" href="classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f">meow::Usage</a>
</li>
<li>optionValueAcceptAdd()
-: <a class="el" href="classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242">meow::Usage</a>
</li>
<li>optionValuesSize()
-: <a class="el" href="classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb">meow::Usage</a>
</li>
<li>order()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#a6e33546a3cb07d56548a1f64aa1fc711">meow::SplayTree_Range&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree.html#ad91ceed4303b4fc5b115b067d304debc">meow::SplayTree&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree.html#ad91ceed4303b4fc5b115b067d304debc">meow::SplayTree&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree__Range.html#a6e33546a3cb07d56548a1f64aa1fc711">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>outputCols()
-: <a class="el" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8">meow::Transformation&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad">meow::TransformatePipeline&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Transformation.html#a45fb012c3276a37a71805590ab3d75a8">meow::Transformation&lt; Scalar &gt;</a>
</li>
<li>outputRows()
: <a class="el" href="classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af">meow::Transformation&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>override()
: <a class="el" href="classmeow_1_1SegmentTree.html#a2f300a5fd5ffdd19e4b3efc6899a7439">meow::SegmentTree&lt; Value &gt;</a>
@@ -251,7 +254,7 @@ $(document).ready(function(){initNavTree('functions_func_0x6f.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x70.html b/doc/html/functions_func_0x70.html
index 0d5c9a7..cfab1d6 100644
--- a/doc/html/functions_func_0x70.html
+++ b/doc/html/functions_func_0x70.html
@@ -107,9 +107,15 @@ $(document).ready(function(){initNavTree('functions_func_0x70.html','');});
<li>PhotoProjection()
: <a class="el" href="classmeow_1_1PhotoProjection.html#a902922d6be5fcb6ce2ce563031913e36">meow::PhotoProjection&lt; Scalar &gt;</a>
</li>
+<li>pipe()
+: <a class="el" href="classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
+<li>Pipeline()
+: <a class="el" href="classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>pixel()
: <a class="el" href="classmeow_1_1Bitmap.html#ac8f41ae97e068549565e9ac83ffef888">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1Photo.html#a38c943a8bd30b309a8042599dcf9f1e7">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Photo.html#a3489796a4101da9291fff280cb89728e">meow::Photo&lt; Pixel &gt;</a>
</li>
<li>pixels()
: <a class="el" href="classmeow_1_1Bitmap.html#a17f92dec30f314d832f040257d6d5584">meow::Bitmap&lt; Pixel &gt;</a>
@@ -127,9 +133,9 @@ $(document).ready(function(){initNavTree('functions_func_0x70.html','');});
: <a class="el" href="classmeow_1_1FeaturePoint.html#adb4e1f091fb82cdb2fbb6ed50bd3415a">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
</li>
<li>positive()
-: <a class="el" href="classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2">meow::Vector2D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector3D.html#a8fc395992d84b816307f72026d1e7125">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#a8fc395992d84b816307f72026d1e7125">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc">meow::Matrix&lt; Entry &gt;</a>
+, <a class="el" href="classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2">meow::Vector2D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>procArg()
@@ -142,7 +148,7 @@ $(document).ready(function(){initNavTree('functions_func_0x70.html','');});
: <a class="el" href="classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752">meow::Usage</a>
</li>
<li>properties()
-: <a class="el" href="classmeow_1_1ObjProperties.html#af14e8afbd6807b61429d4f84291d6cee">meow::ObjProperties&lt; SID &gt;</a>
+: <a class="el" href="classmeow_1_1ObjProperties.html#a43ce997788ca81603e881a22285fd307">meow::ObjProperties&lt; SID &gt;</a>
</li>
<li>property()
: <a class="el" href="classmeow_1_1ObjProperties.html#af20d23e32a6658bb19685540c65c6a3a">meow::ObjProperties&lt; SID &gt;</a>
@@ -175,7 +181,7 @@ $(document).ready(function(){initNavTree('functions_func_0x70.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x71.html b/doc/html/functions_func_0x71.html
index 90c3b0b..d939e07 100644
--- a/doc/html/functions_func_0x71.html
+++ b/doc/html/functions_func_0x71.html
@@ -71,7 +71,7 @@ $(document).ready(function(){initNavTree('functions_func_0x71.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x72.html b/doc/html/functions_func_0x72.html
index 7a0b2c3..1b09a13 100644
--- a/doc/html/functions_func_0x72.html
+++ b/doc/html/functions_func_0x72.html
@@ -95,7 +95,8 @@ $(document).ready(function(){initNavTree('functions_func_0x72.html','');});
, <a class="el" href="classmeow_1_1ObjArray.html#aa09ddb0d17ebb93520b211dc29ad2904">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1ObjDictionary.html#ab0a4c64950a5a89012a913202fac027b">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1ObjType.html#a14617b585e4b852ab63321ad0af076e7">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
-, <a class="el" href="classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f">meow::Self&lt; Data &gt;</a>
+, <a class="el" href="classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d">meow::Self&lt; Data &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#affd5f41b44fa6afc55f2a3eb3f01cc4d">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#ae00aa539b7d6be9254db1072627d204e">meow::Camera&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePoint.html#af5e944e79a1dfe6644fe429577734bc4">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
@@ -119,21 +120,22 @@ $(document).ready(function(){initNavTree('functions_func_0x72.html','');});
, <a class="el" href="classmeow_1_1Vector3D.html#af4f968f581bfbcf57afcd1bbf1d3bee2">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>reset()
-: <a class="el" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1Bitmap.html#ae7bcc670d666a784d6e5e8f14b74aa3d">meow::Bitmap&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Photo.html#a4d237ed59e6227940c20831cdce797a8">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1VP__Tree.html#ad1bffde18bc2f0fc955e78fe77333558">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1BinaryIndexTree.html#a5634a9420ee864860bbf8605b9e17c32">meow::BinaryIndexTree&lt; Value &gt;</a>
, <a class="el" href="classmeow_1_1DisjointSet.html#a232841a6d2daeb2b974cd7cb7fe6bfb7">meow::DisjointSet</a>
, <a class="el" href="classmeow_1_1HashTableList.html#ac7417270658997ef1cb33221fba8d6e8">meow::HashTableList&lt; Data, HashFunc &gt;</a>
, <a class="el" href="classmeow_1_1KD__Tree.html#a45be7cf06442b1a75902faa266950121">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1SegmentTree.html#a80c550b0a3b997bc541ae0947ae2f55d">meow::SegmentTree&lt; Value &gt;</a>
-, <a class="el" href="classmeow_1_1VP__Tree.html#ad1bffde18bc2f0fc955e78fe77333558">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Bitmap.html#ae7bcc670d666a784d6e5e8f14b74aa3d">meow::Bitmap&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#ab5a901c44b8c5523def9b40f27a5fda3">meow::Photo&lt; Pixel &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>rgb()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a0410f516652c05e244ba222bcefc0283">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a98433b465ab530b4ac90232726604d16">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#a98433b465ab530b4ac90232726604d16">meow::RGBf_Space</a>
, <a class="el" href="classmeow_1_1RGBi__Space.html#ab07979f6a7b9f6a45b75a6393ee6c385">meow::RGBi_Space</a>
, <a class="el" href="classmeow_1_1RGBf__Space.html#aeffa5f21171d32f9b1e1528707aac42b">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a0410f516652c05e244ba222bcefc0283">meow::RGBi_Space</a>
</li>
<li>RGBf_Space()
: <a class="el" href="classmeow_1_1RGBf__Space.html#ad7cb69aace8c4ee0197d5eca0aa89c66">meow::RGBf_Space</a>
@@ -143,11 +145,11 @@ $(document).ready(function(){initNavTree('functions_func_0x72.html','');});
, <a class="el" href="classmeow_1_1RGBf__Space.html#a2a2a36035097c796da37667ab737aaff">meow::RGBf_Space</a>
</li>
<li>RGBi_Space()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a9eb77a74b33dd6c61f821ad9e1f5d00d">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#a338d7a18013b78132b4dd534bbef7406">meow::RGBi_Space</a>
</li>
<li>rgbMax()
-: <a class="el" href="classmeow_1_1RGBi__Space.html#a40f228f22ec8c35947a61d51a0e4c1fd">meow::RGBi_Space</a>
-, <a class="el" href="classmeow_1_1RGBf__Space.html#a6b4da76d0c83cb321f61fb6387932203">meow::RGBf_Space</a>
+: <a class="el" href="classmeow_1_1RGBf__Space.html#a6b4da76d0c83cb321f61fb6387932203">meow::RGBf_Space</a>
+, <a class="el" href="classmeow_1_1RGBi__Space.html#a40f228f22ec8c35947a61d51a0e4c1fd">meow::RGBi_Space</a>
</li>
<li>rgbMin()
: <a class="el" href="classmeow_1_1RGBf__Space.html#a33dd8ebb5015faa8540e67e51ea68e4f">meow::RGBf_Space</a>
@@ -165,8 +167,8 @@ $(document).ready(function(){initNavTree('functions_func_0x72.html','');});
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a05057d5df92737104b7431b4203cac11">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>rMax()
-: <a class="el" href="classmeow_1_1RGBf__Space.html#af473ccd4b8202097640ba9f19428caef">meow::RGBf_Space</a>
-, <a class="el" href="classmeow_1_1RGBi__Space.html#a93000ad239423bb98dda22c8d48bc614">meow::RGBi_Space</a>
+: <a class="el" href="classmeow_1_1RGBi__Space.html#a93000ad239423bb98dda22c8d48bc614">meow::RGBi_Space</a>
+, <a class="el" href="classmeow_1_1RGBf__Space.html#af473ccd4b8202097640ba9f19428caef">meow::RGBf_Space</a>
</li>
<li>rMin()
: <a class="el" href="classmeow_1_1RGBf__Space.html#aee2f300ff0ae724890d3d80d0cb7cbc3">meow::RGBf_Space</a>
@@ -180,11 +182,11 @@ $(document).ready(function(){initNavTree('functions_func_0x72.html','');});
, <a class="el" href="classmeow_1_1Vector2D.html#aa6ae22d99360ff9e0b623e1744576733">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>rotated()
-: <a class="el" href="classmeow_1_1Vector3D.html#a27a06ec4ab5e4f6d3d59eeffa5a31617">meow::Vector3D&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1Vector2D.html#af3fd0ff1b8f9ca6df82b8659cadafb7d">meow::Vector2D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector2D.html#af3fd0ff1b8f9ca6df82b8659cadafb7d">meow::Vector2D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector3D.html#a27a06ec4ab5e4f6d3d59eeffa5a31617">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>rotation()
-: <a class="el" href="classmeow_1_1Camera.html#a1dc458ca5ce2e2f441e6601d7223d370">meow::Camera&lt; Pixel &gt;</a>
+: <a class="el" href="classmeow_1_1Camera.html#aba398741215e99868380dff84e6aaee3">meow::Camera&lt; Pixel &gt;</a>
</li>
<li>Rotation3D()
: <a class="el" href="classmeow_1_1Rotation3D.html#a90c102c7f74e8a36ac0d24bef6b06337">meow::Rotation3D&lt; Scalar &gt;</a>
@@ -199,8 +201,8 @@ $(document).ready(function(){initNavTree('functions_func_0x72.html','');});
: <a class="el" href="classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325">meow::Matrix&lt; Entry &gt;</a>
</li>
<li>rUpperBound()
-: <a class="el" href="classmeow_1_1SplayTree.html#a7e4eb9104cd7a2c01cda7e0a19c55cbe">meow::SplayTree&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1SplayTree__Range.html#ae0f6543101ce4864257b93786c21a5c8">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range.html#ae0f6543101ce4864257b93786c21a5c8">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1SplayTree.html#a7e4eb9104cd7a2c01cda7e0a19c55cbe">meow::SplayTree&lt; Key, Value &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -209,7 +211,7 @@ $(document).ready(function(){initNavTree('functions_func_0x72.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x73.html b/doc/html/functions_func_0x73.html
index 3e69980..9cdab11 100644
--- a/doc/html/functions_func_0x73.html
+++ b/doc/html/functions_func_0x73.html
@@ -70,29 +70,30 @@ $(document).ready(function(){initNavTree('functions_func_0x73.html','');});
: <a class="el" href="classmeow_1_1SegmentTree.html#a8e8365f0440c68f3c0853b94a7de3ccb">meow::SegmentTree&lt; Value &gt;</a>
</li>
<li>Self()
-: <a class="el" href="classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937">meow::Self&lt; Data &gt;</a>
+: <a class="el" href="classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d">meow::Self&lt; Data &gt;</a>
</li>
<li>sGet()
-: <a class="el" href="classmeow_1_1HSLf__Space.html#adb7cc82245b20e389d02224ac99444f2">meow::HSLf_Space</a>
-, <a class="el" href="classmeow_1_1HSVf__Space.html#aa3a78aa9771124051ddeb73ecc0ae3c2">meow::HSVf_Space</a>
+: <a class="el" href="classmeow_1_1HSVf__Space.html#aa3a78aa9771124051ddeb73ecc0ae3c2">meow::HSVf_Space</a>
+, <a class="el" href="classmeow_1_1HSLf__Space.html#adb7cc82245b20e389d02224ac99444f2">meow::HSLf_Space</a>
</li>
<li>size()
-: <a class="el" href="classmeow_1_1HashTableList.html#af8d49492c5f35bb18706e9fb72d18157">meow::HashTableList&lt; Data, HashFunc &gt;</a>
+: <a class="el" href="classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+, <a class="el" href="classmeow_1_1DisjointSet.html#a1738123f2c0456bec373d4a8422d62b5">meow::DisjointSet</a>
+, <a class="el" href="classmeow_1_1HashTableList.html#af8d49492c5f35bb18706e9fb72d18157">meow::HashTableList&lt; Data, HashFunc &gt;</a>
, <a class="el" href="classmeow_1_1MergeableHeap.html#a112454a9c92b71531429442e95953576">meow::MergeableHeap&lt; Element &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#a0e265133214bd6b9f0dce6ce6dc6ca23">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SegmentTree.html#a8985a196cfb954bc469e7dae146ad4ed">meow::SegmentTree&lt; Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree.html#a40b663d34933b258e667f9205f469fdc">meow::SplayTree&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1SplayTree__Range.html#afce0f36427e9105a3405176ed4eddf58">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+, <a class="el" href="classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#a13b986e9310eb100c100fd62fa548233">meow::Bitmap&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#ab77633d00d8e75f1e6dd548c07d780fe">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1IdentityPoints.html#a48e856fca0660a5f56a13ccea992e3ea">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c">meow::Matrix&lt; Entry &gt;</a>
, <a class="el" href="classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01">meow::ObjArray&lt; T &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#a0e265133214bd6b9f0dce6ce6dc6ca23">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1DisjointSet.html#a1738123f2c0456bec373d4a8422d62b5">meow::DisjointSet</a>
</li>
<li>sMax()
-: <a class="el" href="classmeow_1_1HSVf__Space.html#a2aedcabd4c079b5662502642c919b974">meow::HSVf_Space</a>
-, <a class="el" href="classmeow_1_1HSLf__Space.html#ac04d25efca77d6e53ddb5de801593ea2">meow::HSLf_Space</a>
+: <a class="el" href="classmeow_1_1HSLf__Space.html#ac04d25efca77d6e53ddb5de801593ea2">meow::HSLf_Space</a>
+, <a class="el" href="classmeow_1_1HSVf__Space.html#a2aedcabd4c079b5662502642c919b974">meow::HSVf_Space</a>
</li>
<li>sMin()
: <a class="el" href="classmeow_1_1HSLf__Space.html#aa6f73697310484b178c2dac3acdf4f4b">meow::HSLf_Space</a>
@@ -102,7 +103,7 @@ $(document).ready(function(){initNavTree('functions_func_0x73.html','');});
: <a class="el" href="classmeow_1_1SplayTree.html#a640cec3815f70c0a7eac811d7272c637">meow::SplayTree&lt; Key, Value &gt;</a>
</li>
<li>SplayTree_Range()
-: <a class="el" href="classmeow_1_1SplayTree__Range.html#acf3c8d90ff38a210ed9d64dd365d5e93">meow::SplayTree_Range&lt; Key, Value &gt;</a>
+: <a class="el" href="classmeow_1_1SplayTree__Range.html#aa5a5c774d04721cbe038ec883c01737a">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>splitOut()
: <a class="el" href="classmeow_1_1SplayTree.html#a36a55daf9150ae2d866075dedf1d583d">meow::SplayTree&lt; Key, Value &gt;</a>
@@ -111,8 +112,8 @@ $(document).ready(function(){initNavTree('functions_func_0x73.html','');});
<li>sub()
: <a class="el" href="classmeow_1_1Vector3D.html#ab509fd9ef3b79fb13cc04cfec798dcc2">meow::Vector3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c">meow::Matrix&lt; Entry &gt;</a>
-, <a class="el" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533">meow::Vector&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Vector2D.html#ad7b3e23827cfc3db7fbcc12c70db398a">meow::Vector2D&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533">meow::Vector&lt; Scalar &gt;</a>
</li>
<li>subed()
: <a class="el" href="classmeow_1_1Vector2D.html#a274c5cd3e139978539655a0191f03579">meow::Vector2D&lt; Scalar &gt;</a>
@@ -131,7 +132,7 @@ $(document).ready(function(){initNavTree('functions_func_0x73.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x74.html b/doc/html/functions_func_0x74.html
index c9a2a53..c030492 100644
--- a/doc/html/functions_func_0x74.html
+++ b/doc/html/functions_func_0x74.html
@@ -67,15 +67,19 @@ $(document).ready(function(){initNavTree('functions_func_0x74.html','');});
: <a class="el" href="classmeow_1_1MergeableHeap.html#a7daf99f9cc15f0cfa2625da4623b9042">meow::MergeableHeap&lt; Element &gt;</a>
</li>
<li>transformate()
-: <a class="el" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f">meow::PhotoProjection&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1BallProjection.html#a2573c364dd1e0d7de32b1e2afc0bb1b5">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f">meow::PhotoProjection&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Rotation3D.html#a566ebd46881ef0165aab55a4cf4ca169">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#aa0c299b9ad13020a9eb460de01378ddc">meow::Transformation&lt; Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1BallProjection.html#a2573c364dd1e0d7de32b1e2afc0bb1b5">meow::BallProjection&lt; Scalar &gt;</a>
+, <a class="el" href="classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855">meow::TransformatePipeline&lt; Scalar &gt;</a>
</li>
<li>transformateInv()
: <a class="el" href="classmeow_1_1Rotation3D.html#aa872f44ce5b53faadddc9493697cfe13">meow::Rotation3D&lt; Scalar &gt;</a>
, <a class="el" href="classmeow_1_1Transformation.html#aa9a476c677e7efc805c0fbdccfb48b38">meow::Transformation&lt; Scalar &gt;</a>
</li>
+<li>TransformatePipeline()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
<li>Transformation()
: <a class="el" href="classmeow_1_1Transformation.html#a129b2465033d0f6c8f57e4ee36c52b6c">meow::Transformation&lt; Scalar &gt;</a>
</li>
@@ -85,6 +89,9 @@ $(document).ready(function(){initNavTree('functions_func_0x74.html','');});
<li>transposed()
: <a class="el" href="classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304">meow::Matrix&lt; Entry &gt;</a>
</li>
+<li>TransrormatePipeline()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
<li>triangular()
: <a class="el" href="classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56">meow::Matrix&lt; Entry &gt;</a>
</li>
@@ -93,17 +100,17 @@ $(document).ready(function(){initNavTree('functions_func_0x74.html','');});
</li>
<li>type()
: <a class="el" href="classmeow_1_1FeaturePoint.html#ab6ee7c5a267d5c64e3b021b0397880d1">meow::FeaturePoint&lt; Scalar, Description &gt;</a>
-, <a class="el" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c">meow::ObjArray&lt; T &gt;</a>
, <a class="el" href="classmeow_1_1WatchBall.html#ab8478f0460b456da11863ab9e7542bd1">meow::WatchBall&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1Photo.html#a84cf3012af5e67b4aafc1ee7eafd70d1">meow::Photo&lt; Pixel &gt;</a>
-, <a class="el" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c">meow::ObjDictionary&lt; Key, Value &gt;</a>
-, <a class="el" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">meow::ObjProperties&lt; SID &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#ab10e50514ac4b0de505800b1894dbb0a">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
+, <a class="el" href="classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c">meow::ObjArray&lt; T &gt;</a>
+, <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>
+, <a class="el" href="classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84">meow::ObjProperties&lt; SID &gt;</a>
+, <a class="el" href="classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c">meow::ObjDictionary&lt; Key, Value &gt;</a>
, <a class="el" href="classmeow_1_1Camera.html#ae009c09a5e6b5ebdab09dd304f2eca32">meow::Camera&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae13f041624113e4b87d49befc2e1d77a">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
, <a class="el" href="classmeow_1_1IdentityPoints.html#a6ce521c18a45b50bd8b75201480b97f7">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
-, <a class="el" href="classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72">meow::ObjBase</a>
+, <a class="el" href="classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f">meow::ObjType&lt; Type, ReaderWriter &gt;</a>
, <a class="el" href="classmeow_1_1Bitmap.html#a7f282d9a1ebb07ca5fe12d8ae73121d1">meow::Bitmap&lt; Pixel &gt;</a>
</li>
<li>typeBase()
@@ -116,7 +123,7 @@ $(document).ready(function(){initNavTree('functions_func_0x74.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x75.html b/doc/html/functions_func_0x75.html
index e7bf4e9..2811254 100644
--- a/doc/html/functions_func_0x75.html
+++ b/doc/html/functions_func_0x75.html
@@ -78,11 +78,14 @@ $(document).ready(function(){initNavTree('functions_func_0x75.html','');});
, <a class="el" href="classmeow_1_1SplayTree__Range.html#a492f68ede1f6423590ec2bfa3f839ab0">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
<li>Usage()
-: <a class="el" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400">meow::Usage</a>
+: <a class="el" href="classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649">meow::Usage</a>
</li>
<li>usage()
: <a class="el" href="classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99">meow::Usage</a>
</li>
+<li>Usage()
+: <a class="el" href="classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400">meow::Usage</a>
+</li>
<li>usageBeginAdd()
: <a class="el" href="classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709">meow::Usage</a>
</li>
@@ -96,7 +99,7 @@ $(document).ready(function(){initNavTree('functions_func_0x75.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x76.html b/doc/html/functions_func_0x76.html
index c3afdcf..42d2446 100644
--- a/doc/html/functions_func_0x76.html
+++ b/doc/html/functions_func_0x76.html
@@ -90,22 +90,22 @@ $(document).ready(function(){initNavTree('functions_func_0x76.html','');});
: <a class="el" href="classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda">meow::Vector2D&lt; Scalar &gt;</a>
</li>
<li>Vector3D()
-: <a class="el" href="classmeow_1_1Vector3D.html#a360cc4bdfaca40a1b9e80590dd13e523">meow::Vector3D&lt; Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1Vector3D.html#afae72511a31b5260ee93130d0654093f">meow::Vector3D&lt; Scalar &gt;</a>
</li>
<li>vGet()
-: <a class="el" href="classmeow_1_1YUVf__Space.html#a99e8bb42edb254ed1415f55ef1558ab0">meow::YUVf_Space</a>
-, <a class="el" href="classmeow_1_1HSVf__Space.html#a681393735e63a1de944373b071ebef18">meow::HSVf_Space</a>
+: <a class="el" href="classmeow_1_1HSVf__Space.html#a681393735e63a1de944373b071ebef18">meow::HSVf_Space</a>
+, <a class="el" href="classmeow_1_1YUVf__Space.html#a99e8bb42edb254ed1415f55ef1558ab0">meow::YUVf_Space</a>
</li>
<li>vMax()
-: <a class="el" href="classmeow_1_1YUVf__Space.html#a3b168dd8186710b014f2e1d1b5ee1c63">meow::YUVf_Space</a>
-, <a class="el" href="classmeow_1_1HSVf__Space.html#ad603b398c6e50a238a87c0aad890ab2c">meow::HSVf_Space</a>
+: <a class="el" href="classmeow_1_1HSVf__Space.html#ad603b398c6e50a238a87c0aad890ab2c">meow::HSVf_Space</a>
+, <a class="el" href="classmeow_1_1YUVf__Space.html#a3b168dd8186710b014f2e1d1b5ee1c63">meow::YUVf_Space</a>
</li>
<li>vMin()
: <a class="el" href="classmeow_1_1YUVf__Space.html#aba01d6b8d0d8840d0132ccd6b43d8c0c">meow::YUVf_Space</a>
, <a class="el" href="classmeow_1_1HSVf__Space.html#afb8087a590e96a0da95793acf5d0228e">meow::HSVf_Space</a>
</li>
<li>VP_Tree()
-: <a class="el" href="classmeow_1_1VP__Tree.html#a1f301f751afe7baf5eafe6964c6a7a15">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
+: <a class="el" href="classmeow_1_1VP__Tree.html#a5ce274e16a28c6ef5cac63c6e3258d8b">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
</li>
</ul>
</div><!-- contents -->
@@ -114,7 +114,7 @@ $(document).ready(function(){initNavTree('functions_func_0x76.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x77.html b/doc/html/functions_func_0x77.html
index a677ce3..0928e31 100644
--- a/doc/html/functions_func_0x77.html
+++ b/doc/html/functions_func_0x77.html
@@ -92,7 +92,7 @@ $(document).ready(function(){initNavTree('functions_func_0x77.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x78.html b/doc/html/functions_func_0x78.html
index 7512df2..95cae79 100644
--- a/doc/html/functions_func_0x78.html
+++ b/doc/html/functions_func_0x78.html
@@ -78,7 +78,7 @@ $(document).ready(function(){initNavTree('functions_func_0x78.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x79.html b/doc/html/functions_func_0x79.html
index 38d1918..878838f 100644
--- a/doc/html/functions_func_0x79.html
+++ b/doc/html/functions_func_0x79.html
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('functions_func_0x79.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x7a.html b/doc/html/functions_func_0x7a.html
index 12793af..51f4469 100644
--- a/doc/html/functions_func_0x7a.html
+++ b/doc/html/functions_func_0x7a.html
@@ -70,7 +70,7 @@ $(document).ready(function(){initNavTree('functions_func_0x7a.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_func_0x7e.html b/doc/html/functions_func_0x7e.html
index 3caf78a..228a617 100644
--- a/doc/html/functions_func_0x7e.html
+++ b/doc/html/functions_func_0x7e.html
@@ -106,6 +106,9 @@ $(document).ready(function(){initNavTree('functions_func_0x7e.html','');});
<li>~Matrix()
: <a class="el" href="classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e">meow::Matrix&lt; Entry &gt;</a>
</li>
+<li>~MediumInfo()
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a2cf1d9e410e152bc045017d966fa3e52">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
+</li>
<li>~MergeableHeap()
: <a class="el" href="classmeow_1_1MergeableHeap.html#a24a0a465dff230206e85f7b3c172553f">meow::MergeableHeap&lt; Element &gt;</a>
</li>
@@ -130,6 +133,9 @@ $(document).ready(function(){initNavTree('functions_func_0x7e.html','');});
<li>~Photo()
: <a class="el" href="classmeow_1_1Photo.html#ad3ba33208243966fe72db6c3a519e22d">meow::Photo&lt; Pixel &gt;</a>
</li>
+<li>~Pipeline()
+: <a class="el" href="classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>~RGBf_Space()
: <a class="el" href="classmeow_1_1RGBf__Space.html#ab47d10e634067bbb0b7152d0f50b42a0">meow::RGBf_Space</a>
</li>
@@ -148,6 +154,9 @@ $(document).ready(function(){initNavTree('functions_func_0x7e.html','');});
<li>~SplayTree_Range()
: <a class="el" href="classmeow_1_1SplayTree__Range.html#afa919ebbc8feedc4c2ed2185d6207261">meow::SplayTree_Range&lt; Key, Value &gt;</a>
</li>
+<li>~TransformatePipeline()
+: <a class="el" href="classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09">meow::TransformatePipeline&lt; Scalar &gt;</a>
+</li>
<li>~Transformation()
: <a class="el" href="classmeow_1_1Transformation.html#a96471a49fe0b9737ad5b98b8e917385e">meow::Transformation&lt; Scalar &gt;</a>
</li>
@@ -176,7 +185,7 @@ $(document).ready(function(){initNavTree('functions_func_0x7e.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_rela.html b/doc/html/functions_rela.html
index 9efd231..7facb76 100644
--- a/doc/html/functions_rela.html
+++ b/doc/html/functions_rela.html
@@ -65,7 +65,7 @@ $(document).ready(function(){initNavTree('functions_rela.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_type.html b/doc/html/functions_type.html
index 577e18b..bb1b98e 100644
--- a/doc/html/functions_type.html
+++ b/doc/html/functions_type.html
@@ -58,6 +58,12 @@ $(document).ready(function(){initNavTree('functions_type.html','');});
<li>Cameras
: <a class="el" href="classmeow_1_1WatchBall.html#a1626a844f77feebc5f0f71bcd71bf20c">meow::WatchBall&lt; Pixel &gt;</a>
</li>
+<li>EntryRef
+: <a class="el" href="classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e">meow::Matrix&lt; Entry &gt;</a>
+</li>
+<li>EntryRefK
+: <a class="el" href="classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981">meow::Matrix&lt; Entry &gt;</a>
+</li>
<li>FeaturePoints
: <a class="el" href="classmeow_1_1FeaturePointsMatch.html#aabbd59cc0e43b1b436f9e61205d39e72">meow::FeaturePointsMatch&lt; Scalar, Description &gt;</a>
, <a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html#aa32d28d84f9b83a28d2fa2d2c2cb8244">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a>
@@ -78,12 +84,21 @@ $(document).ready(function(){initNavTree('functions_type.html','');});
<li>IdentityPointsMapIterK
: <a class="el" href="classmeow_1_1IdentityPoints.html#a577f4fbc69ba3a99d2b0deabcdd1f72c">meow::IdentityPoints&lt; ID, Scalar &gt;</a>
</li>
+<li>MediumPointerIteratorK
+: <a class="el" href="classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356">meow::Pipeline&lt; Input, Output, Medium &gt;</a>
+</li>
<li>MyFeaturePoint
: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#a6d7cd13c351d03b759fc007da55533bd">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
</li>
<li>MyFeaturePoints
: <a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html#ae965b4c2726644be2310cbf153ec8343">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a>
</li>
+<li>ScalarRef
+: <a class="el" href="classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30">meow::Vector&lt; Scalar &gt;</a>
+</li>
+<li>ScalarRefK
+: <a class="el" href="classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050">meow::Vector&lt; Scalar &gt;</a>
+</li>
<li>Vectors
: <a class="el" href="classmeow_1_1KD__Tree.html#afc143e90dba569c51b6eb146ba9df7f8">meow::KD_Tree&lt; Vector, Scalar &gt;</a>
, <a class="el" href="classmeow_1_1VP__Tree.html#a02c136810876c8713b9760aa8bb51aa4">meow::VP_Tree&lt; Vector, Scalar &gt;</a>
@@ -95,7 +110,7 @@ $(document).ready(function(){initNavTree('functions_type.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html
index e15570f..8b0c2ff 100644
--- a/doc/html/functions_vars.html
+++ b/doc/html/functions_vars.html
@@ -55,6 +55,12 @@ $(document).ready(function(){initNavTree('functions_vars.html','');});
<div id="doc-content">
<div class="contents">
&#160;<ul>
+<li>autoDel_
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
+</li>
+<li>counter_
+: <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>
+</li>
<li>from
: <a class="el" href="structmeow_1_1FeaturePointIndexPair.html#af0c72f723fbe96c29b36295e6e3ac5bc">meow::FeaturePointIndexPair</a>
</li>
@@ -77,7 +83,7 @@ $(document).ready(function(){initNavTree('functions_vars.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/globals.html b/doc/html/globals.html
index 3477660..d7c4834 100644
--- a/doc/html/globals.html
+++ b/doc/html/globals.html
@@ -64,6 +64,9 @@ $(document).ready(function(){initNavTree('globals.html','');});
<li>FPMKM
: <a class="el" href="FeaturePointsMatch__K__Match_8h.html#a58e89d43a69e628ede9275899ef6ebbb">FeaturePointsMatch_K_Match.h</a>
</li>
+<li>MySuper
+: <a class="el" href="Transformation_8h.html#aa667de06e306f0a462ae44fe3614f1e5">Transformation.h</a>
+</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
@@ -71,7 +74,7 @@ $(document).ready(function(){initNavTree('globals.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/globals_defs.html b/doc/html/globals_defs.html
index 963a2fd..0422829 100644
--- a/doc/html/globals_defs.html
+++ b/doc/html/globals_defs.html
@@ -64,6 +64,9 @@ $(document).ready(function(){initNavTree('globals_defs.html','');});
<li>FPMKM
: <a class="el" href="FeaturePointsMatch__K__Match_8h.html#a58e89d43a69e628ede9275899ef6ebbb">FeaturePointsMatch_K_Match.h</a>
</li>
+<li>MySuper
+: <a class="el" href="Transformation_8h.html#aa667de06e306f0a462ae44fe3614f1e5">Transformation.h</a>
+</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
@@ -71,7 +74,7 @@ $(document).ready(function(){initNavTree('globals_defs.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/globals_func.html b/doc/html/globals_func.html
new file mode 100644
index 0000000..d9a877b
--- /dev/null
+++ b/doc/html/globals_func.html
@@ -0,0 +1,101 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: File Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func.html','');});
+</script>
+<div id="doc-content">
+<div class="contents">
+&#160;<ul>
+<li>backAdd()
+: <a class="el" href="Pipeline_8h.html#a868e43772f00b1b9030f73b3d3f89198">Pipeline.h</a>
+</li>
+<li>copyFrom()
+: <a class="el" href="Pipeline_8h.html#a2df7f0b8212f0aa219d31cb177ef22f9">Pipeline.h</a>
+</li>
+<li>frontAdd()
+: <a class="el" href="Pipeline_8h.html#a6e2c488fbe7fa29a68d885718d0743e3">Pipeline.h</a>
+</li>
+<li>goThrough()
+: <a class="el" href="Pipeline_8h.html#a8f10b5721b3eefe3499e083280ab1edc">Pipeline.h</a>
+</li>
+<li>goThroughInv()
+: <a class="el" href="Pipeline_8h.html#aa6019f040a00155eafd9c9366359d2a1">Pipeline.h</a>
+</li>
+<li>inversable()
+: <a class="el" href="Pipeline_8h.html#a4f062547760bb644fd0974eb6a95c488">Pipeline.h</a>
+</li>
+<li>operator=()
+: <a class="el" href="Pipeline_8h.html#a504a591a2a351b629494d06f2bf7c7a0">Pipeline.h</a>
+</li>
+<li>Pipeline()
+: <a class="el" href="Pipeline_8h.html#ad65fd2f7a9f10d4aa9c28847fa0cd82d">Pipeline.h</a>
+</li>
+<li>referenceFrom()
+: <a class="el" href="Pipeline_8h.html#ac8661c8eb5b76078f98cb04ef8878ed8">Pipeline.h</a>
+</li>
+<li>~Pipeline()
+: <a class="el" href="Pipeline_8h.html#a037a831baec68db11624646b745ba89a">Pipeline.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:24 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_vars.html b/doc/html/globals_vars.html
new file mode 100644
index 0000000..ce464b0
--- /dev/null
+++ b/doc/html/globals_vars.html
@@ -0,0 +1,74 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: File Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_vars.html','');});
+</script>
+<div id="doc-content">
+<div class="contents">
+&#160;<ul>
+<li>self
+: <a class="el" href="Pipeline_8h.html#a364390e466e81a8e511d4a87d5d17766">Pipeline.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:24 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/group__gp1.html b/doc/html/group__gp1.html
new file mode 100644
index 0000000..1e748d7
--- /dev/null
+++ b/doc/html/group__gp1.html
@@ -0,0 +1,83 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Gp1</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__gp1.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">Gp1</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacemeow"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemeow.html">meow</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>lalala </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Thu Jun 5 2014 09:10:31 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/group__gp1.js b/doc/html/group__gp1.js
new file mode 100644
index 0000000..46c73b0
--- /dev/null
+++ b/doc/html/group__gp1.js
@@ -0,0 +1,4 @@
+var group__gp1 =
+[
+ [ "meow", "namespacemeow.html", null ]
+]; \ No newline at end of file
diff --git a/doc/html/hierarchy.html b/doc/html/hierarchy.html
index 58f2fdb..66a0c79 100644
--- a/doc/html/hierarchy.html
+++ b/doc/html/hierarchy.html
@@ -80,57 +80,61 @@ $(document).ready(function(){initNavTree('hierarchy.html','');});
<tr id="row_12_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Matrix.html" target="_self">meow::Matrix&lt; double &gt;</a></td><td class="desc"></td></tr>
<tr id="row_13_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Matrix.html" target="_self">meow::Matrix&lt; Pixel &gt;</a></td><td class="desc"></td></tr>
<tr id="row_14_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Matrix.html" target="_self">meow::Matrix&lt; Scalar &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_15_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1MergeableHeap.html" target="_self">meow::MergeableHeap&lt; Element &gt;</a></td><td class="desc">一個用 <b>左偏樹</b> 實作的 <code>Maximum-Heap</code> , 除了原本heap有的功能外, 還支援 <code>merge</code> 功能</td></tr>
-<tr id="row_16_"><td class="entry"><img id="arr_16_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('16_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjBase.html" target="_self">meow::ObjBase</a></td><td class="desc">一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能</td></tr>
-<tr id="row_16_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1IdentityPoints.html" target="_self">meow::IdentityPoints&lt; int, double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_16_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Bitmap.html" target="_self">meow::Bitmap&lt; Pixel &gt;</a></td><td class="desc">二維點陣資料</td></tr>
-<tr id="row_16_2_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Camera.html" target="_self">meow::Camera&lt; Pixel &gt;</a></td><td class="desc"><a class="el" href="classmeow_1_1Camera.html" title="Camera.">Camera</a></td></tr>
-<tr id="row_16_3_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePoint.html" target="_self">meow::FeaturePoint&lt; Scalar, Description &gt;</a></td><td class="desc">特徵點</td></tr>
-<tr id="row_16_4_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_16_4_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('16_4_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsDetector.html" target="_self">meow::FeaturePointsDetector&lt; Pixel &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_16_4_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html" target="_self">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a></td><td class="desc">Harris corner detect</td></tr>
-<tr id="row_16_5_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_16_5_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('16_5_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsMatch.html" target="_self">meow::FeaturePointsMatch&lt; Scalar, Description &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_16_5_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html" target="_self">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_16_6_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1IdentityPoints.html" target="_self">meow::IdentityPoints&lt; ID, Scalar &gt;</a></td><td class="desc">把一個 <code>std::map&lt;ID</code>,Vector&lt;Scalar&gt; &gt; 包起來</td></tr>
-<tr id="row_16_7_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjArray.html" target="_self">meow::ObjArray&lt; T &gt;</a></td><td class="desc">純粹把 <code>std::vector</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
-<tr id="row_16_8_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjDictionary.html" target="_self">meow::ObjDictionary&lt; Key, Value &gt;</a></td><td class="desc">純粹把 <code>std::map</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
-<tr id="row_16_9_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjProperties.html" target="_self">meow::ObjProperties&lt; SID &gt;</a></td><td class="desc">目前擺爛中</td></tr>
-<tr id="row_16_10_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjType.html" target="_self">meow::ObjType&lt; Type, ReaderWriter &gt;</a></td><td class="desc">純粹把給定的 <code>Type</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
-<tr id="row_16_11_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Photo.html" target="_self">meow::Photo&lt; Pixel &gt;</a></td><td class="desc">底片</td></tr>
-<tr id="row_16_12_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ViewPort.html" target="_self">meow::ViewPort</a></td><td class="desc">未完待續</td></tr>
-<tr id="row_16_13_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1WatchBall.html" target="_self">meow::WatchBall&lt; Pixel &gt;</a></td><td class="desc"><b>多個camera</b>, 一個offset, 一個rotation</td></tr>
-<tr id="row_17_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjSelector.html" target="_self">meow::ObjSelector&lt; id &gt;</a></td><td class="desc">利用register的概念, 達到runtime用string選擇要new的class</td></tr>
-<tr id="row_18_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__double.html" target="_self">meow::ReaderWriter_double</a></td><td class="desc"></td></tr>
-<tr id="row_19_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__int.html" target="_self">meow::ReaderWriter_int</a></td><td class="desc"></td></tr>
-<tr id="row_20_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__size__t.html" target="_self">meow::ReaderWriter_size_t</a></td><td class="desc"></td></tr>
-<tr id="row_21_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__string.html" target="_self">meow::ReaderWriter_string</a></td><td class="desc"></td></tr>
-<tr id="row_22_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1SegmentTree.html" target="_self">meow::SegmentTree&lt; Value &gt;</a></td><td class="desc">中文名 <code>線段樹</code> </td></tr>
-<tr id="row_23_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">meow::Self&lt; Data &gt;</a></td><td class="desc">具有copy on write, 且擁有比C++更靈活的reference機制</td></tr>
-<tr id="row_24_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">meow::Self&lt; data_ &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_25_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">meow::Self&lt; Myself &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_26_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1SplayTree.html" target="_self">meow::SplayTree&lt; Key, Value &gt;</a></td><td class="desc">是一種神乎其技的資料結構, 維護一堆 Key-&gt;Value . 並且支援 一些 <code>std::map</code> 難以快速實踐的操作, 如 <code>split</code> , <code>merge</code> , <code>keyOffset</code> </td></tr>
-<tr id="row_27_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1SplayTree__Range.html" target="_self">meow::SplayTree_Range&lt; Key, Value &gt;</a></td><td class="desc">基本上跟SplayTree一樣, 不過這邊結合線段樹, 多了區間操作 (線段樹相關operator定義請見 <code><a class="el" href="classmeow_1_1SegmentTree.html" title="中文名 線段樹 ">SegmentTree</a></code> )</td></tr>
-<tr id="row_28_"><td class="entry"><img id="arr_28_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('28_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Transformation.html" target="_self">meow::Transformation&lt; Scalar &gt;</a></td><td class="desc">A base class for implementing kinds of transformations</td></tr>
-<tr id="row_28_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1BallProjection.html" target="_self">meow::BallProjection&lt; Scalar &gt;</a></td><td class="desc">A ball projection is to project the given vector to a hyper-sphere</td></tr>
-<tr id="row_28_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_28_1_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('28_1_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1LinearTransformation.html" target="_self">meow::LinearTransformation&lt; Scalar &gt;</a></td><td class="desc">A base class for implementing kinds of linear transformations</td></tr>
-<tr id="row_28_1_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Rotation3D.html" target="_self">meow::Rotation3D&lt; Scalar &gt;</a></td><td class="desc">Rotation a point/vector alone an axis with given angle in 3D world</td></tr>
-<tr id="row_28_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1PhotoProjection.html" target="_self">meow::PhotoProjection&lt; Scalar &gt;</a></td><td class="desc">A <b>photo</b> <b>projection</b> is a kind of transformation that project point/vector to a flat <b>photo</b> </td></tr>
-<tr id="row_29_" class="even"><td class="entry"><img id="arr_29_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('29_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Transformation.html" target="_self">meow::Transformation&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_29_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_29_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('29_0_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1LinearTransformation.html" target="_self">meow::LinearTransformation&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_29_0_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Rotation3D.html" target="_self">meow::Rotation3D&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_29_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1PhotoProjection.html" target="_self">meow::PhotoProjection&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_30_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Usage.html" target="_self">meow::Usage</a></td><td class="desc">管理參數設置, 自訂usage document, 分析argc, argv</td></tr>
-<tr id="row_31_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">meow::Vector&lt; Scalar &gt;</a></td><td class="desc"><b>vector</b> </td></tr>
-<tr id="row_32_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector2D.html" target="_self">meow::Vector2D&lt; Scalar &gt;</a></td><td class="desc">2D's vector</td></tr>
-<tr id="row_33_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector2D.html" target="_self">meow::Vector2D&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_34_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; Scalar &gt;</a></td><td class="desc">3D's vector</td></tr>
-<tr id="row_35_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_36_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_37_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; T &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_38_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">meow::Vector&lt; Description &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_39_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">meow::Vector&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_40_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1VP__Tree.html" target="_self">meow::VP_Tree&lt; Vector, Scalar &gt;</a></td><td class="desc">跟KD_Tree很像歐</td></tr>
-<tr id="row_41_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classdouble.html" target="_self">double</a></td><td class="desc"></td></tr>
-<tr id="row_42_" class="even"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classint.html" target="_self">int</a></td><td class="desc"></td></tr>
+<tr id="row_15_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html" target="_self">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a></td><td class="desc"></td></tr>
+<tr id="row_16_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1MergeableHeap.html" target="_self">meow::MergeableHeap&lt; Element &gt;</a></td><td class="desc">一個用 <b>左偏樹</b> 實作的 <code>Maximum-Heap</code> , 除了原本heap有的功能外, 還支援 <code>merge</code> 功能</td></tr>
+<tr id="row_17_" class="even"><td class="entry"><img id="arr_17_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('17_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjBase.html" target="_self">meow::ObjBase</a></td><td class="desc">一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能</td></tr>
+<tr id="row_17_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1IdentityPoints.html" target="_self">meow::IdentityPoints&lt; int, double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Bitmap.html" target="_self">meow::Bitmap&lt; Pixel &gt;</a></td><td class="desc">二維點陣資料</td></tr>
+<tr id="row_17_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Camera.html" target="_self">meow::Camera&lt; Pixel &gt;</a></td><td class="desc"><a class="el" href="classmeow_1_1Camera.html" title="Camera.">Camera</a></td></tr>
+<tr id="row_17_3_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePoint.html" target="_self">meow::FeaturePoint&lt; Scalar, Description &gt;</a></td><td class="desc">特徵點</td></tr>
+<tr id="row_17_4_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_17_4_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('17_4_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsDetector.html" target="_self">meow::FeaturePointsDetector&lt; Pixel &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_4_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsDetector__Harris.html" target="_self">meow::FeaturePointsDetector_Harris&lt; Pixel &gt;</a></td><td class="desc">Harris corner detect</td></tr>
+<tr id="row_17_5_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_17_5_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('17_5_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsMatch.html" target="_self">meow::FeaturePointsMatch&lt; Scalar, Description &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_5_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1FeaturePointsMatch__K__Match.html" target="_self">meow::FeaturePointsMatch_K_Match&lt; Scalar, Description &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_6_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1IdentityPoints.html" target="_self">meow::IdentityPoints&lt; ID, Scalar &gt;</a></td><td class="desc">把一個 <code>std::map&lt;ID</code>,Vector&lt;Scalar&gt; &gt; 包起來</td></tr>
+<tr id="row_17_7_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjArray.html" target="_self">meow::ObjArray&lt; T &gt;</a></td><td class="desc">純粹把 <code>std::vector</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
+<tr id="row_17_8_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjDictionary.html" target="_self">meow::ObjDictionary&lt; Key, Value &gt;</a></td><td class="desc">純粹把 <code>std::map</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
+<tr id="row_17_9_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjProperties.html" target="_self">meow::ObjProperties&lt; SID &gt;</a></td><td class="desc">目前擺爛中</td></tr>
+<tr id="row_17_10_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjType.html" target="_self">meow::ObjType&lt; Type, ReaderWriter &gt;</a></td><td class="desc">純粹把給定的 <code>Type</code> 包起來, 變成繼承自 <a class="el" href="classmeow_1_1ObjBase.html" title="一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能">ObjBase</a></td></tr>
+<tr id="row_17_11_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Photo.html" target="_self">meow::Photo&lt; Pixel &gt;</a></td><td class="desc">底片</td></tr>
+<tr id="row_17_12_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ViewPort.html" target="_self">meow::ViewPort</a></td><td class="desc">未完待續</td></tr>
+<tr id="row_17_13_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1WatchBall.html" target="_self">meow::WatchBall&lt; Pixel &gt;</a></td><td class="desc"><b>多個camera</b>, 一個offset, 一個rotation</td></tr>
+<tr id="row_18_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ObjSelector.html" target="_self">meow::ObjSelector&lt; id &gt;</a></td><td class="desc">利用register的概念, 達到runtime用string選擇要new的class</td></tr>
+<tr id="row_19_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Pipeline.html" target="_self">meow::Pipeline&lt; Input, Output, Medium &gt;</a></td><td class="desc"><b>pipeline</b> </td></tr>
+<tr id="row_20_"><td class="entry"><img id="arr_20_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('20_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Pipeline.html" target="_self">meow::Pipeline&lt; Matrix&lt; Scalar &gt;, Matrix&lt; Scalar &gt;, Transformate&lt; Scalar &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_20_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1TransformatePipeline.html" target="_self">meow::TransformatePipeline&lt; Scalar &gt;</a></td><td class="desc"><a class="el" href="classmeow_1_1Pipeline.html" title="pipeline ">Pipeline</a> for transformations</td></tr>
+<tr id="row_21_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__double.html" target="_self">meow::ReaderWriter_double</a></td><td class="desc"></td></tr>
+<tr id="row_22_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__int.html" target="_self">meow::ReaderWriter_int</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__size__t.html" target="_self">meow::ReaderWriter_size_t</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1ReaderWriter__string.html" target="_self">meow::ReaderWriter_string</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1SegmentTree.html" target="_self">meow::SegmentTree&lt; Value &gt;</a></td><td class="desc">中文名 <code>線段樹</code> </td></tr>
+<tr id="row_26_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">meow::Self&lt; Data &gt;</a></td><td class="desc">具有copy on write, 且擁有比C++更靈活的reference機制</td></tr>
+<tr id="row_27_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">meow::Self&lt; data_ &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Self.html" target="_self">meow::Self&lt; Myself &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1SplayTree.html" target="_self">meow::SplayTree&lt; Key, Value &gt;</a></td><td class="desc">是一種神乎其技的資料結構, 維護一堆 Key-&gt;Value . 並且支援 一些 <code>std::map</code> 難以快速實踐的操作, 如 <code>split</code> , <code>merge</code> , <code>keyOffset</code> </td></tr>
+<tr id="row_30_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1SplayTree__Range.html" target="_self">meow::SplayTree_Range&lt; Key, Value &gt;</a></td><td class="desc">基本上跟SplayTree一樣, 不過這邊結合線段樹, 多了區間操作 (線段樹相關operator定義請見 <code><a class="el" href="classmeow_1_1SegmentTree.html" title="中文名 線段樹 ">SegmentTree</a></code> )</td></tr>
+<tr id="row_31_"><td class="entry"><img id="arr_31_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('31_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Transformation.html" target="_self">meow::Transformation&lt; Scalar &gt;</a></td><td class="desc">A base class for implementing kinds of transformations</td></tr>
+<tr id="row_31_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1BallProjection.html" target="_self">meow::BallProjection&lt; Scalar &gt;</a></td><td class="desc">A ball projection is to project the given vector to a hyper-sphere</td></tr>
+<tr id="row_31_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_31_1_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('31_1_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1LinearTransformation.html" target="_self">meow::LinearTransformation&lt; Scalar &gt;</a></td><td class="desc">A base class for implementing kinds of linear transformations</td></tr>
+<tr id="row_31_1_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Rotation3D.html" target="_self">meow::Rotation3D&lt; Scalar &gt;</a></td><td class="desc">Rotation a point/vector alone an axis with given angle in 3D world</td></tr>
+<tr id="row_31_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1PhotoProjection.html" target="_self">meow::PhotoProjection&lt; Scalar &gt;</a></td><td class="desc">A <b>photo</b> <b>projection</b> is a kind of transformation that project point/vector to a flat <b>photo</b> </td></tr>
+<tr id="row_32_" class="even"><td class="entry"><img id="arr_32_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('32_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Transformation.html" target="_self">meow::Transformation&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_32_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_32_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('32_0_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1LinearTransformation.html" target="_self">meow::LinearTransformation&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_32_0_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Rotation3D.html" target="_self">meow::Rotation3D&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_32_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1PhotoProjection.html" target="_self">meow::PhotoProjection&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_33_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Usage.html" target="_self">meow::Usage</a></td><td class="desc">管理參數設置, 自訂usage document, 分析argc, argv</td></tr>
+<tr id="row_34_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">meow::Vector&lt; Scalar &gt;</a></td><td class="desc"><b>vector</b> </td></tr>
+<tr id="row_35_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector2D.html" target="_self">meow::Vector2D&lt; Scalar &gt;</a></td><td class="desc">2D's vector</td></tr>
+<tr id="row_36_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector2D.html" target="_self">meow::Vector2D&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_37_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; Scalar &gt;</a></td><td class="desc">3D's vector</td></tr>
+<tr id="row_38_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_39_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_40_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector3D.html" target="_self">meow::Vector3D&lt; T &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_41_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">meow::Vector&lt; Description &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_42_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1Vector.html" target="_self">meow::Vector&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_43_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classmeow_1_1VP__Tree.html" target="_self">meow::VP_Tree&lt; Vector, Scalar &gt;</a></td><td class="desc">跟KD_Tree很像歐</td></tr>
+<tr id="row_44_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classdouble.html" target="_self">double</a></td><td class="desc"></td></tr>
+<tr id="row_45_" class="even"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classint.html" target="_self">int</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
@@ -139,7 +143,7 @@ $(document).ready(function(){initNavTree('hierarchy.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/hierarchy.js b/doc/html/hierarchy.js
index 048c647..cdadbf8 100644
--- a/doc/html/hierarchy.js
+++ b/doc/html/hierarchy.js
@@ -22,6 +22,7 @@ var hierarchy =
[ "meow::Matrix< double >", "classmeow_1_1Matrix.html", null ],
[ "meow::Matrix< Pixel >", "classmeow_1_1Matrix.html", null ],
[ "meow::Matrix< Scalar >", "classmeow_1_1Matrix.html", null ],
+ [ "meow::Pipeline< Input, Output, Medium >::Myself::MediumInfo", "structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html", null ],
[ "meow::MergeableHeap< Element >", "classmeow_1_1MergeableHeap.html", null ],
[ "meow::ObjBase", "classmeow_1_1ObjBase.html", [
[ "meow::IdentityPoints< int, double >", "classmeow_1_1IdentityPoints.html", null ],
@@ -44,6 +45,10 @@ var hierarchy =
[ "meow::WatchBall< Pixel >", "classmeow_1_1WatchBall.html", null ]
] ],
[ "meow::ObjSelector< id >", "classmeow_1_1ObjSelector.html", null ],
+ [ "meow::Pipeline< Input, Output, Medium >", "classmeow_1_1Pipeline.html", null ],
+ [ "meow::Pipeline< Matrix< Scalar >, Matrix< Scalar >, Transformate< Scalar > >", "classmeow_1_1Pipeline.html", [
+ [ "meow::TransformatePipeline< Scalar >", "classmeow_1_1TransformatePipeline.html", null ]
+ ] ],
[ "meow::ReaderWriter_double", "classmeow_1_1ReaderWriter__double.html", null ],
[ "meow::ReaderWriter_int", "classmeow_1_1ReaderWriter__int.html", null ],
[ "meow::ReaderWriter_size_t", "classmeow_1_1ReaderWriter__size__t.html", null ],
diff --git a/doc/html/index.html b/doc/html/index.html
index 93e3ca6..6bd7c36 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -80,7 +80,7 @@ $(document).ready(function(){initNavTree('index.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/math_2utility_8h.html b/doc/html/math_2utility_8h.html
index 4d8c1e5..ac21a18 100644
--- a/doc/html/math_2utility_8h.html
+++ b/doc/html/math_2utility_8h.html
@@ -96,6 +96,10 @@ Functions</h2></td></tr>
<tr class="memitem:a98d838d338a3e6f3c57e94562fab3fa7"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7">meow::inRange</a> (T const &amp;mn, T const &amp;mx, T const &amp;v)</td></tr>
<tr class="memdesc:a98d838d338a3e6f3c57e94562fab3fa7"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>std::min</code>(mx,std::max(mn,v)) <a href="#a98d838d338a3e6f3c57e94562fab3fa7">More...</a><br/></td></tr>
<tr class="separator:a98d838d338a3e6f3c57e94562fab3fa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
+<tr class="memitem:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemeow.html#ae8486a6227b6ed69d5ff666fe67ebf4e">meow::isInRange</a> (T const &amp;mn, T const &amp;mx, T const &amp;x)</td></tr>
+<tr class="memdesc:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">(mn &lt;= x &amp;&amp; x &lt;= mx) <a href="#ae8486a6227b6ed69d5ff666fe67ebf4e">More...</a><br/></td></tr>
+<tr class="separator:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1954e235973a2ac79a7a72a4b7d25573"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a1954e235973a2ac79a7a72a4b7d25573"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573">meow::squ</a> (T const &amp;x)</td></tr>
<tr class="memdesc:a1954e235973a2ac79a7a72a4b7d25573"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>x*x</code> <a href="#a1954e235973a2ac79a7a72a4b7d25573">More...</a><br/></td></tr>
@@ -130,7 +134,7 @@ Variables</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="math_2utility_8h.html">utility.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/math_2utility_8h.js b/doc/html/math_2utility_8h.js
index 1c2689c..5b676ea 100644
--- a/doc/html/math_2utility_8h.js
+++ b/doc/html/math_2utility_8h.js
@@ -5,6 +5,7 @@ var math_2utility_8h =
[ "cub", "math_2utility_8h.html#a10a8cca705773b7d9f6f91d3fb08c104", null ],
[ "denormalize", "math_2utility_8h.html#af95cfca15ad7a51ed4d07b06e1296080", null ],
[ "inRange", "math_2utility_8h.html#a98d838d338a3e6f3c57e94562fab3fa7", null ],
+ [ "isInRange", "math_2utility_8h.html#ae8486a6227b6ed69d5ff666fe67ebf4e", null ],
[ "noEPS", "math_2utility_8h.html#ab9456533c0ae85fba812bfb5b017c8d2", null ],
[ "normalize", "math_2utility_8h.html#aebe1ad335556790c578c4cf7836fd9ca", null ],
[ "ratioMapping", "math_2utility_8h.html#a3b01a91eb4a02909a61a35e406fa5732", null ],
diff --git a/doc/html/math_2utility_8h_source.html b/doc/html/math_2utility_8h_source.html
index 147f151..b860ee5 100644
--- a/doc/html/math_2utility_8h_source.html
+++ b/doc/html/math_2utility_8h_source.html
@@ -66,106 +66,111 @@ $(document).ready(function(){initNavTree('math_2utility_8h_source.html','');});
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="keyword">namespace </span>meow{</div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="keyword">namespace </span>meow {</div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
<div class="line"><a name="l00012"></a><span class="lineno"><a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76"> 12</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76" title="圓周率...">PI</a> = 3.14159265358979323846264338327950288;</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00018"></a><span class="lineno"><a class="code" href="namespacemeow.html#ab9456533c0ae85fba812bfb5b017c8d2"> 18</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#ab9456533c0ae85fba812bfb5b017c8d2" title="如果abs(輸入的數值) &lt; eps, 則回傳0, 否則回傳輸入的數值">noEPS</a>(T value, T eps = 1e-9){</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="code" href="namespacemeow.html#ab9456533c0ae85fba812bfb5b017c8d2"> 18</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#ab9456533c0ae85fba812bfb5b017c8d2" title="如果abs(輸入的數值) &lt; eps, 則回傳0, 否則回傳輸入的數值">noEPS</a>(T value, T eps = 1e-9) {</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; T epsp((eps &lt; T(0)) ? -eps : eps);</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; <span class="keywordflow">return</span> ((value &lt; -epsp || value &gt; epsp) ? value : T(0));</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;}</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca"> 27</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca" title="(value-lower)/(upper-lower)">normalize</a>(T lower, T upper, T value){</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca"> 27</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca" title="(value-lower)/(upper-lower)">normalize</a>(T lower, T upper, T value) {</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">return</span> (value - lower) / (upper - lower);</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;}</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00035"></a><span class="lineno"><a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080"> 35</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080" title="(lower+_ratio*(upper-lower))">denormalize</a>(T lower, T upper, T _ratio){</div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080"> 35</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080" title="(lower+_ratio*(upper-lower))">denormalize</a>(T lower, T upper, T _ratio) {</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">return</span> lower + _ratio * (upper - lower);</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;}</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="namespacemeow.html#a3b01a91eb4a02909a61a35e406fa5732"> 43</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a3b01a91eb4a02909a61a35e406fa5732" title="denormalize(l2,u2,normalize(l1,u1,m1))">ratioMapping</a>(T l1, T u1, T m1, T l2, T u2){</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="namespacemeow.html#a3b01a91eb4a02909a61a35e406fa5732"> 43</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a3b01a91eb4a02909a61a35e406fa5732" title="denormalize(l2,u2,normalize(l1,u1,m1))">ratioMapping</a>(T l1, T u1, T m1, T l2, T u2) {</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080" title="(lower+_ratio*(upper-lower))">denormalize</a>(l2, u2, <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca" title="(value-lower)/(upper-lower)">normalize</a>(l1, u1, m1));</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;}</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7"> 51</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7" title="std::min(mx,std::max(mn,v))">inRange</a>(T <span class="keyword">const</span>&amp; mn, T <span class="keyword">const</span>&amp; mx, T <span class="keyword">const</span>&amp; v){</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7"> 51</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7" title="std::min(mx,std::max(mn,v))">inRange</a>(T <span class="keyword">const</span>&amp; mn, T <span class="keyword">const</span>&amp; mx, T <span class="keyword">const</span>&amp; v) {</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">return</span> std::min(mx, std::max(mn, v));</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;}</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573"> 59</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(T <span class="keyword">const</span>&amp; x){</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> x * x;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="namespacemeow.html#ae8486a6227b6ed69d5ff666fe67ebf4e"> 59</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#ae8486a6227b6ed69d5ff666fe67ebf4e" title="(mn &lt;= x &amp;&amp; x &lt;= mx)">isInRange</a>(T <span class="keyword">const</span>&amp; mn, T <span class="keyword">const</span>&amp; mx, T <span class="keyword">const</span>&amp; x) {</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> (mn &lt;= x &amp;&amp; x &lt;= mx);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;}</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="namespacemeow.html#a10a8cca705773b7d9f6f91d3fb08c104"> 67</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a10a8cca705773b7d9f6f91d3fb08c104" title="x*x*x ">cub</a>(T <span class="keyword">const</span>&amp; x){</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> x * x * x;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573"> 67</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573" title="x*x ">squ</a>(T <span class="keyword">const</span>&amp; x) {</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> x * x;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="namespacemeow.html#ad4d1e5fa951e5534204a0ee3eee22777"> 75</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="namespacemeow.html#ad4d1e5fa951e5534204a0ee3eee22777" title="只將 sigs 個標準差以內的數據拿來取平均">average</a>(T <span class="keyword">const</span>&amp; beg, T <span class="keyword">const</span>&amp; end, <span class="keywordtype">double</span> sigs){</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">int</span> N = 0;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">double</span> av = 0;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">for</span>(T it = beg; it != end; it++, N++){</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; av += *it;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; av /= N;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">double</span> sig = 0;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">for</span>(T it = beg; it != end; it++){</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; sig += (*it - av) * (*it - av);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; sig = sqrt(sig / N);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordtype">double</span> lower = av - sig * sigs, upper = av + sig * sigs;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">double</span> ret = 0, retn = 0;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">for</span>(T it = beg; it != end; it++){</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span>(lower &lt;= *it &amp;&amp; *it &lt;= upper){</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; ret += *it;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; retn++;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">return</span> ret / retn;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;}</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"><a class="code" href="namespacemeow.html#a6ae78e60d507c85de003f8fa8423b650"> 102</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="namespacemeow.html#ad4d1e5fa951e5534204a0ee3eee22777" title="只將 sigs 個標準差以內的數據拿來取平均">average</a>(T <span class="keyword">const</span>&amp; beg, T <span class="keyword">const</span>&amp; end, T <span class="keyword">const</span>&amp; p, <span class="keywordtype">double</span> sigs){</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">int</span> N = 0;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordtype">double</span> ps = 0;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">for</span>(T it = beg, ip = p; it != end; it++, N++, ip++){</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; ps += *ip;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordtype">double</span> av = 0;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">for</span>(T it = beg, ip = p; it != end; it++, ip++){</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; av += *it * *ip / ps;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordtype">double</span> sig = 0;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">for</span>(T it = beg, ip = p; it != end; it++, ip++){</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; sig += *ip / ps * (*it - av) * (*it - av);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="namespacemeow.html#a10a8cca705773b7d9f6f91d3fb08c104"> 75</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#a10a8cca705773b7d9f6f91d3fb08c104" title="x*x*x ">cub</a>(T <span class="keyword">const</span>&amp; x) {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> x * x * x;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="namespacemeow.html#ad4d1e5fa951e5534204a0ee3eee22777"> 83</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="namespacemeow.html#ad4d1e5fa951e5534204a0ee3eee22777" title="只將 sigs 個標準差以內的數據拿來取平均">average</a>(T <span class="keyword">const</span>&amp; beg, T <span class="keyword">const</span>&amp; end, <span class="keywordtype">double</span> sigs) {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">int</span> N = 0;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">double</span> av = 0;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">for</span> (T it = beg; it != end; ++it, ++N) {</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; av += *it;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; av /= N;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">double</span> sig = 0;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">for</span> (T it = beg; it != end; ++it) {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; sig += (*it - av) * (*it - av);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; sig = sqrt(sig / N);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordtype">double</span> lower = av - sig * sigs, upper = av + sig * sigs;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">double</span> ret = 0, retn = 0;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">for</span> (T it = beg; it != end; ++it) {</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (lower &lt;= *it &amp;&amp; *it &lt;= upper) {</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; ret += *it;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; retn++;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> ret / retn;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;}</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="namespacemeow.html#a6ae78e60d507c85de003f8fa8423b650"> 110</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="namespacemeow.html#ad4d1e5fa951e5534204a0ee3eee22777" title="只將 sigs 個標準差以內的數據拿來取平均">average</a>(T <span class="keyword">const</span>&amp; beg, T <span class="keyword">const</span>&amp; end, T <span class="keyword">const</span>&amp; p, <span class="keywordtype">double</span> sigs) {</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordtype">int</span> N = 0;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordtype">double</span> ps = 0;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">for</span> (T it = beg, ip = p; it != end; ++it, ++N, ++ip) {</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; ps += *ip;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; sig = sqrt(sig);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordtype">double</span> lower = av - sig * sigs, upper = av + sig * sigs;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordtype">double</span> ret = 0, retn = 0;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">for</span>(T it = beg, ip = p; it != end; it++, ip++){</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span>(lower &lt;= *it &amp;&amp; *it &lt;= upper){</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; ret += *it * *ip;</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; retn += *ip;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span>(retn &lt;= 1e-10) <span class="keywordflow">return</span> av;</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> ret / retn;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;}</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"><a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0"> 133</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0" title="就只是個取絕對值">tAbs</a>(T <span class="keyword">const</span>&amp; t){</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> (t &lt; 0 ? -t : t);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">double</span> av = 0;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">for</span> (T it = beg, ip = p; it != end; ++it, ++ip) {</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; av += *it * *ip / ps;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">double</span> sig = 0;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">for</span> (T it = beg, ip = p; it != end; ++it, ++ip) {</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; sig += *ip / ps * (*it - av) * (*it - av);</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; sig = sqrt(sig);</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordtype">double</span> lower = av - sig * sigs, upper = av + sig * sigs;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">double</span> ret = 0, retn = 0;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">for</span> (T it = beg, ip = p; it !== end; ++it, ++ip) {</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">if</span> (lower &lt;= *it &amp;&amp; *it &lt;= upper) {</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; ret += *it * *ip;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; retn += *ip;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span> (retn &lt;= 1e-10) <span class="keywordflow">return</span> av;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> ret / retn;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;}</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="preprocessor">#endif // math_utility_H__</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0"> 141</a></span>&#160;<span class="keyword">inline</span> T <a class="code" href="namespacemeow.html#ae880337dfdcc67984a0dccdb50e5c5d0" title="就只是個取絕對值">tAbs</a>(T <span class="keyword">const</span>&amp; t) {</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">return</span> (t &lt; 0 ? -t : t);</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;}</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;} <span class="comment">// meow</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="preprocessor">#endif // math_utility_H__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.3.1-->
@@ -173,7 +178,7 @@ $(document).ready(function(){initNavTree('math_2utility_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="math_2utility_8h.html">utility.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/methods_8h.html b/doc/html/methods_8h.html
index 8ce4661..b5cf406 100644
--- a/doc/html/methods_8h.html
+++ b/doc/html/methods_8h.html
@@ -92,7 +92,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="methods_8h.html">methods.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/methods_8h_source.html b/doc/html/methods_8h_source.html
index eba9c15..f9e3609 100644
--- a/doc/html/methods_8h_source.html
+++ b/doc/html/methods_8h_source.html
@@ -135,7 +135,7 @@ $(document).ready(function(){initNavTree('methods_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_77e0ab67466b1e7d76f50725a5ab9910.html">math</a></li><li class="navelem"><a class="el" href="methods_8h.html">methods.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/modules.html b/doc/html/modules.html
new file mode 100644
index 0000000..be39fae
--- /dev/null
+++ b/doc/html/modules.html
@@ -0,0 +1,78 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Modules</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('modules.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Modules</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all modules:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__gp1.html" target="_self">Gp1</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Thu Jun 5 2014 09:10:35 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/modules.js b/doc/html/modules.js
new file mode 100644
index 0000000..3ea5e9c
--- /dev/null
+++ b/doc/html/modules.js
@@ -0,0 +1,4 @@
+var modules =
+[
+ [ "Gp1", "group__gp1.html", "group__gp1" ]
+]; \ No newline at end of file
diff --git a/doc/html/namespacemembers.html b/doc/html/namespacemembers.html
index 6649ef1..515e093 100644
--- a/doc/html/namespacemembers.html
+++ b/doc/html/namespacemembers.html
@@ -100,6 +100,9 @@ $(document).ready(function(){initNavTree('namespacemembers.html','');});
<li>inRange()
: <a class="el" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7">meow</a>
</li>
+<li>isInRange()
+: <a class="el" href="namespacemeow.html#ae8486a6227b6ed69d5ff666fe67ebf4e">meow</a>
+</li>
</ul>
@@ -191,7 +194,7 @@ $(document).ready(function(){initNavTree('namespacemembers.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/namespacemembers_func.html b/doc/html/namespacemembers_func.html
index 8f21291..189ca34 100644
--- a/doc/html/namespacemembers_func.html
+++ b/doc/html/namespacemembers_func.html
@@ -97,6 +97,9 @@ $(document).ready(function(){initNavTree('namespacemembers_func.html','');});
<li>inRange()
: <a class="el" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7">meow</a>
</li>
+<li>isInRange()
+: <a class="el" href="namespacemeow.html#ae8486a6227b6ed69d5ff666fe67ebf4e">meow</a>
+</li>
</ul>
@@ -158,7 +161,7 @@ $(document).ready(function(){initNavTree('namespacemembers_func.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/namespacemembers_type.html b/doc/html/namespacemembers_type.html
index 71c2676..428f0f6 100644
--- a/doc/html/namespacemembers_type.html
+++ b/doc/html/namespacemembers_type.html
@@ -77,7 +77,7 @@ $(document).ready(function(){initNavTree('namespacemembers_type.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/namespacemembers_vars.html b/doc/html/namespacemembers_vars.html
index 25553b1..ce53410 100644
--- a/doc/html/namespacemembers_vars.html
+++ b/doc/html/namespacemembers_vars.html
@@ -68,7 +68,7 @@ $(document).ready(function(){initNavTree('namespacemembers_vars.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/namespacemeow.html b/doc/html/namespacemeow.html
index f09dcde..9358102 100644
--- a/doc/html/namespacemeow.html
+++ b/doc/html/namespacemeow.html
@@ -161,6 +161,9 @@ Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Transformation.html">Transformation</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A base class for implementing kinds of transformations. <a href="classmeow_1_1Transformation.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">a pipeline for transformations <a href="classmeow_1_1TransformatePipeline.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1BallProjection.html">BallProjection</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A ball projection is to project the given vector to a hyper-sphere. <a href="classmeow_1_1BallProjection.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -196,6 +199,9 @@ Classes</h2></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1ReaderWriter__string.html">ReaderWriter_string</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>pipeline</b> <a href="classmeow_1_1Pipeline.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmeow_1_1Self.html">Self</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">具有copy on write, 且擁有比C++更靈活的reference機制 <a href="classmeow_1_1Self.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -311,6 +317,10 @@ Functions</h2></td></tr>
<tr class="memitem:a98d838d338a3e6f3c57e94562fab3fa7"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemeow.html#a98d838d338a3e6f3c57e94562fab3fa7">inRange</a> (T const &amp;mn, T const &amp;mx, T const &amp;v)</td></tr>
<tr class="memdesc:a98d838d338a3e6f3c57e94562fab3fa7"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>std::min</code>(mx,std::max(mn,v)) <a href="#a98d838d338a3e6f3c57e94562fab3fa7">More...</a><br/></td></tr>
<tr class="separator:a98d838d338a3e6f3c57e94562fab3fa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
+<tr class="memitem:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemeow.html#ae8486a6227b6ed69d5ff666fe67ebf4e">isInRange</a> (T const &amp;mn, T const &amp;mx, T const &amp;x)</td></tr>
+<tr class="memdesc:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">(mn &lt;= x &amp;&amp; x &lt;= mx) <a href="#ae8486a6227b6ed69d5ff666fe67ebf4e">More...</a><br/></td></tr>
+<tr class="separator:ae8486a6227b6ed69d5ff666fe67ebf4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1954e235973a2ac79a7a72a4b7d25573"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a1954e235973a2ac79a7a72a4b7d25573"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemeow.html#a1954e235973a2ac79a7a72a4b7d25573">squ</a> (T const &amp;x)</td></tr>
<tr class="memdesc:a1954e235973a2ac79a7a72a4b7d25573"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>x*x</code> <a href="#a1954e235973a2ac79a7a72a4b7d25573">More...</a><br/></td></tr>
@@ -1492,6 +1502,50 @@ template&lt;class T &gt; </div>
</div>
</div>
+<a class="anchor" id="ae8486a6227b6ed69d5ff666fe67ebf4e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class T &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">T meow::isInRange </td>
+ <td>(</td>
+ <td class="paramtype">T const &amp;&#160;</td>
+ <td class="paramname"><em>mn</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">T const &amp;&#160;</td>
+ <td class="paramname"><em>mx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">T const &amp;&#160;</td>
+ <td class="paramname"><em>x</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>(mn &lt;= x &amp;&amp; x &lt;= mx) </p>
+
+</div>
+</div>
<a class="anchor" id="a8e4a4baed7fb497f170075648ac95077"></a>
<div class="memitem">
<div class="memproto">
@@ -2076,7 +2130,7 @@ template&lt;class T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/namespacemeow.js b/doc/html/namespacemeow.js
index 10c8d51..40ad095 100644
--- a/doc/html/namespacemeow.js
+++ b/doc/html/namespacemeow.js
@@ -33,6 +33,7 @@ var namespacemeow =
[ "Rotation3D", "classmeow_1_1Rotation3D.html", "classmeow_1_1Rotation3D" ],
[ "Matrix", "classmeow_1_1Matrix.html", "classmeow_1_1Matrix" ],
[ "Transformation", "classmeow_1_1Transformation.html", "classmeow_1_1Transformation" ],
+ [ "TransformatePipeline", "classmeow_1_1TransformatePipeline.html", "classmeow_1_1TransformatePipeline" ],
[ "BallProjection", "classmeow_1_1BallProjection.html", "classmeow_1_1BallProjection" ],
[ "PhotoProjection", "classmeow_1_1PhotoProjection.html", "classmeow_1_1PhotoProjection" ],
[ "Vector", "classmeow_1_1Vector.html", "classmeow_1_1Vector" ],
@@ -46,6 +47,7 @@ var namespacemeow =
[ "ReaderWriter_size_t", "classmeow_1_1ReaderWriter__size__t.html", "classmeow_1_1ReaderWriter__size__t" ],
[ "ReaderWriter_double", "classmeow_1_1ReaderWriter__double.html", "classmeow_1_1ReaderWriter__double" ],
[ "ReaderWriter_string", "classmeow_1_1ReaderWriter__string.html", "classmeow_1_1ReaderWriter__string" ],
+ [ "Pipeline", "classmeow_1_1Pipeline.html", "classmeow_1_1Pipeline" ],
[ "Self", "classmeow_1_1Self.html", "classmeow_1_1Self" ],
[ "Usage", "classmeow_1_1Usage.html", "classmeow_1_1Usage" ]
]; \ No newline at end of file
diff --git a/doc/html/namespaces.html b/doc/html/namespaces.html
index 99c15c9..d29f5c3 100644
--- a/doc/html/namespaces.html
+++ b/doc/html/namespaces.html
@@ -69,7 +69,7 @@ $(document).ready(function(){initNavTree('namespaces.html','');});
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:44 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/navtree.js b/doc/html/navtree.js
index 5b5ef0f..529fcf8 100644
--- a/doc/html/navtree.js
+++ b/doc/html/navtree.js
@@ -19,6 +19,8 @@ var NAVTREE =
[ "Functions", "functions_func.html", "functions_func" ],
[ "Variables", "functions_vars.html", null ],
[ "Typedefs", "functions_type.html", null ],
+ [ "Enumerations", "functions_enum.html", null ],
+ [ "Enumerator", "functions_eval.html", null ],
[ "Related Functions", "functions_rela.html", null ]
] ]
] ],
@@ -35,10 +37,11 @@ var NAVTREE =
var NAVTREEINDEX =
[
"BinaryIndexTree_8h.html",
-"classmeow_1_1FeaturePointsDetector__Harris.html#a00be866b3cf9bd2469e0eef32a3b2287",
-"classmeow_1_1MergeableHeap.html#a3638f12db8da212244cb6ab7e37332db",
-"classmeow_1_1Rotation3D.html#a0a7c3b7f605caf7bc54f80b25b317972",
-"classmeow_1_1Vector2D.html#aa6ae22d99360ff9e0b623e1744576733"
+"classmeow_1_1FeaturePointsDetector.html#ad8ce3d515825b6e3b8c4865ebe7c8d76",
+"classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413",
+"classmeow_1_1RGBi__Space.html#a76b540bdf49bc8912c5f62aa875b1906",
+"classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee",
+"functions_rela.html"
];
var SYNCONMSG = 'click to disable panel synchronisation';
diff --git a/doc/html/navtreeindex0.js b/doc/html/navtreeindex0.js
index b10f152..78fa34e 100644
--- a/doc/html/navtreeindex0.js
+++ b/doc/html/navtreeindex0.js
@@ -74,22 +74,25 @@ var NAVTREEINDEX0 =
"ObjTypes_8h_source.html":[2,0,0,5,5],
"Photo_8h.html":[2,0,0,3,8],
"Photo_8h_source.html":[2,0,0,3,8],
+"Pipeline_8h.html":[2,0,0,6],
+"Pipeline_8h_source.html":[2,0,0,6],
"RGB__Space_8h.html":[2,0,0,0,3],
"RGB__Space_8h.html#a5612b34e84764e275631d662e5f210cb":[2,0,0,0,3,3],
"RGB__Space_8h.html#a764c66bb63095b178107b276eb0cc24e":[2,0,0,0,3,2],
"RGB__Space_8h_source.html":[2,0,0,0,3],
"SegmentTree_8h.html":[2,0,0,1,5],
"SegmentTree_8h_source.html":[2,0,0,1,5],
-"Self_8h.html":[2,0,0,6],
-"Self_8h_source.html":[2,0,0,6],
+"Self_8h.html":[2,0,0,7],
+"Self_8h_source.html":[2,0,0,7],
"SplayTree_8h.html":[2,0,0,1,6],
"SplayTree_8h_source.html":[2,0,0,1,6],
"Transformation_8h.html":[2,0,0,4,4],
+"Transformation_8h.html#aa667de06e306f0a462ae44fe3614f1e5":[2,0,0,4,4,2],
"Transformation_8h_source.html":[2,0,0,4,4],
"Transformations_8h.html":[2,0,0,4,5],
"Transformations_8h_source.html":[2,0,0,4,5],
-"Usage_8h.html":[2,0,0,7],
-"Usage_8h_source.html":[2,0,0,7],
+"Usage_8h.html":[2,0,0,8],
+"Usage_8h_source.html":[2,0,0,8],
"VP__Tree_8h.html":[2,0,0,1,7],
"VP__Tree_8h_source.html":[2,0,0,1,7],
"Vector_8h.html":[2,0,0,4,7],
@@ -108,22 +111,22 @@ var NAVTREEINDEX0 =
"YUV__Space_8h_source.html":[2,0,0,0,4],
"annotated.html":[1,0],
"classes.html":[1,1],
-"classmeow_1_1BallProjection.html":[1,0,0,33],
-"classmeow_1_1BallProjection.html#a1efa5c200a9d5605453b47e3856ccf28":[1,0,0,33,0],
-"classmeow_1_1BallProjection.html#a2573c364dd1e0d7de32b1e2afc0bb1b5":[1,0,0,33,14],
-"classmeow_1_1BallProjection.html#a288814dc861482dd70129a698b1a2d7e":[1,0,0,33,10],
-"classmeow_1_1BallProjection.html#a3eff2f36a83ba683da6bc9bb82699b30":[1,0,0,33,4],
-"classmeow_1_1BallProjection.html#a4f2e133f911088b7e13cabc52b3e6b92":[1,0,0,33,7],
-"classmeow_1_1BallProjection.html#a4fb7773f5566e93435ba56defbb7efc6":[1,0,0,33,5],
-"classmeow_1_1BallProjection.html#a5e4bbc9cf477002fab2dad6f37e2553c":[1,0,0,33,12],
-"classmeow_1_1BallProjection.html#a82416bac8768d0f40fc09e8cd3896bc8":[1,0,0,33,11],
-"classmeow_1_1BallProjection.html#a8e7e0ddd31c51bbaa934f77aee760f18":[1,0,0,33,8],
-"classmeow_1_1BallProjection.html#a9d9d151e138e50c2bb4cd3d039fb0808":[1,0,0,33,2],
-"classmeow_1_1BallProjection.html#ad2d62da97dd4b527c254e62a1ec949d8":[1,0,0,33,6],
-"classmeow_1_1BallProjection.html#adaf8d494c1177664f49bb63a5d2f36b0":[1,0,0,33,13],
-"classmeow_1_1BallProjection.html#adf2bcb2f82e9f7e2136b187317ba3211":[1,0,0,33,9],
-"classmeow_1_1BallProjection.html#aec71a15af880bdaea8042986c11e2187":[1,0,0,33,3],
-"classmeow_1_1BallProjection.html#af7e722b66c6bbc7245726902b6849850":[1,0,0,33,1],
+"classmeow_1_1BallProjection.html":[1,0,0,34],
+"classmeow_1_1BallProjection.html#a1efa5c200a9d5605453b47e3856ccf28":[1,0,0,34,0],
+"classmeow_1_1BallProjection.html#a2573c364dd1e0d7de32b1e2afc0bb1b5":[1,0,0,34,14],
+"classmeow_1_1BallProjection.html#a288814dc861482dd70129a698b1a2d7e":[1,0,0,34,10],
+"classmeow_1_1BallProjection.html#a3eff2f36a83ba683da6bc9bb82699b30":[1,0,0,34,4],
+"classmeow_1_1BallProjection.html#a4f2e133f911088b7e13cabc52b3e6b92":[1,0,0,34,7],
+"classmeow_1_1BallProjection.html#a4fb7773f5566e93435ba56defbb7efc6":[1,0,0,34,5],
+"classmeow_1_1BallProjection.html#a5e4bbc9cf477002fab2dad6f37e2553c":[1,0,0,34,12],
+"classmeow_1_1BallProjection.html#a82416bac8768d0f40fc09e8cd3896bc8":[1,0,0,34,11],
+"classmeow_1_1BallProjection.html#a8e7e0ddd31c51bbaa934f77aee760f18":[1,0,0,34,8],
+"classmeow_1_1BallProjection.html#a9d9d151e138e50c2bb4cd3d039fb0808":[1,0,0,34,2],
+"classmeow_1_1BallProjection.html#ad2d62da97dd4b527c254e62a1ec949d8":[1,0,0,34,6],
+"classmeow_1_1BallProjection.html#adaf8d494c1177664f49bb63a5d2f36b0":[1,0,0,34,13],
+"classmeow_1_1BallProjection.html#adf2bcb2f82e9f7e2136b187317ba3211":[1,0,0,34,9],
+"classmeow_1_1BallProjection.html#aec71a15af880bdaea8042986c11e2187":[1,0,0,34,3],
+"classmeow_1_1BallProjection.html#af7e722b66c6bbc7245726902b6849850":[1,0,0,34,1],
"classmeow_1_1BinaryIndexTree.html":[1,0,0,6],
"classmeow_1_1BinaryIndexTree.html#a355a4eacbfbe2112720d529efdbad021":[1,0,0,6,1],
"classmeow_1_1BinaryIndexTree.html#a3a4f1799b20d5dab24d8cc584db5d32d":[1,0,0,6,5],
@@ -246,8 +249,5 @@ var NAVTREEINDEX0 =
"classmeow_1_1FeaturePoint.html#af4eb7b53a35a3011954d6d92e364db19":[1,0,0,19,4],
"classmeow_1_1FeaturePoint.html#af5e944e79a1dfe6644fe429577734bc4":[1,0,0,19,22],
"classmeow_1_1FeaturePointsDetector.html":[1,0,0,20],
-"classmeow_1_1FeaturePointsDetector.html#a1018fe88eac5ab1ceab046f908d0fe07":[1,0,0,20,2],
-"classmeow_1_1FeaturePointsDetector.html#ad8ce3d515825b6e3b8c4865ebe7c8d76":[1,0,0,20,0],
-"classmeow_1_1FeaturePointsDetector.html#adea2550181cf483dff301c8bbaa9977f":[1,0,0,20,1],
-"classmeow_1_1FeaturePointsDetector__Harris.html":[1,0,0,21]
+"classmeow_1_1FeaturePointsDetector.html#a1018fe88eac5ab1ceab046f908d0fe07":[1,0,0,20,2]
};
diff --git a/doc/html/navtreeindex1.js b/doc/html/navtreeindex1.js
index 305f836..ae564e5 100644
--- a/doc/html/navtreeindex1.js
+++ b/doc/html/navtreeindex1.js
@@ -1,5 +1,8 @@
var NAVTREEINDEX1 =
{
+"classmeow_1_1FeaturePointsDetector.html#ad8ce3d515825b6e3b8c4865ebe7c8d76":[1,0,0,20,0],
+"classmeow_1_1FeaturePointsDetector.html#adea2550181cf483dff301c8bbaa9977f":[1,0,0,20,1],
+"classmeow_1_1FeaturePointsDetector__Harris.html":[1,0,0,21],
"classmeow_1_1FeaturePointsDetector__Harris.html#a00be866b3cf9bd2469e0eef32a3b2287":[1,0,0,21,6],
"classmeow_1_1FeaturePointsDetector__Harris.html#a05ec8973f1ea8611c19f7184d3ad5422":[1,0,0,21,22],
"classmeow_1_1FeaturePointsDetector__Harris.html#a084adc4ffa9b035c1b83da55e496b683":[1,0,0,21,25],
@@ -200,54 +203,51 @@ var NAVTREEINDEX1 =
"classmeow_1_1LinearTransformation.html#aeab1cf88fc67a1857504bd2fb18519f5":[1,0,0,29,6],
"classmeow_1_1LinearTransformation.html#afb3ea3e2653152b7b5a8bbad952d3f0e":[1,0,0,29,4],
"classmeow_1_1Matrix.html":[1,0,0,31],
-"classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405":[1,0,0,31,44],
-"classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab":[1,0,0,31,18],
-"classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12":[1,0,0,31,10],
-"classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56":[1,0,0,31,42],
-"classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341":[1,0,0,31,23],
-"classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec":[1,0,0,31,31],
-"classmeow_1_1Matrix.html#a1dc03cd2475a4c5f34afbe0cb498e472":[1,0,0,31,21],
-"classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29":[1,0,0,31,0],
-"classmeow_1_1Matrix.html#a30d16679bb6843c5e35aae81738f3306":[1,0,0,31,7],
-"classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd":[1,0,0,31,17],
-"classmeow_1_1Matrix.html#a46a12f45237e654e0140387d7290eb8b":[1,0,0,31,11],
-"classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df":[1,0,0,31,6],
-"classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602":[1,0,0,31,29],
-"classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178":[1,0,0,31,34],
-"classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5":[1,0,0,31,1],
-"classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274":[1,0,0,31,19],
-"classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1":[1,0,0,31,26],
-"classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304":[1,0,0,31,41],
-"classmeow_1_1Matrix.html#a78b4b8b4ee30d02cb726bf7b8ac13147":[1,0,0,31,20],
-"classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a":[1,0,0,31,28],
-"classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0":[1,0,0,31,40],
-"classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5":[1,0,0,31,25],
-"classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c":[1,0,0,31,36],
-"classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2":[1,0,0,31,22],
-"classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8":[1,0,0,31,39],
-"classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5":[1,0,0,31,27],
-"classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f":[1,0,0,31,14],
-"classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2":[1,0,0,31,5],
-"classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc":[1,0,0,31,30],
-"classmeow_1_1Matrix.html#aaba0981e54a17f0df8af9dabe9cad06f":[1,0,0,31,12],
-"classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170":[1,0,0,31,16],
-"classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c":[1,0,0,31,13],
-"classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6":[1,0,0,31,4],
-"classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120":[1,0,0,31,32],
-"classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605":[1,0,0,31,37],
-"classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016":[1,0,0,31,43],
-"classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325":[1,0,0,31,35],
-"classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84":[1,0,0,31,24],
-"classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c":[1,0,0,31,33],
-"classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e":[1,0,0,31,3],
-"classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c":[1,0,0,31,38],
-"classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce":[1,0,0,31,9],
-"classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74":[1,0,0,31,2],
-"classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd":[1,0,0,31,15],
-"classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413":[1,0,0,31,8],
-"classmeow_1_1MergeableHeap.html":[1,0,0,10],
-"classmeow_1_1MergeableHeap.html#a112454a9c92b71531429442e95953576":[1,0,0,10,11],
-"classmeow_1_1MergeableHeap.html#a1d0ef435fb0214b13fbbc1a8b0ce7cdf":[1,0,0,10,1],
-"classmeow_1_1MergeableHeap.html#a24a0a465dff230206e85f7b3c172553f":[1,0,0,10,2],
-"classmeow_1_1MergeableHeap.html#a304bacba11be0772b10505b6053a57e1":[1,0,0,10,8]
+"classmeow_1_1Matrix.html#a030758e4938c4d56a0b665e6a51d1405":[1,0,0,31,47],
+"classmeow_1_1Matrix.html#a06ac197ecfa9bc8bd5e9d9094f2d01ab":[1,0,0,31,21],
+"classmeow_1_1Matrix.html#a13384643dc412817fdcd8f1834a02d12":[1,0,0,31,12],
+"classmeow_1_1Matrix.html#a138c71b681404e054fa27cac5bb80d56":[1,0,0,31,45],
+"classmeow_1_1Matrix.html#a15d360e71c0880fed3c9873affb04341":[1,0,0,31,26],
+"classmeow_1_1Matrix.html#a162d35e1ce93b7777c975efcdaa46992":[1,0,0,31,24],
+"classmeow_1_1Matrix.html#a1ac7c3d6ad50154043969005fa292981":[1,0,0,31,1],
+"classmeow_1_1Matrix.html#a1dbef5b1a46df480f7fa3e118fd12bec":[1,0,0,31,34],
+"classmeow_1_1Matrix.html#a2dc9f17e38ba52376822744d2fc48f29":[1,0,0,31,2],
+"classmeow_1_1Matrix.html#a30d16679bb6843c5e35aae81738f3306":[1,0,0,31,9],
+"classmeow_1_1Matrix.html#a30fdb794e5966585e93cf715646210dd":[1,0,0,31,20],
+"classmeow_1_1Matrix.html#a37b9a0774b087006307acb3f95ad7f32":[1,0,0,31,23],
+"classmeow_1_1Matrix.html#a4db3bb07e2557cbc668bdaa1beb241df":[1,0,0,31,8],
+"classmeow_1_1Matrix.html#a50bf284fe7beae52bb1bd0868486a602":[1,0,0,31,32],
+"classmeow_1_1Matrix.html#a560adbe0b39f52bfb016edddc2955178":[1,0,0,31,37],
+"classmeow_1_1Matrix.html#a5728557810b6c5444332557ac53597d5":[1,0,0,31,3],
+"classmeow_1_1Matrix.html#a581dbd8ba10d054596a3d11eaf47f274":[1,0,0,31,22],
+"classmeow_1_1Matrix.html#a5d35d285b8cd59475e98f97966be68c1":[1,0,0,31,29],
+"classmeow_1_1Matrix.html#a6adeb974bfb77936ed41e1a57726d7a4":[1,0,0,31,13],
+"classmeow_1_1Matrix.html#a73dd7adb618b48aaabfa4d21ba08a33a":[1,0,0,31,14],
+"classmeow_1_1Matrix.html#a752bbc50fc06c7a6bfad8b4d09e19304":[1,0,0,31,44],
+"classmeow_1_1Matrix.html#a807c2a35579a429a2278956fc070f31a":[1,0,0,31,31],
+"classmeow_1_1Matrix.html#a869be60b593d7ce7101ee7ac788b0dd0":[1,0,0,31,43],
+"classmeow_1_1Matrix.html#a8917cdb62ab6d8ed9572ac3303dbaab5":[1,0,0,31,28],
+"classmeow_1_1Matrix.html#a8e35443c856f669d02b352f091c0404c":[1,0,0,31,39],
+"classmeow_1_1Matrix.html#a913ed9a5df441a33fcf0dab1f35814c2":[1,0,0,31,25],
+"classmeow_1_1Matrix.html#a93ff4579b7cb950868cad7a62bcf9fe8":[1,0,0,31,42],
+"classmeow_1_1Matrix.html#a955d9ddcb5b3467f8377ccae281ff4f5":[1,0,0,31,30],
+"classmeow_1_1Matrix.html#a9987d4535f1de58b822325914e3a916f":[1,0,0,31,17],
+"classmeow_1_1Matrix.html#a9dfef448574df55fc34528665183c6c2":[1,0,0,31,7],
+"classmeow_1_1Matrix.html#aa43f03179e3218c9af28f7374757a2cc":[1,0,0,31,33],
+"classmeow_1_1Matrix.html#ab05bcd1bd8b1f8d4f250d6b3b87e023e":[1,0,0,31,0],
+"classmeow_1_1Matrix.html#ab49fa7564c37c6bc164dc368a94fed6b":[1,0,0,31,15],
+"classmeow_1_1Matrix.html#ab7b158abdfe8ad1966cc3f0490743170":[1,0,0,31,19],
+"classmeow_1_1Matrix.html#abc6f5c824ee47cb15094729ca91f2e7c":[1,0,0,31,16],
+"classmeow_1_1Matrix.html#ac1030360f1f48119128d99428930cce6":[1,0,0,31,6],
+"classmeow_1_1Matrix.html#ac17251cb984beb1f74558724a22a0120":[1,0,0,31,35],
+"classmeow_1_1Matrix.html#ac492cefa5df3a4ac6c9799931fb93605":[1,0,0,31,40],
+"classmeow_1_1Matrix.html#acf27e5ea48f42ceec61e933dfe269016":[1,0,0,31,46],
+"classmeow_1_1Matrix.html#add7842aea9c5b0372f56656af0d43325":[1,0,0,31,38],
+"classmeow_1_1Matrix.html#ade31d2339af552ba1df230c8383e2f84":[1,0,0,31,27],
+"classmeow_1_1Matrix.html#ae623c8168ebf26473550d831f0254c4c":[1,0,0,31,36],
+"classmeow_1_1Matrix.html#ae66fe3b4deb85b9b4c047f405a60f10e":[1,0,0,31,5],
+"classmeow_1_1Matrix.html#ae89a9a7646f7b7c0f23756809c65dc8c":[1,0,0,31,41],
+"classmeow_1_1Matrix.html#aed17cc829d1e766d2c905d65cbae48ce":[1,0,0,31,11],
+"classmeow_1_1Matrix.html#af0b4507ec5ea08e8f33aeb99f11e5f74":[1,0,0,31,4],
+"classmeow_1_1Matrix.html#af6c3ae812c4290d29fb0932b655887dd":[1,0,0,31,18]
};
diff --git a/doc/html/navtreeindex2.js b/doc/html/navtreeindex2.js
index 316cba4..ccb14e9 100644
--- a/doc/html/navtreeindex2.js
+++ b/doc/html/navtreeindex2.js
@@ -1,5 +1,11 @@
var NAVTREEINDEX2 =
{
+"classmeow_1_1Matrix.html#afb81446984f7c27458ccef86be2de413":[1,0,0,31,10],
+"classmeow_1_1MergeableHeap.html":[1,0,0,10],
+"classmeow_1_1MergeableHeap.html#a112454a9c92b71531429442e95953576":[1,0,0,10,11],
+"classmeow_1_1MergeableHeap.html#a1d0ef435fb0214b13fbbc1a8b0ce7cdf":[1,0,0,10,1],
+"classmeow_1_1MergeableHeap.html#a24a0a465dff230206e85f7b3c172553f":[1,0,0,10,2],
+"classmeow_1_1MergeableHeap.html#a304bacba11be0772b10505b6053a57e1":[1,0,0,10,8],
"classmeow_1_1MergeableHeap.html#a3638f12db8da212244cb6ab7e37332db":[1,0,0,10,6],
"classmeow_1_1MergeableHeap.html#a3f9a65eeb600d0b9fba60855b560ab33":[1,0,0,10,4],
"classmeow_1_1MergeableHeap.html#a531fff6c8a72f09168701a0612b20af7":[1,0,0,10,5],
@@ -9,119 +15,119 @@ var NAVTREEINDEX2 =
"classmeow_1_1MergeableHeap.html#a9491f6a76be757ae888a4093c034eedb":[1,0,0,10,10],
"classmeow_1_1MergeableHeap.html#aaa072185a884716b2dd5c0ba608be1b0":[1,0,0,10,3],
"classmeow_1_1MergeableHeap.html#acec8dde15d23e729aba90d98417db845":[1,0,0,10,7],
-"classmeow_1_1ObjArray.html":[1,0,0,36],
-"classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70":[1,0,0,36,24],
-"classmeow_1_1ObjArray.html#a0cf27c92cf52d3f125a0e01e6b62bce0":[1,0,0,36,10],
-"classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f":[1,0,0,36,14],
-"classmeow_1_1ObjArray.html#a277d2ef80a4a62815253e57a91b3ed6f":[1,0,0,36,1],
-"classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044":[1,0,0,36,7],
-"classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae":[1,0,0,36,8],
-"classmeow_1_1ObjArray.html#a387a45e9231e39b68790881125122768":[1,0,0,36,3],
-"classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf":[1,0,0,36,13],
-"classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74":[1,0,0,36,18],
-"classmeow_1_1ObjArray.html#a5196b0d1ae35ce86857d88810cc0933f":[1,0,0,36,16],
-"classmeow_1_1ObjArray.html#a56b6b9b5e415c084ece7f0c214f0e8f0":[1,0,0,36,12],
-"classmeow_1_1ObjArray.html#a5a9fa3cf06aab931c3248be58c3f1c14":[1,0,0,36,2],
-"classmeow_1_1ObjArray.html#a730a953292ddeb0a03958f00087da129":[1,0,0,36,4],
-"classmeow_1_1ObjArray.html#a83d175206d5bae2542a818200dd64c9b":[1,0,0,36,11],
-"classmeow_1_1ObjArray.html#a8886e87d000181823e3532791e6a8288":[1,0,0,36,6],
-"classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5":[1,0,0,36,9],
-"classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c":[1,0,0,36,23],
-"classmeow_1_1ObjArray.html#aa09ddb0d17ebb93520b211dc29ad2904":[1,0,0,36,19],
-"classmeow_1_1ObjArray.html#aa9e6268b6d7ea3c7b53101a7a175e360":[1,0,0,36,15],
-"classmeow_1_1ObjArray.html#ab77633d00d8e75f1e6dd548c07d780fe":[1,0,0,36,21],
-"classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01":[1,0,0,36,20],
-"classmeow_1_1ObjArray.html#adaa534a1d808e8064b6cd073fedf1e73":[1,0,0,36,5],
-"classmeow_1_1ObjArray.html#adf6b1b267475a6a25a03317943e4a3cf":[1,0,0,36,0],
-"classmeow_1_1ObjArray.html#af6c846ed0992c4f1e0a765a6d3549628":[1,0,0,36,22],
-"classmeow_1_1ObjArray.html#affe4f74887e9c81f1e01b4bd1a4e0e28":[1,0,0,36,17],
-"classmeow_1_1ObjBase.html":[1,0,0,37],
-"classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234":[1,0,0,37,1],
-"classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8":[1,0,0,37,4],
-"classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34":[1,0,0,37,6],
-"classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72":[1,0,0,37,7],
-"classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3":[1,0,0,37,8],
-"classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619":[1,0,0,37,2],
-"classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8":[1,0,0,37,5],
-"classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff":[1,0,0,37,0],
-"classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c":[1,0,0,37,3],
-"classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8":[1,0,0,37,9],
-"classmeow_1_1ObjDictionary.html":[1,0,0,38],
-"classmeow_1_1ObjDictionary.html#a081d3cf0d190e6dd02208c1c49653ed7":[1,0,0,38,4],
-"classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137":[1,0,0,38,18],
-"classmeow_1_1ObjDictionary.html#a0e265133214bd6b9f0dce6ce6dc6ca23":[1,0,0,38,20],
-"classmeow_1_1ObjDictionary.html#a1055d36aa3d4551def2abd9aa86b7662":[1,0,0,38,0],
-"classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb":[1,0,0,38,7],
-"classmeow_1_1ObjDictionary.html#a1979f646a23bffdd01a9fe52e5a8aca1":[1,0,0,38,13],
-"classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c":[1,0,0,38,22],
-"classmeow_1_1ObjDictionary.html#a59cf39f8704134a64090ecb59fff01aa":[1,0,0,38,2],
-"classmeow_1_1ObjDictionary.html#a7e50cbeeead963d95d661783ee2a9285":[1,0,0,38,5],
-"classmeow_1_1ObjDictionary.html#a87b0f4542b07951f207a1c9d3e327c81":[1,0,0,38,16],
-"classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6":[1,0,0,38,6],
-"classmeow_1_1ObjDictionary.html#a8f73bbc1d934566dd8a2087b145e3f48":[1,0,0,38,14],
-"classmeow_1_1ObjDictionary.html#a9784fbd0eaab219216abdcba4f326ead":[1,0,0,38,15],
-"classmeow_1_1ObjDictionary.html#ab0a4c64950a5a89012a913202fac027b":[1,0,0,38,19],
-"classmeow_1_1ObjDictionary.html#ab29251c7ae6e13058912106075ebe161":[1,0,0,38,1],
-"classmeow_1_1ObjDictionary.html#ab8eb8496153b57598e81e089eef89e08":[1,0,0,38,3],
-"classmeow_1_1ObjDictionary.html#ad22d7c7dc4d35417e9657eb88ca0dfbb":[1,0,0,38,17],
-"classmeow_1_1ObjDictionary.html#ae5f44ae004be8f10a1c9f5e65eeebc75":[1,0,0,38,10],
-"classmeow_1_1ObjDictionary.html#ae60f2a947516d6d6f037cc106c00d3be":[1,0,0,38,12],
-"classmeow_1_1ObjDictionary.html#aeb8765e90349daee27bcf9e6c2672676":[1,0,0,38,11],
-"classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64":[1,0,0,38,8],
-"classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c":[1,0,0,38,21],
-"classmeow_1_1ObjDictionary.html#afedaaaf1ed8b066a43d8e12081f6c878":[1,0,0,38,9],
-"classmeow_1_1ObjProperties.html":[1,0,0,39],
-"classmeow_1_1ObjProperties.html#a183b80a7d63a01c23b0c0af5708b336f":[1,0,0,39,11],
-"classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164":[1,0,0,39,4],
-"classmeow_1_1ObjProperties.html#a40323f6710fe3688574555eedaf2adc9":[1,0,0,39,8],
-"classmeow_1_1ObjProperties.html#a43ce997788ca81603e881a22285fd307":[1,0,0,39,6],
-"classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52":[1,0,0,39,3],
-"classmeow_1_1ObjProperties.html#a4d7d0978d10735798e76e707ee9faa5a":[1,0,0,39,15],
-"classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a":[1,0,0,39,5],
-"classmeow_1_1ObjProperties.html#a5614e7f6a939da5376e83a1e75e215c5":[1,0,0,39,10],
-"classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84":[1,0,0,39,16],
-"classmeow_1_1ObjProperties.html#a7d36338144c15d56ab8f2a52a54a47cf":[1,0,0,39,14],
-"classmeow_1_1ObjProperties.html#a7ebb7d21a575adbf9cbed10db807c6b6":[1,0,0,39,17],
-"classmeow_1_1ObjProperties.html#a93f1d23981d318f743b1996a415e9cbb":[1,0,0,39,2],
-"classmeow_1_1ObjProperties.html#a982de1e0030b8ef6479db01daf2bcb33":[1,0,0,39,1],
-"classmeow_1_1ObjProperties.html#aad531291ff299d99ce081afaefbd94b3":[1,0,0,39,13],
-"classmeow_1_1ObjProperties.html#aec0a1bc70d7cf33b54a1c951d5cdab23":[1,0,0,39,12],
-"classmeow_1_1ObjProperties.html#af14e8afbd6807b61429d4f84291d6cee":[1,0,0,39,7],
-"classmeow_1_1ObjProperties.html#af1c809c0b160e143ee4f73cd577bd2cb":[1,0,0,39,0],
-"classmeow_1_1ObjProperties.html#af20d23e32a6658bb19685540c65c6a3a":[1,0,0,39,9],
-"classmeow_1_1ObjSelector.html":[1,0,0,40],
-"classmeow_1_1ObjSelector.html#a0401a1941829c1b82ebce545d00a996d":[1,0,0,40,3],
-"classmeow_1_1ObjSelector.html#a12a464df440ff51da3f51a5c6731f958":[1,0,0,40,10],
-"classmeow_1_1ObjSelector.html#a43786b9b4869a3bb115c852d09e474cb":[1,0,0,40,9],
-"classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb":[1,0,0,40,5],
-"classmeow_1_1ObjSelector.html#a757b4c75d87f958b64bb5cacbeb71dcb":[1,0,0,40,11],
-"classmeow_1_1ObjSelector.html#a7f798e7243aa2e93d2458dfc7f6d3308":[1,0,0,40,1],
-"classmeow_1_1ObjSelector.html#a85ff03287a5344d02b5cd67f89265ed8":[1,0,0,40,12],
-"classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0":[1,0,0,40,7],
-"classmeow_1_1ObjSelector.html#a948d5e709bdeacb8648e8c7c243b0ff3":[1,0,0,40,8],
-"classmeow_1_1ObjSelector.html#a94ae819ddd031927466845c86ce35621":[1,0,0,40,6],
-"classmeow_1_1ObjSelector.html#aa5d9c625910c4ece0cba7944885d39c2":[1,0,0,40,2],
-"classmeow_1_1ObjSelector.html#af0a264c27d0d08af4b617d2e4675fda7":[1,0,0,40,13],
-"classmeow_1_1ObjSelector.html#af1479fc3260f2600d76bc018a9a36019":[1,0,0,40,4],
-"classmeow_1_1ObjSelector.html#afefd56114a54ec164f0264d83394fc21":[1,0,0,40,0],
-"classmeow_1_1ObjType.html":[1,0,0,41],
-"classmeow_1_1ObjType.html#a0eac1bd069ebdde20f422ef6a5ffb7cb":[1,0,0,41,8],
-"classmeow_1_1ObjType.html#a14617b585e4b852ab63321ad0af076e7":[1,0,0,41,14],
-"classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180":[1,0,0,41,6],
-"classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993":[1,0,0,41,1],
-"classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535":[1,0,0,41,5],
-"classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136":[1,0,0,41,0],
-"classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe":[1,0,0,41,13],
-"classmeow_1_1ObjType.html#a99d0180d4480c6fd46841e09c5519d8a":[1,0,0,41,10],
-"classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4":[1,0,0,41,4],
-"classmeow_1_1ObjType.html#ac703cec17ecfe6869a016c0ff072918c":[1,0,0,41,2],
-"classmeow_1_1ObjType.html#add76ed06952275dbb3c2ce0176cf0c7b":[1,0,0,41,12],
-"classmeow_1_1ObjType.html#ae086a8dc3e60528121e73a0ce80d2cc9":[1,0,0,41,3],
-"classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49":[1,0,0,41,7],
-"classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944":[1,0,0,41,16],
-"classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f":[1,0,0,41,15],
-"classmeow_1_1ObjType.html#afc34507295cf5bdbb1b5fd22c1c43f9a":[1,0,0,41,11],
-"classmeow_1_1ObjType.html#afd125762822efc8ff890479bac6fafe4":[1,0,0,41,9],
+"classmeow_1_1ObjArray.html":[1,0,0,37],
+"classmeow_1_1ObjArray.html#a089627fcba2e80760993e3aff1705a70":[1,0,0,37,24],
+"classmeow_1_1ObjArray.html#a0cf27c92cf52d3f125a0e01e6b62bce0":[1,0,0,37,10],
+"classmeow_1_1ObjArray.html#a1b6cb50da01769067bafcb85c2a5104f":[1,0,0,37,14],
+"classmeow_1_1ObjArray.html#a277d2ef80a4a62815253e57a91b3ed6f":[1,0,0,37,1],
+"classmeow_1_1ObjArray.html#a339fcf38102846e361db6aa1e896c044":[1,0,0,37,7],
+"classmeow_1_1ObjArray.html#a35d6363d1432059e3dd7c3c43ca006ae":[1,0,0,37,8],
+"classmeow_1_1ObjArray.html#a387a45e9231e39b68790881125122768":[1,0,0,37,3],
+"classmeow_1_1ObjArray.html#a3b0c22ea4f9538279794ce866013a2cf":[1,0,0,37,13],
+"classmeow_1_1ObjArray.html#a3bc18d106d33e0a2f00f6e9ebf443b74":[1,0,0,37,18],
+"classmeow_1_1ObjArray.html#a5196b0d1ae35ce86857d88810cc0933f":[1,0,0,37,16],
+"classmeow_1_1ObjArray.html#a56b6b9b5e415c084ece7f0c214f0e8f0":[1,0,0,37,12],
+"classmeow_1_1ObjArray.html#a5a9fa3cf06aab931c3248be58c3f1c14":[1,0,0,37,2],
+"classmeow_1_1ObjArray.html#a730a953292ddeb0a03958f00087da129":[1,0,0,37,4],
+"classmeow_1_1ObjArray.html#a83d175206d5bae2542a818200dd64c9b":[1,0,0,37,11],
+"classmeow_1_1ObjArray.html#a8886e87d000181823e3532791e6a8288":[1,0,0,37,6],
+"classmeow_1_1ObjArray.html#a8be408ac8b9b6515fc55dfecd418ceb5":[1,0,0,37,9],
+"classmeow_1_1ObjArray.html#a8fe5956bfb52c17632b00338c7da5d5c":[1,0,0,37,23],
+"classmeow_1_1ObjArray.html#aa09ddb0d17ebb93520b211dc29ad2904":[1,0,0,37,19],
+"classmeow_1_1ObjArray.html#aa9e6268b6d7ea3c7b53101a7a175e360":[1,0,0,37,15],
+"classmeow_1_1ObjArray.html#ab77633d00d8e75f1e6dd548c07d780fe":[1,0,0,37,21],
+"classmeow_1_1ObjArray.html#ad1acc646bf175e7797a1205c89240a01":[1,0,0,37,20],
+"classmeow_1_1ObjArray.html#adaa534a1d808e8064b6cd073fedf1e73":[1,0,0,37,5],
+"classmeow_1_1ObjArray.html#adf6b1b267475a6a25a03317943e4a3cf":[1,0,0,37,0],
+"classmeow_1_1ObjArray.html#af6c846ed0992c4f1e0a765a6d3549628":[1,0,0,37,22],
+"classmeow_1_1ObjArray.html#affe4f74887e9c81f1e01b4bd1a4e0e28":[1,0,0,37,17],
+"classmeow_1_1ObjBase.html":[1,0,0,38],
+"classmeow_1_1ObjBase.html#a0ae0da4160bf2556411b4c126c649234":[1,0,0,38,1],
+"classmeow_1_1ObjBase.html#a4aae58e8005739abe6d091d8b55a21e8":[1,0,0,38,4],
+"classmeow_1_1ObjBase.html#a4c1f5cb4b05559197148a8f6524bfc34":[1,0,0,38,6],
+"classmeow_1_1ObjBase.html#a63a4911bb073281820fe9b7a9908ba72":[1,0,0,38,7],
+"classmeow_1_1ObjBase.html#a75dce38f89ce11cb06e0454e7c1039d3":[1,0,0,38,8],
+"classmeow_1_1ObjBase.html#a79725f50866832762db87184eb528619":[1,0,0,38,2],
+"classmeow_1_1ObjBase.html#ab42310e3f3a7cd558dd91381c8dd23d8":[1,0,0,38,5],
+"classmeow_1_1ObjBase.html#abe7a7138b5a81eb66da51b74bc3996ff":[1,0,0,38,0],
+"classmeow_1_1ObjBase.html#ac9114e6917bca03b8f3c89694214b57c":[1,0,0,38,3],
+"classmeow_1_1ObjBase.html#ae9e9e5c664b7a92e54a3616983f39ba8":[1,0,0,38,9],
+"classmeow_1_1ObjDictionary.html":[1,0,0,39],
+"classmeow_1_1ObjDictionary.html#a081d3cf0d190e6dd02208c1c49653ed7":[1,0,0,39,4],
+"classmeow_1_1ObjDictionary.html#a0b1bd9fe09676aca74aec34bf5ea7137":[1,0,0,39,18],
+"classmeow_1_1ObjDictionary.html#a0e265133214bd6b9f0dce6ce6dc6ca23":[1,0,0,39,20],
+"classmeow_1_1ObjDictionary.html#a1055d36aa3d4551def2abd9aa86b7662":[1,0,0,39,0],
+"classmeow_1_1ObjDictionary.html#a14ce0fcedf7619c0b442588e185a7eeb":[1,0,0,39,7],
+"classmeow_1_1ObjDictionary.html#a1979f646a23bffdd01a9fe52e5a8aca1":[1,0,0,39,13],
+"classmeow_1_1ObjDictionary.html#a2393452e9533fab679565068545f109c":[1,0,0,39,22],
+"classmeow_1_1ObjDictionary.html#a59cf39f8704134a64090ecb59fff01aa":[1,0,0,39,2],
+"classmeow_1_1ObjDictionary.html#a7e50cbeeead963d95d661783ee2a9285":[1,0,0,39,5],
+"classmeow_1_1ObjDictionary.html#a87b0f4542b07951f207a1c9d3e327c81":[1,0,0,39,16],
+"classmeow_1_1ObjDictionary.html#a8f2e32f6eb11904c2547fae0ff9ab3d6":[1,0,0,39,6],
+"classmeow_1_1ObjDictionary.html#a8f73bbc1d934566dd8a2087b145e3f48":[1,0,0,39,14],
+"classmeow_1_1ObjDictionary.html#a9784fbd0eaab219216abdcba4f326ead":[1,0,0,39,15],
+"classmeow_1_1ObjDictionary.html#ab0a4c64950a5a89012a913202fac027b":[1,0,0,39,19],
+"classmeow_1_1ObjDictionary.html#ab29251c7ae6e13058912106075ebe161":[1,0,0,39,1],
+"classmeow_1_1ObjDictionary.html#ab8eb8496153b57598e81e089eef89e08":[1,0,0,39,3],
+"classmeow_1_1ObjDictionary.html#ad22d7c7dc4d35417e9657eb88ca0dfbb":[1,0,0,39,17],
+"classmeow_1_1ObjDictionary.html#ae5f44ae004be8f10a1c9f5e65eeebc75":[1,0,0,39,10],
+"classmeow_1_1ObjDictionary.html#ae60f2a947516d6d6f037cc106c00d3be":[1,0,0,39,12],
+"classmeow_1_1ObjDictionary.html#aeb8765e90349daee27bcf9e6c2672676":[1,0,0,39,11],
+"classmeow_1_1ObjDictionary.html#aee3a1722f6061987a242b9b33e5fcc64":[1,0,0,39,8],
+"classmeow_1_1ObjDictionary.html#af5114823fcc2476aa45a965e4af66d6c":[1,0,0,39,21],
+"classmeow_1_1ObjDictionary.html#afedaaaf1ed8b066a43d8e12081f6c878":[1,0,0,39,9],
+"classmeow_1_1ObjProperties.html":[1,0,0,40],
+"classmeow_1_1ObjProperties.html#a183b80a7d63a01c23b0c0af5708b336f":[1,0,0,40,11],
+"classmeow_1_1ObjProperties.html#a3345d121cc8a6b25baad2cbd80d23164":[1,0,0,40,4],
+"classmeow_1_1ObjProperties.html#a40323f6710fe3688574555eedaf2adc9":[1,0,0,40,8],
+"classmeow_1_1ObjProperties.html#a43ce997788ca81603e881a22285fd307":[1,0,0,40,6],
+"classmeow_1_1ObjProperties.html#a4bc4f097d783426457a784a39266ba52":[1,0,0,40,3],
+"classmeow_1_1ObjProperties.html#a4d7d0978d10735798e76e707ee9faa5a":[1,0,0,40,15],
+"classmeow_1_1ObjProperties.html#a55ee94dd2d564eaee8250ed517b6779a":[1,0,0,40,5],
+"classmeow_1_1ObjProperties.html#a5614e7f6a939da5376e83a1e75e215c5":[1,0,0,40,10],
+"classmeow_1_1ObjProperties.html#a6283d69f9c6430c3b2601d7f0267bb84":[1,0,0,40,16],
+"classmeow_1_1ObjProperties.html#a7d36338144c15d56ab8f2a52a54a47cf":[1,0,0,40,14],
+"classmeow_1_1ObjProperties.html#a7ebb7d21a575adbf9cbed10db807c6b6":[1,0,0,40,17],
+"classmeow_1_1ObjProperties.html#a93f1d23981d318f743b1996a415e9cbb":[1,0,0,40,2],
+"classmeow_1_1ObjProperties.html#a982de1e0030b8ef6479db01daf2bcb33":[1,0,0,40,1],
+"classmeow_1_1ObjProperties.html#aad531291ff299d99ce081afaefbd94b3":[1,0,0,40,13],
+"classmeow_1_1ObjProperties.html#aec0a1bc70d7cf33b54a1c951d5cdab23":[1,0,0,40,12],
+"classmeow_1_1ObjProperties.html#af14e8afbd6807b61429d4f84291d6cee":[1,0,0,40,7],
+"classmeow_1_1ObjProperties.html#af1c809c0b160e143ee4f73cd577bd2cb":[1,0,0,40,0],
+"classmeow_1_1ObjProperties.html#af20d23e32a6658bb19685540c65c6a3a":[1,0,0,40,9],
+"classmeow_1_1ObjSelector.html":[1,0,0,41],
+"classmeow_1_1ObjSelector.html#a0401a1941829c1b82ebce545d00a996d":[1,0,0,41,3],
+"classmeow_1_1ObjSelector.html#a12a464df440ff51da3f51a5c6731f958":[1,0,0,41,10],
+"classmeow_1_1ObjSelector.html#a43786b9b4869a3bb115c852d09e474cb":[1,0,0,41,9],
+"classmeow_1_1ObjSelector.html#a498c46995c8f9050b3b069b95d10c5cb":[1,0,0,41,5],
+"classmeow_1_1ObjSelector.html#a757b4c75d87f958b64bb5cacbeb71dcb":[1,0,0,41,11],
+"classmeow_1_1ObjSelector.html#a7f798e7243aa2e93d2458dfc7f6d3308":[1,0,0,41,1],
+"classmeow_1_1ObjSelector.html#a85ff03287a5344d02b5cd67f89265ed8":[1,0,0,41,12],
+"classmeow_1_1ObjSelector.html#a8febbd488ce1cf37b075c0e42278d3d0":[1,0,0,41,7],
+"classmeow_1_1ObjSelector.html#a948d5e709bdeacb8648e8c7c243b0ff3":[1,0,0,41,8],
+"classmeow_1_1ObjSelector.html#a94ae819ddd031927466845c86ce35621":[1,0,0,41,6],
+"classmeow_1_1ObjSelector.html#aa5d9c625910c4ece0cba7944885d39c2":[1,0,0,41,2],
+"classmeow_1_1ObjSelector.html#af0a264c27d0d08af4b617d2e4675fda7":[1,0,0,41,13],
+"classmeow_1_1ObjSelector.html#af1479fc3260f2600d76bc018a9a36019":[1,0,0,41,4],
+"classmeow_1_1ObjSelector.html#afefd56114a54ec164f0264d83394fc21":[1,0,0,41,0],
+"classmeow_1_1ObjType.html":[1,0,0,42],
+"classmeow_1_1ObjType.html#a0eac1bd069ebdde20f422ef6a5ffb7cb":[1,0,0,42,8],
+"classmeow_1_1ObjType.html#a14617b585e4b852ab63321ad0af076e7":[1,0,0,42,14],
+"classmeow_1_1ObjType.html#a19f8291125626675d15b4394283b8180":[1,0,0,42,6],
+"classmeow_1_1ObjType.html#a1b2ab2b0b31756ed1e1a011f6e50c993":[1,0,0,42,1],
+"classmeow_1_1ObjType.html#a392c841c8012ebd9a62f514a74e4b535":[1,0,0,42,5],
+"classmeow_1_1ObjType.html#a6a625052a5579e4897a95e9ca6663136":[1,0,0,42,0],
+"classmeow_1_1ObjType.html#a8ff33aabcb80ffc2d870b6ce73a6d4fe":[1,0,0,42,13],
+"classmeow_1_1ObjType.html#a99d0180d4480c6fd46841e09c5519d8a":[1,0,0,42,10],
+"classmeow_1_1ObjType.html#a9deb0425763909a5b74aca7bd0c116f4":[1,0,0,42,4],
+"classmeow_1_1ObjType.html#ac703cec17ecfe6869a016c0ff072918c":[1,0,0,42,2],
+"classmeow_1_1ObjType.html#add76ed06952275dbb3c2ce0176cf0c7b":[1,0,0,42,12],
+"classmeow_1_1ObjType.html#ae086a8dc3e60528121e73a0ce80d2cc9":[1,0,0,42,3],
+"classmeow_1_1ObjType.html#ae7d34cb241aa7d74c9c52918c98dab49":[1,0,0,42,7],
+"classmeow_1_1ObjType.html#af0adbddc5a4ef305c2637b6694355944":[1,0,0,42,16],
+"classmeow_1_1ObjType.html#afaa74a571889ea5281ab3de5636f7e0f":[1,0,0,42,15],
+"classmeow_1_1ObjType.html#afc34507295cf5bdbb1b5fd22c1c43f9a":[1,0,0,42,11],
+"classmeow_1_1ObjType.html#afd125762822efc8ff890479bac6fafe4":[1,0,0,42,9],
"classmeow_1_1Photo.html":[1,0,0,26],
"classmeow_1_1Photo.html#a07c8ca1846fc97005a7d960c5fc703a7":[1,0,0,26,8],
"classmeow_1_1Photo.html#a0e947011dcb0db21760c89663acd2208":[1,0,0,26,15],
@@ -157,22 +163,42 @@ var NAVTREEINDEX2 =
"classmeow_1_1Photo.html#ae1d328ee4c0971d4a90fb1f05bea1e66":[1,0,0,26,21],
"classmeow_1_1Photo.html#aed3ed47ee1ddae0732e24af71b91a7b0":[1,0,0,26,29],
"classmeow_1_1Photo.html#af69dcdd4ccd4c15227cf0b104325d8de":[1,0,0,26,4],
-"classmeow_1_1PhotoProjection.html":[1,0,0,34],
-"classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13":[1,0,0,34,6],
-"classmeow_1_1PhotoProjection.html#a1e12a0292cf00f4d107b4a5e8e0fa464":[1,0,0,34,1],
-"classmeow_1_1PhotoProjection.html#a3499d5c76df3c78028f3e1b7d8cb48e6":[1,0,0,34,11],
-"classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d":[1,0,0,34,8],
-"classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46":[1,0,0,34,3],
-"classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52":[1,0,0,34,13],
-"classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90":[1,0,0,34,10],
-"classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce":[1,0,0,34,4],
-"classmeow_1_1PhotoProjection.html#a902922d6be5fcb6ce2ce563031913e36":[1,0,0,34,0],
-"classmeow_1_1PhotoProjection.html#aa50f02a71f9be0b417b0dc9f8ff5d9ab":[1,0,0,34,9],
-"classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3":[1,0,0,34,7],
-"classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f":[1,0,0,34,14],
-"classmeow_1_1PhotoProjection.html#adecf5a6f3f1f07d7fc6b4714fa80e8a1":[1,0,0,34,12],
-"classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5":[1,0,0,34,5],
-"classmeow_1_1PhotoProjection.html#afba51bf2a5f236057bfd279ef68e0d71":[1,0,0,34,2],
+"classmeow_1_1PhotoProjection.html":[1,0,0,35],
+"classmeow_1_1PhotoProjection.html#a19f5080ff959073d334c6e21a6247f13":[1,0,0,35,6],
+"classmeow_1_1PhotoProjection.html#a1e12a0292cf00f4d107b4a5e8e0fa464":[1,0,0,35,1],
+"classmeow_1_1PhotoProjection.html#a3499d5c76df3c78028f3e1b7d8cb48e6":[1,0,0,35,11],
+"classmeow_1_1PhotoProjection.html#a4a07aecb4474633c82d6b73dc1cdd53d":[1,0,0,35,8],
+"classmeow_1_1PhotoProjection.html#a4a26e30caff3bd71ff68e97f5dc9ec46":[1,0,0,35,3],
+"classmeow_1_1PhotoProjection.html#a632973b2b8675f126b74e5ced2f62d52":[1,0,0,35,13],
+"classmeow_1_1PhotoProjection.html#a7c05a0abd905abc1330331627b6a1d90":[1,0,0,35,10],
+"classmeow_1_1PhotoProjection.html#a8bc014829f304ae83da2862fcf4f6dce":[1,0,0,35,4],
+"classmeow_1_1PhotoProjection.html#a902922d6be5fcb6ce2ce563031913e36":[1,0,0,35,0],
+"classmeow_1_1PhotoProjection.html#aa50f02a71f9be0b417b0dc9f8ff5d9ab":[1,0,0,35,9],
+"classmeow_1_1PhotoProjection.html#aabb88ff170cc655a3b7262af3337a0a3":[1,0,0,35,7],
+"classmeow_1_1PhotoProjection.html#ac4bbf64ef4341a10bc444147142c7d5f":[1,0,0,35,14],
+"classmeow_1_1PhotoProjection.html#adecf5a6f3f1f07d7fc6b4714fa80e8a1":[1,0,0,35,12],
+"classmeow_1_1PhotoProjection.html#af143b826cad7171ec539432d3add9da5":[1,0,0,35,5],
+"classmeow_1_1PhotoProjection.html#afba51bf2a5f236057bfd279ef68e0d71":[1,0,0,35,2],
+"classmeow_1_1Pipeline.html":[1,0,0,47],
+"classmeow_1_1Pipeline.html#a0ae87626df1cef4c04a11af40c6765b1":[1,0,0,47,18],
+"classmeow_1_1Pipeline.html#a107cc18a159ceb2fcde495363c55047e":[1,0,0,47,15],
+"classmeow_1_1Pipeline.html#a146677fa11b0b47af3000d4b0a72fc47":[1,0,0,47,6],
+"classmeow_1_1Pipeline.html#a1bc72f0b75abb48b8c5212813b8dc8f4":[1,0,0,47,4],
+"classmeow_1_1Pipeline.html#a2f135be41a794fe8c6ac88e4b954feb8":[1,0,0,47,13],
+"classmeow_1_1Pipeline.html#a3cffd384d9b8969122adda3b9087352a":[1,0,0,47,3],
+"classmeow_1_1Pipeline.html#a41613bf7d08d61043b8791665bdb2395":[1,0,0,47,11],
+"classmeow_1_1Pipeline.html#a43280db4560580c0b1618810caab4b02":[1,0,0,47,17],
+"classmeow_1_1Pipeline.html#a46fba2a5d88bf742223732e523e7d234":[1,0,0,47,14],
+"classmeow_1_1Pipeline.html#a68341b2e6f51ec85d585f1f5fc658da9":[1,0,0,47,8],
+"classmeow_1_1Pipeline.html#a6ce35017ddf9c669a095290a3ebed8c5":[1,0,0,47,10],
+"classmeow_1_1Pipeline.html#a8263e4d001096fb013fea1465d5fa4d5":[1,0,0,47,5],
+"classmeow_1_1Pipeline.html#a8425f0a6a4dff7b3bd54f5a0323839c3":[1,0,0,47,16],
+"classmeow_1_1Pipeline.html#a9acf9a46f19f097629ce2eeb690a23d7":[1,0,0,47,2],
+"classmeow_1_1Pipeline.html#ab5c5d983ab507579bb2958339caa6356":[1,0,0,47,0],
+"classmeow_1_1Pipeline.html#ad68f17ba679781f8d8996de3f742584c":[1,0,0,47,9],
+"classmeow_1_1Pipeline.html#ad6ff2086fe68c50f526739f3d781bab4":[1,0,0,47,1],
+"classmeow_1_1Pipeline.html#ad8a007463d13af873d9ab6e5926be374":[1,0,0,47,12],
+"classmeow_1_1Pipeline.html#ade80a603d4ce3d9761ec57a2087749c7":[1,0,0,47,7],
"classmeow_1_1RGBf__Space.html":[1,0,0,4],
"classmeow_1_1RGBf__Space.html#a029c3bd52ae818462558742dc2be0904":[1,0,0,4,8],
"classmeow_1_1RGBf__Space.html#a130bbee98fdd279a415e18aa0ca2f13c":[1,0,0,4,9],
@@ -223,31 +249,5 @@ var NAVTREEINDEX2 =
"classmeow_1_1RGBi__Space.html#a6920d22a9b808f0f2884bd791f8f568a":[1,0,0,3,21],
"classmeow_1_1RGBi__Space.html#a6a339fd5415d2c84c829c2dec1ab6710":[1,0,0,3,1],
"classmeow_1_1RGBi__Space.html#a6b4567461811d8f877b0234ca6662a76":[1,0,0,3,20],
-"classmeow_1_1RGBi__Space.html#a71795b3157bae2b877635b43abd145e9":[1,0,0,3,16],
-"classmeow_1_1RGBi__Space.html#a76b540bdf49bc8912c5f62aa875b1906":[1,0,0,3,28],
-"classmeow_1_1RGBi__Space.html#a7aeab58894418a920b77c592990bd1ab":[1,0,0,3,18],
-"classmeow_1_1RGBi__Space.html#a8a8779fb88ac2f2a97b00f3764035483":[1,0,0,3,5],
-"classmeow_1_1RGBi__Space.html#a93000ad239423bb98dda22c8d48bc614":[1,0,0,3,29],
-"classmeow_1_1RGBi__Space.html#a9eb77a74b33dd6c61f821ad9e1f5d00d":[1,0,0,3,0],
-"classmeow_1_1RGBi__Space.html#aa56cd3fabe6e32ede7f7761836dd7253":[1,0,0,3,14],
-"classmeow_1_1RGBi__Space.html#ab07979f6a7b9f6a45b75a6393ee6c385":[1,0,0,3,23],
-"classmeow_1_1RGBi__Space.html#ab286b1713dc25fe5e3e560df56a28792":[1,0,0,3,4],
-"classmeow_1_1RGBi__Space.html#abcf954ac596df3967581c533670a3339":[1,0,0,3,27],
-"classmeow_1_1RGBi__Space.html#acf9aab095784c66dc9b3969602f84384":[1,0,0,3,30],
-"classmeow_1_1RGBi__Space.html#ad1fa67b3646315b7a4fbcf225663e019":[1,0,0,3,6],
-"classmeow_1_1RGBi__Space.html#ad9160364e918eaa52e0573c30f4f26e7":[1,0,0,3,7],
-"classmeow_1_1RGBi__Space.html#ae929cfad169be9724e8d38d967a8ac33":[1,0,0,3,12],
-"classmeow_1_1ReaderWriter__double.html":[1,0,0,44],
-"classmeow_1_1ReaderWriter__double.html#a951e079f66e01d81f1492ae1da963d8e":[1,0,0,44,0],
-"classmeow_1_1ReaderWriter__double.html#afff0af84fcf29769feeac0544cb8f81b":[1,0,0,44,1],
-"classmeow_1_1ReaderWriter__int.html":[1,0,0,42],
-"classmeow_1_1ReaderWriter__int.html#a04e4b5a8285e372706faa5a45983fb9d":[1,0,0,42,0],
-"classmeow_1_1ReaderWriter__int.html#a91ca44a047318a75887b13d5e45d52fb":[1,0,0,42,1],
-"classmeow_1_1ReaderWriter__size__t.html":[1,0,0,43],
-"classmeow_1_1ReaderWriter__size__t.html#a4bf82797fa84b557895c204c8c94c936":[1,0,0,43,0],
-"classmeow_1_1ReaderWriter__size__t.html#ab616eb075979f72e989a984177dfdb58":[1,0,0,43,1],
-"classmeow_1_1ReaderWriter__string.html":[1,0,0,45],
-"classmeow_1_1ReaderWriter__string.html#ac4fe1d4fbaf69b48c36fe2d404c214c5":[1,0,0,45,1],
-"classmeow_1_1ReaderWriter__string.html#adf69dad74e4998323580e6913598c894":[1,0,0,45,0],
-"classmeow_1_1Rotation3D.html":[1,0,0,30]
+"classmeow_1_1RGBi__Space.html#a71795b3157bae2b877635b43abd145e9":[1,0,0,3,16]
};
diff --git a/doc/html/navtreeindex3.js b/doc/html/navtreeindex3.js
index 4b94ab9..2ed8845 100644
--- a/doc/html/navtreeindex3.js
+++ b/doc/html/navtreeindex3.js
@@ -1,5 +1,31 @@
var NAVTREEINDEX3 =
{
+"classmeow_1_1RGBi__Space.html#a76b540bdf49bc8912c5f62aa875b1906":[1,0,0,3,28],
+"classmeow_1_1RGBi__Space.html#a7aeab58894418a920b77c592990bd1ab":[1,0,0,3,18],
+"classmeow_1_1RGBi__Space.html#a8a8779fb88ac2f2a97b00f3764035483":[1,0,0,3,5],
+"classmeow_1_1RGBi__Space.html#a93000ad239423bb98dda22c8d48bc614":[1,0,0,3,29],
+"classmeow_1_1RGBi__Space.html#a9eb77a74b33dd6c61f821ad9e1f5d00d":[1,0,0,3,0],
+"classmeow_1_1RGBi__Space.html#aa56cd3fabe6e32ede7f7761836dd7253":[1,0,0,3,14],
+"classmeow_1_1RGBi__Space.html#ab07979f6a7b9f6a45b75a6393ee6c385":[1,0,0,3,23],
+"classmeow_1_1RGBi__Space.html#ab286b1713dc25fe5e3e560df56a28792":[1,0,0,3,4],
+"classmeow_1_1RGBi__Space.html#abcf954ac596df3967581c533670a3339":[1,0,0,3,27],
+"classmeow_1_1RGBi__Space.html#acf9aab095784c66dc9b3969602f84384":[1,0,0,3,30],
+"classmeow_1_1RGBi__Space.html#ad1fa67b3646315b7a4fbcf225663e019":[1,0,0,3,6],
+"classmeow_1_1RGBi__Space.html#ad9160364e918eaa52e0573c30f4f26e7":[1,0,0,3,7],
+"classmeow_1_1RGBi__Space.html#ae929cfad169be9724e8d38d967a8ac33":[1,0,0,3,12],
+"classmeow_1_1ReaderWriter__double.html":[1,0,0,45],
+"classmeow_1_1ReaderWriter__double.html#a951e079f66e01d81f1492ae1da963d8e":[1,0,0,45,0],
+"classmeow_1_1ReaderWriter__double.html#afff0af84fcf29769feeac0544cb8f81b":[1,0,0,45,1],
+"classmeow_1_1ReaderWriter__int.html":[1,0,0,43],
+"classmeow_1_1ReaderWriter__int.html#a04e4b5a8285e372706faa5a45983fb9d":[1,0,0,43,0],
+"classmeow_1_1ReaderWriter__int.html#a91ca44a047318a75887b13d5e45d52fb":[1,0,0,43,1],
+"classmeow_1_1ReaderWriter__size__t.html":[1,0,0,44],
+"classmeow_1_1ReaderWriter__size__t.html#a4bf82797fa84b557895c204c8c94c936":[1,0,0,44,0],
+"classmeow_1_1ReaderWriter__size__t.html#ab616eb075979f72e989a984177dfdb58":[1,0,0,44,1],
+"classmeow_1_1ReaderWriter__string.html":[1,0,0,46],
+"classmeow_1_1ReaderWriter__string.html#ac4fe1d4fbaf69b48c36fe2d404c214c5":[1,0,0,46,1],
+"classmeow_1_1ReaderWriter__string.html#adf69dad74e4998323580e6913598c894":[1,0,0,46,0],
+"classmeow_1_1Rotation3D.html":[1,0,0,30],
"classmeow_1_1Rotation3D.html#a0a7c3b7f605caf7bc54f80b25b317972":[1,0,0,30,13],
"classmeow_1_1Rotation3D.html#a201c56debd6cc0f4e75cb06148197726":[1,0,0,30,7],
"classmeow_1_1Rotation3D.html#a29ca99627654b9d136c12f6e0e2c91c5":[1,0,0,30,3],
@@ -30,19 +56,25 @@ var NAVTREEINDEX3 =
"classmeow_1_1SegmentTree.html#a8985a196cfb954bc469e7dae146ad4ed":[1,0,0,11,9],
"classmeow_1_1SegmentTree.html#a8e8365f0440c68f3c0853b94a7de3ccb":[1,0,0,11,0],
"classmeow_1_1SegmentTree.html#aaeca3de355dc367e2664e83800ee6aa5":[1,0,0,11,4],
-"classmeow_1_1Self.html":[1,0,0,46],
-"classmeow_1_1Self.html#a000ede7e217c31401cc0a4b1c6749ee5":[1,0,0,46,1],
-"classmeow_1_1Self.html#a0db7c98f250aeee3b06a49ebe0f16937":[1,0,0,46,0],
-"classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c":[1,0,0,46,10],
-"classmeow_1_1Self.html#a576e99ba0ba6e8263b4d2cfd9238440f":[1,0,0,46,9],
-"classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6":[1,0,0,46,5],
-"classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99":[1,0,0,46,6],
-"classmeow_1_1Self.html#a7ae7da730705bf2330a259308e5a6828":[1,0,0,46,3],
-"classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d":[1,0,0,46,4],
-"classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9":[1,0,0,46,11],
-"classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2":[1,0,0,46,7],
-"classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc":[1,0,0,46,2],
-"classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675":[1,0,0,46,8],
+"classmeow_1_1Self.html":[1,0,0,48],
+"classmeow_1_1Self.html#a000ede7e217c31401cc0a4b1c6749ee5":[1,0,0,48,4],
+"classmeow_1_1Self.html#a10f22a83c3afcf65f8f9680f2a2f945c":[1,0,0,48,14],
+"classmeow_1_1Self.html#a5962339e9ee49312ab770f1119256ca6":[1,0,0,48,9],
+"classmeow_1_1Self.html#a6063551c3e6ac647500e938ade8fbc99":[1,0,0,48,10],
+"classmeow_1_1Self.html#a63e1570c927c7fa3b95b71fe978e355d":[1,0,0,48,13],
+"classmeow_1_1Self.html#a6b39fcc4b184809f9aeaeb1c9a0bac2d":[1,0,0,48,1],
+"classmeow_1_1Self.html#a91098e2218c358470e81d64f35d6491d":[1,0,0,48,8],
+"classmeow_1_1Self.html#a9cd016a38a09f479fe2ed83eb1ebdae2":[1,0,0,48,6],
+"classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8":[1,0,0,48,0],
+"classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822":[1,0,0,48,0,1],
+"classmeow_1_1Self.html#aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730":[1,0,0,48,0,0],
+"classmeow_1_1Self.html#ab3671e44693b79e2f987f59652d46ca9":[1,0,0,48,15],
+"classmeow_1_1Self.html#ace312355261c68ac7531767939f5c4c2":[1,0,0,48,11],
+"classmeow_1_1Self.html#ada16564a03665b10810a6342d61044bc":[1,0,0,48,5],
+"classmeow_1_1Self.html#ae4256bfc598bb0db76141ffce506806e":[1,0,0,48,7],
+"classmeow_1_1Self.html#af3220c1e1d7966c6dbaf4ec62f8cbc2f":[1,0,0,48,2],
+"classmeow_1_1Self.html#af3277e1109c59e5f81549889b344a675":[1,0,0,48,12],
+"classmeow_1_1Self.html#af98a65e83bb96c0860d91a5013b269ef":[1,0,0,48,3],
"classmeow_1_1SplayTree.html":[1,0,0,12],
"classmeow_1_1SplayTree.html#a06dd77ef9bd62d83a7571feca5324825":[1,0,0,12,21],
"classmeow_1_1SplayTree.html#a0ae5e48da8d18ad8b2dc839d1c1b5582":[1,0,0,12,11],
@@ -123,6 +155,20 @@ var NAVTREEINDEX3 =
"classmeow_1_1SplayTree__Range_1_1Element.html#ace7c7fb2416ca7afd7df627a0fe57ed0":[1,0,0,13,0,4],
"classmeow_1_1SplayTree__Range_1_1Element.html#ad860aa695abffe96716eed4a5e58d950":[1,0,0,13,0,6],
"classmeow_1_1SplayTree__Range_1_1Element.html#aea48bcfd0ad50cbdcdc15128be5e8f15":[1,0,0,13,0,10],
+"classmeow_1_1TransformatePipeline.html":[1,0,0,33],
+"classmeow_1_1TransformatePipeline.html#a32e82edbed6cebb49b9ebdf9addd08bb":[1,0,0,33,4],
+"classmeow_1_1TransformatePipeline.html#a3f1ce65ee36ddc970c7ef851e805d5bb":[1,0,0,33,2],
+"classmeow_1_1TransformatePipeline.html#a432a32213f3d19262185de45d828883f":[1,0,0,33,7],
+"classmeow_1_1TransformatePipeline.html#a4c63df15f8033cc09664292ee7d01855":[1,0,0,33,11],
+"classmeow_1_1TransformatePipeline.html#a6299f8399a390371f4665c6800da0fc2":[1,0,0,33,8],
+"classmeow_1_1TransformatePipeline.html#a963050e6b1919534713c812aaa194b97":[1,0,0,33,10],
+"classmeow_1_1TransformatePipeline.html#a9bf648e2cd72cf49c625ba7190d33a1a":[1,0,0,33,3],
+"classmeow_1_1TransformatePipeline.html#aa0b055af22eef651755af283feb8d45c":[1,0,0,33,6],
+"classmeow_1_1TransformatePipeline.html#aac96b1c183cec4ba8b16b09281108d09":[1,0,0,33,1],
+"classmeow_1_1TransformatePipeline.html#aacb91bcfe8e35bd0cffc0ee71ea00dae":[1,0,0,33,5],
+"classmeow_1_1TransformatePipeline.html#ab13242986b383dc646c0093acca589ad":[1,0,0,33,9],
+"classmeow_1_1TransformatePipeline.html#ac6ab080d88daaadaa1d25e673da5b33b":[1,0,0,33,0],
+"classmeow_1_1TransformatePipeline.html#ae6c9f60e836fc48abb12dce4025fae20":[1,0,0,33,12],
"classmeow_1_1Transformation.html":[1,0,0,32],
"classmeow_1_1Transformation.html#a0186764bb80869bd80b81efb5bb1ee95":[1,0,0,32,9],
"classmeow_1_1Transformation.html#a09e71e5af508d7c0e09fdbeaacbe4365":[1,0,0,32,13],
@@ -143,25 +189,25 @@ var NAVTREEINDEX3 =
"classmeow_1_1Transformation.html#aae50028aba551ad3459335299794f8af":[1,0,0,32,12],
"classmeow_1_1Transformation.html#abe781169171fa3b8206a91e166779d74":[1,0,0,32,3],
"classmeow_1_1Transformation.html#ac457f3968b21842afa72344e34e7ada2":[1,0,0,32,1],
-"classmeow_1_1Usage.html":[1,0,0,47],
-"classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709":[1,0,0,47,16],
-"classmeow_1_1Usage.html#a095271836eecf23940608c0eafcff841":[1,0,0,47,4],
-"classmeow_1_1Usage.html#a1fbd15f59f3fdbe5e817d540505d6d6c":[1,0,0,47,6],
-"classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db":[1,0,0,47,2],
-"classmeow_1_1Usage.html#a4ee38098e5abdb6932a32c13a30f584d":[1,0,0,47,17],
-"classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d":[1,0,0,47,11],
-"classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400":[1,0,0,47,0],
-"classmeow_1_1Usage.html#a71ba10481062ed7088187cf27d7e0399":[1,0,0,47,9],
-"classmeow_1_1Usage.html#a79dc9b39f0fa7c810e1c8cee29e2adac":[1,0,0,47,8],
-"classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649":[1,0,0,47,1],
-"classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99":[1,0,0,47,15],
-"classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1":[1,0,0,47,3],
-"classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee":[1,0,0,47,12],
-"classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241":[1,0,0,47,14],
-"classmeow_1_1Usage.html#acf478b89a1208024f9f37f1fe04add0d":[1,0,0,47,10],
-"classmeow_1_1Usage.html#ad7db9a4197d9b281c47df0800ed63df0":[1,0,0,47,5],
-"classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752":[1,0,0,47,13],
-"classmeow_1_1Usage.html#af5a6f3dc4d2250dce3bd74d3de48714d":[1,0,0,47,7],
+"classmeow_1_1Usage.html":[1,0,0,49],
+"classmeow_1_1Usage.html#a05f4b23ce224661dbc7f308da4cb2709":[1,0,0,49,16],
+"classmeow_1_1Usage.html#a20c74babb6cc473dd3abe2a31bbe32db":[1,0,0,49,2],
+"classmeow_1_1Usage.html#a24d6ad17571474211da242b19bc5bdcf":[1,0,0,49,4],
+"classmeow_1_1Usage.html#a4decdd19345adcda3854fd13e3379d4f":[1,0,0,49,8],
+"classmeow_1_1Usage.html#a4ee38098e5abdb6932a32c13a30f584d":[1,0,0,49,17],
+"classmeow_1_1Usage.html#a503b7e13dd79597020805b58d3d81d9d":[1,0,0,49,11],
+"classmeow_1_1Usage.html#a5bcc22c9e69258c22462c1cb4e5b5400":[1,0,0,49,0],
+"classmeow_1_1Usage.html#a93bca4e2025f46bac3fbfdc36d8ab649":[1,0,0,49,1],
+"classmeow_1_1Usage.html#a974e116cde6295ed08d836b08e0c1e99":[1,0,0,49,15],
+"classmeow_1_1Usage.html#a9c22701e09fec8e206118a95d7a082d1":[1,0,0,49,3],
+"classmeow_1_1Usage.html#aa6a254158f9681e984424c2852fb20ee":[1,0,0,49,12],
+"classmeow_1_1Usage.html#aaa2f7c0049d1d09ae08ba8fed6f2a242":[1,0,0,49,9],
+"classmeow_1_1Usage.html#abf96a39021fa349a881f850176b56bbb":[1,0,0,49,10],
+"classmeow_1_1Usage.html#ac09c339c31d602eca40df02c582d5241":[1,0,0,49,14],
+"classmeow_1_1Usage.html#ad7db9a4197d9b281c47df0800ed63df0":[1,0,0,49,5],
+"classmeow_1_1Usage.html#aef05aaef7ba6433b2f4c5f313f9c0752":[1,0,0,49,13],
+"classmeow_1_1Usage.html#af40b0323858e6af56562351554c4dfe2":[1,0,0,49,6],
+"classmeow_1_1Usage.html#af4642c5d19cda946047934b3d1463f02":[1,0,0,49,7],
"classmeow_1_1VP__Tree.html":[1,0,0,14],
"classmeow_1_1VP__Tree.html#a02c136810876c8713b9760aa8bb51aa4":[1,0,0,14,0],
"classmeow_1_1VP__Tree.html#a1f301f751afe7baf5eafe6964c6a7a15":[1,0,0,14,2],
@@ -177,77 +223,31 @@ var NAVTREEINDEX3 =
"classmeow_1_1VP__Tree.html#ac4d1a186226b2d27abce9eb71149c62c":[1,0,0,14,6],
"classmeow_1_1VP__Tree.html#ad1bffde18bc2f0fc955e78fe77333558":[1,0,0,14,13],
"classmeow_1_1VP__Tree.html#afcc9734a4e012d6dfdab408d5c698905":[1,0,0,14,7],
-"classmeow_1_1Vector.html":[1,0,0,35],
-"classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c":[1,0,0,35,27],
-"classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589":[1,0,0,35,32],
-"classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073":[1,0,0,35,2],
-"classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c":[1,0,0,35,25],
-"classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac":[1,0,0,35,7],
-"classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c":[1,0,0,35,19],
-"classmeow_1_1Vector.html#a5050e9117204a6dbdcc7cf5038845c00":[1,0,0,35,15],
-"classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a":[1,0,0,35,28],
-"classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0":[1,0,0,35,8],
-"classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a":[1,0,0,35,9],
-"classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd":[1,0,0,35,5],
-"classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815":[1,0,0,35,4],
-"classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a":[1,0,0,35,23],
-"classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61":[1,0,0,35,0],
-"classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a":[1,0,0,35,35],
-"classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e":[1,0,0,35,17],
-"classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e":[1,0,0,35,30],
-"classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6":[1,0,0,35,1],
-"classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1":[1,0,0,35,24],
-"classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623":[1,0,0,35,31],
-"classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452":[1,0,0,35,12],
-"classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e":[1,0,0,35,36],
-"classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448":[1,0,0,35,22],
-"classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee":[1,0,0,35,21],
-"classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c":[1,0,0,35,20],
-"classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d":[1,0,0,35,29],
-"classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908":[1,0,0,35,11],
-"classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533":[1,0,0,35,34],
-"classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084":[1,0,0,35,18],
-"classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e":[1,0,0,35,33],
-"classmeow_1_1Vector.html#ada37bc2df18e7c892d4b5e2ac34bf025":[1,0,0,35,10],
-"classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618":[1,0,0,35,13],
-"classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3":[1,0,0,35,6],
-"classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8":[1,0,0,35,26],
-"classmeow_1_1Vector.html#af4966b6e2df19fa6d2752460b1e8afff":[1,0,0,35,3],
-"classmeow_1_1Vector.html#af5ecb8d9cc811a2d56e1725c4bfd30e8":[1,0,0,35,14],
-"classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27":[1,0,0,35,16],
-"classmeow_1_1Vector2D.html":[1,0,0,15],
-"classmeow_1_1Vector2D.html#a01aeddc4e436a8c97e0e570a089ea6c2":[1,0,0,15,1],
-"classmeow_1_1Vector2D.html#a045c6189a70574b1465131d59410fa16":[1,0,0,15,12],
-"classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74":[1,0,0,15,51],
-"classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2":[1,0,0,15,39],
-"classmeow_1_1Vector2D.html#a16a2ba46dfff7929b291df9aa0952422":[1,0,0,15,25],
-"classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538":[1,0,0,15,15],
-"classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3":[1,0,0,15,47],
-"classmeow_1_1Vector2D.html#a1bb44937c6a470a483740aa6527a90b9":[1,0,0,15,48],
-"classmeow_1_1Vector2D.html#a21850fb1a57df44425330ede4cfee331":[1,0,0,15,41],
-"classmeow_1_1Vector2D.html#a23046c79acf88b719292022ea4e8d171":[1,0,0,15,49],
-"classmeow_1_1Vector2D.html#a26a246441af25df6aa76708cf98fb9e6":[1,0,0,15,53],
-"classmeow_1_1Vector2D.html#a274c5cd3e139978539655a0191f03579":[1,0,0,15,46],
-"classmeow_1_1Vector2D.html#a2a0cd6731b85b71649dca56d719a1633":[1,0,0,15,24],
-"classmeow_1_1Vector2D.html#a2d5ada8cf5673c79375c0429a1681ca6":[1,0,0,15,28],
-"classmeow_1_1Vector2D.html#a2e768dd00d86dafa8adefc4ffc4edc9e":[1,0,0,15,42],
-"classmeow_1_1Vector2D.html#a3782df3eec67c68edae1afdd64e18d27":[1,0,0,15,6],
-"classmeow_1_1Vector2D.html#a43660ff47fbe41076396c122a5bfd7ac":[1,0,0,15,31],
-"classmeow_1_1Vector2D.html#a470def2d8b1789e0cbb8ede298893242":[1,0,0,15,37],
-"classmeow_1_1Vector2D.html#a48f420d0f701c059f86f33cdfdf630b7":[1,0,0,15,52],
-"classmeow_1_1Vector2D.html#a4e0422609e71a9e16b41fceca451d63c":[1,0,0,15,20],
-"classmeow_1_1Vector2D.html#a52467da33d126ff24f4c2757ee37ed4d":[1,0,0,15,7],
-"classmeow_1_1Vector2D.html#a56f0d3848a5508b33d6c564e2eebb75e":[1,0,0,15,8],
-"classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490":[1,0,0,15,13],
-"classmeow_1_1Vector2D.html#a62a15858053f7c6c80aa9a896dd6d78d":[1,0,0,15,5],
-"classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda":[1,0,0,15,0],
-"classmeow_1_1Vector2D.html#a6b86b91ba3c24e668593aaba3e4bc50e":[1,0,0,15,32],
-"classmeow_1_1Vector2D.html#a713952e42ea15ee86187a14b677e9555":[1,0,0,15,2],
-"classmeow_1_1Vector2D.html#a715f0f3cb62fddd7723b38d4211bb6db":[1,0,0,15,17],
-"classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73":[1,0,0,15,50],
-"classmeow_1_1Vector2D.html#a7a71b243bdcab1d6433f2c7611bc8d15":[1,0,0,15,33],
-"classmeow_1_1Vector2D.html#a8c65e501c1eeafe7f504c3b834743320":[1,0,0,15,19],
-"classmeow_1_1Vector2D.html#a8d389c0b1a9cc2b3a9dec7fec05bbad8":[1,0,0,15,21],
-"classmeow_1_1Vector2D.html#a989ff27c4ef1dacd3f1b37b81dff0fa2":[1,0,0,15,3],
-"classmeow_1_1Vector2D.html#aa5da315ea365b2ca374704a3e8dded9b":[1,0,0,15,22]
+"classmeow_1_1Vector.html":[1,0,0,36],
+"classmeow_1_1Vector.html#a0a6eade258af4979692fa325dd59429c":[1,0,0,36,29],
+"classmeow_1_1Vector.html#a200453ad223a040147a2dc92e4222589":[1,0,0,36,34],
+"classmeow_1_1Vector.html#a2413f452c3d8b76208d99f7256c9ade8":[1,0,0,36,15],
+"classmeow_1_1Vector.html#a29e75e2dd5e46da4c7b95354c8787a30":[1,0,0,36,0],
+"classmeow_1_1Vector.html#a34ca34c834e47288894cec2445e5b073":[1,0,0,36,4],
+"classmeow_1_1Vector.html#a35b4e136e93445279372f70e4caf00fe":[1,0,0,36,17],
+"classmeow_1_1Vector.html#a3fdb5ccf26fe0602f7bd08e1ecfc940c":[1,0,0,36,27],
+"classmeow_1_1Vector.html#a43f91063553124efdd23d7f3db1599ac":[1,0,0,36,8],
+"classmeow_1_1Vector.html#a45bd0b9c27a2fc83f1d00106c976751c":[1,0,0,36,21],
+"classmeow_1_1Vector.html#a510da6e6a0470bf2312e62c1b43a310a":[1,0,0,36,30],
+"classmeow_1_1Vector.html#a52540cc03073243026770587c35beba0":[1,0,0,36,9],
+"classmeow_1_1Vector.html#a554bb098d8af7ef1458624e8b1f47e6a":[1,0,0,36,10],
+"classmeow_1_1Vector.html#a5589e07881f9f6a7bb7c43630d30ecdd":[1,0,0,36,6],
+"classmeow_1_1Vector.html#a58f997cdc6b98a76ae13bba6d685d815":[1,0,0,36,5],
+"classmeow_1_1Vector.html#a6591f95bda6b9724d2f66fc1254bfa7a":[1,0,0,36,25],
+"classmeow_1_1Vector.html#a68530affccd332248e476cc3e188cd61":[1,0,0,36,2],
+"classmeow_1_1Vector.html#a70c2620d25f6a36dc6d6aa38851b1c7a":[1,0,0,36,37],
+"classmeow_1_1Vector.html#a71b56938e01de730490e722824f4b53e":[1,0,0,36,19],
+"classmeow_1_1Vector.html#a74e4cf085fd43a51c50872ea9b42c47e":[1,0,0,36,32],
+"classmeow_1_1Vector.html#a7def8437ada844cc6b6dc9769aba1ee6":[1,0,0,36,3],
+"classmeow_1_1Vector.html#a8180db77db8e6ef30a15f4bd1fcb7ef1":[1,0,0,36,26],
+"classmeow_1_1Vector.html#a8cad36b5fab47f3d50b840ff26260623":[1,0,0,36,33],
+"classmeow_1_1Vector.html#a9228c4b935c57cd2af9cb07218eca452":[1,0,0,36,13],
+"classmeow_1_1Vector.html#a98f150719042e458d52a1476ae9fd52e":[1,0,0,36,38],
+"classmeow_1_1Vector.html#aadbed69a847ce560210d0513c2156448":[1,0,0,36,24],
+"classmeow_1_1Vector.html#ab0a1b850f2db26637b88900ba2e1911a":[1,0,0,36,16]
};
diff --git a/doc/html/navtreeindex4.js b/doc/html/navtreeindex4.js
index 2f3b5f7..5781f95 100644
--- a/doc/html/navtreeindex4.js
+++ b/doc/html/navtreeindex4.js
@@ -1,5 +1,53 @@
var NAVTREEINDEX4 =
{
+"classmeow_1_1Vector.html#ab675b777186dd4903367bc77922893ee":[1,0,0,36,23],
+"classmeow_1_1Vector.html#abefb870f27490906e326a6f94a896f7c":[1,0,0,36,22],
+"classmeow_1_1Vector.html#ac3e4b43822b9091c3eab7215c52b140d":[1,0,0,36,31],
+"classmeow_1_1Vector.html#ac7464dd163607b1a6417e438a639d050":[1,0,0,36,1],
+"classmeow_1_1Vector.html#ac813d8c46325f8ec4771a7cc315c8908":[1,0,0,36,12],
+"classmeow_1_1Vector.html#ad2e490231e4b624ef86f958b99c94533":[1,0,0,36,36],
+"classmeow_1_1Vector.html#ad3b1665885c683f41b94fd59b0f5e084":[1,0,0,36,20],
+"classmeow_1_1Vector.html#ad46346bcc2250cbf91803d38df9d538e":[1,0,0,36,35],
+"classmeow_1_1Vector.html#ada37bc2df18e7c892d4b5e2ac34bf025":[1,0,0,36,11],
+"classmeow_1_1Vector.html#adc55ef7402cf4114ea5696df18545618":[1,0,0,36,14],
+"classmeow_1_1Vector.html#aee0da81d6a393d2abf7bf20c2ef260c3":[1,0,0,36,7],
+"classmeow_1_1Vector.html#af10156730c992a5597ca674940157fe8":[1,0,0,36,28],
+"classmeow_1_1Vector.html#afc7cc691dd00ab41fd56d798c13a6a27":[1,0,0,36,18],
+"classmeow_1_1Vector2D.html":[1,0,0,15],
+"classmeow_1_1Vector2D.html#a01aeddc4e436a8c97e0e570a089ea6c2":[1,0,0,15,1],
+"classmeow_1_1Vector2D.html#a045c6189a70574b1465131d59410fa16":[1,0,0,15,12],
+"classmeow_1_1Vector2D.html#a0506d587eb30444092082258baab7a74":[1,0,0,15,51],
+"classmeow_1_1Vector2D.html#a0b53875b3acbc7ac8c8e773c9ed340e2":[1,0,0,15,39],
+"classmeow_1_1Vector2D.html#a16a2ba46dfff7929b291df9aa0952422":[1,0,0,15,25],
+"classmeow_1_1Vector2D.html#a1847d22eda48a16d9265f6e0774e1538":[1,0,0,15,15],
+"classmeow_1_1Vector2D.html#a1bb0d1ce4954e56b8b0f166b928816a3":[1,0,0,15,47],
+"classmeow_1_1Vector2D.html#a1bb44937c6a470a483740aa6527a90b9":[1,0,0,15,48],
+"classmeow_1_1Vector2D.html#a21850fb1a57df44425330ede4cfee331":[1,0,0,15,41],
+"classmeow_1_1Vector2D.html#a23046c79acf88b719292022ea4e8d171":[1,0,0,15,49],
+"classmeow_1_1Vector2D.html#a26a246441af25df6aa76708cf98fb9e6":[1,0,0,15,53],
+"classmeow_1_1Vector2D.html#a274c5cd3e139978539655a0191f03579":[1,0,0,15,46],
+"classmeow_1_1Vector2D.html#a2a0cd6731b85b71649dca56d719a1633":[1,0,0,15,24],
+"classmeow_1_1Vector2D.html#a2d5ada8cf5673c79375c0429a1681ca6":[1,0,0,15,28],
+"classmeow_1_1Vector2D.html#a2e768dd00d86dafa8adefc4ffc4edc9e":[1,0,0,15,42],
+"classmeow_1_1Vector2D.html#a3782df3eec67c68edae1afdd64e18d27":[1,0,0,15,6],
+"classmeow_1_1Vector2D.html#a43660ff47fbe41076396c122a5bfd7ac":[1,0,0,15,31],
+"classmeow_1_1Vector2D.html#a470def2d8b1789e0cbb8ede298893242":[1,0,0,15,37],
+"classmeow_1_1Vector2D.html#a48f420d0f701c059f86f33cdfdf630b7":[1,0,0,15,52],
+"classmeow_1_1Vector2D.html#a4e0422609e71a9e16b41fceca451d63c":[1,0,0,15,20],
+"classmeow_1_1Vector2D.html#a52467da33d126ff24f4c2757ee37ed4d":[1,0,0,15,7],
+"classmeow_1_1Vector2D.html#a56f0d3848a5508b33d6c564e2eebb75e":[1,0,0,15,8],
+"classmeow_1_1Vector2D.html#a5a7a5ca3c2a401f1409b05b6bdf18490":[1,0,0,15,13],
+"classmeow_1_1Vector2D.html#a62a15858053f7c6c80aa9a896dd6d78d":[1,0,0,15,5],
+"classmeow_1_1Vector2D.html#a69f2ee0830db546d5a2b5cb39a22ffda":[1,0,0,15,0],
+"classmeow_1_1Vector2D.html#a6b86b91ba3c24e668593aaba3e4bc50e":[1,0,0,15,32],
+"classmeow_1_1Vector2D.html#a713952e42ea15ee86187a14b677e9555":[1,0,0,15,2],
+"classmeow_1_1Vector2D.html#a715f0f3cb62fddd7723b38d4211bb6db":[1,0,0,15,17],
+"classmeow_1_1Vector2D.html#a79c0c92338f7197902cfc53876eb5e73":[1,0,0,15,50],
+"classmeow_1_1Vector2D.html#a7a71b243bdcab1d6433f2c7611bc8d15":[1,0,0,15,33],
+"classmeow_1_1Vector2D.html#a8c65e501c1eeafe7f504c3b834743320":[1,0,0,15,19],
+"classmeow_1_1Vector2D.html#a8d389c0b1a9cc2b3a9dec7fec05bbad8":[1,0,0,15,21],
+"classmeow_1_1Vector2D.html#a989ff27c4ef1dacd3f1b37b81dff0fa2":[1,0,0,15,3],
+"classmeow_1_1Vector2D.html#aa5da315ea365b2ca374704a3e8dded9b":[1,0,0,15,22],
"classmeow_1_1Vector2D.html#aa6ae22d99360ff9e0b623e1744576733":[1,0,0,15,43],
"classmeow_1_1Vector2D.html#abc930168f72c634aa9a608cc9a4e8c1e":[1,0,0,15,26],
"classmeow_1_1Vector2D.html#abe7d948febd4ea0faf80be7ffc369692":[1,0,0,15,35],
@@ -172,6 +220,8 @@ var NAVTREEINDEX4 =
"functions_0x79.html":[1,3,0,24],
"functions_0x7a.html":[1,3,0,25],
"functions_0x7e.html":[1,3,0,26],
+"functions_enum.html":[1,3,4],
+"functions_eval.html":[1,3,5],
"functions_func.html":[1,3,1],
"functions_func.html":[1,3,1,0],
"functions_func_0x62.html":[1,3,1,1],
@@ -199,52 +249,5 @@ var NAVTREEINDEX4 =
"functions_func_0x78.html":[1,3,1,23],
"functions_func_0x79.html":[1,3,1,24],
"functions_func_0x7a.html":[1,3,1,25],
-"functions_func_0x7e.html":[1,3,1,26],
-"functions_rela.html":[1,3,4],
-"functions_type.html":[1,3,3],
-"functions_vars.html":[1,3,2],
-"globals.html":[2,1,0],
-"globals_defs.html":[2,1,1],
-"hierarchy.html":[1,2],
-"index.html":[],
-"math_2utility_8h.html":[2,0,0,4,6],
-"math_2utility_8h.html#a10a8cca705773b7d9f6f91d3fb08c104":[2,0,0,4,6,2],
-"math_2utility_8h.html#a1954e235973a2ac79a7a72a4b7d25573":[2,0,0,4,6,8],
-"math_2utility_8h.html#a3b01a91eb4a02909a61a35e406fa5732":[2,0,0,4,6,7],
-"math_2utility_8h.html#a6ae78e60d507c85de003f8fa8423b650":[2,0,0,4,6,1],
-"math_2utility_8h.html#a98d838d338a3e6f3c57e94562fab3fa7":[2,0,0,4,6,4],
-"math_2utility_8h.html#aa86d5920087a4e73078b759bc3996f76":[2,0,0,4,6,10],
-"math_2utility_8h.html#ab9456533c0ae85fba812bfb5b017c8d2":[2,0,0,4,6,5],
-"math_2utility_8h.html#ad4d1e5fa951e5534204a0ee3eee22777":[2,0,0,4,6,0],
-"math_2utility_8h.html#ae880337dfdcc67984a0dccdb50e5c5d0":[2,0,0,4,6,9],
-"math_2utility_8h.html#aebe1ad335556790c578c4cf7836fd9ca":[2,0,0,4,6,6],
-"math_2utility_8h.html#af95cfca15ad7a51ed4d07b06e1296080":[2,0,0,4,6,3],
-"math_2utility_8h_source.html":[2,0,0,4,6],
-"methods_8h.html":[2,0,0,4,3],
-"methods_8h.html#a43a73b75f2e23c8172d2098d57eaf75a":[2,0,0,4,3,1],
-"methods_8h.html#a8e4a4baed7fb497f170075648ac95077":[2,0,0,4,3,0],
-"methods_8h_source.html":[2,0,0,4,3],
-"namespacemembers.html":[0,1,0],
-"namespacemembers_func.html":[0,1,1],
-"namespacemembers_type.html":[0,1,3],
-"namespacemembers_vars.html":[0,1,2],
-"namespacemeow.html":[1,0,0],
-"namespacemeow.html":[0,0,0],
-"namespaces.html":[0,0],
-"pages.html":[],
-"structmeow_1_1FeaturePointIndexPair.html":[1,0,0,22],
-"structmeow_1_1FeaturePointIndexPair.html#a0fd816ce3fc077e13df94bd35e60bc83":[1,0,0,22,0],
-"structmeow_1_1FeaturePointIndexPair.html#a3c2dd21c446f8c52279d5a7451e5360c":[1,0,0,22,4],
-"structmeow_1_1FeaturePointIndexPair.html#a8f105274ca6de9a749d8119ec8c1685b":[1,0,0,22,1],
-"structmeow_1_1FeaturePointIndexPair.html#ad4bc29dd8931fa3c6fa8139bb51b7f4a":[1,0,0,22,2],
-"structmeow_1_1FeaturePointIndexPair.html#af0c72f723fbe96c29b36295e6e3ac5bc":[1,0,0,22,3],
-"utility_8h.html":[2,0,0,8],
-"utility_8h.html#a09946550cc38b132151643d3408b0175":[2,0,0,8,5],
-"utility_8h.html#a375bf0494e671d61343f5be28f3204fb":[2,0,0,8,1],
-"utility_8h.html#a532a4a224ccd34baa4c6317a8a014ba4":[2,0,0,8,6],
-"utility_8h.html#a575ff1d89bedceb3f850e0c6b7ab2396":[2,0,0,8,3],
-"utility_8h.html#a644a491d867da42696e3cf226019fc25":[2,0,0,8,2],
-"utility_8h.html#a7b550f1ff25a89286527a460c390a902":[2,0,0,8,0],
-"utility_8h.html#a9aad86d9211af4ca27b72f87c2643926":[2,0,0,8,4],
-"utility_8h_source.html":[2,0,0,8]
+"functions_func_0x7e.html":[1,3,1,26]
};
diff --git a/doc/html/navtreeindex5.js b/doc/html/navtreeindex5.js
new file mode 100644
index 0000000..5cabe85
--- /dev/null
+++ b/doc/html/navtreeindex5.js
@@ -0,0 +1,51 @@
+var NAVTREEINDEX5 =
+{
+"functions_rela.html":[1,3,6],
+"functions_type.html":[1,3,3],
+"functions_vars.html":[1,3,2],
+"globals.html":[2,1,0],
+"globals_defs.html":[2,1,1],
+"hierarchy.html":[1,2],
+"index.html":[],
+"math_2utility_8h.html":[2,0,0,4,6],
+"math_2utility_8h.html#a10a8cca705773b7d9f6f91d3fb08c104":[2,0,0,4,6,2],
+"math_2utility_8h.html#a1954e235973a2ac79a7a72a4b7d25573":[2,0,0,4,6,9],
+"math_2utility_8h.html#a3b01a91eb4a02909a61a35e406fa5732":[2,0,0,4,6,8],
+"math_2utility_8h.html#a6ae78e60d507c85de003f8fa8423b650":[2,0,0,4,6,1],
+"math_2utility_8h.html#a98d838d338a3e6f3c57e94562fab3fa7":[2,0,0,4,6,4],
+"math_2utility_8h.html#aa86d5920087a4e73078b759bc3996f76":[2,0,0,4,6,11],
+"math_2utility_8h.html#ab9456533c0ae85fba812bfb5b017c8d2":[2,0,0,4,6,6],
+"math_2utility_8h.html#ad4d1e5fa951e5534204a0ee3eee22777":[2,0,0,4,6,0],
+"math_2utility_8h.html#ae8486a6227b6ed69d5ff666fe67ebf4e":[2,0,0,4,6,5],
+"math_2utility_8h.html#ae880337dfdcc67984a0dccdb50e5c5d0":[2,0,0,4,6,10],
+"math_2utility_8h.html#aebe1ad335556790c578c4cf7836fd9ca":[2,0,0,4,6,7],
+"math_2utility_8h.html#af95cfca15ad7a51ed4d07b06e1296080":[2,0,0,4,6,3],
+"math_2utility_8h_source.html":[2,0,0,4,6],
+"methods_8h.html":[2,0,0,4,3],
+"methods_8h.html#a43a73b75f2e23c8172d2098d57eaf75a":[2,0,0,4,3,1],
+"methods_8h.html#a8e4a4baed7fb497f170075648ac95077":[2,0,0,4,3,0],
+"methods_8h_source.html":[2,0,0,4,3],
+"namespacemembers.html":[0,1,0],
+"namespacemembers_func.html":[0,1,1],
+"namespacemembers_type.html":[0,1,3],
+"namespacemembers_vars.html":[0,1,2],
+"namespacemeow.html":[0,0,0],
+"namespacemeow.html":[1,0,0],
+"namespaces.html":[0,0],
+"pages.html":[],
+"structmeow_1_1FeaturePointIndexPair.html":[1,0,0,22],
+"structmeow_1_1FeaturePointIndexPair.html#a0fd816ce3fc077e13df94bd35e60bc83":[1,0,0,22,0],
+"structmeow_1_1FeaturePointIndexPair.html#a3c2dd21c446f8c52279d5a7451e5360c":[1,0,0,22,4],
+"structmeow_1_1FeaturePointIndexPair.html#a8f105274ca6de9a749d8119ec8c1685b":[1,0,0,22,1],
+"structmeow_1_1FeaturePointIndexPair.html#ad4bc29dd8931fa3c6fa8139bb51b7f4a":[1,0,0,22,2],
+"structmeow_1_1FeaturePointIndexPair.html#af0c72f723fbe96c29b36295e6e3ac5bc":[1,0,0,22,3],
+"utility_8h.html":[2,0,0,9],
+"utility_8h.html#a09946550cc38b132151643d3408b0175":[2,0,0,9,5],
+"utility_8h.html#a375bf0494e671d61343f5be28f3204fb":[2,0,0,9,1],
+"utility_8h.html#a532a4a224ccd34baa4c6317a8a014ba4":[2,0,0,9,6],
+"utility_8h.html#a575ff1d89bedceb3f850e0c6b7ab2396":[2,0,0,9,3],
+"utility_8h.html#a644a491d867da42696e3cf226019fc25":[2,0,0,9,2],
+"utility_8h.html#a7b550f1ff25a89286527a460c390a902":[2,0,0,9,0],
+"utility_8h.html#a9aad86d9211af4ca27b72f87c2643926":[2,0,0,9,4],
+"utility_8h_source.html":[2,0,0,9]
+};
diff --git a/doc/html/structMyself_1_1Piece-members.html b/doc/html/structMyself_1_1Piece-members.html
new file mode 100644
index 0000000..5f1b2ed
--- /dev/null
+++ b/doc/html/structMyself_1_1Piece-members.html
@@ -0,0 +1,81 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structMyself_1_1Piece.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Myself::Piece Member List</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structMyself_1_1Piece.html">Myself::Piece</a>, including all inherited members.</p>
+<table class="directory">
+ <tr class="even"><td class="entry"><a class="el" href="structMyself_1_1Piece.html#aebe6ae48fa8203b2061bb3ae9899fa31">autoDel_</a></td><td class="entry"><a class="el" href="structMyself_1_1Piece.html">Myself::Piece</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="structMyself_1_1Piece.html#a9b5a71a373efc93537f111412df13f71">counter_</a></td><td class="entry"><a class="el" href="structMyself_1_1Piece.html">Myself::Piece</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="structMyself_1_1Piece.html#a0fe9a50cf10927ee28f19ed1b4b9a45d">Piece</a>(Medium *ptr, bool ad)</td><td class="entry"><a class="el" href="structMyself_1_1Piece.html">Myself::Piece</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="structMyself_1_1Piece.html#a3aa3a2284581b112d2d7d17f762e26b2">pointer_</a></td><td class="entry"><a class="el" href="structMyself_1_1Piece.html">Myself::Piece</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="structMyself_1_1Piece.html#a088dc82189ee05282d8c7ff51356ed1f">~Piece</a>()</td><td class="entry"><a class="el" href="structMyself_1_1Piece.html">Myself::Piece</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:20 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structMyself_1_1Piece.html b/doc/html/structMyself_1_1Piece.html
new file mode 100644
index 0000000..4d5d086
--- /dev/null
+++ b/doc/html/structMyself_1_1Piece.html
@@ -0,0 +1,195 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Myself::Piece Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structMyself_1_1Piece.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="structMyself_1_1Piece-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">Myself::Piece Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &quot;<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a>&quot;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a0fe9a50cf10927ee28f19ed1b4b9a45d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMyself_1_1Piece.html#a0fe9a50cf10927ee28f19ed1b4b9a45d">Piece</a> (Medium *ptr, bool ad)</td></tr>
+<tr class="separator:a0fe9a50cf10927ee28f19ed1b4b9a45d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a088dc82189ee05282d8c7ff51356ed1f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMyself_1_1Piece.html#a088dc82189ee05282d8c7ff51356ed1f">~Piece</a> ()</td></tr>
+<tr class="separator:a088dc82189ee05282d8c7ff51356ed1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a3aa3a2284581b112d2d7d17f762e26b2"><td class="memItemLeft" align="right" valign="top">Medium *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMyself_1_1Piece.html#a3aa3a2284581b112d2d7d17f762e26b2">pointer_</a></td></tr>
+<tr class="separator:a3aa3a2284581b112d2d7d17f762e26b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebe6ae48fa8203b2061bb3ae9899fa31"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMyself_1_1Piece.html#aebe6ae48fa8203b2061bb3ae9899fa31">autoDel_</a></td></tr>
+<tr class="separator:aebe6ae48fa8203b2061bb3ae9899fa31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b5a71a373efc93537f111412df13f71"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structMyself_1_1Piece.html#a9b5a71a373efc93537f111412df13f71">counter_</a></td></tr>
+<tr class="separator:a9b5a71a373efc93537f111412df13f71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a0fe9a50cf10927ee28f19ed1b4b9a45d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">Myself::Piece::Piece </td>
+ <td>(</td>
+ <td class="paramtype">Medium *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>ad</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a088dc82189ee05282d8c7ff51356ed1f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">Myself::Piece::~Piece </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="aebe6ae48fa8203b2061bb3ae9899fa31"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool Myself::Piece::autoDel_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b5a71a373efc93537f111412df13f71"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classint.html">int</a> Myself::Piece::counter_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3aa3a2284581b112d2d7d17f762e26b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">Medium* Myself::Piece::pointer_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>meowpp/<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><b>Myself</b></li><li class="navelem"><a class="el" href="structMyself_1_1Piece.html">Piece</a></li>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:20 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structMyself_1_1Piece.js b/doc/html/structMyself_1_1Piece.js
new file mode 100644
index 0000000..3867e30
--- /dev/null
+++ b/doc/html/structMyself_1_1Piece.js
@@ -0,0 +1,8 @@
+var structMyself_1_1Piece =
+[
+ [ "Piece", "structMyself_1_1Piece.html#a0fe9a50cf10927ee28f19ed1b4b9a45d", null ],
+ [ "~Piece", "structMyself_1_1Piece.html#a088dc82189ee05282d8c7ff51356ed1f", null ],
+ [ "autoDel_", "structMyself_1_1Piece.html#aebe6ae48fa8203b2061bb3ae9899fa31", null ],
+ [ "counter_", "structMyself_1_1Piece.html#a9b5a71a373efc93537f111412df13f71", null ],
+ [ "pointer_", "structMyself_1_1Piece.html#a3aa3a2284581b112d2d7d17f762e26b2", null ]
+]; \ No newline at end of file
diff --git a/doc/html/structmeow_1_1FeaturePointIndexPair-members.html b/doc/html/structmeow_1_1FeaturePointIndexPair-members.html
index 160940d..d70bb2a 100644
--- a/doc/html/structmeow_1_1FeaturePointIndexPair-members.html
+++ b/doc/html/structmeow_1_1FeaturePointIndexPair-members.html
@@ -72,7 +72,7 @@ $(document).ready(function(){initNavTree('structmeow_1_1FeaturePointIndexPair.ht
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/structmeow_1_1FeaturePointIndexPair.html b/doc/html/structmeow_1_1FeaturePointIndexPair.html
index 720c56c..389a8d6 100644
--- a/doc/html/structmeow_1_1FeaturePointIndexPair.html
+++ b/doc/html/structmeow_1_1FeaturePointIndexPair.html
@@ -211,7 +211,7 @@ Public Attributes</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="structmeow_1_1FeaturePointIndexPair.html">FeaturePointIndexPair</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:35 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:48 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo-members.html b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo-members.html
new file mode 100644
index 0000000..f091f8d
--- /dev/null
+++ b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo-members.html
@@ -0,0 +1,80 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo Member List</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a>, including all inherited members.</p>
+<table class="directory">
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8">autoDel_</a></td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047">counter_</a></td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#ac7f042f7c96e2170e5c13f5d98fb5d0a">MediumInfo</a>(bool ad)</td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a2cf1d9e410e152bc045017d966fa3e52">~MediumInfo</a>()</td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html
new file mode 100644
index 0000000..f6b185a
--- /dev/null
+++ b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html
@@ -0,0 +1,179 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::MediumInfo Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &quot;<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a>&quot;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac7f042f7c96e2170e5c13f5d98fb5d0a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#ac7f042f7c96e2170e5c13f5d98fb5d0a">MediumInfo</a> (bool ad)</td></tr>
+<tr class="separator:ac7f042f7c96e2170e5c13f5d98fb5d0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cf1d9e410e152bc045017d966fa3e52"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a2cf1d9e410e152bc045017d966fa3e52">~MediumInfo</a> ()</td></tr>
+<tr class="separator:a2cf1d9e410e152bc045017d966fa3e52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a690761e082bed4240d7d9c19d2bfe8f8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8">autoDel_</a></td></tr>
+<tr class="separator:a690761e082bed4240d7d9c19d2bfe8f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affff71e6cc8c5f4bb3918d9bda624047"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047">counter_</a></td></tr>
+<tr class="separator:affff71e6cc8c5f4bb3918d9bda624047"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac7f042f7c96e2170e5c13f5d98fb5d0a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::MediumInfo::MediumInfo </td>
+ <td>(</td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>ad</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2cf1d9e410e152bc045017d966fa3e52"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::MediumInfo::~MediumInfo </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="a690761e082bed4240d7d9c19d2bfe8f8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::MediumInfo::autoDel_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="affff71e6cc8c5f4bb3918d9bda624047"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input, class Output, class Medium&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classint.html">int</a> <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::MediumInfo::counter_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>meowpp/<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a></li><li class="navelem"><b>Myself</b></li><li class="navelem"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html">MediumInfo</a></li>
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:50 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.js b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.js
new file mode 100644
index 0000000..58c8dbd
--- /dev/null
+++ b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.js
@@ -0,0 +1,7 @@
+var structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo =
+[
+ [ "MediumInfo", "structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#ac7f042f7c96e2170e5c13f5d98fb5d0a", null ],
+ [ "~MediumInfo", "structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a2cf1d9e410e152bc045017d966fa3e52", null ],
+ [ "autoDel_", "structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#a690761e082bed4240d7d9c19d2bfe8f8", null ],
+ [ "counter_", "structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.html#affff71e6cc8c5f4bb3918d9bda624047", null ]
+]; \ No newline at end of file
diff --git a/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece-members.html b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece-members.html
new file mode 100644
index 0000000..80fdb68
--- /dev/null
+++ b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece-members.html
@@ -0,0 +1,81 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structmeow_1_1Pipeline_1_1Myself_1_1Piece.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece Member List</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece</a>, including all inherited members.</p>
+<table class="directory">
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#ad08c25aaac6b23aeb333f41b764b3276">autoDel_</a></td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a46c3361f4d950acaf84ee7ba11129cb4">counter_</a></td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#ac039c45f7590f7fac7d53e1c3a9f32c8">Piece</a>(Medium *ptr, bool ad)</td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a4eec14f1a789a05686fecb5fc6bc288c">pointer_</a></td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a0505d119a337c9b670fd9e55d8dfe128">~Piece</a>()</td><td class="entry"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:24 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.html b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.html
new file mode 100644
index 0000000..d17942c
--- /dev/null
+++ b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.html
@@ -0,0 +1,205 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structmeow_1_1Pipeline_1_1Myself_1_1Piece.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="structmeow_1_1Pipeline_1_1Myself_1_1Piece-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">meow::Pipeline&lt; Input, Output, Medium &gt;::Myself::Piece Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &quot;<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a>&quot;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac039c45f7590f7fac7d53e1c3a9f32c8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#ac039c45f7590f7fac7d53e1c3a9f32c8">Piece</a> (Medium *ptr, bool ad)</td></tr>
+<tr class="separator:ac039c45f7590f7fac7d53e1c3a9f32c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0505d119a337c9b670fd9e55d8dfe128"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a0505d119a337c9b670fd9e55d8dfe128">~Piece</a> ()</td></tr>
+<tr class="separator:a0505d119a337c9b670fd9e55d8dfe128"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a4eec14f1a789a05686fecb5fc6bc288c"><td class="memItemLeft" align="right" valign="top">Medium *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a4eec14f1a789a05686fecb5fc6bc288c">pointer_</a></td></tr>
+<tr class="separator:a4eec14f1a789a05686fecb5fc6bc288c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad08c25aaac6b23aeb333f41b764b3276"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#ad08c25aaac6b23aeb333f41b764b3276">autoDel_</a></td></tr>
+<tr class="separator:ad08c25aaac6b23aeb333f41b764b3276"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46c3361f4d950acaf84ee7ba11129cb4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a46c3361f4d950acaf84ee7ba11129cb4">counter_</a></td></tr>
+<tr class="separator:a46c3361f4d950acaf84ee7ba11129cb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac039c45f7590f7fac7d53e1c3a9f32c8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input , class Output , class Medium &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::Piece::Piece </td>
+ <td>(</td>
+ <td class="paramtype">Medium *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>ad</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0505d119a337c9b670fd9e55d8dfe128"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input , class Output , class Medium &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::Piece::~Piece </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="ad08c25aaac6b23aeb333f41b764b3276"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input , class Output , class Medium &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::Piece::autoDel_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a46c3361f4d950acaf84ee7ba11129cb4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input , class Output , class Medium &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classint.html">int</a> <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::Piece::counter_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eec14f1a789a05686fecb5fc6bc288c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Input , class Output , class Medium &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">Medium* <a class="el" href="classmeow_1_1Pipeline.html">meow::Pipeline</a>&lt; Input, Output, Medium &gt;::Myself::Piece::pointer_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>meowpp/<a class="el" href="Pipeline_8h_source.html">Pipeline.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1Pipeline.html">Pipeline</a></li><li class="navelem"><b>Myself</b></li><li class="navelem"><a class="el" href="structmeow_1_1Pipeline_1_1Myself_1_1Piece.html">Piece</a></li>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:24 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.js b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.js
new file mode 100644
index 0000000..7b207ed
--- /dev/null
+++ b/doc/html/structmeow_1_1Pipeline_1_1Myself_1_1Piece.js
@@ -0,0 +1,8 @@
+var structmeow_1_1Pipeline_1_1Myself_1_1Piece =
+[
+ [ "Piece", "structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#ac039c45f7590f7fac7d53e1c3a9f32c8", null ],
+ [ "~Piece", "structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a0505d119a337c9b670fd9e55d8dfe128", null ],
+ [ "autoDel_", "structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#ad08c25aaac6b23aeb333f41b764b3276", null ],
+ [ "counter_", "structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a46c3361f4d950acaf84ee7ba11129cb4", null ],
+ [ "pointer_", "structmeow_1_1Pipeline_1_1Myself_1_1Piece.html#a4eec14f1a789a05686fecb5fc6bc288c", null ]
+]; \ No newline at end of file
diff --git a/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element-members.html b/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element-members.html
new file mode 100644
index 0000000..9f5bcc6
--- /dev/null
+++ b/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element-members.html
@@ -0,0 +1,81 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">meow::TransformatePipeline::Myself::Element Member List</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html">meow::TransformatePipeline::Myself::Element</a>, including all inherited members.</p>
+<table class="directory">
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a0c56fbb6fe7cd1f8bbc74e4e77da6b56">autoDel_</a></td><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html">meow::TransformatePipeline::Myself::Element</a></td><td class="entry"></td></tr>
+ <tr><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#ae7682c851c192ba24797d0fc1cd8b7fe">counter_</a></td><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html">meow::TransformatePipeline::Myself::Element</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a26339d9dc84b86ebf9a8cf676afcb67a">Element</a>(Transformate *ptr, bool ad)</td><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html">meow::TransformatePipeline::Myself::Element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+ <tr><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a9cfafb531ffba21e51d18b4ec4717855">pointer_</a></td><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html">meow::TransformatePipeline::Myself::Element</a></td><td class="entry"></td></tr>
+ <tr class="even"><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#ac3b69e508d6fb9c1dca4e1a24d434c8f">~Element</a>()</td><td class="entry"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html">meow::TransformatePipeline::Myself::Element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:23 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html b/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html
new file mode 100644
index 0000000..a226c40
--- /dev/null
+++ b/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html
@@ -0,0 +1,195 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>Templates -- Meow: meow::TransformatePipeline::Myself::Element Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.2</span>
+ </div>
+ <div id="projectbrief">不能,也不應該先編譯成obj-file的templates</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">meow::TransformatePipeline::Myself::Element Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &quot;<a class="el" href="Transformation_8h_source.html">Transformation.h</a>&quot;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a26339d9dc84b86ebf9a8cf676afcb67a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a26339d9dc84b86ebf9a8cf676afcb67a">Element</a> (Transformate *ptr, bool ad)</td></tr>
+<tr class="separator:a26339d9dc84b86ebf9a8cf676afcb67a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3b69e508d6fb9c1dca4e1a24d434c8f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#ac3b69e508d6fb9c1dca4e1a24d434c8f">~Element</a> ()</td></tr>
+<tr class="separator:ac3b69e508d6fb9c1dca4e1a24d434c8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a9cfafb531ffba21e51d18b4ec4717855"><td class="memItemLeft" align="right" valign="top">Transformate *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a9cfafb531ffba21e51d18b4ec4717855">pointer_</a></td></tr>
+<tr class="separator:a9cfafb531ffba21e51d18b4ec4717855"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c56fbb6fe7cd1f8bbc74e4e77da6b56"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a0c56fbb6fe7cd1f8bbc74e4e77da6b56">autoDel_</a></td></tr>
+<tr class="separator:a0c56fbb6fe7cd1f8bbc74e4e77da6b56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7682c851c192ba24797d0fc1cd8b7fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#ae7682c851c192ba24797d0fc1cd8b7fe">counter_</a></td></tr>
+<tr class="separator:ae7682c851c192ba24797d0fc1cd8b7fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a26339d9dc84b86ebf9a8cf676afcb67a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">meow::TransformatePipeline::Myself::Element::Element </td>
+ <td>(</td>
+ <td class="paramtype">Transformate *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&#160;</td>
+ <td class="paramname"><em>ad</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac3b69e508d6fb9c1dca4e1a24d434c8f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">meow::TransformatePipeline::Myself::Element::~Element </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="a0c56fbb6fe7cd1f8bbc74e4e77da6b56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool meow::TransformatePipeline::Myself::Element::autoDel_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7682c851c192ba24797d0fc1cd8b7fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classint.html">int</a> meow::TransformatePipeline::Myself::Element::counter_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9cfafb531ffba21e51d18b4ec4717855"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">Transformate* meow::TransformatePipeline::Myself::Element::pointer_</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>meowpp/math/<a class="el" href="Transformation_8h_source.html">Transformation.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="namespacemeow.html">meow</a></li><li class="navelem"><a class="el" href="classmeow_1_1TransformatePipeline.html">TransformatePipeline</a></li><li class="navelem"><b>Myself</b></li><li class="navelem"><a class="el" href="structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html">Element</a></li>
+ <li class="footer">Generated on Thu Jun 5 2014 15:02:23 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.js b/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.js
new file mode 100644
index 0000000..e58db62
--- /dev/null
+++ b/doc/html/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.js
@@ -0,0 +1,8 @@
+var structmeow_1_1TransformatePipeline_1_1Myself_1_1Element =
+[
+ [ "Element", "structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a26339d9dc84b86ebf9a8cf676afcb67a", null ],
+ [ "~Element", "structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#ac3b69e508d6fb9c1dca4e1a24d434c8f", null ],
+ [ "autoDel_", "structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a0c56fbb6fe7cd1f8bbc74e4e77da6b56", null ],
+ [ "counter_", "structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#ae7682c851c192ba24797d0fc1cd8b7fe", null ],
+ [ "pointer_", "structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.html#a9cfafb531ffba21e51d18b4ec4717855", null ]
+]; \ No newline at end of file
diff --git a/doc/html/stylesheet.css b/doc/html/stylesheet.css
index ea16425..aa54b57 100644
--- a/doc/html/stylesheet.css
+++ b/doc/html/stylesheet.css
@@ -83,13 +83,13 @@ caption {
}
span.legend {
- font-size: 70%;
- text-align: center;
+ font-size: 70%;
+ text-align: center;
}
h3.version {
- font-size: 90%;
- text-align: center;
+ font-size: 90%;
+ text-align: center;
}
div.qindex, div.navtab{
@@ -135,7 +135,7 @@ a.qindexHL {
}
.contents a.qindexHL:visited {
- color: #ffffff;
+ color: #ffffff;
}
a.el {
@@ -160,35 +160,35 @@ dl.el {
}
pre.fragment {
- border: 1px solid #C4CFE5;
- background-color: #0B0C0D;
- padding: 4px 6px;
- margin: 4px 8px 4px 2px;
- overflow: auto;
- word-wrap: break-word;
- font-size: 9pt;
- line-height: 125%;
- font-family: monospace, fixed;
- font-size: 105%;
- border-radius: 4px;
- -moz-border-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ border: 1px solid #C4CFE5;
+ background-color: #0B0C0D;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
div.fragment {
- padding: 4px;
- margin: 4px;
+ padding: 4px;
+ margin: 4px;
background-color: #0B0C0D;
border: 1px solid #C4CFE5;
- border-radius: 4px;
- -moz-border-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
div.line {
font-family: 'courier new', monospace, fixed;
color: #CCCCCC;
- font-size: 14px;
+ font-size: 14px;
min-height: 14px;
line-height: 1.0;
text-wrap: unrestricted;
@@ -224,7 +224,7 @@ span.lineno {
text-align: right;
border-right: 2px solid #0F0;
background-color: #181818;
- white-space: pre;
+ white-space: pre;
}
span.lineno a {
background-color: #3B3838;
@@ -266,7 +266,7 @@ div.groupText {
body {
background-color: #212131;
color: #C0E0C0;
- margin: 0;
+ margin: 0;
}
div.contents {
@@ -281,8 +281,8 @@ td.indexkey {
border: 1px solid #C4CFE5;
margin: 2px 0px 2px 0;
padding: 2px 10px;
- white-space: nowrap;
- vertical-align: top;
+ white-space: nowrap;
+ vertical-align: top;
}
td.indexvalue {
@@ -310,12 +310,17 @@ img.formulaInl {
div.center {
text-align: center;
- margin-top: 0px;
- margin-bottom: 0px;
- padding: 0px;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
}
div.center img {
+ padding: 7px;
+ background-color: #5F5572;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
border: 0px;
}
@@ -376,10 +381,10 @@ span.vhdllogic {
}
blockquote {
- background-color: #F7F8FB;
- border-left: 2px solid #9CAFD4;
- margin: 0 24px 0 4px;
- padding: 0 12px 0 16px;
+ background-color: #F7F8FB;
+ border-left: 2px solid #9CAFD4;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
}
/* @end */
@@ -469,14 +474,14 @@ table.memberdecls {
}
.memSeparator {
- border-bottom: 1px solid #DEE4F0;
- line-height: 1px;
- margin: 0px;
- padding: 0px;
+ border-bottom: 1px solid #DEE4F0;
+ line-height: 1px;
+ margin: 0px;
+ padding: 0px;
}
.memItemLeft, .memTemplItemLeft {
- white-space: nowrap;
+ white-space: nowrap;
}
.memItemRight {
@@ -485,7 +490,7 @@ table.memberdecls {
.memTemplParams {
color: #7695D2;
- white-space: nowrap;
+ white-space: nowrap;
font-size: 80%;
}
@@ -519,22 +524,22 @@ table.memberdecls {
padding: 0;
margin-bottom: 10px;
margin-right: 5px;
- -webkit-transition: box-shadow 0.5s linear;
- -moz-transition: box-shadow 0.5s linear;
- -ms-transition: box-shadow 0.5s linear;
- -o-transition: box-shadow 0.5s linear;
- transition: box-shadow 0.5s linear;
- display: table !important;
- width: 100%;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+ display: table !important;
+ width: 100%;
}
.memitem.glow {
- box-shadow: 0 0 15px cyan;
+ box-shadow: 0 0 15px cyan;
}
.memname {
- font-weight: bold;
- margin-left: 6px;
+ font-weight: bold;
+ margin-left: 6px;
}
.memname td {
@@ -542,62 +547,62 @@ table.memberdecls {
}
.memproto, dl.reflist dt {
- border-top: 1px solid #A8B8D9;
- border-left: 1px solid #A8B8D9;
- border-right: 1px solid #A8B8D9;
- padding: 6px 0px 6px 0px;
- color: #758575;
- font-weight: bold;
- text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.95);
- /* background-image:url('nav_f.png'); */
- background-repeat:repeat-x;
- background-color: #181C28;
- /* opera specific markup */
- box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- border-top-right-radius: 4px;
- border-top-left-radius: 4px;
- /* firefox specific markup */
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
- -moz-border-radius-topright: 4px;
- -moz-border-radius-topleft: 4px;
- /* webkit specific markup */
- -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- -webkit-border-top-right-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 0px 6px 0px;
+ color: #758575;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.95);
+ /* background-image:url('nav_f.png'); */
+ background-repeat:repeat-x;
+ background-color: #181C28;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ -moz-border-radius-topleft: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
.memdoc, dl.reflist dd {
- border-bottom: 1px solid #A8B8D9;
- border-left: 1px solid #A8B8D9;
- border-right: 1px solid #A8B8D9;
- padding: 6px 10px 2px 10px;
- /* background-color: #FBFCFD; */
- border-top-width: 0;
- /* background-image:url('nav_g.png'); */
- background-repeat:repeat-x;
- background-color: #131923;
- /* opera specific markup */
- border-bottom-left-radius: 4px;
- border-bottom-right-radius: 4px;
- box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- /* firefox specific markup */
- -moz-border-radius-bottomleft: 4px;
- -moz-border-radius-bottomright: 4px;
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
- /* webkit specific markup */
- -webkit-border-bottom-left-radius: 4px;
- -webkit-border-bottom-right-radius: 4px;
- -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-bottom: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 10px 2px 10px;
+ /* background-color: #FBFCFD; */
+ border-top-width: 0;
+ /* background-image:url('nav_g.png'); */
+ background-repeat:repeat-x;
+ background-color: #212A31;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
}
dl.reflist dt {
- padding: 5px;
+ padding: 5px;
}
dl.reflist dd {
- margin: 0px 0px 10px 0px;
- padding: 5px;
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
}
.paramkey {
@@ -616,27 +621,27 @@ dl.reflist dd {
font-style: normal;
}
.paramname code {
- line-height: 14px;
+ line-height: 14px;
}
.params, .retval, .exception, .tparams {
- margin-left: 0px;
- padding-left: 0px;
+ margin-left: 0px;
+ padding-left: 0px;
}
.params .paramname, .retval .paramname {
- font-weight: bold;
- vertical-align: top;
+ font-weight: bold;
+ vertical-align: top;
}
-
+
.params .paramtype {
- font-style: italic;
- vertical-align: top;
+ font-style: italic;
+ vertical-align: top;
}
-
+
.params .paramdir {
- font-family: "courier new",courier,monospace;
- vertical-align: top;
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
color:#A0AA00;
}
@@ -656,15 +661,15 @@ td.mlabels-right {
}
span.mlabels {
- margin-left: 8px;
+ margin-left: 8px;
}
span.mlabel {
- background-color: #728DC1;
- border-top:1px solid #5373B4;
- border-left:1px solid #5373B4;
- border-right:1px solid #C4CFE5;
- border-bottom:1px solid #C4CFE5;
+ background-color: #728DC1;
+ border-top:1px solid #5373B4;
+ border-left:1px solid #5373B4;
+ border-right:1px solid #C4CFE5;
+ border-bottom:1px solid #C4CFE5;
text-shadow: none;
color: white;
margin-right: 4px;
@@ -682,38 +687,38 @@ span.mlabel {
/* these are for tree view when not used as main index */
div.directory {
- margin: 10px 0px;
- border-top: 1px solid #A8B8D9;
- border-bottom: 1px solid #A8B8D9;
- width: 100%;
+ margin: 10px 0px;
+ border-top: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ width: 100%;
}
.directory table {
- border-collapse:collapse;
+ border-collapse:collapse;
}
.directory td {
- margin: 0px;
- padding: 0px;
+ margin: 0px;
+ padding: 0px;
vertical-align: top;
}
.directory td.entry {
- white-space: nowrap;
- padding-right: 6px;
+ white-space: nowrap;
+ padding-right: 6px;
}
.directory td.entry a {
- outline:none;
+ outline:none;
}
.directory td.entry a img {
- border: none;
+ border: none;
}
.directory td.desc {
- width: 100%;
- padding-left: 6px;
+ width: 100%;
+ padding-left: 6px;
padding-right: 6px;
padding-top: 3px;
border-left: 1px solid rgba(0,0,0,0.05);
@@ -729,21 +734,21 @@ div.directory {
}
.directory .levels {
- white-space: nowrap;
- width: 100%;
- text-align: right;
- font-size: 9pt;
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
}
.directory .levels span {
- cursor: pointer;
- padding-left: 2px;
- padding-right: 2px;
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
color: #5D77AC;
}
div.dynheader {
- margin-top: 8px;
+ margin-top: 8px;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
@@ -759,8 +764,8 @@ address {
table.doxtable {
border-collapse:collapse;
- margin-top: 4px;
- margin-bottom: 4px;
+ margin-top: 4px;
+ margin-bottom: 4px;
}
table.doxtable td, table.doxtable th {
@@ -777,66 +782,66 @@ table.doxtable th {
}
table.fieldtable {
- /*width: 100%;*/
- margin-bottom: 10px;
- border: 1px solid #A8B8D9;
- border-spacing: 0px;
- -moz-border-radius: 4px;
- -webkit-border-radius: 4px;
- border-radius: 4px;
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
- -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
- box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ /*width: 100%;*/
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
}
.fieldtable td, .fieldtable th {
- padding: 3px 7px 2px;
+ padding: 3px 7px 2px;
}
.fieldtable td.fieldtype, .fieldtable td.fieldname {
- white-space: nowrap;
- border-right: 1px solid #A8B8D9;
- border-bottom: 1px solid #A8B8D9;
- vertical-align: top;
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
}
.fieldtable td.fieldname {
- padding-top: 5px;
+ padding-top: 5px;
}
.fieldtable td.fielddoc {
- border-bottom: 1px solid #A8B8D9;
- /*width: 100%;*/
+ border-bottom: 1px solid #A8B8D9;
+ /*width: 100%;*/
}
.fieldtable td.fielddoc p:first-child {
- margin-top: 2px;
+ margin-top: 2px;
}
-
+
.fieldtable td.fielddoc p:last-child {
- margin-bottom: 2px;
+ margin-bottom: 2px;
}
.fieldtable tr:last-child td {
- border-bottom: none;
+ border-bottom: none;
}
.fieldtable th {
- background-image:url('nav_f.png');
- background-repeat:repeat-x;
- background-color: #E2E8F2;
- font-size: 90%;
- color: #253555;
- padding-bottom: 4px;
- padding-top: 5px;
- text-align:left;
- -moz-border-radius-topleft: 4px;
- -moz-border-radius-topright: 4px;
- -webkit-border-top-left-radius: 4px;
- -webkit-border-top-right-radius: 4px;
- border-top-left-radius: 4px;
- border-top-right-radius: 4px;
- border-bottom: 1px solid #A8B8D9;
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A8B8D9;
}
@@ -886,7 +891,7 @@ table.fieldtable {
color: #283A5D;
font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
- text-decoration: none;
+ text-decoration: none;
}
.navpath li.navelem a:hover
@@ -896,15 +901,15 @@ table.fieldtable {
.navpath li.footer
{
- list-style-type:none;
- float:right;
- padding-left:10px;
- padding-right:15px;
- background-image:none;
- background-repeat:no-repeat;
- background-position:right;
- color:#364D7C;
- font-size: 8pt;
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+ font-size: 8pt;
}
@@ -936,8 +941,8 @@ div.ingroups a
div.header
{
- /* background-image:url('nav_h.png'); */
- /* background-repeat:repeat-x; */
+ /* background-image:url('nav_h.png'); */
+ /* background-repeat:repeat-x; */
background-color: #290A1C;
padding: 0px;
margin : 0px;
@@ -955,7 +960,7 @@ div.headertitle
dl
{
- padding: 0 0 0 10px;
+ padding: 0 0 0 10px;
}
/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
@@ -967,58 +972,58 @@ dl.section
dl.note
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #D0C000;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
}
dl.warning, dl.attention
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #FF0000;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
}
dl.pre, dl.post, dl.invariant
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #00D000;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
}
dl.deprecated
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #505050;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
}
dl.todo
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #00C0E0;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
}
dl.test
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #3030E0;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
}
dl.bug
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #C08050;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
}
dl.section dd {
@@ -1069,17 +1074,17 @@ dl.section dd {
.image
{
- text-align: center;
+ text-align: center;
}
.dotgraph
{
- text-align: center;
+ text-align: center;
}
.mscgraph
{
- text-align: center;
+ text-align: center;
}
.caption
@@ -1093,74 +1098,74 @@ div.zoom
}
dl.citelist {
- margin-bottom:50px;
+ margin-bottom:50px;
}
dl.citelist dt {
- color:#334975;
- float:left;
- font-weight:bold;
- margin-right:10px;
- padding:5px;
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
}
dl.citelist dd {
- margin:2px 0;
- padding:5px 0;
+ margin:2px 0;
+ padding:5px 0;
}
div.toc {
- padding: 14px 25px;
- background-color: #F4F6FA;
- border: 1px solid #D8DFEE;
- border-radius: 7px 7px 7px 7px;
- float: right;
- height: auto;
- margin: 0 20px 10px 10px;
- width: 200px;
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D8DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 20px 10px 10px;
+ width: 200px;
}
div.toc li {
- background: url("bdwn.png") no-repeat scroll 0 5px transparent;
- font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
- margin-top: 5px;
- padding-left: 10px;
- padding-top: 2px;
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
}
div.toc h3 {
- font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
color: #7695D2;
- border-bottom: 0 none;
- margin: 0;
+ border-bottom: 0 none;
+ margin: 0;
}
div.toc ul {
- list-style: none outside none;
- border: medium none;
- padding: 0px;
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
}
div.toc li.level1 {
- margin-left: 0px;
+ margin-left: 0px;
}
div.toc li.level2 {
- margin-left: 15px;
+ margin-left: 15px;
}
div.toc li.level3 {
- margin-left: 30px;
+ margin-left: 30px;
}
div.toc li.level4 {
- margin-left: 45px;
+ margin-left: 45px;
}
.inherit_header {
- font-weight: bold;
- color: gray;
- cursor: pointer;
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
@@ -1170,16 +1175,16 @@ div.toc li.level4 {
}
.inherit_header td {
- padding: 6px 0px 2px 5px;
+ padding: 6px 0px 2px 5px;
}
.inherit {
- display: none;
+ display: none;
}
tr.heading h2 {
- margin-top: 12px;
- margin-bottom: 4px;
+ margin-top: 12px;
+ margin-bottom: 4px;
}
@media print
diff --git a/doc/html/utility_8h.html b/doc/html/utility_8h.html
index 68afe73..6ad00b8 100644
--- a/doc/html/utility_8h.html
+++ b/doc/html/utility_8h.html
@@ -140,7 +140,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="utility_8h.html">utility.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/html/utility_8h_source.html b/doc/html/utility_8h_source.html
index 7f26f57..1f6cc9a 100644
--- a/doc/html/utility_8h_source.html
+++ b/doc/html/utility_8h_source.html
@@ -70,7 +70,7 @@ $(document).ready(function(){initNavTree('utility_8h_source.html','');});
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="keyword">namespace </span>meow {</div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175"> 20</a></span>&#160;<span class="keyword">inline</span> std::string <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * fmt, ...){</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175"> 20</a></span>&#160;<span class="keyword">inline</span> std::string <a class="code" href="namespacemeow.html#a09946550cc38b132151643d3408b0175" title="類似C的printf, 不過是將格式化的字串丟到 std::string 裡回傳">stringPrintf</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * fmt, ...) {</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <span class="keywordtype">char</span> str[8192];</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; va_list args;</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; va_start(args, fmt);</div>
@@ -81,23 +81,23 @@ $(document).ready(function(){initNavTree('utility_8h_source.html','');});
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4"> 38</a></span>&#160;<span class="keyword">inline</span> std::string <a class="code" href="namespacemeow.html#a532a4a224ccd34baa4c6317a8a014ba4" title="將輸入字串中的某個pattern取代成另一個pattern">stringReplace</a>(std::string str,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; std::string <span class="keyword">const</span>&amp; from,</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; std::string <span class="keyword">const</span>&amp; to){</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; std::string <span class="keyword">const</span>&amp; to) {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; std::string out = str;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">int</span> len = from.length();</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> pos; (pos = out.find(from)) != std::string::npos; ){</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> pos; (pos = out.find(from)) != std::string::npos; ) {</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; out.replace(pos, len, to);</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; }</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">return</span> out;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;}</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="namespacemeow.html#a375bf0494e671d61343f5be28f3204fb"> 59</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemeow.html#a375bf0494e671d61343f5be28f3204fb" title="檢查給定字串的結尾是否符合給定的數個patterns中的一個">cstringEndWith</a>(<span class="keywordtype">char</span> <span class="keyword">const</span>* str, <span class="keywordtype">int</span> n, ...){</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="namespacemeow.html#a375bf0494e671d61343f5be28f3204fb"> 59</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemeow.html#a375bf0494e671d61343f5be28f3204fb" title="檢查給定字串的結尾是否符合給定的數個patterns中的一個">cstringEndWith</a>(<span class="keywordtype">char</span> <span class="keyword">const</span>* str, <span class="keywordtype">int</span> n, ...) {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">int</span> len = strlen(str);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; va_list args;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; va_start(args, n);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; n; i++){</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; n; i++) {</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* arg = va_arg(args, <span class="keywordtype">char</span> <span class="keyword">const</span>*);</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">int</span> arglen = strlen(arg);</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span>(arglen &lt;= len &amp;&amp; strcmp(str + len - arglen, arg) == 0){</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span> (arglen &lt;= len &amp;&amp; strcmp(str + len - arglen, arg) == 0) {</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</div>
@@ -114,13 +114,13 @@ $(document).ready(function(){initNavTree('utility_8h_source.html','');});
<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="namespacemeow.html#a644a491d867da42696e3cf226019fc25"> 87</a></span>&#160;<span class="preprocessor"></span><span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a644a491d867da42696e3cf226019fc25">debugPrintf_</a>(<span class="keywordtype">char</span> <span class="keyword">const</span>* file,</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* func,</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">size_t</span> line,</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* msg){</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* msg) {</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#ifdef DEBUG</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor"></span> fprintf(stderr, <span class="stringliteral">&quot;%s[%d] %s &gt;&gt; %s&quot;</span>, file, line, func, msg);</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif // DEBUG</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor"></span>}</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"><a class="code" href="namespacemeow.html#a9aad86d9211af4ca27b72f87c2643926"> 123</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a9aad86d9211af4ca27b72f87c2643926" title="階層式輸出">messagePrintf</a>(<span class="keywordtype">int</span> level_change, <span class="keywordtype">char</span> <span class="keyword">const</span>* fmt, ...){</div>
+<div class="line"><a name="l00123"></a><span class="lineno"><a class="code" href="namespacemeow.html#a9aad86d9211af4ca27b72f87c2643926"> 123</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a9aad86d9211af4ca27b72f87c2643926" title="階層式輸出">messagePrintf</a>(<span class="keywordtype">int</span> level_change, <span class="keywordtype">char</span> <span class="keyword">const</span>* fmt, ...) {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keyword">static</span> <span class="keywordtype">int</span> level = 0;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">static</span> <span class="keywordtype">int</span> last_level = -5;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">char</span> str[8192];</div>
@@ -128,39 +128,39 @@ $(document).ready(function(){initNavTree('utility_8h_source.html','');});
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; va_start(args, fmt);</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; vsnprintf(str, 8192, fmt, args);</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; va_end(args);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span>(last_level == 1 &amp;&amp; level_change == -1){</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span> (last_level == 1 &amp;&amp; level_change == -1) {</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; printf(<span class="stringliteral">&quot; ...%s\n&quot;</span>, str);</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }<span class="keywordflow">else</span>{</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span>(last_level == 1) printf(<span class="stringliteral">&quot;\n&quot;</span>);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordtype">int</span> level2 = level + (level_change == -1 ? -1 : 0);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; level2; i++) printf(<span class="stringliteral">&quot;| &quot;</span>);</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; printf(<span class="stringliteral">&quot;%s%s&quot;</span>, (level_change == -1 ? <span class="stringliteral">&quot;...&quot;</span> : <span class="stringliteral">&quot;&quot;</span>), str);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span>(level_change != 1) printf(<span class="stringliteral">&quot;\n&quot;</span>);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; level += level_change;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; last_level = level_change;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; fflush(stdout);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;}</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
-<div class="line"><a name="l00155"></a><span class="lineno"><a class="code" href="namespacemeow.html#a575ff1d89bedceb3f850e0c6b7ab2396"> 155</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemeow.html#a575ff1d89bedceb3f850e0c6b7ab2396" title="將兩個字串用人類習慣的檔名排序方式排序">filenameCompare</a>(std::string <span class="keyword">const</span>&amp; f1, std::string <span class="keyword">const</span>&amp; f2){</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* s1 = f1.c_str();</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* s2 = f2.c_str();</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordtype">int</span> l1 = f1.length();</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordtype">int</span> l2 = f2.length();</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordtype">int</span> i1, i2;</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">for</span>(i1 = i2 = 0; i1 &lt; l1 || i2 &lt; l2; i1++, i2++){</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">if</span>(isdigit(s1[i1]) &amp;&amp; isdigit(s2[i2])){</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordtype">int</span> n1 = atoi(s1 + i1);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordtype">int</span> n2 = atoi(s2 + i2);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span>(n1 != n2){</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> (n1 &lt; n2);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (last_level == 1) printf(<span class="stringliteral">&quot;\n&quot;</span>);</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordtype">int</span> level2 = level + (level_change == -1 ? -1 : 0);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; level2; i++) printf(<span class="stringliteral">&quot;| &quot;</span>);</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; printf(<span class="stringliteral">&quot;%s%s&quot;</span>, (level_change == -1 ? <span class="stringliteral">&quot;...&quot;</span> : <span class="stringliteral">&quot;&quot;</span>), str);</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (level_change != 1) printf(<span class="stringliteral">&quot;\n&quot;</span>);</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; level += level_change;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; last_level = level_change;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; fflush(stdout);</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"><a class="code" href="namespacemeow.html#a575ff1d89bedceb3f850e0c6b7ab2396"> 156</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemeow.html#a575ff1d89bedceb3f850e0c6b7ab2396" title="將兩個字串用人類習慣的檔名排序方式排序">filenameCompare</a>(std::string <span class="keyword">const</span>&amp; f1, std::string <span class="keyword">const</span>&amp; f2) {</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* s1 = f1.c_str();</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordtype">char</span> <span class="keyword">const</span>* s2 = f2.c_str();</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordtype">int</span> l1 = f1.length();</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordtype">int</span> l2 = f2.length();</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordtype">int</span> i1, i2;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">for</span> (i1 = i2 = 0; i1 &lt; l1 || i2 &lt; l2; i1++, i2++) {</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span> (isdigit(s1[i1]) &amp;&amp; isdigit(s2[i2])) {</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordtype">int</span> n1 = atoi(s1 + i1);</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordtype">int</span> n2 = atoi(s2 + i2);</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (n1 != n2)</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> (n1 &lt; n2);</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">while</span>(i1 + 1 &lt; l1 &amp;&amp; isdigit(s1[i1 + 1])) i1++;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">while</span>(i2 + 1 &lt; l2 &amp;&amp; isdigit(s2[i2 + 1])) i2++;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }<span class="keywordflow">else</span>{</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span>(s1[i1] != s2[i2]){</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">return</span> s1[i1] &lt; s2[i2];</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span>(s1[i1] != s2[i2])</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> s1[i1] &lt; s2[i2];</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
@@ -176,7 +176,7 @@ $(document).ready(function(){initNavTree('utility_8h_source.html','');});
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="utility_8h.html">utility.h</a></li>
- <li class="footer">Generated on Sun Jun 1 2014 13:54:33 for Templates -- Meow by
+ <li class="footer">Generated on Fri Jun 6 2014 17:51:46 for Templates -- Meow by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
</ul>
diff --git a/doc/latex/Color3__Space_8h.tex b/doc/latex/Color3__Space_8h.tex
index 102ebc1..9076e52 100644
--- a/doc/latex/Color3__Space_8h.tex
+++ b/doc/latex/Color3__Space_8h.tex
@@ -1,11 +1,11 @@
\hypertarget{Color3__Space_8h}{\section{meowpp/colors/\-Color3\-\_\-\-Space.h File Reference}
\label{Color3__Space_8h}\index{meowpp/colors/\-Color3\-\_\-\-Space.\-h@{meowpp/colors/\-Color3\-\_\-\-Space.\-h}}
}
-{\ttfamily \#include $<$cstdlib$>$}\\*
{\ttfamily \#include \char`\"{}../\-Self.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}../geo/\-Vectors.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}../math/\-Matrix.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}../math/utility.\-h\char`\"{}}\\*
+{\ttfamily \#include $<$cstdlib$>$}\\*
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item
diff --git a/doc/latex/HSL__Space_8h.tex b/doc/latex/HSL__Space_8h.tex
index c498611..d6e540a 100644
--- a/doc/latex/HSL__Space_8h.tex
+++ b/doc/latex/HSL__Space_8h.tex
@@ -2,9 +2,9 @@
\label{HSL__Space_8h}\index{meowpp/colors/\-H\-S\-L\-\_\-\-Space.\-h@{meowpp/colors/\-H\-S\-L\-\_\-\-Space.\-h}}
}
{\ttfamily \#include \char`\"{}Color3\-\_\-\-Space.\-h\char`\"{}}\\*
-{\ttfamily \#include \char`\"{}../geo/\-Vectors.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}R\-G\-B\-\_\-\-Space.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}Y\-U\-V\-\_\-\-Space.\-h\char`\"{}}\\*
+{\ttfamily \#include \char`\"{}../geo/\-Vectors.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}../math/utility.\-h\char`\"{}}\\*
{\ttfamily \#include $<$cstdlib$>$}\\*
\subsection*{Classes}
diff --git a/doc/latex/Matrix_8h.tex b/doc/latex/Matrix_8h.tex
index e35b48b..8ca61a6 100644
--- a/doc/latex/Matrix_8h.tex
+++ b/doc/latex/Matrix_8h.tex
@@ -1,7 +1,6 @@
\hypertarget{Matrix_8h}{\section{meowpp/math/\-Matrix.h File Reference}
\label{Matrix_8h}\index{meowpp/math/\-Matrix.\-h@{meowpp/math/\-Matrix.\-h}}
}
-{\ttfamily \#include \char`\"{}utility.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}../\-Self.\-h\char`\"{}}\\*
{\ttfamily \#include $<$vector$>$}\\*
{\ttfamily \#include $<$algorithm$>$}\\*
diff --git a/doc/latex/Pipeline_8h.tex b/doc/latex/Pipeline_8h.tex
new file mode 100644
index 0000000..4d6b679
--- /dev/null
+++ b/doc/latex/Pipeline_8h.tex
@@ -0,0 +1,17 @@
+\hypertarget{Pipeline_8h}{\section{meowpp/\-Pipeline.h File Reference}
+\label{Pipeline_8h}\index{meowpp/\-Pipeline.\-h@{meowpp/\-Pipeline.\-h}}
+}
+{\ttfamily \#include \char`\"{}Self.\-h\char`\"{}}\\*
+{\ttfamily \#include $<$list$>$}\\*
+\subsection*{Classes}
+\begin{DoxyCompactItemize}
+\item
+class \hyperlink{classmeow_1_1Pipeline}{meow\-::\-Pipeline$<$ Input, Output, Medium $>$}
+\begin{DoxyCompactList}\small\item\em {\bfseries pipeline} \end{DoxyCompactList}\item
+struct \hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo}{meow\-::\-Pipeline$<$ Input, Output, Medium $>$\-::\-Myself\-::\-Medium\-Info}
+\end{DoxyCompactItemize}
+\subsection*{Namespaces}
+\begin{DoxyCompactItemize}
+\item
+namespace \hyperlink{namespacemeow}{meow}
+\end{DoxyCompactItemize}
diff --git a/doc/latex/Transformation_8h.tex b/doc/latex/Transformation_8h.tex
index 5fb5511..aa1d046 100644
--- a/doc/latex/Transformation_8h.tex
+++ b/doc/latex/Transformation_8h.tex
@@ -3,14 +3,29 @@
}
{\ttfamily \#include \char`\"{}Matrix.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}../\-Self.\-h\char`\"{}}\\*
+{\ttfamily \#include \char`\"{}../\-Pipeline.\-h\char`\"{}}\\*
+{\ttfamily \#include $<$list$>$}\\*
{\ttfamily \#include $<$cstdlib$>$}\\*
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item
class \hyperlink{classmeow_1_1Transformation}{meow\-::\-Transformation$<$ Scalar $>$}
-\begin{DoxyCompactList}\small\item\em A base class for implementing kinds of transformations. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em A base class for implementing kinds of transformations. \end{DoxyCompactList}\item
+class \hyperlink{classmeow_1_1TransformatePipeline}{meow\-::\-Transformate\-Pipeline$<$ Scalar $>$}
+\begin{DoxyCompactList}\small\item\em a pipeline for transformations \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \hyperlink{namespacemeow}{meow}
\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{Transformation_8h_aa667de06e306f0a462ae44fe3614f1e5}{My\-Super}~Pipeline$<$Matrix$<$Scalar$>$, Matrix$<$Scalar$>$, Transformate$<$Scalar$>$ $>$
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\hypertarget{Transformation_8h_aa667de06e306f0a462ae44fe3614f1e5}{\index{Transformation.\-h@{Transformation.\-h}!My\-Super@{My\-Super}}
+\index{My\-Super@{My\-Super}!Transformation.h@{Transformation.\-h}}
+\subsubsection[{My\-Super}]{\setlength{\rightskip}{0pt plus 5cm}\#define My\-Super~Pipeline$<$Matrix$<$Scalar$>$, Matrix$<$Scalar$>$, Transformate$<$Scalar$>$ $>$}}\label{Transformation_8h_aa667de06e306f0a462ae44fe3614f1e5}
diff --git a/doc/latex/Usage_8h.tex b/doc/latex/Usage_8h.tex
index 967d0d9..b729b27 100644
--- a/doc/latex/Usage_8h.tex
+++ b/doc/latex/Usage_8h.tex
@@ -6,8 +6,6 @@
{\ttfamily \#include $<$string$>$}\\*
{\ttfamily \#include $<$vector$>$}\\*
{\ttfamily \#include $<$map$>$}\\*
-{\ttfamily \#include $<$algorithm$>$}\\*
-{\ttfamily \#include $<$unistd.\-h$>$}\\*
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item
diff --git a/doc/latex/Vector_8h.tex b/doc/latex/Vector_8h.tex
index abfed61..79f0754 100644
--- a/doc/latex/Vector_8h.tex
+++ b/doc/latex/Vector_8h.tex
@@ -3,7 +3,6 @@
}
{\ttfamily \#include \char`\"{}../\-Self.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}Matrix.\-h\char`\"{}}\\*
-{\ttfamily \#include \char`\"{}utility.\-h\char`\"{}}\\*
{\ttfamily \#include $<$vector$>$}\\*
{\ttfamily \#include $<$cmath$>$}\\*
\subsection*{Classes}
diff --git a/doc/latex/annotated.tex b/doc/latex/annotated.tex
index 1439422..435978d 100644
--- a/doc/latex/annotated.tex
+++ b/doc/latex/annotated.tex
@@ -21,6 +21,7 @@ Here are the classes, structs, unions and interfaces with brief descriptions\-:\
\item\contentsline{section}{\hyperlink{classmeow_1_1KD__Tree}{meow\-::\-K\-D\-\_\-\-Tree$<$ Vector, Scalar $>$} \\*{\ttfamily k-\/dimension} tree }{\pageref{classmeow_1_1KD__Tree}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1LinearTransformation}{meow\-::\-Linear\-Transformation$<$ Scalar $>$} \\*A base class for implementing kinds of linear transformations }{\pageref{classmeow_1_1LinearTransformation}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1Matrix}{meow\-::\-Matrix$<$ Entry $>$} \\*{\bfseries matrix} }{\pageref{classmeow_1_1Matrix}}{}
+\item\contentsline{section}{\hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo}{meow\-::\-Pipeline$<$ Input, Output, Medium $>$\-::\-Myself\-::\-Medium\-Info} }{\pageref{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1MergeableHeap}{meow\-::\-Mergeable\-Heap$<$ Element $>$} \\*一個用 {\bfseries 左偏樹} 實作的 {\ttfamily Maximum-\/\-Heap} , 除了原本heap有的功能外, 還支援 {\ttfamily merge} 功能 }{\pageref{classmeow_1_1MergeableHeap}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1ObjArray}{meow\-::\-Obj\-Array$<$ T $>$} \\*純粹把 {\ttfamily std\-::vector} 包起來, 變成繼承自 \hyperlink{classmeow_1_1ObjBase}{Obj\-Base} }{\pageref{classmeow_1_1ObjArray}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1ObjBase}{meow\-::\-Obj\-Base} \\*一切物件的\-Base, 並要求每個物件都要有read, write, create, ... 等功能 }{\pageref{classmeow_1_1ObjBase}}{}
@@ -30,6 +31,7 @@ Here are the classes, structs, unions and interfaces with brief descriptions\-:\
\item\contentsline{section}{\hyperlink{classmeow_1_1ObjType}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$} \\*純粹把給定的 {\ttfamily Type} 包起來, 變成繼承自 \hyperlink{classmeow_1_1ObjBase}{Obj\-Base} }{\pageref{classmeow_1_1ObjType}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1Photo}{meow\-::\-Photo$<$ Pixel $>$} \\*底片 }{\pageref{classmeow_1_1Photo}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1PhotoProjection}{meow\-::\-Photo\-Projection$<$ Scalar $>$} \\*A {\bfseries photo} {\bfseries projection} is a kind of transformation that project point/vector to a flat {\bfseries photo} }{\pageref{classmeow_1_1PhotoProjection}}{}
+\item\contentsline{section}{\hyperlink{classmeow_1_1Pipeline}{meow\-::\-Pipeline$<$ Input, Output, Medium $>$} \\*{\bfseries pipeline} }{\pageref{classmeow_1_1Pipeline}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1ReaderWriter__double}{meow\-::\-Reader\-Writer\-\_\-double} }{\pageref{classmeow_1_1ReaderWriter__double}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1ReaderWriter__int}{meow\-::\-Reader\-Writer\-\_\-int} }{\pageref{classmeow_1_1ReaderWriter__int}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1ReaderWriter__size__t}{meow\-::\-Reader\-Writer\-\_\-size\-\_\-t} }{\pageref{classmeow_1_1ReaderWriter__size__t}}{}
@@ -41,6 +43,7 @@ Here are the classes, structs, unions and interfaces with brief descriptions\-:\
\item\contentsline{section}{\hyperlink{classmeow_1_1Self}{meow\-::\-Self$<$ Data $>$} \\*具有copy on write, 且擁有比\-C++更靈活的reference機制 }{\pageref{classmeow_1_1Self}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1SplayTree}{meow\-::\-Splay\-Tree$<$ Key, Value $>$} \\*是一種神乎其技的資料結構, 維護一堆 Key-\/$>$Value . 並且支援 一些 {\ttfamily std\-::map} 難以快速實踐的操作, 如 {\ttfamily split} , {\ttfamily merge} , {\ttfamily key\-Offset} }{\pageref{classmeow_1_1SplayTree}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1SplayTree__Range}{meow\-::\-Splay\-Tree\-\_\-\-Range$<$ Key, Value $>$} \\*基本上跟\-Splay\-Tree一樣, 不過這邊結合線段樹, 多了區間操作 (線段樹相關operator定義請見 {\ttfamily \hyperlink{classmeow_1_1SegmentTree}{Segment\-Tree}} ) }{\pageref{classmeow_1_1SplayTree__Range}}{}
+\item\contentsline{section}{\hyperlink{classmeow_1_1TransformatePipeline}{meow\-::\-Transformate\-Pipeline$<$ Scalar $>$} \\*\hyperlink{classmeow_1_1Pipeline}{Pipeline} for transformations }{\pageref{classmeow_1_1TransformatePipeline}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1Transformation}{meow\-::\-Transformation$<$ Scalar $>$} \\*A base class for implementing kinds of transformations }{\pageref{classmeow_1_1Transformation}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1Usage}{meow\-::\-Usage} \\*管理參數設置, 自訂usage document, 分析argc, argv }{\pageref{classmeow_1_1Usage}}{}
\item\contentsline{section}{\hyperlink{classmeow_1_1Vector}{meow\-::\-Vector$<$ Scalar $>$} \\*{\bfseries vector} }{\pageref{classmeow_1_1Vector}}{}
diff --git a/doc/latex/classmeow_1_1BallProjection.pdf b/doc/latex/classmeow_1_1BallProjection.pdf
index 0841085..aa955cf 100644
--- a/doc/latex/classmeow_1_1BallProjection.pdf
+++ b/doc/latex/classmeow_1_1BallProjection.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1Bitmap.pdf b/doc/latex/classmeow_1_1Bitmap.pdf
index 619f96e..3adf50c 100644
--- a/doc/latex/classmeow_1_1Bitmap.pdf
+++ b/doc/latex/classmeow_1_1Bitmap.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1Camera.pdf b/doc/latex/classmeow_1_1Camera.pdf
index 1b38c4d..fba03e2 100644
--- a/doc/latex/classmeow_1_1Camera.pdf
+++ b/doc/latex/classmeow_1_1Camera.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1FeaturePoint.pdf b/doc/latex/classmeow_1_1FeaturePoint.pdf
index ad90eca..baab6fa 100644
--- a/doc/latex/classmeow_1_1FeaturePoint.pdf
+++ b/doc/latex/classmeow_1_1FeaturePoint.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1FeaturePoint.tex b/doc/latex/classmeow_1_1FeaturePoint.tex
index f09396b..dbfa436 100644
--- a/doc/latex/classmeow_1_1FeaturePoint.tex
+++ b/doc/latex/classmeow_1_1FeaturePoint.tex
@@ -58,17 +58,17 @@ Scalar const \& \hyperlink{classmeow_1_1FeaturePoint_ab214706427b962a1404ee8fcfe
Description \hyperlink{classmeow_1_1FeaturePoint_a54b483836901fd5ad6b3c115f3afda69}{operator\mbox{[}$\,$\mbox{]}} (size\-\_\-t i) const
\begin{DoxyCompactList}\small\item\em same as description(i) \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1FeaturePoint_a54a0ca59d340d0bcd969609a0682d2d9}{write} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg) const
-\item
+\begin{DoxyCompactList}\small\item\em 將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1FeaturePoint_a48908e47535a5528207f8dff2db85ba4}{read} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg)
-\item
+\begin{DoxyCompactList}\small\item\em 將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1FeaturePoint_a7244e348b529719748d1643a6f11adbf}{create} () const
-\item
+\begin{DoxyCompactList}\small\item\em 回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1FeaturePoint_a989fc819567e6b430a36351216a1b4b4}{copy\-From} (\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} const \&b)
\item
char const $\ast$ \hyperlink{classmeow_1_1FeaturePoint_a1ffb238473ef9f745eb79670fc46da13}{ctype} () const
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳這個class的type name \end{DoxyCompactList}\item
std\-::string \hyperlink{classmeow_1_1FeaturePoint_ab6ee7c5a267d5c64e3b021b0397880d1}{type} () const
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳這個class的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}
@@ -158,6 +158,10 @@ destructor
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePoint_a7244e348b529719748d1643a6f11adbf}
+回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L}
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePoint_a1ffb238473ef9f745eb79670fc46da13}{\index{meow\-::\-Feature\-Point@{meow\-::\-Feature\-Point}!ctype@{ctype}}
@@ -169,6 +173,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePoint_a1ffb238473ef9f745eb79670fc46da13}
+用\-C-\/style string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePoint_a563bdbbea5b633b86666c7e340affbee}{\index{meow\-::\-Feature\-Point@{meow\-::\-Feature\-Point}!description@{description}}
@@ -327,6 +335,22 @@ same as description(i)
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePoint_a48908e47535a5528207f8dff2db85ba4}
+將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePoint_af5e944e79a1dfe6644fe429577734bc4}{\index{meow\-::\-Feature\-Point@{meow\-::\-Feature\-Point}!reference\-From@{reference\-From}}
@@ -349,6 +373,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524b
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePoint_ab6ee7c5a267d5c64e3b021b0397880d1}
+用std\-::string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePoint_a54a0ca59d340d0bcd969609a0682d2d9}{\index{meow\-::\-Feature\-Point@{meow\-::\-Feature\-Point}!write@{write}}
@@ -362,6 +390,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePoint_a54a0ca59d340d0bcd969609a0682d2d9}
+將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{meow\-::\-Obj\-Base}.
diff --git a/doc/latex/classmeow_1_1FeaturePointsDetector.pdf b/doc/latex/classmeow_1_1FeaturePointsDetector.pdf
index b6b6ca9..c06cbb1 100644
--- a/doc/latex/classmeow_1_1FeaturePointsDetector.pdf
+++ b/doc/latex/classmeow_1_1FeaturePointsDetector.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1FeaturePointsDetector__Harris.pdf b/doc/latex/classmeow_1_1FeaturePointsDetector__Harris.pdf
index 7a72c05..e9de6a9 100644
--- a/doc/latex/classmeow_1_1FeaturePointsDetector__Harris.pdf
+++ b/doc/latex/classmeow_1_1FeaturePointsDetector__Harris.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1FeaturePointsMatch.pdf b/doc/latex/classmeow_1_1FeaturePointsMatch.pdf
index 5b3c330..e454996 100644
--- a/doc/latex/classmeow_1_1FeaturePointsMatch.pdf
+++ b/doc/latex/classmeow_1_1FeaturePointsMatch.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.pdf b/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.pdf
index 1b94a3b..e44fdbc 100644
--- a/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.pdf
+++ b/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.tex b/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.tex
index 3b32e62..1a6178c 100644
--- a/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.tex
+++ b/doc/latex/classmeow_1_1FeaturePointsMatch__K__Match.tex
@@ -51,17 +51,17 @@ size\-\_\-t \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_acd541d95ffe2de
\hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a6e657c4cb57c418e39ed91b35aae448c}{F\-P\-M\-K\-M} \& \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a11beaa0b96effbc990c3d7d3c6922e9a}{operator=} (\hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a6e657c4cb57c418e39ed91b35aae448c}{F\-P\-M\-K\-M} const \&b)
\item
bool \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_acbdc25595aeb8280c11543fec230e1a6}{write} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg) const
-\item
+\begin{DoxyCompactList}\small\item\em 將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a207813017b7eab06672ec324968e6caa}{read} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg)
-\item
+\begin{DoxyCompactList}\small\item\em 將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_aaa320097355fccd00677bd0413935ee5}{create} () const
-\item
+\begin{DoxyCompactList}\small\item\em 回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_ab5aa47ae36052a5916515a2e504f2c53}{copy\-From} (\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} const $\ast$ptr)
-\item
+\begin{DoxyCompactList}\small\item\em 複製, 預設使用operator= \end{DoxyCompactList}\item
char const $\ast$ \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a2c89f6a79cba1b477c31e294ec7d9c71}{ctype} () const
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳這個class的type name \end{DoxyCompactList}\item
std\-::string \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_ab10e50514ac4b0de505800b1894dbb0a}{type} () const
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳這個class的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}
@@ -96,11 +96,23 @@ std\-::string \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_ab10e50514ac4
\index{copy\-From@{copy\-From}!meow::FeaturePointsMatch_K_Match@{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match}}
\subsubsection[{copy\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar , class Description $>$ {\bf Obj\-Base}$\ast$ {\bf meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match}$<$ Scalar, Description $>$\-::copy\-From (
\begin{DoxyParamCaption}
-\item[{{\bf Obj\-Base} const $\ast$}]{ptr}
+\item[{{\bf Obj\-Base} const $\ast$}]{b}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePointsMatch__K__Match_ab5aa47ae36052a5916515a2e504f2c53}
+複製, 預設使用operator=
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em b} & 資料來源 \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily this}
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb528619}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePointsMatch__K__Match_aaa320097355fccd00677bd0413935ee5}{\index{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match@{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match}!create@{create}}
@@ -112,6 +124,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb52
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePointsMatch__K__Match_aaa320097355fccd00677bd0413935ee5}
+回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L}
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePointsMatch__K__Match_a2c89f6a79cba1b477c31e294ec7d9c71}{\index{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match@{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match}!ctype@{ctype}}
@@ -123,6 +139,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePointsMatch__K__Match_a2c89f6a79cba1b477c31e294ec7d9c71}
+用\-C-\/style string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePointsMatch__K__Match_a6e657c4cb57c418e39ed91b35aae448c}{\index{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match@{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match}!F\-P\-M\-K\-M@{F\-P\-M\-K\-M}}
@@ -229,6 +249,22 @@ Implements \hyperlink{classmeow_1_1FeaturePointsMatch_ae7bd29fe1ddfca20ee140268f
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePointsMatch__K__Match_a207813017b7eab06672ec324968e6caa}
+將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePointsMatch__K__Match_a881f9a17c264659c2604a79c1ae81286}{\index{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match@{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match}!reference\-From@{reference\-From}}
@@ -247,6 +283,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524b
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePointsMatch__K__Match_ab10e50514ac4b0de505800b1894dbb0a}
+用std\-::string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1FeaturePointsMatch__K__Match_acbdc25595aeb8280c11543fec230e1a6}{\index{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match@{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match}!write@{write}}
@@ -260,6 +300,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1FeaturePointsMatch__K__Match_acbdc25595aeb8280c11543fec230e1a6}
+將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{meow\-::\-Obj\-Base}.
diff --git a/doc/latex/classmeow_1_1HSLf__Space.pdf b/doc/latex/classmeow_1_1HSLf__Space.pdf
index ea1ca1a..615b1fd 100644
--- a/doc/latex/classmeow_1_1HSLf__Space.pdf
+++ b/doc/latex/classmeow_1_1HSLf__Space.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1HSVf__Space.pdf b/doc/latex/classmeow_1_1HSVf__Space.pdf
index b5596ce..c2e06c0 100644
--- a/doc/latex/classmeow_1_1HSVf__Space.pdf
+++ b/doc/latex/classmeow_1_1HSVf__Space.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1IdentityPoints.pdf b/doc/latex/classmeow_1_1IdentityPoints.pdf
index 4077291..4ea1a1b 100644
--- a/doc/latex/classmeow_1_1IdentityPoints.pdf
+++ b/doc/latex/classmeow_1_1IdentityPoints.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1LinearTransformation.pdf b/doc/latex/classmeow_1_1LinearTransformation.pdf
index 42d064b..591f35f 100644
--- a/doc/latex/classmeow_1_1LinearTransformation.pdf
+++ b/doc/latex/classmeow_1_1LinearTransformation.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1Matrix.tex b/doc/latex/classmeow_1_1Matrix.tex
index 617125e..720fd40 100644
--- a/doc/latex/classmeow_1_1Matrix.tex
+++ b/doc/latex/classmeow_1_1Matrix.tex
@@ -10,6 +10,15 @@
{\ttfamily \#include \char`\"{}Matrix.\-h\char`\"{}}
+\subsection*{Public Types}
+\begin{DoxyCompactItemize}
+\item
+typedef std\-::vector$<$ Entry $>$\\*
+\-::reference \hyperlink{classmeow_1_1Matrix_ab05bcd1bd8b1f8d4f250d6b3b87e023e}{Entry\-Ref}
+\item
+typedef std\-::vector$<$ Entry $>$\\*
+\-::const\-\_\-reference \hyperlink{classmeow_1_1Matrix_a1ac7c3d6ad50154043969005fa292981}{Entry\-Ref\-K}
+\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
@@ -41,10 +50,12 @@ size\-\_\-t \hyperlink{classmeow_1_1Matrix_a30d16679bb6843c5e35aae81738f3306}{co
\begin{DoxyCompactList}\small\item\em resize the matrix such that number of cols become {\itshape c} \end{DoxyCompactList}\item
size\-\_\-t \hyperlink{classmeow_1_1Matrix_ac492cefa5df3a4ac6c9799931fb93605}{size} (size\-\_\-t r, size\-\_\-t c, Entry const \&e)
\begin{DoxyCompactList}\small\item\em resize \end{DoxyCompactList}\item
-Entry \hyperlink{classmeow_1_1Matrix_a46a12f45237e654e0140387d7290eb8b}{entry} (size\-\_\-t r, size\-\_\-t c) const
+\hyperlink{classmeow_1_1Matrix_a1ac7c3d6ad50154043969005fa292981}{Entry\-Ref\-K} \hyperlink{classmeow_1_1Matrix_a6adeb974bfb77936ed41e1a57726d7a4}{entry} (size\-\_\-t r, size\-\_\-t c) const
\begin{DoxyCompactList}\small\item\em Access the entry at {\itshape r} x {\itshape c}. \end{DoxyCompactList}\item
-Entry \hyperlink{classmeow_1_1Matrix_aaba0981e54a17f0df8af9dabe9cad06f}{entry} (size\-\_\-t r, size\-\_\-t c, Entry const \&e)
+\hyperlink{classmeow_1_1Matrix_a1ac7c3d6ad50154043969005fa292981}{Entry\-Ref\-K} \hyperlink{classmeow_1_1Matrix_a73dd7adb618b48aaabfa4d21ba08a33a}{entry} (size\-\_\-t r, size\-\_\-t c, Entry const \&e)
\begin{DoxyCompactList}\small\item\em Change the entry at {\itshape r} x {\itshape c}. \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Matrix_ab05bcd1bd8b1f8d4f250d6b3b87e023e}{Entry\-Ref} \hyperlink{classmeow_1_1Matrix_ab49fa7564c37c6bc164dc368a94fed6b}{entry\-Get} (size\-\_\-t r, size\-\_\-t c)
+\begin{DoxyCompactList}\small\item\em Get the entry at {\itshape r} x {\itshape c}. \end{DoxyCompactList}\item
void \hyperlink{classmeow_1_1Matrix_a13384643dc412817fdcd8f1834a02d12}{entries} (ssize\-\_\-t r\-First, ssize\-\_\-t r\-Last, ssize\-\_\-t c\-First, ssize\-\_\-t c\-Last, Entry const \&e)
\begin{DoxyCompactList}\small\item\em Change the entries from {\itshape r\-First} x {\itshape c\-First} to {\itshape r\-Last} x {\itshape c\-Last}. \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Matrix}{Matrix} \hyperlink{classmeow_1_1Matrix_a93ff4579b7cb950868cad7a62bcf9fe8}{sub\-Matrix} (size\-\_\-t r\-First, size\-\_\-t r\-Last, size\-\_\-t c\-First, size\-\_\-t c\-Last) const
@@ -85,9 +96,9 @@ void \hyperlink{classmeow_1_1Matrix_a13384643dc412817fdcd8f1834a02d12}{entries}
\begin{DoxyCompactList}\small\item\em triangluar itself \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Matrix}{Matrix} \& \hyperlink{classmeow_1_1Matrix_a50bf284fe7beae52bb1bd0868486a602}{operator=} (\hyperlink{classmeow_1_1Matrix}{Matrix} const \&m)
\begin{DoxyCompactList}\small\item\em same as {\itshape copy\-From} \end{DoxyCompactList}\item
-Entry \hyperlink{classmeow_1_1Matrix_a78b4b8b4ee30d02cb726bf7b8ac13147}{operator()} (size\-\_\-t r, size\-\_\-t c) const
+\hyperlink{classmeow_1_1Matrix_a1ac7c3d6ad50154043969005fa292981}{Entry\-Ref\-K} \hyperlink{classmeow_1_1Matrix_a37b9a0774b087006307acb3f95ad7f32}{operator()} (size\-\_\-t r, size\-\_\-t c) const
\begin{DoxyCompactList}\small\item\em same as {\itshape entry(r,c)} \end{DoxyCompactList}\item
-Entry \hyperlink{classmeow_1_1Matrix_a1dc03cd2475a4c5f34afbe0cb498e472}{operator()} (size\-\_\-t r, size\-\_\-t c, Entry const \&e)
+\hyperlink{classmeow_1_1Matrix_a1ac7c3d6ad50154043969005fa292981}{Entry\-Ref\-K} \hyperlink{classmeow_1_1Matrix_a162d35e1ce93b7777c975efcdaa46992}{operator()} (size\-\_\-t r, size\-\_\-t c, Entry const \&e)
\begin{DoxyCompactList}\small\item\em same as {\itshape entry(r,c,e)} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Matrix}{Matrix} \hyperlink{classmeow_1_1Matrix_ade31d2339af552ba1df230c8383e2f84}{operator+} () const
\begin{DoxyCompactList}\small\item\em same as {\itshape \hyperlink{classmeow_1_1Matrix_aa43f03179e3218c9af28f7374757a2cc}{positive()}} \end{DoxyCompactList}\item
@@ -115,6 +126,15 @@ cat\-\_\-leopard
\end{DoxyAuthor}
+\subsection{Member Typedef Documentation}
+\hypertarget{classmeow_1_1Matrix_ab05bcd1bd8b1f8d4f250d6b3b87e023e}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!Entry\-Ref@{Entry\-Ref}}
+\index{Entry\-Ref@{Entry\-Ref}!meow::Matrix@{meow\-::\-Matrix}}
+\subsubsection[{Entry\-Ref}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ typedef std\-::vector$<$Entry$>$\-::reference {\bf meow\-::\-Matrix}$<$ Entry $>$\-::{\bf Entry\-Ref}}}\label{classmeow_1_1Matrix_ab05bcd1bd8b1f8d4f250d6b3b87e023e}
+\hypertarget{classmeow_1_1Matrix_a1ac7c3d6ad50154043969005fa292981}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!Entry\-Ref\-K@{Entry\-Ref\-K}}
+\index{Entry\-Ref\-K@{Entry\-Ref\-K}!meow::Matrix@{meow\-::\-Matrix}}
+\subsubsection[{Entry\-Ref\-K}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ typedef std\-::vector$<$Entry$>$\-::const\-\_\-reference {\bf meow\-::\-Matrix}$<$ Entry $>$\-::{\bf Entry\-Ref\-K}}}\label{classmeow_1_1Matrix_a1ac7c3d6ad50154043969005fa292981}
+
+
\subsection{Constructor \& Destructor Documentation}
\hypertarget{classmeow_1_1Matrix_a2dc9f17e38ba52376822744d2fc48f29}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!Matrix@{Matrix}}
\index{Matrix@{Matrix}!meow::Matrix@{meow\-::\-Matrix}}
@@ -303,31 +323,43 @@ Change the entries from {\itshape r\-First} x {\itshape c\-First} to {\itshape r
\begin{DoxyReturn}{Returns}
void
\end{DoxyReturn}
-\hypertarget{classmeow_1_1Matrix_a46a12f45237e654e0140387d7290eb8b}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!entry@{entry}}
+\hypertarget{classmeow_1_1Matrix_a6adeb974bfb77936ed41e1a57726d7a4}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!entry@{entry}}
\index{entry@{entry}!meow::Matrix@{meow\-::\-Matrix}}
-\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ Entry {\bf meow\-::\-Matrix}$<$ Entry $>$\-::entry (
+\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ {\bf Entry\-Ref\-K} {\bf meow\-::\-Matrix}$<$ Entry $>$\-::entry (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{r, }
\item[{size\-\_\-t}]{c}
\end{DoxyParamCaption}
-) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_a46a12f45237e654e0140387d7290eb8b}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_a6adeb974bfb77936ed41e1a57726d7a4}
Access the entry at {\itshape r} x {\itshape c}.
-\hypertarget{classmeow_1_1Matrix_aaba0981e54a17f0df8af9dabe9cad06f}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!entry@{entry}}
+\hypertarget{classmeow_1_1Matrix_a73dd7adb618b48aaabfa4d21ba08a33a}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!entry@{entry}}
\index{entry@{entry}!meow::Matrix@{meow\-::\-Matrix}}
-\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ Entry {\bf meow\-::\-Matrix}$<$ Entry $>$\-::entry (
+\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ {\bf Entry\-Ref\-K} {\bf meow\-::\-Matrix}$<$ Entry $>$\-::entry (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{r, }
\item[{size\-\_\-t}]{c, }
\item[{Entry const \&}]{e}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_aaba0981e54a17f0df8af9dabe9cad06f}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_a73dd7adb618b48aaabfa4d21ba08a33a}
Change the entry at {\itshape r} x {\itshape c}.
+\hypertarget{classmeow_1_1Matrix_ab49fa7564c37c6bc164dc368a94fed6b}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!entry\-Get@{entry\-Get}}
+\index{entry\-Get@{entry\-Get}!meow::Matrix@{meow\-::\-Matrix}}
+\subsubsection[{entry\-Get}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ {\bf Entry\-Ref} {\bf meow\-::\-Matrix}$<$ Entry $>$\-::entry\-Get (
+\begin{DoxyParamCaption}
+\item[{size\-\_\-t}]{r, }
+\item[{size\-\_\-t}]{c}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_ab49fa7564c37c6bc164dc368a94fed6b}
+
+
+Get the entry at {\itshape r} x {\itshape c}.
+
\hypertarget{classmeow_1_1Matrix_abc6f5c824ee47cb15094729ca91f2e7c}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!identitied@{identitied}}
\index{identitied@{identitied}!meow::Matrix@{meow\-::\-Matrix}}
\subsubsection[{identitied}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ {\bf Matrix}\& {\bf meow\-::\-Matrix}$<$ Entry $>$\-::identitied (
@@ -405,27 +437,27 @@ return {\itshape }($\ast$this) times {\itshape s}. {\itshape s} is a scalar
return -\/{\itshape }($\ast$this)
-\hypertarget{classmeow_1_1Matrix_a78b4b8b4ee30d02cb726bf7b8ac13147}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!operator()@{operator()}}
+\hypertarget{classmeow_1_1Matrix_a37b9a0774b087006307acb3f95ad7f32}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!operator()@{operator()}}
\index{operator()@{operator()}!meow::Matrix@{meow\-::\-Matrix}}
-\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ Entry {\bf meow\-::\-Matrix}$<$ Entry $>$\-::operator() (
+\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ {\bf Entry\-Ref\-K} {\bf meow\-::\-Matrix}$<$ Entry $>$\-::operator() (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{r, }
\item[{size\-\_\-t}]{c}
\end{DoxyParamCaption}
-) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_a78b4b8b4ee30d02cb726bf7b8ac13147}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_a37b9a0774b087006307acb3f95ad7f32}
same as {\itshape entry(r,c)}
-\hypertarget{classmeow_1_1Matrix_a1dc03cd2475a4c5f34afbe0cb498e472}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!operator()@{operator()}}
+\hypertarget{classmeow_1_1Matrix_a162d35e1ce93b7777c975efcdaa46992}{\index{meow\-::\-Matrix@{meow\-::\-Matrix}!operator()@{operator()}}
\index{operator()@{operator()}!meow::Matrix@{meow\-::\-Matrix}}
-\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ Entry {\bf meow\-::\-Matrix}$<$ Entry $>$\-::operator() (
+\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Entry$>$ {\bf Entry\-Ref\-K} {\bf meow\-::\-Matrix}$<$ Entry $>$\-::operator() (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{r, }
\item[{size\-\_\-t}]{c, }
\item[{Entry const \&}]{e}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_a1dc03cd2475a4c5f34afbe0cb498e472}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Matrix_a162d35e1ce93b7777c975efcdaa46992}
same as {\itshape entry(r,c,e)}
diff --git a/doc/latex/classmeow_1_1ObjArray.pdf b/doc/latex/classmeow_1_1ObjArray.pdf
index e2a3ac1..51a56f1 100644
--- a/doc/latex/classmeow_1_1ObjArray.pdf
+++ b/doc/latex/classmeow_1_1ObjArray.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1ObjArray.tex b/doc/latex/classmeow_1_1ObjArray.tex
index 30cff78..4c1096e 100644
--- a/doc/latex/classmeow_1_1ObjArray.tex
+++ b/doc/latex/classmeow_1_1ObjArray.tex
@@ -58,17 +58,17 @@ T const \& \hyperlink{classmeow_1_1ObjArray_a1b6cb50da01769067bafcb85c2a5104f}{o
T \& \hyperlink{classmeow_1_1ObjArray_aa9e6268b6d7ea3c7b53101a7a175e360}{operator\mbox{[}$\,$\mbox{]}} (size\-\_\-t i)
\item
bool \hyperlink{classmeow_1_1ObjArray_a089627fcba2e80760993e3aff1705a70}{write} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg) const
-\item
+\begin{DoxyCompactList}\small\item\em 將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1ObjArray_a3bc18d106d33e0a2f00f6e9ebf443b74}{read} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg)
-\item
+\begin{DoxyCompactList}\small\item\em 將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjArray_a35d6363d1432059e3dd7c3c43ca006ae}{create} () const
-\item
+\begin{DoxyCompactList}\small\item\em 回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjArray_a339fcf38102846e361db6aa1e896c044}{copy\-From} (\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} const $\ast$b)
-\item
+\begin{DoxyCompactList}\small\item\em 複製, 預設使用operator= \end{DoxyCompactList}\item
char const $\ast$ \hyperlink{classmeow_1_1ObjArray_a8be408ac8b9b6515fc55dfecd418ceb5}{ctype} () const
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳這個class的type name \end{DoxyCompactList}\item
std\-::string \hyperlink{classmeow_1_1ObjArray_a8fe5956bfb52c17632b00338c7da5d5c}{type} () const
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳這個class的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}
@@ -145,6 +145,18 @@ cathook
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjArray_a339fcf38102846e361db6aa1e896c044}
+複製, 預設使用operator=
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em b} & 資料來源 \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily this}
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb528619}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjArray_a35d6363d1432059e3dd7c3c43ca006ae}{\index{meow\-::\-Obj\-Array@{meow\-::\-Obj\-Array}!create@{create}}
@@ -156,6 +168,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb52
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjArray_a35d6363d1432059e3dd7c3c43ca006ae}
+回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L}
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjArray_a8be408ac8b9b6515fc55dfecd418ceb5}{\index{meow\-::\-Obj\-Array@{meow\-::\-Obj\-Array}!ctype@{ctype}}
@@ -167,6 +183,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjArray_a8be408ac8b9b6515fc55dfecd418ceb5}
+用\-C-\/style string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjArray_a0cf27c92cf52d3f125a0e01e6b62bce0}{\index{meow\-::\-Obj\-Array@{meow\-::\-Obj\-Array}!empty@{empty}}
@@ -237,6 +257,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjArray_a3bc18d106d33e0a2f00f6e9ebf443b74}
+將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjArray_aa09ddb0d17ebb93520b211dc29ad2904}{\index{meow\-::\-Obj\-Array@{meow\-::\-Obj\-Array}!reference\-From@{reference\-From}}
@@ -277,6 +313,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524b
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjArray_a8fe5956bfb52c17632b00338c7da5d5c}
+用std\-::string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjArray_a089627fcba2e80760993e3aff1705a70}{\index{meow\-::\-Obj\-Array@{meow\-::\-Obj\-Array}!write@{write}}
@@ -290,6 +330,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjArray_a089627fcba2e80760993e3aff1705a70}
+將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{meow\-::\-Obj\-Base}.
diff --git a/doc/latex/classmeow_1_1ObjBase.pdf b/doc/latex/classmeow_1_1ObjBase.pdf
index 52c999b..fcea4be 100644
--- a/doc/latex/classmeow_1_1ObjBase.pdf
+++ b/doc/latex/classmeow_1_1ObjBase.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1ObjBase.tex b/doc/latex/classmeow_1_1ObjBase.tex
index 3aa71b6..22a4404 100644
--- a/doc/latex/classmeow_1_1ObjBase.tex
+++ b/doc/latex/classmeow_1_1ObjBase.tex
@@ -22,24 +22,24 @@ Inheritance diagram for meow\-:\-:Obj\-Base\-:\begin{figure}[H]
virtual \hyperlink{classmeow_1_1ObjBase_a0ae0da4160bf2556411b4c126c649234}{$\sim$\-Obj\-Base} ()
\item
virtual bool \hyperlink{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{write} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg) const
-\item
+\begin{DoxyCompactList}\small\item\em 將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
virtual bool \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{read} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg)
-\item
+\begin{DoxyCompactList}\small\item\em 將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
virtual \hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{create} () const
-\item
+\begin{DoxyCompactList}\small\item\em 回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L} \end{DoxyCompactList}\item
virtual \hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb528619}{copy\-From} (\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} const $\ast$b)
-\item
+\begin{DoxyCompactList}\small\item\em 複製, 預設使用operator= \end{DoxyCompactList}\item
virtual char const $\ast$ \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{ctype} () const
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳這個class的type name \end{DoxyCompactList}\item
virtual std\-::string \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{type} () const
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳這個class的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item
static char const $\ast$ \hyperlink{classmeow_1_1ObjBase_ab42310e3f3a7cd558dd91381c8dd23d8}{ctype\-Base} ()
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳base的type name \end{DoxyCompactList}\item
static std\-::string \hyperlink{classmeow_1_1ObjBase_a75dce38f89ce11cb06e0454e7c1039d3}{type\-Base} ()
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳base的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item
@@ -82,7 +82,19 @@ cathook
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjBase_a79725f50866832762db87184eb528619}
-Reimplemented in \hyperlink{classmeow_1_1Bitmap_a998a6a9607f8552ace65cce0d251042c}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1Photo_a0e947011dcb0db21760c89663acd2208}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_a51ea4943d3c0515466a801ec63ba44ea}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6b17e68e14290ebfdcdd59a0724cdc41}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6b17e68e14290ebfdcdd59a0724cdc41}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_a898f8ad46598a01633f444804853a3bd}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_a5dff4c1129c6d74de1938bea9309a408}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_ab5aa47ae36052a5916515a2e504f2c53}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a339fcf38102846e361db6aa1e896c044}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_a8f2e32f6eb11904c2547fae0ff9ab3d6}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_a392c841c8012ebd9a62f514a74e4b535}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a4bc4f097d783426457a784a39266ba52}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
+複製, 預設使用operator=
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em b} & 資料來源 \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily this}
+\end{DoxyReturn}
+
+
+Reimplemented in \hyperlink{classmeow_1_1Photo_a0e947011dcb0db21760c89663acd2208}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1Bitmap_a998a6a9607f8552ace65cce0d251042c}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_a51ea4943d3c0515466a801ec63ba44ea}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6b17e68e14290ebfdcdd59a0724cdc41}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6b17e68e14290ebfdcdd59a0724cdc41}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_a898f8ad46598a01633f444804853a3bd}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_a5dff4c1129c6d74de1938bea9309a408}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_ab5aa47ae36052a5916515a2e504f2c53}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a339fcf38102846e361db6aa1e896c044}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_a8f2e32f6eb11904c2547fae0ff9ab3d6}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_a392c841c8012ebd9a62f514a74e4b535}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a4bc4f097d783426457a784a39266ba52}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
\hypertarget{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{\index{meow\-::\-Obj\-Base@{meow\-::\-Obj\-Base}!create@{create}}
\index{create@{create}!meow::ObjBase@{meow\-::\-Obj\-Base}}
@@ -93,7 +105,11 @@ Reimplemented in \hyperlink{classmeow_1_1Bitmap_a998a6a9607f8552ace65cce0d251042
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}
-Reimplemented in \hyperlink{classmeow_1_1Bitmap_a07b1eb689498112691ca72e8c6ae453f}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1Photo_a449f74fa427154f943d6abee255431aa}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_ae7a96030ea8d06322b632c89eb65655d}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a464d62354fc3d12767b71632f9b27524}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a464d62354fc3d12767b71632f9b27524}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_ae2c8bc97ac7d09b886fe59a8f88c2145}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_ad3ec34460c84a4a20cf3cb418db76dc3}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_a7244e348b529719748d1643a6f11adbf}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_aaa320097355fccd00677bd0413935ee5}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a35d6363d1432059e3dd7c3c43ca006ae}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_a14ce0fcedf7619c0b442588e185a7eeb}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_a19f8291125626675d15b4394283b8180}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a3345d121cc8a6b25baad2cbd80d23164}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
+回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L}
+
+
+
+Reimplemented in \hyperlink{classmeow_1_1Photo_a449f74fa427154f943d6abee255431aa}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1Bitmap_a07b1eb689498112691ca72e8c6ae453f}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_ae7a96030ea8d06322b632c89eb65655d}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a464d62354fc3d12767b71632f9b27524}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a464d62354fc3d12767b71632f9b27524}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_ae2c8bc97ac7d09b886fe59a8f88c2145}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_ad3ec34460c84a4a20cf3cb418db76dc3}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_a7244e348b529719748d1643a6f11adbf}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_aaa320097355fccd00677bd0413935ee5}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a35d6363d1432059e3dd7c3c43ca006ae}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_a14ce0fcedf7619c0b442588e185a7eeb}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_a19f8291125626675d15b4394283b8180}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a3345d121cc8a6b25baad2cbd80d23164}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
\hypertarget{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{\index{meow\-::\-Obj\-Base@{meow\-::\-Obj\-Base}!ctype@{ctype}}
\index{ctype@{ctype}!meow::ObjBase@{meow\-::\-Obj\-Base}}
@@ -104,7 +120,11 @@ Reimplemented in \hyperlink{classmeow_1_1Bitmap_a07b1eb689498112691ca72e8c6ae453
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}
-Reimplemented in \hyperlink{classmeow_1_1Bitmap_af8debba04055594b8507c77b3dbd0ff7}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1Photo_a93fdf3b617d8b1c751823074fca049a9}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_a00be866b3cf9bd2469e0eef32a3b2287}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_ae90d4c4d8125919ae8807d89790bed61}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_ae90d4c4d8125919ae8807d89790bed61}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_afcba8229502523255913392c592eabce}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_a80ef6d606e9f79255b043c5c17cc4a18}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_a1ffb238473ef9f745eb79670fc46da13}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a2c89f6a79cba1b477c31e294ec7d9c71}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a8be408ac8b9b6515fc55dfecd418ceb5}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_aee3a1722f6061987a242b9b33e5fcc64}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_ae7d34cb241aa7d74c9c52918c98dab49}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a55ee94dd2d564eaee8250ed517b6779a}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
+用\-C-\/style string回傳這個class的type name
+
+
+
+Reimplemented in \hyperlink{classmeow_1_1Photo_a93fdf3b617d8b1c751823074fca049a9}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1Bitmap_af8debba04055594b8507c77b3dbd0ff7}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_a00be866b3cf9bd2469e0eef32a3b2287}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_ae90d4c4d8125919ae8807d89790bed61}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_ae90d4c4d8125919ae8807d89790bed61}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_afcba8229502523255913392c592eabce}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_a80ef6d606e9f79255b043c5c17cc4a18}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_a1ffb238473ef9f745eb79670fc46da13}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a2c89f6a79cba1b477c31e294ec7d9c71}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a8be408ac8b9b6515fc55dfecd418ceb5}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_aee3a1722f6061987a242b9b33e5fcc64}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_ae7d34cb241aa7d74c9c52918c98dab49}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a55ee94dd2d564eaee8250ed517b6779a}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
\hypertarget{classmeow_1_1ObjBase_ab42310e3f3a7cd558dd91381c8dd23d8}{\index{meow\-::\-Obj\-Base@{meow\-::\-Obj\-Base}!ctype\-Base@{ctype\-Base}}
\index{ctype\-Base@{ctype\-Base}!meow::ObjBase@{meow\-::\-Obj\-Base}}
@@ -113,6 +133,10 @@ Reimplemented in \hyperlink{classmeow_1_1Bitmap_af8debba04055594b8507c77b3dbd0ff
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{classmeow_1_1ObjBase_ab42310e3f3a7cd558dd91381c8dd23d8}
+
+
+用\-C-\/style string回傳base的type name
+
\hypertarget{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{\index{meow\-::\-Obj\-Base@{meow\-::\-Obj\-Base}!read@{read}}
\index{read@{read}!meow::ObjBase@{meow\-::\-Obj\-Base}}
\subsubsection[{read}]{\setlength{\rightskip}{0pt plus 5cm}virtual bool meow\-::\-Obj\-Base\-::read (
@@ -124,6 +148,22 @@ Reimplemented in \hyperlink{classmeow_1_1Bitmap_af8debba04055594b8507c77b3dbd0ff
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}
+將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented in \hyperlink{classmeow_1_1Photo_a97cc535d734fdf53457c84ef5f0bdc50}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1Bitmap_a3b13a4923d68de65bb7e21712185bec8}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_a3bf522cf08285d1afbaca76c643ea4a7}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a66b8a6b980dad9b2cb71cb0823304c51}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a66b8a6b980dad9b2cb71cb0823304c51}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_a18cac43a61f741c191148bfef76e3d85}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_aaa82f998dfc1acde6607650ab6514492}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_a48908e47535a5528207f8dff2db85ba4}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_a207813017b7eab06672ec324968e6caa}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a3bc18d106d33e0a2f00f6e9ebf443b74}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_a0b1bd9fe09676aca74aec34bf5ea7137}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_a8ff33aabcb80ffc2d870b6ce73a6d4fe}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a4d7d0978d10735798e76e707ee9faa5a}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
\hypertarget{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{\index{meow\-::\-Obj\-Base@{meow\-::\-Obj\-Base}!type@{type}}
@@ -135,7 +175,11 @@ Reimplemented in \hyperlink{classmeow_1_1Photo_a97cc535d734fdf53457c84ef5f0bdc50
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}
-Reimplemented in \hyperlink{classmeow_1_1Bitmap_a7f282d9a1ebb07ca5fe12d8ae73121d1}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1Photo_a84cf3012af5e67b4aafc1ee7eafd70d1}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_ae13f041624113e4b87d49befc2e1d77a}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6ce521c18a45b50bd8b75201480b97f7}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6ce521c18a45b50bd8b75201480b97f7}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_ab8478f0460b456da11863ab9e7542bd1}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_ae009c09a5e6b5ebdab09dd304f2eca32}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_ab6ee7c5a267d5c64e3b021b0397880d1}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_ab10e50514ac4b0de505800b1894dbb0a}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a8fe5956bfb52c17632b00338c7da5d5c}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_af5114823fcc2476aa45a965e4af66d6c}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_afaa74a571889ea5281ab3de5636f7e0f}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a6283d69f9c6430c3b2601d7f0267bb84}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
+用std\-::string回傳這個class的type name
+
+
+
+Reimplemented in \hyperlink{classmeow_1_1Photo_a84cf3012af5e67b4aafc1ee7eafd70d1}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1Bitmap_a7f282d9a1ebb07ca5fe12d8ae73121d1}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_ae13f041624113e4b87d49befc2e1d77a}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6ce521c18a45b50bd8b75201480b97f7}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a6ce521c18a45b50bd8b75201480b97f7}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_ab8478f0460b456da11863ab9e7542bd1}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_ae009c09a5e6b5ebdab09dd304f2eca32}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_ab6ee7c5a267d5c64e3b021b0397880d1}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_ab10e50514ac4b0de505800b1894dbb0a}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a8fe5956bfb52c17632b00338c7da5d5c}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_af5114823fcc2476aa45a965e4af66d6c}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_afaa74a571889ea5281ab3de5636f7e0f}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a6283d69f9c6430c3b2601d7f0267bb84}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
\hypertarget{classmeow_1_1ObjBase_a75dce38f89ce11cb06e0454e7c1039d3}{\index{meow\-::\-Obj\-Base@{meow\-::\-Obj\-Base}!type\-Base@{type\-Base}}
\index{type\-Base@{type\-Base}!meow::ObjBase@{meow\-::\-Obj\-Base}}
@@ -144,6 +188,10 @@ Reimplemented in \hyperlink{classmeow_1_1Bitmap_a7f282d9a1ebb07ca5fe12d8ae73121d
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{classmeow_1_1ObjBase_a75dce38f89ce11cb06e0454e7c1039d3}
+
+
+用std\-::string回傳base的type name
+
\hypertarget{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{\index{meow\-::\-Obj\-Base@{meow\-::\-Obj\-Base}!write@{write}}
\index{write@{write}!meow::ObjBase@{meow\-::\-Obj\-Base}}
\subsubsection[{write}]{\setlength{\rightskip}{0pt plus 5cm}virtual bool meow\-::\-Obj\-Base\-::write (
@@ -155,6 +203,22 @@ Reimplemented in \hyperlink{classmeow_1_1Bitmap_a7f282d9a1ebb07ca5fe12d8ae73121d
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}
+將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented in \hyperlink{classmeow_1_1Photo_ab92324c852686bcad5e374aa9ae8e952}{meow\-::\-Photo$<$ Pixel $>$}, \hyperlink{classmeow_1_1Bitmap_aad700e26eae54cb653919c165dcc98dd}{meow\-::\-Bitmap$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePointsDetector__Harris_a83d9ec3557a4251dc98dae1ab7146a14}{meow\-::\-Feature\-Points\-Detector\-\_\-\-Harris$<$ Pixel $>$}, \hyperlink{classmeow_1_1IdentityPoints_a7ecba020418b86d76db75e9f636aae9a}{meow\-::\-Identity\-Points$<$ I\-D, Scalar $>$}, \hyperlink{classmeow_1_1IdentityPoints_a7ecba020418b86d76db75e9f636aae9a}{meow\-::\-Identity\-Points$<$ int, double $>$}, \hyperlink{classmeow_1_1WatchBall_a33cb0d690e6da55580f1747c7fb72e7a}{meow\-::\-Watch\-Ball$<$ Pixel $>$}, \hyperlink{classmeow_1_1Camera_acb6443a3ce77804575ec55209b3a1960}{meow\-::\-Camera$<$ Pixel $>$}, \hyperlink{classmeow_1_1FeaturePoint_a54a0ca59d340d0bcd969609a0682d2d9}{meow\-::\-Feature\-Point$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1FeaturePointsMatch__K__Match_acbdc25595aeb8280c11543fec230e1a6}{meow\-::\-Feature\-Points\-Match\-\_\-\-K\-\_\-\-Match$<$ Scalar, Description $>$}, \hyperlink{classmeow_1_1ObjArray_a089627fcba2e80760993e3aff1705a70}{meow\-::\-Obj\-Array$<$ T $>$}, \hyperlink{classmeow_1_1ObjDictionary_a2393452e9533fab679565068545f109c}{meow\-::\-Obj\-Dictionary$<$ Key, Value $>$}, \hyperlink{classmeow_1_1ObjType_af0adbddc5a4ef305c2637b6694355944}{meow\-::\-Obj\-Type$<$ Type, Reader\-Writer $>$}, and \hyperlink{classmeow_1_1ObjProperties_a7ebb7d21a575adbf9cbed10db807c6b6}{meow\-::\-Obj\-Properties$<$ S\-I\-D $>$}.
diff --git a/doc/latex/classmeow_1_1ObjDictionary.pdf b/doc/latex/classmeow_1_1ObjDictionary.pdf
index f37d2ad..a30674b 100644
--- a/doc/latex/classmeow_1_1ObjDictionary.pdf
+++ b/doc/latex/classmeow_1_1ObjDictionary.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1ObjDictionary.tex b/doc/latex/classmeow_1_1ObjDictionary.tex
index be35b3f..77a372c 100644
--- a/doc/latex/classmeow_1_1ObjDictionary.tex
+++ b/doc/latex/classmeow_1_1ObjDictionary.tex
@@ -56,17 +56,17 @@ void \hyperlink{classmeow_1_1ObjDictionary_a9784fbd0eaab219216abdcba4f326ead}{in
Value \& \hyperlink{classmeow_1_1ObjDictionary_ad22d7c7dc4d35417e9657eb88ca0dfbb}{operator\mbox{[}$\,$\mbox{]}} (Key const \&k)
\item
bool \hyperlink{classmeow_1_1ObjDictionary_a2393452e9533fab679565068545f109c}{write} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg) const
-\item
+\begin{DoxyCompactList}\small\item\em 將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1ObjDictionary_a0b1bd9fe09676aca74aec34bf5ea7137}{read} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg)
-\item
+\begin{DoxyCompactList}\small\item\em 將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjDictionary_a14ce0fcedf7619c0b442588e185a7eeb}{create} () const
-\item
+\begin{DoxyCompactList}\small\item\em 回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjDictionary_a8f2e32f6eb11904c2547fae0ff9ab3d6}{copy\-From} (\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} const $\ast$b)
-\item
+\begin{DoxyCompactList}\small\item\em 複製, 預設使用operator= \end{DoxyCompactList}\item
char const $\ast$ \hyperlink{classmeow_1_1ObjDictionary_aee3a1722f6061987a242b9b33e5fcc64}{ctype} () const
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳這個class的type name \end{DoxyCompactList}\item
std\-::string \hyperlink{classmeow_1_1ObjDictionary_af5114823fcc2476aa45a965e4af66d6c}{type} () const
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳這個class的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}
@@ -135,6 +135,18 @@ cathook
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjDictionary_a8f2e32f6eb11904c2547fae0ff9ab3d6}
+複製, 預設使用operator=
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em b} & 資料來源 \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily this}
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb528619}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjDictionary_a14ce0fcedf7619c0b442588e185a7eeb}{\index{meow\-::\-Obj\-Dictionary@{meow\-::\-Obj\-Dictionary}!create@{create}}
@@ -146,6 +158,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb52
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjDictionary_a14ce0fcedf7619c0b442588e185a7eeb}
+回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L}
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjDictionary_aee3a1722f6061987a242b9b33e5fcc64}{\index{meow\-::\-Obj\-Dictionary@{meow\-::\-Obj\-Dictionary}!ctype@{ctype}}
@@ -157,6 +173,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjDictionary_aee3a1722f6061987a242b9b33e5fcc64}
+用\-C-\/style string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjDictionary_afedaaaf1ed8b066a43d8e12081f6c878}{\index{meow\-::\-Obj\-Dictionary@{meow\-::\-Obj\-Dictionary}!empty@{empty}}
@@ -234,6 +254,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjDictionary_a0b1bd9fe09676aca74aec34bf5ea7137}
+將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjDictionary_ab0a4c64950a5a89012a913202fac027b}{\index{meow\-::\-Obj\-Dictionary@{meow\-::\-Obj\-Dictionary}!reference\-From@{reference\-From}}
@@ -259,6 +295,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524b
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjDictionary_af5114823fcc2476aa45a965e4af66d6c}
+用std\-::string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjDictionary_a2393452e9533fab679565068545f109c}{\index{meow\-::\-Obj\-Dictionary@{meow\-::\-Obj\-Dictionary}!write@{write}}
@@ -272,6 +312,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjDictionary_a2393452e9533fab679565068545f109c}
+將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{meow\-::\-Obj\-Base}.
diff --git a/doc/latex/classmeow_1_1ObjProperties.pdf b/doc/latex/classmeow_1_1ObjProperties.pdf
index 963a299..e0c9ffc 100644
--- a/doc/latex/classmeow_1_1ObjProperties.pdf
+++ b/doc/latex/classmeow_1_1ObjProperties.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1ObjProperties.tex b/doc/latex/classmeow_1_1ObjProperties.tex
index de8e6d5..5a21a77 100644
--- a/doc/latex/classmeow_1_1ObjProperties.tex
+++ b/doc/latex/classmeow_1_1ObjProperties.tex
@@ -44,17 +44,17 @@ bool \hyperlink{classmeow_1_1ObjProperties_aec0a1bc70d7cf33b54a1c951d5cdab23}{pr
\hyperlink{classmeow_1_1ObjProperties}{Obj\-Properties} \& \hyperlink{classmeow_1_1ObjProperties_af14e8afbd6807b61429d4f84291d6cee}{properties} (\hyperlink{classmeow_1_1ObjProperties}{Obj\-Properties} const \&p)
\item
bool \hyperlink{classmeow_1_1ObjProperties_a7ebb7d21a575adbf9cbed10db807c6b6}{write} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg) const
-\item
+\begin{DoxyCompactList}\small\item\em 將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1ObjProperties_a4d7d0978d10735798e76e707ee9faa5a}{read} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg)
-\item
+\begin{DoxyCompactList}\small\item\em 將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjProperties_a3345d121cc8a6b25baad2cbd80d23164}{create} () const
-\item
+\begin{DoxyCompactList}\small\item\em 回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjProperties_a4bc4f097d783426457a784a39266ba52}{copy\-From} (\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} const $\ast$b)
-\item
+\begin{DoxyCompactList}\small\item\em 複製, 預設使用operator= \end{DoxyCompactList}\item
char const $\ast$ \hyperlink{classmeow_1_1ObjProperties_a55ee94dd2d564eaee8250ed517b6779a}{ctype} () const
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳這個class的type name \end{DoxyCompactList}\item
std\-::string \hyperlink{classmeow_1_1ObjProperties_a6283d69f9c6430c3b2601d7f0267bb84}{type} () const
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳這個class的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}
@@ -97,6 +97,18 @@ std\-::string \hyperlink{classmeow_1_1ObjProperties_a6283d69f9c6430c3b2601d7f026
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classmeow_1_1ObjProperties_a4bc4f097d783426457a784a39266ba52}
+複製, 預設使用operator=
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em b} & 資料來源 \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily this}
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb528619}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjProperties_a3345d121cc8a6b25baad2cbd80d23164}{\index{meow\-::\-Obj\-Properties@{meow\-::\-Obj\-Properties}!create@{create}}
@@ -108,6 +120,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb52
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classmeow_1_1ObjProperties_a3345d121cc8a6b25baad2cbd80d23164}
+回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L}
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjProperties_a55ee94dd2d564eaee8250ed517b6779a}{\index{meow\-::\-Obj\-Properties@{meow\-::\-Obj\-Properties}!ctype@{ctype}}
@@ -119,6 +135,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classmeow_1_1ObjProperties_a55ee94dd2d564eaee8250ed517b6779a}
+用\-C-\/style string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjProperties_a43ce997788ca81603e881a22285fd307}{\index{meow\-::\-Obj\-Properties@{meow\-::\-Obj\-Properties}!properties@{properties}}
@@ -197,6 +217,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classmeow_1_1ObjProperties_a4d7d0978d10735798e76e707ee9faa5a}
+將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjProperties_a6283d69f9c6430c3b2601d7f0267bb84}{\index{meow\-::\-Obj\-Properties@{meow\-::\-Obj\-Properties}!type@{type}}
@@ -208,6 +244,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524b
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classmeow_1_1ObjProperties_a6283d69f9c6430c3b2601d7f0267bb84}
+用std\-::string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjProperties_a7ebb7d21a575adbf9cbed10db807c6b6}{\index{meow\-::\-Obj\-Properties@{meow\-::\-Obj\-Properties}!write@{write}}
@@ -221,6 +261,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classmeow_1_1ObjProperties_a7ebb7d21a575adbf9cbed10db807c6b6}
+將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{meow\-::\-Obj\-Base}.
diff --git a/doc/latex/classmeow_1_1ObjType.pdf b/doc/latex/classmeow_1_1ObjType.pdf
index 8146f45..6b41550 100644
--- a/doc/latex/classmeow_1_1ObjType.pdf
+++ b/doc/latex/classmeow_1_1ObjType.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1ObjType.tex b/doc/latex/classmeow_1_1ObjType.tex
index 99ac640..383f007 100644
--- a/doc/latex/classmeow_1_1ObjType.tex
+++ b/doc/latex/classmeow_1_1ObjType.tex
@@ -21,10 +21,10 @@ Inheritance diagram for meow\-:\-:Obj\-Type$<$ Type, Reader\-Writer $>$\-:\begin
\item
\hyperlink{classmeow_1_1ObjType_a6a625052a5579e4897a95e9ca6663136}{Obj\-Type} ()
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item
-\hyperlink{classmeow_1_1ObjType_a1b2ab2b0b31756ed1e1a011f6e50c993}{Obj\-Type} (\hyperlink{classmeow_1_1ObjType}{Obj\-Type} const \&a)
-\begin{DoxyCompactList}\small\item\em constructor, 並且copy資料 \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjType_afd125762822efc8ff890479bac6fafe4}{Oby\-Type} (Type const \&t)
\begin{DoxyCompactList}\small\item\em constructor, 並且給值 \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1ObjType_a1b2ab2b0b31756ed1e1a011f6e50c993}{Obj\-Type} (\hyperlink{classmeow_1_1ObjType}{Obj\-Type} const \&a)
+\begin{DoxyCompactList}\small\item\em constructor, 並且copy資料 \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjType_ac703cec17ecfe6869a016c0ff072918c}{$\sim$\-Obj\-Type} ()
\item
\hyperlink{classmeow_1_1ObjType}{Obj\-Type} \& \hyperlink{classmeow_1_1ObjType_a9deb0425763909a5b74aca7bd0c116f4}{copy\-From} (\hyperlink{classmeow_1_1ObjType}{Obj\-Type} const \&a)
@@ -42,17 +42,17 @@ Type const \& \hyperlink{classmeow_1_1ObjType_a99d0180d4480c6fd46841e09c5519d8a}
Type \& \hyperlink{classmeow_1_1ObjType_afc34507295cf5bdbb1b5fd22c1c43f9a}{operator()} ()
\item
bool \hyperlink{classmeow_1_1ObjType_af0adbddc5a4ef305c2637b6694355944}{write} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg) const
-\item
+\begin{DoxyCompactList}\small\item\em 將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1ObjType_a8ff33aabcb80ffc2d870b6ce73a6d4fe}{read} (F\-I\-L\-E $\ast$f, bool bin, unsigned \hyperlink{classint}{int} fg)
-\item
+\begin{DoxyCompactList}\small\item\em 將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjType_a19f8291125626675d15b4394283b8180}{create} () const
-\item
+\begin{DoxyCompactList}\small\item\em 回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L} \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} $\ast$ \hyperlink{classmeow_1_1ObjType_a392c841c8012ebd9a62f514a74e4b535}{copy\-From} (\hyperlink{classmeow_1_1ObjBase}{Obj\-Base} const $\ast$b)
-\item
+\begin{DoxyCompactList}\small\item\em 複製, 預設使用operator= \end{DoxyCompactList}\item
char const $\ast$ \hyperlink{classmeow_1_1ObjType_ae7d34cb241aa7d74c9c52918c98dab49}{ctype} () const
-\item
+\begin{DoxyCompactList}\small\item\em 用\-C-\/style string回傳這個class的type name \end{DoxyCompactList}\item
std\-::string \hyperlink{classmeow_1_1ObjType_afaa74a571889ea5281ab3de5636f7e0f}{type} () const
-\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em 用std\-::string回傳這個class的type name \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}
@@ -122,6 +122,18 @@ constructor, 並且copy資料
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjType_a392c841c8012ebd9a62f514a74e4b535}
+複製, 預設使用operator=
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em b} & 資料來源 \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily this}
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb528619}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjType_a19f8291125626675d15b4394283b8180}{\index{meow\-::\-Obj\-Type@{meow\-::\-Obj\-Type}!create@{create}}
@@ -133,6 +145,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a79725f50866832762db87184eb52
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjType_a19f8291125626675d15b4394283b8180}
+回傳一個new出來的物件, 預設implement為直接回傳 {\ttfamily N\-U\-L\-L}
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214b57c}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjType_ae7d34cb241aa7d74c9c52918c98dab49}{\index{meow\-::\-Obj\-Type@{meow\-::\-Obj\-Type}!ctype@{ctype}}
@@ -144,6 +160,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_ac9114e6917bca03b8f3c89694214
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjType_ae7d34cb241aa7d74c9c52918c98dab49}
+用\-C-\/style string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4aae58e8005739abe6d091d8b55a21e8}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjType_a0eac1bd069ebdde20f422ef6a5ffb7cb}{\index{meow\-::\-Obj\-Type@{meow\-::\-Obj\-Type}!modify@{modify}}
@@ -196,6 +216,22 @@ constructor, 並且給值
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjType_a8ff33aabcb80ffc2d870b6ce73a6d4fe}
+將物件從檔案讀出, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524bfc34}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjType_a14617b585e4b852ab63321ad0af076e7}{\index{meow\-::\-Obj\-Type@{meow\-::\-Obj\-Type}!reference\-From@{reference\-From}}
@@ -214,6 +250,10 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a4c1f5cb4b05559197148a8f6524b
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjType_afaa74a571889ea5281ab3de5636f7e0f}
+用std\-::string回傳這個class的type name
+
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908ba72}{meow\-::\-Obj\-Base}.
\hypertarget{classmeow_1_1ObjType_af0adbddc5a4ef305c2637b6694355944}{\index{meow\-::\-Obj\-Type@{meow\-::\-Obj\-Type}!write@{write}}
@@ -227,6 +267,22 @@ Reimplemented from \hyperlink{classmeow_1_1ObjBase_a63a4911bb073281820fe9b7a9908
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1ObjType_af0adbddc5a4ef305c2637b6694355944}
+將物件寫入檔案, 預設implement為直接回傳 {\ttfamily false}
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em f} & 檔案 \\
+\hline
+\mbox{\tt in} & {\em bin} & 是否為binary模式 \\
+\hline
+\mbox{\tt in} & {\em fg} & 使用者自訂的argument \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+成功或失敗
+\end{DoxyReturn}
+
+
Reimplemented from \hyperlink{classmeow_1_1ObjBase_ae9e9e5c664b7a92e54a3616983f39ba8}{meow\-::\-Obj\-Base}.
diff --git a/doc/latex/classmeow_1_1Photo.pdf b/doc/latex/classmeow_1_1Photo.pdf
index 7efddd1..612f443 100644
--- a/doc/latex/classmeow_1_1Photo.pdf
+++ b/doc/latex/classmeow_1_1Photo.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1PhotoProjection.pdf b/doc/latex/classmeow_1_1PhotoProjection.pdf
index 91caccd..6be9307 100644
--- a/doc/latex/classmeow_1_1PhotoProjection.pdf
+++ b/doc/latex/classmeow_1_1PhotoProjection.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1Pipeline.tex b/doc/latex/classmeow_1_1Pipeline.tex
new file mode 100644
index 0000000..2e4f7e0
--- /dev/null
+++ b/doc/latex/classmeow_1_1Pipeline.tex
@@ -0,0 +1,349 @@
+\hypertarget{classmeow_1_1Pipeline}{\section{meow\-:\-:Pipeline$<$ Input, Output, Medium $>$ Class Template Reference}
+\label{classmeow_1_1Pipeline}\index{meow\-::\-Pipeline$<$ Input, Output, Medium $>$@{meow\-::\-Pipeline$<$ Input, Output, Medium $>$}}
+}
+
+
+{\bfseries pipeline}
+
+
+
+
+{\ttfamily \#include \char`\"{}Pipeline.\-h\char`\"{}}
+
+\subsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+virtual \hyperlink{classmeow_1_1Pipeline_a3cffd384d9b8969122adda3b9087352a}{$\sim$\-Pipeline} ()
+\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item
+virtual Output \hyperlink{classmeow_1_1Pipeline_a41613bf7d08d61043b8791665bdb2395}{go\-Through} (Input const \&in) const =0
+\begin{DoxyCompactList}\small\item\em go \end{DoxyCompactList}\item
+virtual bool \hyperlink{classmeow_1_1Pipeline_a2f135be41a794fe8c6ac88e4b954feb8}{inversable} ()
+\begin{DoxyCompactList}\small\item\em return whether this pipeline can reverse \end{DoxyCompactList}\item
+virtual Input \hyperlink{classmeow_1_1Pipeline_ad8a007463d13af873d9ab6e5926be374}{go\-Through\-Inv} (Output const \&in) const
+\begin{DoxyCompactList}\small\item\em reverse go \end{DoxyCompactList}\item
+virtual bool \hyperlink{classmeow_1_1Pipeline_ad68f17ba679781f8d8996de3f742584c}{front\-Add} (Medium const $\ast$ptr, bool auto\-\_\-delete)
+\begin{DoxyCompactList}\small\item\em add a medium to the front of this pipeline \end{DoxyCompactList}\item
+virtual bool \hyperlink{classmeow_1_1Pipeline_a1bc72f0b75abb48b8c5212813b8dc8f4}{back\-Add} (Medium const $\ast$ptr, bool auto\-\_\-delete)
+\begin{DoxyCompactList}\small\item\em add a medium to the back of this pipeline \end{DoxyCompactList}\item
+virtual bool \hyperlink{classmeow_1_1Pipeline_a6ce35017ddf9c669a095290a3ebed8c5}{front\-Del} ()
+\begin{DoxyCompactList}\small\item\em remove a medium from the front of this pipeline \end{DoxyCompactList}\item
+virtual bool \hyperlink{classmeow_1_1Pipeline_a8263e4d001096fb013fea1465d5fa4d5}{back\-Del} ()
+\begin{DoxyCompactList}\small\item\em add a medium from the back of this pipeline \end{DoxyCompactList}\item
+virtual size\-\_\-t \hyperlink{classmeow_1_1Pipeline_a0ae87626df1cef4c04a11af40c6765b1}{size} () const
+\begin{DoxyCompactList}\small\item\em return how many medium in this pipeline \end{DoxyCompactList}\item
+virtual bool \hyperlink{classmeow_1_1Pipeline_ade80a603d4ce3d9761ec57a2087749c7}{empty} () const
+\begin{DoxyCompactList}\small\item\em same as (\hyperlink{classmeow_1_1Pipeline_a0ae87626df1cef4c04a11af40c6765b1}{size()} == 0) \end{DoxyCompactList}\item
+virtual Medium const $\ast$ \hyperlink{classmeow_1_1Pipeline_a68341b2e6f51ec85d585f1f5fc658da9}{first} () const
+\begin{DoxyCompactList}\small\item\em get the const-\/pointer of the first medium \end{DoxyCompactList}\item
+virtual Medium const $\ast$ \hyperlink{classmeow_1_1Pipeline_a46fba2a5d88bf742223732e523e7d234}{last} () const
+\begin{DoxyCompactList}\small\item\em get the const-\/pointer of the last medium \end{DoxyCompactList}\end{DoxyCompactItemize}
+\subsection*{Protected Types}
+\begin{DoxyCompactItemize}
+\item
+typedef std\-::list$<$ Medium \\*
+const $\ast$ $>$\-::const\-\_\-iterator \hyperlink{classmeow_1_1Pipeline_ab5c5d983ab507579bb2958339caa6356}{Medium\-Pointer\-Iterator\-K}
+\end{DoxyCompactItemize}
+\subsection*{Protected Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{classmeow_1_1Pipeline_ad6ff2086fe68c50f526739f3d781bab4}{Pipeline} ()
+\begin{DoxyCompactList}\small\item\em constructor with empty contain \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Pipeline_a9acf9a46f19f097629ce2eeb690a23d7}{Pipeline} (\hyperlink{classmeow_1_1Pipeline}{Pipeline} const \&p)
+\begin{DoxyCompactList}\small\item\em copy constructor \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Pipeline}{Pipeline} \& \hyperlink{classmeow_1_1Pipeline_a146677fa11b0b47af3000d4b0a72fc47}{copy\-From} (\hyperlink{classmeow_1_1Pipeline}{Pipeline} const \&p)
+\begin{DoxyCompactList}\small\item\em copy contain from gived pipeline \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Pipeline}{Pipeline} \& \hyperlink{classmeow_1_1Pipeline_a43280db4560580c0b1618810caab4b02}{reference\-From} (\hyperlink{classmeow_1_1Pipeline}{Pipeline} const \&p)
+\begin{DoxyCompactList}\small\item\em reference from gived pipeline \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Pipeline}{Pipeline} \& \hyperlink{classmeow_1_1Pipeline_a107cc18a159ceb2fcde495363c55047e}{operator=} (\hyperlink{classmeow_1_1Pipeline}{Pipeline} const \&p)
+\begin{DoxyCompactList}\small\item\em same as {\ttfamily copy\-From(p)} \end{DoxyCompactList}\item
+std\-::list$<$ Medium const $\ast$ $>$ const \& \hyperlink{classmeow_1_1Pipeline_a8425f0a6a4dff7b3bd54f5a0323839c3}{pipe} () const
+\begin{DoxyCompactList}\small\item\em return const-\/reference of the pipe list \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\subsection{Detailed Description}
+\subsubsection*{template$<$class Input, class Output, class Medium$>$class meow\-::\-Pipeline$<$ Input, Output, Medium $>$}
+
+{\bfseries pipeline}
+
+\subsection{Member Typedef Documentation}
+\hypertarget{classmeow_1_1Pipeline_ab5c5d983ab507579bb2958339caa6356}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!Medium\-Pointer\-Iterator\-K@{Medium\-Pointer\-Iterator\-K}}
+\index{Medium\-Pointer\-Iterator\-K@{Medium\-Pointer\-Iterator\-K}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{Medium\-Pointer\-Iterator\-K}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ typedef std\-::list$<$Medium const$\ast$$>$\-::const\-\_\-iterator {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::{\bf Medium\-Pointer\-Iterator\-K}\hspace{0.3cm}{\ttfamily [protected]}}}\label{classmeow_1_1Pipeline_ab5c5d983ab507579bb2958339caa6356}
+
+
+\subsection{Constructor \& Destructor Documentation}
+\hypertarget{classmeow_1_1Pipeline_ad6ff2086fe68c50f526739f3d781bab4}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!Pipeline@{Pipeline}}
+\index{Pipeline@{Pipeline}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{Pipeline}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::{\bf Pipeline} (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{classmeow_1_1Pipeline_ad6ff2086fe68c50f526739f3d781bab4}
+
+
+constructor with empty contain
+
+\hypertarget{classmeow_1_1Pipeline_a9acf9a46f19f097629ce2eeb690a23d7}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!Pipeline@{Pipeline}}
+\index{Pipeline@{Pipeline}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{Pipeline}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::{\bf Pipeline} (
+\begin{DoxyParamCaption}
+\item[{{\bf Pipeline}$<$ Input, Output, Medium $>$ const \&}]{p}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{classmeow_1_1Pipeline_a9acf9a46f19f097629ce2eeb690a23d7}
+
+
+copy constructor
+
+\hypertarget{classmeow_1_1Pipeline_a3cffd384d9b8969122adda3b9087352a}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!$\sim$\-Pipeline@{$\sim$\-Pipeline}}
+\index{$\sim$\-Pipeline@{$\sim$\-Pipeline}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{$\sim$\-Pipeline}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::$\sim${\bf Pipeline} (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a3cffd384d9b8969122adda3b9087352a}
+
+
+destructor
+
+
+
+\subsection{Member Function Documentation}
+\hypertarget{classmeow_1_1Pipeline_a1bc72f0b75abb48b8c5212813b8dc8f4}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!back\-Add@{back\-Add}}
+\index{back\-Add@{back\-Add}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{back\-Add}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::back\-Add (
+\begin{DoxyParamCaption}
+\item[{Medium const $\ast$}]{ptr, }
+\item[{bool}]{auto\-\_\-delete}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a1bc72f0b75abb48b8c5212813b8dc8f4}
+
+
+add a medium to the back of this pipeline
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em ptr} & pointer to the medium \\
+\hline
+\mbox{\tt in} & {\em auto\-\_\-delete} & should I delete this pointer when destructor \\
+\hline
+\end{DoxyParams}
+
+
+Reimplemented in \hyperlink{classmeow_1_1TransformatePipeline_a3f1ce65ee36ddc970c7ef851e805d5bb}{meow\-::\-Transformate\-Pipeline$<$ Scalar $>$}.
+
+\hypertarget{classmeow_1_1Pipeline_a8263e4d001096fb013fea1465d5fa4d5}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!back\-Del@{back\-Del}}
+\index{back\-Del@{back\-Del}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{back\-Del}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::back\-Del (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a8263e4d001096fb013fea1465d5fa4d5}
+
+
+add a medium from the back of this pipeline
+
+\begin{DoxyReturn}{Returns}
+successful or not
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1Pipeline_a146677fa11b0b47af3000d4b0a72fc47}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!copy\-From@{copy\-From}}
+\index{copy\-From@{copy\-From}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{copy\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf Pipeline}\& {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::copy\-From (
+\begin{DoxyParamCaption}
+\item[{{\bf Pipeline}$<$ Input, Output, Medium $>$ const \&}]{p}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{classmeow_1_1Pipeline_a146677fa11b0b47af3000d4b0a72fc47}
+
+
+copy contain from gived pipeline
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em p} & gived pipeline \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily $\ast$this}
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1Pipeline_ade80a603d4ce3d9761ec57a2087749c7}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!empty@{empty}}
+\index{empty@{empty}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{empty}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::empty (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_ade80a603d4ce3d9761ec57a2087749c7}
+
+
+same as (\hyperlink{classmeow_1_1Pipeline_a0ae87626df1cef4c04a11af40c6765b1}{size()} == 0)
+
+\hypertarget{classmeow_1_1Pipeline_a68341b2e6f51ec85d585f1f5fc658da9}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!first@{first}}
+\index{first@{first}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{first}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual Medium const$\ast$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::first (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a68341b2e6f51ec85d585f1f5fc658da9}
+
+
+get the const-\/pointer of the first medium
+
+\hypertarget{classmeow_1_1Pipeline_ad68f17ba679781f8d8996de3f742584c}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!front\-Add@{front\-Add}}
+\index{front\-Add@{front\-Add}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{front\-Add}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::front\-Add (
+\begin{DoxyParamCaption}
+\item[{Medium const $\ast$}]{ptr, }
+\item[{bool}]{auto\-\_\-delete}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_ad68f17ba679781f8d8996de3f742584c}
+
+
+add a medium to the front of this pipeline
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em ptr} & pointer to the medium \\
+\hline
+\mbox{\tt in} & {\em auto\-\_\-delete} & should I delete this pointer when destructor \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+successful or not
+\end{DoxyReturn}
+
+
+Reimplemented in \hyperlink{classmeow_1_1TransformatePipeline_a9bf648e2cd72cf49c625ba7190d33a1a}{meow\-::\-Transformate\-Pipeline$<$ Scalar $>$}.
+
+\hypertarget{classmeow_1_1Pipeline_a6ce35017ddf9c669a095290a3ebed8c5}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!front\-Del@{front\-Del}}
+\index{front\-Del@{front\-Del}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{front\-Del}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::front\-Del (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a6ce35017ddf9c669a095290a3ebed8c5}
+
+
+remove a medium from the front of this pipeline
+
+\begin{DoxyReturn}{Returns}
+successful or not
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1Pipeline_a41613bf7d08d61043b8791665bdb2395}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!go\-Through@{go\-Through}}
+\index{go\-Through@{go\-Through}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{go\-Through}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual Output {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::go\-Through (
+\begin{DoxyParamCaption}
+\item[{Input const \&}]{in}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classmeow_1_1Pipeline_a41613bf7d08d61043b8791665bdb2395}
+
+
+go
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em in} & input data \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+output data
+\end{DoxyReturn}
+
+
+Implemented in \hyperlink{classmeow_1_1TransformatePipeline_a32e82edbed6cebb49b9ebdf9addd08bb}{meow\-::\-Transformate\-Pipeline$<$ Scalar $>$}.
+
+\hypertarget{classmeow_1_1Pipeline_ad8a007463d13af873d9ab6e5926be374}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!go\-Through\-Inv@{go\-Through\-Inv}}
+\index{go\-Through\-Inv@{go\-Through\-Inv}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{go\-Through\-Inv}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual Input {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::go\-Through\-Inv (
+\begin{DoxyParamCaption}
+\item[{Output const \&}]{in}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_ad8a007463d13af873d9ab6e5926be374}
+
+
+reverse go
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em in} & input data \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+output data
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1Pipeline_a2f135be41a794fe8c6ac88e4b954feb8}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!inversable@{inversable}}
+\index{inversable@{inversable}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{inversable}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::inversable (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a2f135be41a794fe8c6ac88e4b954feb8}
+
+
+return whether this pipeline can reverse
+
+Default is unable \hypertarget{classmeow_1_1Pipeline_a46fba2a5d88bf742223732e523e7d234}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!last@{last}}
+\index{last@{last}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{last}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual Medium const$\ast$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::last (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a46fba2a5d88bf742223732e523e7d234}
+
+
+get the const-\/pointer of the last medium
+
+\hypertarget{classmeow_1_1Pipeline_a107cc18a159ceb2fcde495363c55047e}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!operator=@{operator=}}
+\index{operator=@{operator=}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf Pipeline}\& {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::operator= (
+\begin{DoxyParamCaption}
+\item[{{\bf Pipeline}$<$ Input, Output, Medium $>$ const \&}]{p}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{classmeow_1_1Pipeline_a107cc18a159ceb2fcde495363c55047e}
+
+
+same as {\ttfamily copy\-From(p)}
+
+\hypertarget{classmeow_1_1Pipeline_a8425f0a6a4dff7b3bd54f5a0323839c3}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!pipe@{pipe}}
+\index{pipe@{pipe}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{pipe}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ std\-::list$<$Medium const$\ast$$>$ const\& {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::pipe (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{classmeow_1_1Pipeline_a8425f0a6a4dff7b3bd54f5a0323839c3}
+
+
+return const-\/reference of the pipe list
+
+\hypertarget{classmeow_1_1Pipeline_a43280db4560580c0b1618810caab4b02}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!reference\-From@{reference\-From}}
+\index{reference\-From@{reference\-From}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{reference\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf Pipeline}\& {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::reference\-From (
+\begin{DoxyParamCaption}
+\item[{{\bf Pipeline}$<$ Input, Output, Medium $>$ const \&}]{p}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{classmeow_1_1Pipeline_a43280db4560580c0b1618810caab4b02}
+
+
+reference from gived pipeline
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em p} & gived pipeline \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+{\ttfamily $\ast$this}
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1Pipeline_a0ae87626df1cef4c04a11af40c6765b1}{\index{meow\-::\-Pipeline@{meow\-::\-Pipeline}!size@{size}}
+\index{size@{size}!meow::Pipeline@{meow\-::\-Pipeline}}
+\subsubsection[{size}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ virtual size\-\_\-t {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::size (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Pipeline_a0ae87626df1cef4c04a11af40c6765b1}
+
+
+return how many medium in this pipeline
+
+
+
+The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
+\item
+meowpp/\hyperlink{Pipeline_8h}{Pipeline.\-h}\end{DoxyCompactItemize}
diff --git a/doc/latex/classmeow_1_1RGBf__Space.pdf b/doc/latex/classmeow_1_1RGBf__Space.pdf
index c6ce536..6646cb7 100644
--- a/doc/latex/classmeow_1_1RGBf__Space.pdf
+++ b/doc/latex/classmeow_1_1RGBf__Space.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1RGBi__Space.pdf b/doc/latex/classmeow_1_1RGBi__Space.pdf
index 09704d2..0080aab 100644
--- a/doc/latex/classmeow_1_1RGBi__Space.pdf
+++ b/doc/latex/classmeow_1_1RGBi__Space.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1Rotation3D.pdf b/doc/latex/classmeow_1_1Rotation3D.pdf
index e1577e2..6d97e12 100644
--- a/doc/latex/classmeow_1_1Rotation3D.pdf
+++ b/doc/latex/classmeow_1_1Rotation3D.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1Self.tex b/doc/latex/classmeow_1_1Self.tex
index 8ac76bc..5b60f6c 100644
--- a/doc/latex/classmeow_1_1Self.tex
+++ b/doc/latex/classmeow_1_1Self.tex
@@ -10,13 +10,24 @@
{\ttfamily \#include \char`\"{}Self.\-h\char`\"{}}
+\subsection*{Public Types}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8}{Duplicate\-Type} \{ \hyperlink{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730}{C\-O\-P\-Y\-\_\-\-F\-R\-O\-M},
+\hyperlink{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822}{R\-E\-F\-E\-R\-E\-N\-C\-E\-\_\-\-F\-R\-O\-M}
+ \}
+\begin{DoxyCompactList}\small\item\em 複製資料的方法 \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
-\hyperlink{classmeow_1_1Self_a0db7c98f250aeee3b06a49ebe0f16937}{Self} (bool create\-\_\-body)
-\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Self_a6b39fcc4b184809f9aeaeb1c9a0bac2d}{Self} ()
+\begin{DoxyCompactList}\small\item\em constructor, 並宣告一個實體 \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Self_af3220c1e1d7966c6dbaf4ec62f8cbc2f}{Self} (Data const \&d)
+\begin{DoxyCompactList}\small\item\em connstructor, 宣告一個實體, 其中該實體的constructor用copy constructor \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Self_af98a65e83bb96c0860d91a5013b269ef}{Self} (\hyperlink{classmeow_1_1Self}{Self} const \&b, \hyperlink{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8}{Duplicate\-Type} d=\hyperlink{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730}{C\-O\-P\-Y\-\_\-\-F\-R\-O\-M})
+\begin{DoxyCompactList}\small\item\em constructor, 使用給定的\-Self當作init value, 並且可以指定要用 reference還是copy \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Self_a000ede7e217c31401cc0a4b1c6749ee5}{Self} (\hyperlink{classmeow_1_1Self}{Self} const \&b)
-\begin{DoxyCompactList}\small\item\em 不允許copy constructor \end{DoxyCompactList}\item
+\begin{DoxyCompactList}\small\item\em Disallow copy constructor. \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Self_ada16564a03665b10810a6342d61044bc}{$\sim$\-Self} ()
\begin{DoxyCompactList}\small\item\em 解構子 \end{DoxyCompactList}\item
Data const $\ast$ \hyperlink{classmeow_1_1Self_a6063551c3e6ac647500e938ade8fbc99}{operator-\/$>$} () const
@@ -25,10 +36,12 @@ Data $\ast$ \hyperlink{classmeow_1_1Self_ace312355261c68ac7531767939f5c4c2}{oper
\begin{DoxyCompactList}\small\item\em 回傳指向 Data 的指標, 如有需要, 這邊會做資料的duplicate \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Self}{Self} \& \hyperlink{classmeow_1_1Self_a5962339e9ee49312ab770f1119256ca6}{operator()} () const
\begin{DoxyCompactList}\small\item\em 回傳非const型態的自己 \end{DoxyCompactList}\item
-void \hyperlink{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{copy\-From} (\hyperlink{classmeow_1_1Self}{Self} const \&s)
+\hyperlink{classmeow_1_1Self}{Self} const \& \hyperlink{classmeow_1_1Self_a9cd016a38a09f479fe2ed83eb1ebdae2}{copy\-From} (\hyperlink{classmeow_1_1Self}{Self} const \&s)
\begin{DoxyCompactList}\small\item\em 將給定的 {\ttfamily \hyperlink{classmeow_1_1Self}{Self}} 的資料複製到自己這裡 \end{DoxyCompactList}\item
-void \hyperlink{classmeow_1_1Self_a576e99ba0ba6e8263b4d2cfd9238440f}{reference\-From} (\hyperlink{classmeow_1_1Self}{Self} const \&s)
+\hyperlink{classmeow_1_1Self}{Self} const \& \hyperlink{classmeow_1_1Self_a63e1570c927c7fa3b95b71fe978e355d}{reference\-From} (\hyperlink{classmeow_1_1Self}{Self} const \&s)
\begin{DoxyCompactList}\small\item\em 將自己reference 到給定的 {\ttfamily \hyperlink{classmeow_1_1Self}{Self}} \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Self}{Self} const \& \hyperlink{classmeow_1_1Self_ae4256bfc598bb0db76141ffce506806e}{duplicate\-From} (\hyperlink{classmeow_1_1Self}{Self} const \&s, \hyperlink{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8}{Duplicate\-Type} t)
+\begin{DoxyCompactList}\small\item\em 依據給定\-Duplicate\-Type選擇要呼叫copy\-From還是reference\-From \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1Self_ab3671e44693b79e2f987f59652d46ca9}{same} (\hyperlink{classmeow_1_1Self}{Self} const \&s) const
\begin{DoxyCompactList}\small\item\em 比對兩個 {\ttfamily \hyperlink{classmeow_1_1Self}{Self}} 是否指向同一個reference \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1Self_a91098e2218c358470e81d64f35d6491d}{equal} (\hyperlink{classmeow_1_1Self}{Self} const \&s) const
@@ -51,48 +64,38 @@ void \hyperlink{classmeow_1_1Self_af3277e1109c59e5f81549889b344a675}{operator=}
\textcolor{keyword}{private}:
\textcolor{keyword}{struct }Myself \{
\textcolor{keywordtype}{int} data;
- Myself()\{
+ Myself() \{ \textcolor{comment}{// 必要}
data = 0;
\}
+ Myself(Myself \textcolor{keyword}{const}& b): data(b.data) \{ \textcolor{comment}{// 必要, copy constructor}
+ \}
~Myself() \{
\}
- Myself \hyperlink{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{copyFrom}(Myself \textcolor{keyword}{const}& ms)\textcolor{keyword}{ const }\{
- data = ms.data;
+ \textcolor{keywordtype}{bool} operator==(Myself \textcolor{keyword}{const}& b)\textcolor{keyword}{ const }\{ \textcolor{comment}{// 不一定需要(有用到equal()才要)}
+ \textcolor{keywordflow}{return} (data == b.data);
\}
\};
+
Self<Myself> \textcolor{keyword}{const} \textcolor{keyword}{self};
\textcolor{keyword}{public}:
- A(): self(true) \{ \textcolor{comment}{// self(true) 表示要建立實體, 即struct Myself}
- \}
- A(A \textcolor{keyword}{const}& a): self(false) \{ \textcolor{comment}{// for std::swap}
- \hyperlink{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{copyFrom}(a);
- \}
- \textcolor{comment}{// A(A const& a); // disable 模糊用法, 與上者二選一}
- A(A \textcolor{keyword}{const}& a, \textcolor{keywordtype}{bool} reference): self(false) \{
- \textcolor{keywordflow}{if} (reference) \{
- \hyperlink{classmeow_1_1Self_a576e99ba0ba6e8263b4d2cfd9238440f}{referenceFrom}(a);
- \} \textcolor{keywordflow}{else} \{
- \hyperlink{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{copyFrom}(a);
- \}
- \}
- ~A() \{
- \}
+ A(): self() \{ \} \textcolor{comment}{// 預設呼叫Myself()}
+ A(A \textcolor{keyword}{const}& a): self(a.self, \hyperlink{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730}{COPY\_FROM}) \{ \} \textcolor{comment}{// 用Myself(b)做到copyFrom}
+ ~A() \{ \}
\textcolor{keywordtype}{void} setMemeber(\textcolor{keywordtype}{int} k) \{
\textcolor{keyword}{self}()->data = k; \textcolor{comment}{// self()->?? 可以有write權限}
\}
\textcolor{keywordtype}{int} getMemember(\textcolor{keywordtype}{int} wh)\textcolor{keyword}{ const }\{
\textcolor{keywordflow}{return} \textcolor{keyword}{self}->data; \textcolor{comment}{// self->?? 只有const}
\}
- A \hyperlink{classmeow_1_1Self_a576e99ba0ba6e8263b4d2cfd9238440f}{referenceFrom}(A \textcolor{keyword}{const}& a) \{
- \textcolor{keyword}{self}.referenceFrom(a.self);
+ A \hyperlink{classmeow_1_1Self_a63e1570c927c7fa3b95b71fe978e355d}{referenceFrom}(A \textcolor{keyword}{const}& a) \{
+ \textcolor{keyword}{self}.\hyperlink{classmeow_1_1Self_a63e1570c927c7fa3b95b71fe978e355d}{referenceFrom}(a.self);
\}
- A \hyperlink{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{copyFrom}(A \textcolor{keyword}{const}& a) \{
- \textcolor{keyword}{self}.copyFrom(a.self);
+ A \hyperlink{classmeow_1_1Self_a9cd016a38a09f479fe2ed83eb1ebdae2}{copyFrom}(A \textcolor{keyword}{const}& a) \{
+ \textcolor{keyword}{self}.\hyperlink{classmeow_1_1Self_a9cd016a38a09f479fe2ed83eb1ebdae2}{copyFrom}(a.self);
\}
A& \hyperlink{classmeow_1_1Self_af3277e1109c59e5f81549889b344a675}{operator=}(A \textcolor{keyword}{const}& b) \{ \textcolor{comment}{// for std::swap}
- \hyperlink{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{copyFrom}(b);
+ \hyperlink{classmeow_1_1Self_a9cd016a38a09f479fe2ed83eb1ebdae2}{copyFrom}(b);
\}
- A& \hyperlink{classmeow_1_1Self_af3277e1109c59e5f81549889b344a675}{operator=}(A \textcolor{keyword}{const}& b); \textcolor{comment}{// 避免諢亂用法}
\};
\end{DoxyCode}
@@ -105,21 +108,70 @@ cathook
\end{DoxyWarning}
+\subsection{Member Enumeration Documentation}
+\hypertarget{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8}{\index{meow\-::\-Self@{meow\-::\-Self}!Duplicate\-Type@{Duplicate\-Type}}
+\index{Duplicate\-Type@{Duplicate\-Type}!meow::Self@{meow\-::\-Self}}
+\subsubsection[{Duplicate\-Type}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ enum {\bf meow\-::\-Self\-::\-Duplicate\-Type}}}\label{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8}
+
+
+複製資料的方法
+
+\begin{Desc}
+\item[Enumerator]\par
+\begin{description}
+\index{C\-O\-P\-Y\-\_\-\-F\-R\-O\-M@{C\-O\-P\-Y\-\_\-\-F\-R\-O\-M}!meow\-::\-Self@{meow\-::\-Self}}\index{meow\-::\-Self@{meow\-::\-Self}!C\-O\-P\-Y\-\_\-\-F\-R\-O\-M@{C\-O\-P\-Y\-\_\-\-F\-R\-O\-M}}\item[{\em
+\hypertarget{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730}{C\-O\-P\-Y\-\_\-\-F\-R\-O\-M}\label{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8adef1b0d02e1090b1b610a4ea91bd6730}
+}]跟一般的複製一樣 \index{R\-E\-F\-E\-R\-E\-N\-C\-E\-\_\-\-F\-R\-O\-M@{R\-E\-F\-E\-R\-E\-N\-C\-E\-\_\-\-F\-R\-O\-M}!meow\-::\-Self@{meow\-::\-Self}}\index{meow\-::\-Self@{meow\-::\-Self}!R\-E\-F\-E\-R\-E\-N\-C\-E\-\_\-\-F\-R\-O\-M@{R\-E\-F\-E\-R\-E\-N\-C\-E\-\_\-\-F\-R\-O\-M}}\item[{\em
+\hypertarget{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822}{R\-E\-F\-E\-R\-E\-N\-C\-E\-\_\-\-F\-R\-O\-M}\label{classmeow_1_1Self_aa7d169e9d20d590f3e571206084797f8a40c8a3eba568e04a5ce09ee0fa881822}
+}]參照, 執行完兩個\-Self會完全等效 \end{description}
+\end{Desc}
+
+
\subsection{Constructor \& Destructor Documentation}
-\hypertarget{classmeow_1_1Self_a0db7c98f250aeee3b06a49ebe0f16937}{\index{meow\-::\-Self@{meow\-::\-Self}!Self@{Self}}
+\hypertarget{classmeow_1_1Self_a6b39fcc4b184809f9aeaeb1c9a0bac2d}{\index{meow\-::\-Self@{meow\-::\-Self}!Self@{Self}}
+\index{Self@{Self}!meow::Self@{meow\-::\-Self}}
+\subsubsection[{Self}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ {\bf meow\-::\-Self}$<$ Data $>$\-::{\bf Self} (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_a6b39fcc4b184809f9aeaeb1c9a0bac2d}
+
+
+constructor, 並宣告一個實體
+
+\hypertarget{classmeow_1_1Self_af3220c1e1d7966c6dbaf4ec62f8cbc2f}{\index{meow\-::\-Self@{meow\-::\-Self}!Self@{Self}}
+\index{Self@{Self}!meow::Self@{meow\-::\-Self}}
+\subsubsection[{Self}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ {\bf meow\-::\-Self}$<$ Data $>$\-::{\bf Self} (
+\begin{DoxyParamCaption}
+\item[{Data const \&}]{d}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_af3220c1e1d7966c6dbaf4ec62f8cbc2f}
+
+
+connstructor, 宣告一個實體, 其中該實體的constructor用copy constructor
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em d} & Inital data \\
+\hline
+\end{DoxyParams}
+\hypertarget{classmeow_1_1Self_af98a65e83bb96c0860d91a5013b269ef}{\index{meow\-::\-Self@{meow\-::\-Self}!Self@{Self}}
\index{Self@{Self}!meow::Self@{meow\-::\-Self}}
\subsubsection[{Self}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ {\bf meow\-::\-Self}$<$ Data $>$\-::{\bf Self} (
\begin{DoxyParamCaption}
-\item[{bool}]{create\-\_\-body}
+\item[{{\bf Self}$<$ Data $>$ const \&}]{b, }
+\item[{{\bf Duplicate\-Type}}]{d = {\ttfamily {\bf C\-O\-P\-Y\-\_\-\-F\-R\-O\-M}}}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_a0db7c98f250aeee3b06a49ebe0f16937}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_af98a65e83bb96c0860d91a5013b269ef}
-constructor
+constructor, 使用給定的\-Self當作init value, 並且可以指定要用 reference還是copy
\begin{DoxyParams}[1]{Parameters}
-\mbox{\tt in} & {\em create\-\_\-body} & 是否要new一個實體資料 (如果constructor完, 馬上就要 {\ttfamily \hyperlink{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{copy\-From()}} , 或是 {\ttfamily \hyperlink{classmeow_1_1Self_a576e99ba0ba6e8263b4d2cfd9238440f}{reference\-From()}} 的話 不太需要 new一個實體, 否則基本上都要 \\
+\mbox{\tt in} & {\em b} & 給定的\-Self \\
+\hline
+\mbox{\tt in} & {\em d} & 指定要用copy還是reference \\
\hline
\end{DoxyParams}
\hypertarget{classmeow_1_1Self_a000ede7e217c31401cc0a4b1c6749ee5}{\index{meow\-::\-Self@{meow\-::\-Self}!Self@{Self}}
@@ -131,7 +183,7 @@ constructor
)}}\label{classmeow_1_1Self_a000ede7e217c31401cc0a4b1c6749ee5}
-不允許copy constructor
+Disallow copy constructor.
\hypertarget{classmeow_1_1Self_ada16564a03665b10810a6342d61044bc}{\index{meow\-::\-Self@{meow\-::\-Self}!$\sim$\-Self@{$\sim$\-Self}}
\index{$\sim$\-Self@{$\sim$\-Self}!meow::Self@{meow\-::\-Self}}
@@ -147,13 +199,13 @@ constructor
\subsection{Member Function Documentation}
-\hypertarget{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}{\index{meow\-::\-Self@{meow\-::\-Self}!copy\-From@{copy\-From}}
+\hypertarget{classmeow_1_1Self_a9cd016a38a09f479fe2ed83eb1ebdae2}{\index{meow\-::\-Self@{meow\-::\-Self}!copy\-From@{copy\-From}}
\index{copy\-From@{copy\-From}!meow::Self@{meow\-::\-Self}}
-\subsubsection[{copy\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ void {\bf meow\-::\-Self}$<$ Data $>$\-::copy\-From (
+\subsubsection[{copy\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ {\bf Self} const\& {\bf meow\-::\-Self}$<$ Data $>$\-::copy\-From (
\begin{DoxyParamCaption}
\item[{{\bf Self}$<$ Data $>$ const \&}]{s}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_a7ae7da730705bf2330a259308e5a6828}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_a9cd016a38a09f479fe2ed83eb1ebdae2}
將給定的 {\ttfamily \hyperlink{classmeow_1_1Self}{Self}} 的資料複製到自己這裡
@@ -164,11 +216,33 @@ constructor
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
-無
+$\ast$this
\end{DoxyReturn}
\begin{DoxyNote}{Note}
與reference的差別是, copy之後若該給定的 {\ttfamily \hyperlink{classmeow_1_1Self}{Self}} 有資料修改, this 這邊 {\bfseries 不會} 被改到
\end{DoxyNote}
+\hypertarget{classmeow_1_1Self_ae4256bfc598bb0db76141ffce506806e}{\index{meow\-::\-Self@{meow\-::\-Self}!duplicate\-From@{duplicate\-From}}
+\index{duplicate\-From@{duplicate\-From}!meow::Self@{meow\-::\-Self}}
+\subsubsection[{duplicate\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ {\bf Self} const\& {\bf meow\-::\-Self}$<$ Data $>$\-::duplicate\-From (
+\begin{DoxyParamCaption}
+\item[{{\bf Self}$<$ Data $>$ const \&}]{s, }
+\item[{{\bf Duplicate\-Type}}]{t}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_ae4256bfc598bb0db76141ffce506806e}
+
+
+依據給定\-Duplicate\-Type選擇要呼叫copy\-From還是reference\-From
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em s} & 給定的 {\ttfamily \hyperlink{classmeow_1_1Self}{Self}} \\
+\hline
+\mbox{\tt in} & {\em t} & 給定的 {\ttfamily Duplicate\-Type} \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+$\ast$this
+\end{DoxyReturn}
\hypertarget{classmeow_1_1Self_a91098e2218c358470e81d64f35d6491d}{\index{meow\-::\-Self@{meow\-::\-Self}!equal@{equal}}
\index{equal@{equal}!meow::Self@{meow\-::\-Self}}
\subsubsection[{equal}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ bool {\bf meow\-::\-Self}$<$ Data $>$\-::equal (
@@ -235,13 +309,13 @@ constructor
將 {\ttfamily operator=} 給disable掉
-\hypertarget{classmeow_1_1Self_a576e99ba0ba6e8263b4d2cfd9238440f}{\index{meow\-::\-Self@{meow\-::\-Self}!reference\-From@{reference\-From}}
+\hypertarget{classmeow_1_1Self_a63e1570c927c7fa3b95b71fe978e355d}{\index{meow\-::\-Self@{meow\-::\-Self}!reference\-From@{reference\-From}}
\index{reference\-From@{reference\-From}!meow::Self@{meow\-::\-Self}}
-\subsubsection[{reference\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ void {\bf meow\-::\-Self}$<$ Data $>$\-::reference\-From (
+\subsubsection[{reference\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Data$>$ {\bf Self} const\& {\bf meow\-::\-Self}$<$ Data $>$\-::reference\-From (
\begin{DoxyParamCaption}
\item[{{\bf Self}$<$ Data $>$ const \&}]{s}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_a576e99ba0ba6e8263b4d2cfd9238440f}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Self_a63e1570c927c7fa3b95b71fe978e355d}
將自己reference 到給定的 {\ttfamily \hyperlink{classmeow_1_1Self}{Self}}
@@ -252,7 +326,7 @@ constructor
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
-無
+$\ast$this
\end{DoxyReturn}
\begin{DoxyNote}{Note}
把reference想像成指標會比較容易思考, 譬如 {\ttfamily a.\-reference\-From(b)} {\ttfamily b.\-reference\-From(c)} 相當於 {\bfseries a指向b原本指的記憶體位置}, {\bfseries b指向c原本指的記憶體位置} , 之後更動c時, 只有b會被牽連
diff --git a/doc/latex/classmeow_1_1TransformatePipeline.eps b/doc/latex/classmeow_1_1TransformatePipeline.eps
new file mode 100644
index 0000000..a8579b3
--- /dev/null
+++ b/doc/latex/classmeow_1_1TransformatePipeline.eps
@@ -0,0 +1,197 @@
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: ClassName
+%%Creator: Doxygen
+%%CreationDate: Time
+%%For:
+%Magnification: 1.00
+%%Orientation: Portrait
+%%BoundingBox: 0 0 500 84.745763
+%%Pages: 0
+%%BeginSetup
+%%EndSetup
+%%EndComments
+
+% ----- variables -----
+
+/boxwidth 0 def
+/boxheight 40 def
+/fontheight 24 def
+/marginwidth 10 def
+/distx 20 def
+/disty 40 def
+/boundaspect 5.900000 def % aspect ratio of the BoundingBox (width/height)
+/boundx 500 def
+/boundy boundx boundaspect div def
+/xspacing 0 def
+/yspacing 0 def
+/rows 2 def
+/cols 1 def
+/scalefactor 0 def
+/boxfont /Times-Roman findfont fontheight scalefont def
+
+% ----- procedures -----
+
+/dotted { [1 4] 0 setdash } def
+/dashed { [5] 0 setdash } def
+/solid { [] 0 setdash } def
+
+/max % result = MAX(arg1,arg2)
+{
+ /a exch def
+ /b exch def
+ a b gt {a} {b} ifelse
+} def
+
+/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2)
+{
+ 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max
+} def
+
+/cw % boxwidth = MAX(boxwidth, stringwidth(arg1))
+{
+ /str exch def
+ /boxwidth boxwidth str stringwidth pop max def
+} def
+
+/box % draws a box with text `arg1' at grid pos (arg2,arg3)
+{ gsave
+ 2 setlinewidth
+ newpath
+ exch xspacing mul xoffset add
+ exch yspacing mul
+ moveto
+ boxwidth 0 rlineto
+ 0 boxheight rlineto
+ boxwidth neg 0 rlineto
+ 0 boxheight neg rlineto
+ closepath
+ dup stringwidth pop neg boxwidth add 2 div
+ boxheight fontheight 2 div sub 2 div
+ rmoveto show stroke
+ grestore
+} def
+
+/mark
+{ newpath
+ exch xspacing mul xoffset add boxwidth add
+ exch yspacing mul
+ moveto
+ 0 boxheight 4 div rlineto
+ boxheight neg 4 div boxheight neg 4 div rlineto
+ closepath
+ eofill
+ stroke
+} def
+
+/arrow
+{ newpath
+ moveto
+ 3 -8 rlineto
+ -6 0 rlineto
+ 3 8 rlineto
+ closepath
+ eofill
+ stroke
+} def
+
+/out % draws an output connector for the block at (arg1,arg2)
+{
+ newpath
+ exch xspacing mul xoffset add boxwidth 2 div add
+ exch yspacing mul boxheight add
+ /y exch def
+ /x exch def
+ x y moveto
+ 0 disty 2 div rlineto
+ stroke
+ 1 eq { x y disty 2 div add arrow } if
+} def
+
+/in % draws an input connector for the block at (arg1,arg2)
+{
+ newpath
+ exch xspacing mul xoffset add boxwidth 2 div add
+ exch yspacing mul disty 2 div sub
+ /y exch def
+ /x exch def
+ x y moveto
+ 0 disty 2 div rlineto
+ stroke
+ 1 eq { x y disty 2 div add arrow } if
+} def
+
+/hedge
+{
+ exch xspacing mul xoffset add boxwidth 2 div add
+ exch yspacing mul boxheight 2 div sub
+ /y exch def
+ /x exch def
+ newpath
+ x y moveto
+ boxwidth 2 div distx add 0 rlineto
+ stroke
+ 1 eq
+ { newpath x boxwidth 2 div distx add add y moveto
+ -8 3 rlineto
+ 0 -6 rlineto
+ 8 3 rlineto
+ closepath
+ eofill
+ stroke
+ } if
+} def
+
+/vedge
+{
+ /ye exch def
+ /ys exch def
+ /xs exch def
+ newpath
+ xs xspacing mul xoffset add boxwidth 2 div add dup
+ ys yspacing mul boxheight 2 div sub
+ moveto
+ ye yspacing mul boxheight 2 div sub
+ lineto
+ stroke
+} def
+
+/conn % connections the blocks from col `arg1' to `arg2' of row `arg3'
+{
+ /ys exch def
+ /xe exch def
+ /xs exch def
+ newpath
+ xs xspacing mul xoffset add boxwidth 2 div add
+ ys yspacing mul disty 2 div sub
+ moveto
+ xspacing xe xs sub mul 0
+ rlineto
+ stroke
+} def
+
+% ----- main ------
+
+boxfont setfont
+1 boundaspect scale
+(meow::TransformatePipeline< Scalar >) cw
+(meow::Pipeline< Matrix< Scalar >, Matrix< Scalar >, Transformate< Scalar > >) cw
+/boxwidth boxwidth marginwidth 2 mul add def
+/xspacing boxwidth distx add def
+/yspacing boxheight disty add def
+/scalefactor
+ boxwidth cols mul distx cols 1 sub mul add
+ boxheight rows mul disty rows 1 sub mul add boundaspect mul
+ max def
+boundx scalefactor div boundy scalefactor div scale
+
+% ----- classes -----
+
+ (meow::TransformatePipeline< Scalar >) 0.000000 0.000000 box
+ (meow::Pipeline< Matrix< Scalar >, Matrix< Scalar >, Transformate< Scalar > >) 0.000000 1.000000 box
+
+% ----- relations -----
+
+solid
+0 0.000000 0.000000 out
+solid
+1 0.000000 1.000000 in
diff --git a/doc/latex/classmeow_1_1TransformatePipeline.pdf b/doc/latex/classmeow_1_1TransformatePipeline.pdf
new file mode 100644
index 0000000..90c98ec
--- /dev/null
+++ b/doc/latex/classmeow_1_1TransformatePipeline.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1TransformatePipeline.tex b/doc/latex/classmeow_1_1TransformatePipeline.tex
new file mode 100644
index 0000000..87a4232
--- /dev/null
+++ b/doc/latex/classmeow_1_1TransformatePipeline.tex
@@ -0,0 +1,290 @@
+\hypertarget{classmeow_1_1TransformatePipeline}{\section{meow\-:\-:Transformate\-Pipeline$<$ Scalar $>$ Class Template Reference}
+\label{classmeow_1_1TransformatePipeline}\index{meow\-::\-Transformate\-Pipeline$<$ Scalar $>$@{meow\-::\-Transformate\-Pipeline$<$ Scalar $>$}}
+}
+
+
+a pipeline for transformations
+
+
+
+
+{\ttfamily \#include \char`\"{}Transformation.\-h\char`\"{}}
+
+Inheritance diagram for meow\-:\-:Transformate\-Pipeline$<$ Scalar $>$\-:\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[height=2.000000cm]{classmeow_1_1TransformatePipeline}
+\end{center}
+\end{figure}
+\subsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{classmeow_1_1TransformatePipeline_ac6ab080d88daaadaa1d25e673da5b33b}{Transformate\-Pipeline} ()
+\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1TransformatePipeline_ae6c9f60e836fc48abb12dce4025fae20}{Transrormate\-Pipeline} (\hyperlink{classmeow_1_1TransformatePipeline}{Transformate\-Pipeline} const \&b)
+\begin{DoxyCompactList}\small\item\em copy constructor \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1TransformatePipeline_aac96b1c183cec4ba8b16b09281108d09}{$\sim$\-Transformate\-Pipeline} ()
+\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item
+size\-\_\-t \hyperlink{classmeow_1_1TransformatePipeline_aa0b055af22eef651755af283feb8d45c}{input\-Rows} () const
+\begin{DoxyCompactList}\small\item\em return the number of rows of the input matrix \end{DoxyCompactList}\item
+size\-\_\-t \hyperlink{classmeow_1_1TransformatePipeline_aacb91bcfe8e35bd0cffc0ee71ea00dae}{input\-Cols} () const
+\begin{DoxyCompactList}\small\item\em return the number of columns of the input matrix \end{DoxyCompactList}\item
+size\-\_\-t \hyperlink{classmeow_1_1TransformatePipeline_a963050e6b1919534713c812aaa194b97}{output\-Rows} () const
+\begin{DoxyCompactList}\small\item\em return the number of rows of the output matrix \end{DoxyCompactList}\item
+size\-\_\-t \hyperlink{classmeow_1_1TransformatePipeline_ab13242986b383dc646c0093acca589ad}{output\-Cols} () const
+\begin{DoxyCompactList}\small\item\em return the number of columns of the output matrix \end{DoxyCompactList}\item
+bool \hyperlink{classmeow_1_1TransformatePipeline_a9bf648e2cd72cf49c625ba7190d33a1a}{front\-Add} (Transformate$<$ Scalar $>$ const $\ast$ptr, bool auto\-\_\-delete)
+\begin{DoxyCompactList}\small\item\em add a transformation to the front of this pipeline \end{DoxyCompactList}\item
+bool \hyperlink{classmeow_1_1TransformatePipeline_a3f1ce65ee36ddc970c7ef851e805d5bb}{back\-Add} (Transformate$<$ Scalar $>$ const $\ast$ptr, bool auto\-\_\-delete)
+\begin{DoxyCompactList}\small\item\em add a transformation to the front of this pipeline \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1TransformatePipeline_a32e82edbed6cebb49b9ebdf9addd08bb}{go\-Through} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&input) const
+\begin{DoxyCompactList}\small\item\em same as {\ttfamily transformate(input)} \end{DoxyCompactList}\item
+virtual \hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1TransformatePipeline_a4c63df15f8033cc09664292ee7d01855}{transformate} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&input) const
+\begin{DoxyCompactList}\small\item\em Do a series of transformations. \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1TransformatePipeline_a432a32213f3d19262185de45d828883f}{jacobian} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&input, size\-\_\-t i) const
+\begin{DoxyCompactList}\small\item\em return the jacobian matrix of the transformations, which derivate by the {\ttfamily i} -\/th entry of the input vector \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1TransformatePipeline_a6299f8399a390371f4665c6800da0fc2}{jacobian} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&input, size\-\_\-t i, size\-\_\-t j) const
+\begin{DoxyCompactList}\small\item\em return the jacobian matrix of the transformations, which derivate by the {\ttfamily j} -\/th parameter of the {\ttfamily i} -\/th transformation. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\subsection*{Additional Inherited Members}
+
+
+\subsection{Detailed Description}
+\subsubsection*{template$<$class Scalar$>$class meow\-::\-Transformate\-Pipeline$<$ Scalar $>$}
+
+a pipeline for transformations
+
+\subsection{Constructor \& Destructor Documentation}
+\hypertarget{classmeow_1_1TransformatePipeline_ac6ab080d88daaadaa1d25e673da5b33b}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!Transformate\-Pipeline@{Transformate\-Pipeline}}
+\index{Transformate\-Pipeline@{Transformate\-Pipeline}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{Transformate\-Pipeline}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::{\bf Transformate\-Pipeline} (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_ac6ab080d88daaadaa1d25e673da5b33b}
+
+
+constructor
+
+\hypertarget{classmeow_1_1TransformatePipeline_aac96b1c183cec4ba8b16b09281108d09}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!$\sim$\-Transformate\-Pipeline@{$\sim$\-Transformate\-Pipeline}}
+\index{$\sim$\-Transformate\-Pipeline@{$\sim$\-Transformate\-Pipeline}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{$\sim$\-Transformate\-Pipeline}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::$\sim${\bf Transformate\-Pipeline} (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_aac96b1c183cec4ba8b16b09281108d09}
+
+
+destructor
+
+
+
+\subsection{Member Function Documentation}
+\hypertarget{classmeow_1_1TransformatePipeline_a3f1ce65ee36ddc970c7ef851e805d5bb}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!back\-Add@{back\-Add}}
+\index{back\-Add@{back\-Add}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{back\-Add}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ bool {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::back\-Add (
+\begin{DoxyParamCaption}
+\item[{Transformate$<$ Scalar $>$ const $\ast$}]{ptr, }
+\item[{bool}]{auto\-\_\-delete}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1TransformatePipeline_a3f1ce65ee36ddc970c7ef851e805d5bb}
+
+
+add a transformation to the front of this pipeline
+
+It will test if the shape of the output matrix of the gived transformation is equal to the shape of the input matrix of the last transformation of the pipeline now. If they are not equal, the method will immediate return {\ttfamily false}.
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em ptr} & Pointer to the transformation \\
+\hline
+\mbox{\tt in} & {\em auto\-\_\-delete} & Indicate whether the given transformation should be {\ttfamily delete} when destruct event occured. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+successful or not.
+\end{DoxyReturn}
+
+
+Reimplemented from \hyperlink{classmeow_1_1Pipeline_a1bc72f0b75abb48b8c5212813b8dc8f4}{meow\-::\-Pipeline$<$ Matrix$<$ Scalar $>$, Matrix$<$ Scalar $>$, Transformate$<$ Scalar $>$ $>$}.
+
+\hypertarget{classmeow_1_1TransformatePipeline_a9bf648e2cd72cf49c625ba7190d33a1a}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!front\-Add@{front\-Add}}
+\index{front\-Add@{front\-Add}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{front\-Add}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ bool {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::front\-Add (
+\begin{DoxyParamCaption}
+\item[{Transformate$<$ Scalar $>$ const $\ast$}]{ptr, }
+\item[{bool}]{auto\-\_\-delete}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1TransformatePipeline_a9bf648e2cd72cf49c625ba7190d33a1a}
+
+
+add a transformation to the front of this pipeline
+
+It will test if the shape of the output matrix of the gived transformation is equal to the shape of the input matrix of the first transformation of the pipeline now. If they are not equal, the method will immediate return {\ttfamily false}.
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em ptr} & Pointer to the transformation \\
+\hline
+\mbox{\tt in} & {\em auto\-\_\-delete} & Indicate whether the given transformation should be {\ttfamily delete} when destruct event occured. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+successful or not.
+\end{DoxyReturn}
+
+
+Reimplemented from \hyperlink{classmeow_1_1Pipeline_ad68f17ba679781f8d8996de3f742584c}{meow\-::\-Pipeline$<$ Matrix$<$ Scalar $>$, Matrix$<$ Scalar $>$, Transformate$<$ Scalar $>$ $>$}.
+
+\hypertarget{classmeow_1_1TransformatePipeline_a32e82edbed6cebb49b9ebdf9addd08bb}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!go\-Through@{go\-Through}}
+\index{go\-Through@{go\-Through}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{go\-Through}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::go\-Through (
+\begin{DoxyParamCaption}
+\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{input}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1TransformatePipeline_a32e82edbed6cebb49b9ebdf9addd08bb}
+
+
+same as {\ttfamily transformate(input)}
+
+
+
+Implements \hyperlink{classmeow_1_1Pipeline_a41613bf7d08d61043b8791665bdb2395}{meow\-::\-Pipeline$<$ Matrix$<$ Scalar $>$, Matrix$<$ Scalar $>$, Transformate$<$ Scalar $>$ $>$}.
+
+\hypertarget{classmeow_1_1TransformatePipeline_aacb91bcfe8e35bd0cffc0ee71ea00dae}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!input\-Cols@{input\-Cols}}
+\index{input\-Cols@{input\-Cols}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{input\-Cols}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ size\-\_\-t {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::input\-Cols (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_aacb91bcfe8e35bd0cffc0ee71ea00dae}
+
+
+return the number of columns of the input matrix
+
+\hypertarget{classmeow_1_1TransformatePipeline_aa0b055af22eef651755af283feb8d45c}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!input\-Rows@{input\-Rows}}
+\index{input\-Rows@{input\-Rows}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{input\-Rows}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ size\-\_\-t {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::input\-Rows (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_aa0b055af22eef651755af283feb8d45c}
+
+
+return the number of rows of the input matrix
+
+\hypertarget{classmeow_1_1TransformatePipeline_a432a32213f3d19262185de45d828883f}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!jacobian@{jacobian}}
+\index{jacobian@{jacobian}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{jacobian}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::jacobian (
+\begin{DoxyParamCaption}
+\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{input, }
+\item[{size\-\_\-t}]{i}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_a432a32213f3d19262185de45d828883f}
+
+
+return the jacobian matrix of the transformations, which derivate by the {\ttfamily i} -\/th entry of the input vector
+
+Assume that the pipeline is like below\-: \[ v_{output} = H(h_1, h_2, G(g_1, g_2, g_3, F(f_1, v_{input}))) \] Where
+\begin{DoxyItemize}
+\item $ f_1, g_1, g_2, g_3, h_1, h_2 $ is the parameters of the transformations $ F, G, H $
+\item $ v_{input}(x,y,z), v_{output} $ is the input/output vector of the whole pipeline.
+\end{DoxyItemize}Then according to the chain rule, the jacobian matrix(derivate by $ y $) is\-: \[ M_{jacobian} = \frac{\partial H(h_1, h_2, G(g_1, g_2, g_3, F(f_1, v_{input})))} {\partial G(g_1, g_2, g_3, F(f_1, v_{input})) } \frac{\partial G(g_1, g_2, g_3, F(f_1, v_{input})) } {\partial F(f_1, v_{input}) } \frac{\partial F(f_1, v_{input}) } {\partial v_{input} } \frac{\partial v_{input} } {\partial y } \] Where \[ \frac{\partial v_{input}}{\partial y} = \left[ \begin{array}{c} 0 \\ 1 \\ 0 \\ \end{array} \right] \]
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em input} & the input matrix \\
+\hline
+\mbox{\tt in} & {\em i} & the index of the derivate scalar \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+a jacobian matrix
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1TransformatePipeline_a6299f8399a390371f4665c6800da0fc2}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!jacobian@{jacobian}}
+\index{jacobian@{jacobian}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{jacobian}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::jacobian (
+\begin{DoxyParamCaption}
+\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{input, }
+\item[{size\-\_\-t}]{i, }
+\item[{size\-\_\-t}]{j}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_a6299f8399a390371f4665c6800da0fc2}
+
+
+return the jacobian matrix of the transformations, which derivate by the {\ttfamily j} -\/th parameter of the {\ttfamily i} -\/th transformation.
+
+Assume that the pipeline is like below\-: \[ v_{output} = I(i_1,i_2, H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input})))) \]
+\begin{DoxyItemize}
+\item $ f_1, g_1, g_2, g_3, h_1, h_2, i_1, i_2 $ is the parameters of the transformations $ F, G, H, I $
+\item $ v_{input}(x,y,z), v_{output} $ is the input/output vector of the whole pipeline.
+\end{DoxyItemize}Then according to the chain rule, the jacobian matrix(derivate by $ g_2 $) is\-: \[ M_{jacobian} = \frac{\partial I(i_1,i_2, H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))))} {\partial H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))) } \frac{\partial H(h_1,h_2, G(g_1,g_2,g_3, F(f_1, v_{input}))) } {\partial G(g_1,g_2,g_3, F(f_1, v_{input})) } \frac{\partial G(g_1,g_2,g_3, F(f_1, v_{input})) } {\partial g_2 } \]
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em input} & the input matrix \\
+\hline
+\mbox{\tt in} & {\em i} & the index of the transformation \\
+\hline
+\mbox{\tt in} & {\em j} & the index of the derivate parameter \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+a jacobian matrix
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1TransformatePipeline_ab13242986b383dc646c0093acca589ad}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!output\-Cols@{output\-Cols}}
+\index{output\-Cols@{output\-Cols}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{output\-Cols}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ size\-\_\-t {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::output\-Cols (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_ab13242986b383dc646c0093acca589ad}
+
+
+return the number of columns of the output matrix
+
+\hypertarget{classmeow_1_1TransformatePipeline_a963050e6b1919534713c812aaa194b97}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!output\-Rows@{output\-Rows}}
+\index{output\-Rows@{output\-Rows}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{output\-Rows}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ size\-\_\-t {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::output\-Rows (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_a963050e6b1919534713c812aaa194b97}
+
+
+return the number of rows of the output matrix
+
+\hypertarget{classmeow_1_1TransformatePipeline_a4c63df15f8033cc09664292ee7d01855}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!transformate@{transformate}}
+\index{transformate@{transformate}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{transformate}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ virtual {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::transformate (
+\begin{DoxyParamCaption}
+\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{input}
+\end{DoxyParamCaption}
+) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1TransformatePipeline_a4c63df15f8033cc09664292ee7d01855}
+
+
+Do a series of transformations.
+
+
+\begin{DoxyParams}[1]{Parameters}
+\mbox{\tt in} & {\em input} & the input matrix \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+the result
+\end{DoxyReturn}
+\hypertarget{classmeow_1_1TransformatePipeline_ae6c9f60e836fc48abb12dce4025fae20}{\index{meow\-::\-Transformate\-Pipeline@{meow\-::\-Transformate\-Pipeline}!Transrormate\-Pipeline@{Transrormate\-Pipeline}}
+\index{Transrormate\-Pipeline@{Transrormate\-Pipeline}!meow::TransformatePipeline@{meow\-::\-Transformate\-Pipeline}}
+\subsubsection[{Transrormate\-Pipeline}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar $>$ {\bf meow\-::\-Transformate\-Pipeline}$<$ Scalar $>$\-::Transrormate\-Pipeline (
+\begin{DoxyParamCaption}
+\item[{{\bf Transformate\-Pipeline}$<$ Scalar $>$ const \&}]{b}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1TransformatePipeline_ae6c9f60e836fc48abb12dce4025fae20}
+
+
+copy constructor
+
+
+
+The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
+\item
+meowpp/math/\hyperlink{Transformation_8h}{Transformation.\-h}\end{DoxyCompactItemize}
diff --git a/doc/latex/classmeow_1_1Transformation.pdf b/doc/latex/classmeow_1_1Transformation.pdf
index 9acb29a..4fc808f 100644
--- a/doc/latex/classmeow_1_1Transformation.pdf
+++ b/doc/latex/classmeow_1_1Transformation.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1Transformation.tex b/doc/latex/classmeow_1_1Transformation.tex
index 43b5f64..a3073b6 100644
--- a/doc/latex/classmeow_1_1Transformation.tex
+++ b/doc/latex/classmeow_1_1Transformation.tex
@@ -59,7 +59,7 @@ virtual \hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classme
\hyperlink{classmeow_1_1Transformation}{Transformation} \& \hyperlink{classmeow_1_1Transformation_abe781169171fa3b8206a91e166779d74}{copy\-From} (\hyperlink{classmeow_1_1Transformation}{Transformation} const \&b)
\begin{DoxyCompactList}\small\item\em Copy from the specified one. \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Transformation}{Transformation} \& \hyperlink{classmeow_1_1Transformation_a9b6ec99d8363742f77c63a49ba9467b5}{reference\-From} (\hyperlink{classmeow_1_1Transformation}{Transformation} const \&b)
-\begin{DoxyCompactList}\small\item\em Ceference from the specified one. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\begin{DoxyCompactList}\small\item\em reference from the specified one \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection{Detailed Description}
@@ -67,7 +67,7 @@ virtual \hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classme
A base class for implementing kinds of transformations.
-We define that the input and output form of our transformations all be {\bfseries matrix} . Some advance methods such as calculating jacobian matrix will order that the input form must be a vector. \begin{DoxyAuthor}{Author}
+We define that the input and output form of our transformations all be {\bfseries matrix} . Some advance methods such as calculating jacobian matrix will require that the input form must be a vector. \begin{DoxyAuthor}{Author}
cat\-\_\-leopard
\end{DoxyAuthor}
@@ -378,7 +378,7 @@ Number of parameters.
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{classmeow_1_1Transformation_a9b6ec99d8363742f77c63a49ba9467b5}
-Ceference from the specified one.
+reference from the specified one
\begin{DoxyParams}[1]{Parameters}
diff --git a/doc/latex/classmeow_1_1Usage.tex b/doc/latex/classmeow_1_1Usage.tex
index 15ad9d0..397443d 100644
--- a/doc/latex/classmeow_1_1Usage.tex
+++ b/doc/latex/classmeow_1_1Usage.tex
@@ -23,17 +23,17 @@ bool \hyperlink{classmeow_1_1Usage_ad7db9a4197d9b281c47df0800ed63df0}{import} (\
\begin{DoxyCompactList}\small\item\em 將另一個usage的設置匯入 \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1Usage_ac09c339c31d602eca40df02c582d5241}{update} (\hyperlink{classmeow_1_1Usage}{Usage} const \&\hyperlink{classmeow_1_1Usage_a974e116cde6295ed08d836b08e0c1e99}{usage})
\begin{DoxyCompactList}\small\item\em 將另一個usage的選項設置加進來 \end{DoxyCompactList}\item
-bool \hyperlink{classmeow_1_1Usage_a1fbd15f59f3fdbe5e817d540505d6d6c}{option\-Add} (unsigned char opt, String const \&des)
+bool \hyperlink{classmeow_1_1Usage_af40b0323858e6af56562351554c4dfe2}{option\-Add} (String opt, String const \&des)
\begin{DoxyCompactList}\small\item\em 新增一個沒有額外選項的選項 \end{DoxyCompactList}\item
-bool \hyperlink{classmeow_1_1Usage_af5a6f3dc4d2250dce3bd74d3de48714d}{option\-Add} (unsigned char opt, String const \&des, String const \&val\-\_\-type, String const \&val\-\_\-default, bool must)
+bool \hyperlink{classmeow_1_1Usage_af4642c5d19cda946047934b3d1463f02}{option\-Add} (String opt, String const \&des, String const \&val\-\_\-type, String const \&val\-\_\-default, bool must)
\begin{DoxyCompactList}\small\item\em 新增一個有額外選項的選項 \end{DoxyCompactList}\item
-bool \hyperlink{classmeow_1_1Usage_a71ba10481062ed7088187cf27d7e0399}{option\-Value\-Accept\-Add} (unsigned char opt, String const \&val, String const \&des)
+bool \hyperlink{classmeow_1_1Usage_aaa2f7c0049d1d09ae08ba8fed6f2a242}{option\-Value\-Accept\-Add} (String opt, String const \&val, String const \&des)
\begin{DoxyCompactList}\small\item\em 針對-\/(opt)新增一個可接受的額外選項 \end{DoxyCompactList}\item
-bool \hyperlink{classmeow_1_1Usage_a095271836eecf23940608c0eafcff841}{has\-Option\-Setup} (unsigned char opt) const
+bool \hyperlink{classmeow_1_1Usage_a24d6ad17571474211da242b19bc5bdcf}{has\-Option\-Setup} (String opt) const
\begin{DoxyCompactList}\small\item\em 回傳是否有設定此選項 \end{DoxyCompactList}\item
-size\-\_\-t \hyperlink{classmeow_1_1Usage_acf478b89a1208024f9f37f1fe04add0d}{option\-Values\-Size} (unsigned char opt) const
+size\-\_\-t \hyperlink{classmeow_1_1Usage_abf96a39021fa349a881f850176b56bbb}{option\-Values\-Size} (String opt) const
\begin{DoxyCompactList}\small\item\em 回傳參數 {\bfseries -\/}(opt) 被設置幾次 \end{DoxyCompactList}\item
-String \hyperlink{classmeow_1_1Usage_a79dc9b39f0fa7c810e1c8cee29e2adac}{option\-Value} (unsigned char opt, size\-\_\-t index) const
+String \hyperlink{classmeow_1_1Usage_a4decdd19345adcda3854fd13e3379d4f}{option\-Value} (String opt, size\-\_\-t index) const
\begin{DoxyCompactList}\small\item\em 回傳參數 {\bfseries -\/}(opt) 的第 {\bfseries index} 個額外選項 \end{DoxyCompactList}\item
size\-\_\-t \hyperlink{classmeow_1_1Usage_aef05aaef7ba6433b2f4c5f313f9c0752}{proc\-Args\-Size} () const
\begin{DoxyCompactList}\small\item\em 取得有幾個process arguments \end{DoxyCompactList}\item
@@ -127,13 +127,13 @@ constructor
\begin{DoxyReturn}{Returns}
{\ttfamily true/false} {\bfseries 成功與否} (否的話代表有錯誤的設定值在其中)
\end{DoxyReturn}
-\hypertarget{classmeow_1_1Usage_a095271836eecf23940608c0eafcff841}{\index{meow\-::\-Usage@{meow\-::\-Usage}!has\-Option\-Setup@{has\-Option\-Setup}}
+\hypertarget{classmeow_1_1Usage_a24d6ad17571474211da242b19bc5bdcf}{\index{meow\-::\-Usage@{meow\-::\-Usage}!has\-Option\-Setup@{has\-Option\-Setup}}
\index{has\-Option\-Setup@{has\-Option\-Setup}!meow::Usage@{meow\-::\-Usage}}
\subsubsection[{has\-Option\-Setup}]{\setlength{\rightskip}{0pt plus 5cm}bool meow\-::\-Usage\-::has\-Option\-Setup (
\begin{DoxyParamCaption}
-\item[{unsigned char}]{opt}
+\item[{String}]{opt}
\end{DoxyParamCaption}
-) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_a095271836eecf23940608c0eafcff841}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_a24d6ad17571474211da242b19bc5bdcf}
回傳是否有設定此選項
@@ -165,14 +165,14 @@ constructor
\begin{DoxyReturn}{Returns}
{\ttfamily true/false} 表示 {\bfseries 是否成功}
\end{DoxyReturn}
-\hypertarget{classmeow_1_1Usage_a1fbd15f59f3fdbe5e817d540505d6d6c}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Add@{option\-Add}}
+\hypertarget{classmeow_1_1Usage_af40b0323858e6af56562351554c4dfe2}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Add@{option\-Add}}
\index{option\-Add@{option\-Add}!meow::Usage@{meow\-::\-Usage}}
\subsubsection[{option\-Add}]{\setlength{\rightskip}{0pt plus 5cm}bool meow\-::\-Usage\-::option\-Add (
\begin{DoxyParamCaption}
-\item[{unsigned char}]{opt, }
+\item[{String}]{opt, }
\item[{String const \&}]{des}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_a1fbd15f59f3fdbe5e817d540505d6d6c}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_af40b0323858e6af56562351554c4dfe2}
新增一個沒有額外選項的選項
@@ -187,17 +187,17 @@ constructor
\begin{DoxyReturn}{Returns}
{\ttfamily true/false} 表 {\bfseries 是否成功}
\end{DoxyReturn}
-\hypertarget{classmeow_1_1Usage_af5a6f3dc4d2250dce3bd74d3de48714d}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Add@{option\-Add}}
+\hypertarget{classmeow_1_1Usage_af4642c5d19cda946047934b3d1463f02}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Add@{option\-Add}}
\index{option\-Add@{option\-Add}!meow::Usage@{meow\-::\-Usage}}
\subsubsection[{option\-Add}]{\setlength{\rightskip}{0pt plus 5cm}bool meow\-::\-Usage\-::option\-Add (
\begin{DoxyParamCaption}
-\item[{unsigned char}]{opt, }
+\item[{String}]{opt, }
\item[{String const \&}]{des, }
\item[{String const \&}]{val\-\_\-type, }
\item[{String const \&}]{val\-\_\-default, }
\item[{bool}]{must}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_af5a6f3dc4d2250dce3bd74d3de48714d}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_af4642c5d19cda946047934b3d1463f02}
新增一個有額外選項的選項
@@ -218,14 +218,14 @@ constructor
\begin{DoxyReturn}{Returns}
{\ttfamily true/false} 表 {\bfseries 是否成功}
\end{DoxyReturn}
-\hypertarget{classmeow_1_1Usage_a79dc9b39f0fa7c810e1c8cee29e2adac}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Value@{option\-Value}}
+\hypertarget{classmeow_1_1Usage_a4decdd19345adcda3854fd13e3379d4f}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Value@{option\-Value}}
\index{option\-Value@{option\-Value}!meow::Usage@{meow\-::\-Usage}}
\subsubsection[{option\-Value}]{\setlength{\rightskip}{0pt plus 5cm}String meow\-::\-Usage\-::option\-Value (
\begin{DoxyParamCaption}
-\item[{unsigned char}]{opt, }
+\item[{String}]{opt, }
\item[{size\-\_\-t}]{index}
\end{DoxyParamCaption}
-) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_a79dc9b39f0fa7c810e1c8cee29e2adac}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_a4decdd19345adcda3854fd13e3379d4f}
回傳參數 {\bfseries -\/}(opt) 的第 {\bfseries index} 個額外選項
@@ -240,15 +240,15 @@ constructor
\begin{DoxyReturn}{Returns}
回傳參數 {\bfseries -\/}(opt) 的第 {\bfseries index} 個額外選項
\end{DoxyReturn}
-\hypertarget{classmeow_1_1Usage_a71ba10481062ed7088187cf27d7e0399}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Value\-Accept\-Add@{option\-Value\-Accept\-Add}}
+\hypertarget{classmeow_1_1Usage_aaa2f7c0049d1d09ae08ba8fed6f2a242}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Value\-Accept\-Add@{option\-Value\-Accept\-Add}}
\index{option\-Value\-Accept\-Add@{option\-Value\-Accept\-Add}!meow::Usage@{meow\-::\-Usage}}
\subsubsection[{option\-Value\-Accept\-Add}]{\setlength{\rightskip}{0pt plus 5cm}bool meow\-::\-Usage\-::option\-Value\-Accept\-Add (
\begin{DoxyParamCaption}
-\item[{unsigned char}]{opt, }
+\item[{String}]{opt, }
\item[{String const \&}]{val, }
\item[{String const \&}]{des}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_a71ba10481062ed7088187cf27d7e0399}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_aaa2f7c0049d1d09ae08ba8fed6f2a242}
針對-\/(opt)新增一個可接受的額外選項
@@ -265,13 +265,13 @@ constructor
\begin{DoxyReturn}{Returns}
{\ttfamily true/false} 表 {\bfseries 是否成功}
\end{DoxyReturn}
-\hypertarget{classmeow_1_1Usage_acf478b89a1208024f9f37f1fe04add0d}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Values\-Size@{option\-Values\-Size}}
+\hypertarget{classmeow_1_1Usage_abf96a39021fa349a881f850176b56bbb}{\index{meow\-::\-Usage@{meow\-::\-Usage}!option\-Values\-Size@{option\-Values\-Size}}
\index{option\-Values\-Size@{option\-Values\-Size}!meow::Usage@{meow\-::\-Usage}}
\subsubsection[{option\-Values\-Size}]{\setlength{\rightskip}{0pt plus 5cm}size\-\_\-t meow\-::\-Usage\-::option\-Values\-Size (
\begin{DoxyParamCaption}
-\item[{unsigned char}]{opt}
+\item[{String}]{opt}
\end{DoxyParamCaption}
-) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_acf478b89a1208024f9f37f1fe04add0d}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Usage_abf96a39021fa349a881f850176b56bbb}
回傳參數 {\bfseries -\/}(opt) 被設置幾次
diff --git a/doc/latex/classmeow_1_1Vector.tex b/doc/latex/classmeow_1_1Vector.tex
index e2abffd..8654438 100644
--- a/doc/latex/classmeow_1_1Vector.tex
+++ b/doc/latex/classmeow_1_1Vector.tex
@@ -10,6 +10,13 @@
{\ttfamily \#include \char`\"{}Vector.\-h\char`\"{}}
+\subsection*{Public Types}
+\begin{DoxyCompactItemize}
+\item
+typedef \hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$\-::Entry\-Ref\-K \hyperlink{classmeow_1_1Vector_ac7464dd163607b1a6417e438a639d050}{Scalar\-Ref\-K}
+\item
+typedef \hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$\-::Entry\-Ref \hyperlink{classmeow_1_1Vector_a29e75e2dd5e46da4c7b95354c8787a30}{Scalar\-Ref}
+\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
@@ -19,8 +26,6 @@
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Vector_a34ca34c834e47288894cec2445e5b073}{Vector} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&m)
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item
-\hyperlink{classmeow_1_1Vector_af4966b6e2df19fa6d2752460b1e8afff}{Vector} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&m, size\-\_\-t i)
-\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Vector_a58f997cdc6b98a76ae13bba6d685d815}{Vector} (std\-::vector$<$ Scalar $>$ const \&v)
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Vector_a5589e07881f9f6a7bb7c43630d30ecdd}{Vector} (size\-\_\-t d, Scalar const \&e)
@@ -39,10 +44,12 @@ size\-\_\-t \hyperlink{classmeow_1_1Vector_ada37bc2df18e7c892d4b5e2ac34bf025}{di
\begin{DoxyCompactList}\small\item\em resize the dimension \end{DoxyCompactList}\item
bool \hyperlink{classmeow_1_1Vector_a98f150719042e458d52a1476ae9fd52e}{valid} () const
\begin{DoxyCompactList}\small\item\em Return whether {\ttfamily dimension$>$0} is true or not. \end{DoxyCompactList}\item
-Scalar \hyperlink{classmeow_1_1Vector_af5ecb8d9cc811a2d56e1725c4bfd30e8}{entry} (size\-\_\-t i) const
+\hyperlink{classmeow_1_1Vector_ac7464dd163607b1a6417e438a639d050}{Scalar\-Ref\-K} \hyperlink{classmeow_1_1Vector_a2413f452c3d8b76208d99f7256c9ade8}{entry} (size\-\_\-t i) const
\begin{DoxyCompactList}\small\item\em return {\itshape i} -\/th entry \end{DoxyCompactList}\item
-Scalar \hyperlink{classmeow_1_1Vector_a5050e9117204a6dbdcc7cf5038845c00}{entry} (size\-\_\-t i, Scalar const \&s)
+\hyperlink{classmeow_1_1Vector_ac7464dd163607b1a6417e438a639d050}{Scalar\-Ref\-K} \hyperlink{classmeow_1_1Vector_ab0a1b850f2db26637b88900ba2e1911a}{entry} (size\-\_\-t i, Scalar const \&s)
\begin{DoxyCompactList}\small\item\em change {\itshape i} -\/th entry \end{DoxyCompactList}\item
+\hyperlink{classmeow_1_1Vector_a29e75e2dd5e46da4c7b95354c8787a30}{Scalar\-Ref} \hyperlink{classmeow_1_1Vector_a35b4e136e93445279372f70e4caf00fe}{entry\-Get} (size\-\_\-t i)
+\begin{DoxyCompactList}\small\item\em return {\itshape i} -\/th entry with non-\/constant type \end{DoxyCompactList}\item
void \hyperlink{classmeow_1_1Vector_adc55ef7402cf4114ea5696df18545618}{entries} (size\-\_\-t i, size\-\_\-t j, Scalar const \&s)
\begin{DoxyCompactList}\small\item\em change {\itshape i} -\/th to {\itshape j} -\/th entries \end{DoxyCompactList}\item
\hyperlink{classmeow_1_1Vector}{Vector} \hyperlink{classmeow_1_1Vector_a70c2620d25f6a36dc6d6aa38851b1c7a}{sub\-Vector} (size\-\_\-t i, size\-\_\-t j)
@@ -99,6 +106,15 @@ cat\-\_\-leopard
\end{DoxyAuthor}
+\subsection{Member Typedef Documentation}
+\hypertarget{classmeow_1_1Vector_a29e75e2dd5e46da4c7b95354c8787a30}{\index{meow\-::\-Vector@{meow\-::\-Vector}!Scalar\-Ref@{Scalar\-Ref}}
+\index{Scalar\-Ref@{Scalar\-Ref}!meow::Vector@{meow\-::\-Vector}}
+\subsubsection[{Scalar\-Ref}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ typedef {\bf Matrix}$<$Scalar$>$\-::Entry\-Ref {\bf meow\-::\-Vector}$<$ Scalar $>$\-::{\bf Scalar\-Ref}}}\label{classmeow_1_1Vector_a29e75e2dd5e46da4c7b95354c8787a30}
+\hypertarget{classmeow_1_1Vector_ac7464dd163607b1a6417e438a639d050}{\index{meow\-::\-Vector@{meow\-::\-Vector}!Scalar\-Ref\-K@{Scalar\-Ref\-K}}
+\index{Scalar\-Ref\-K@{Scalar\-Ref\-K}!meow::Vector@{meow\-::\-Vector}}
+\subsubsection[{Scalar\-Ref\-K}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ typedef {\bf Matrix}$<$Scalar$>$\-::Entry\-Ref\-K {\bf meow\-::\-Vector}$<$ Scalar $>$\-::{\bf Scalar\-Ref\-K}}}\label{classmeow_1_1Vector_ac7464dd163607b1a6417e438a639d050}
+
+
\subsection{Constructor \& Destructor Documentation}
\hypertarget{classmeow_1_1Vector_a68530affccd332248e476cc3e188cd61}{\index{meow\-::\-Vector@{meow\-::\-Vector}!Vector@{Vector}}
\index{Vector@{Vector}!meow::Vector@{meow\-::\-Vector}}
@@ -147,27 +163,6 @@ From matrix's first column
\mbox{\tt in} & {\em m} & matrix \\
\hline
\end{DoxyParams}
-\hypertarget{classmeow_1_1Vector_af4966b6e2df19fa6d2752460b1e8afff}{\index{meow\-::\-Vector@{meow\-::\-Vector}!Vector@{Vector}}
-\index{Vector@{Vector}!meow::Vector@{meow\-::\-Vector}}
-\subsubsection[{Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf meow\-::\-Vector}$<$ Scalar $>$\-::{\bf Vector} (
-\begin{DoxyParamCaption}
-\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{m, }
-\item[{size\-\_\-t}]{i}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Vector_af4966b6e2df19fa6d2752460b1e8afff}
-
-
-constructor
-
-From matrix's {\itshape i-\/th} column
-
-
-\begin{DoxyParams}[1]{Parameters}
-\mbox{\tt in} & {\em m} & matrix \\
-\hline
-\mbox{\tt in} & {\em i} & i-\/th \\
-\hline
-\end{DoxyParams}
\hypertarget{classmeow_1_1Vector_a58f997cdc6b98a76ae13bba6d685d815}{\index{meow\-::\-Vector@{meow\-::\-Vector}!Vector@{Vector}}
\index{Vector@{Vector}!meow::Vector@{meow\-::\-Vector}}
\subsubsection[{Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf meow\-::\-Vector}$<$ Scalar $>$\-::{\bf Vector} (
@@ -320,25 +315,25 @@ change {\itshape i} -\/th to {\itshape j} -\/th entries
\mbox{\tt in} & {\em s} & new value \\
\hline
\end{DoxyParams}
-\hypertarget{classmeow_1_1Vector_af5ecb8d9cc811a2d56e1725c4bfd30e8}{\index{meow\-::\-Vector@{meow\-::\-Vector}!entry@{entry}}
+\hypertarget{classmeow_1_1Vector_a2413f452c3d8b76208d99f7256c9ade8}{\index{meow\-::\-Vector@{meow\-::\-Vector}!entry@{entry}}
\index{entry@{entry}!meow::Vector@{meow\-::\-Vector}}
-\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ Scalar {\bf meow\-::\-Vector}$<$ Scalar $>$\-::entry (
+\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Scalar\-Ref\-K} {\bf meow\-::\-Vector}$<$ Scalar $>$\-::entry (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{i}
\end{DoxyParamCaption}
-) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Vector_af5ecb8d9cc811a2d56e1725c4bfd30e8}
+) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Vector_a2413f452c3d8b76208d99f7256c9ade8}
return {\itshape i} -\/th entry
-\hypertarget{classmeow_1_1Vector_a5050e9117204a6dbdcc7cf5038845c00}{\index{meow\-::\-Vector@{meow\-::\-Vector}!entry@{entry}}
+\hypertarget{classmeow_1_1Vector_ab0a1b850f2db26637b88900ba2e1911a}{\index{meow\-::\-Vector@{meow\-::\-Vector}!entry@{entry}}
\index{entry@{entry}!meow::Vector@{meow\-::\-Vector}}
-\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ Scalar {\bf meow\-::\-Vector}$<$ Scalar $>$\-::entry (
+\subsubsection[{entry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Scalar\-Ref\-K} {\bf meow\-::\-Vector}$<$ Scalar $>$\-::entry (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{i, }
\item[{Scalar const \&}]{s}
\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Vector_a5050e9117204a6dbdcc7cf5038845c00}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Vector_ab0a1b850f2db26637b88900ba2e1911a}
change {\itshape i} -\/th entry
@@ -350,6 +345,17 @@ change {\itshape i} -\/th entry
\mbox{\tt in} & {\em s} & new value \\
\hline
\end{DoxyParams}
+\hypertarget{classmeow_1_1Vector_a35b4e136e93445279372f70e4caf00fe}{\index{meow\-::\-Vector@{meow\-::\-Vector}!entry\-Get@{entry\-Get}}
+\index{entry\-Get@{entry\-Get}!meow::Vector@{meow\-::\-Vector}}
+\subsubsection[{entry\-Get}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Scalar\-Ref} {\bf meow\-::\-Vector}$<$ Scalar $>$\-::entry\-Get (
+\begin{DoxyParamCaption}
+\item[{size\-\_\-t}]{i}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Vector_a35b4e136e93445279372f70e4caf00fe}
+
+
+return {\itshape i} -\/th entry with non-\/constant type
+
\hypertarget{classmeow_1_1Vector_afc7cc691dd00ab41fd56d798c13a6a27}{\index{meow\-::\-Vector@{meow\-::\-Vector}!length@{length}}
\index{length@{length}!meow::Vector@{meow\-::\-Vector}}
\subsubsection[{length}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ Scalar {\bf meow\-::\-Vector}$<$ Scalar $>$\-::length (
diff --git a/doc/latex/classmeow_1_1ViewPort.pdf b/doc/latex/classmeow_1_1ViewPort.pdf
index 83682aa..2f28023 100644
--- a/doc/latex/classmeow_1_1ViewPort.pdf
+++ b/doc/latex/classmeow_1_1ViewPort.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1WatchBall.pdf b/doc/latex/classmeow_1_1WatchBall.pdf
index cd4f223..f4b3061 100644
--- a/doc/latex/classmeow_1_1WatchBall.pdf
+++ b/doc/latex/classmeow_1_1WatchBall.pdf
Binary files differ
diff --git a/doc/latex/classmeow_1_1YUVf__Space.pdf b/doc/latex/classmeow_1_1YUVf__Space.pdf
index 81755b8..af1e28d 100644
--- a/doc/latex/classmeow_1_1YUVf__Space.pdf
+++ b/doc/latex/classmeow_1_1YUVf__Space.pdf
Binary files differ
diff --git a/doc/latex/dir_92fecd8d02dd5e7a67429447fdf0f60f.tex b/doc/latex/dir_92fecd8d02dd5e7a67429447fdf0f60f.tex
index 154655d..4517b6a 100644
--- a/doc/latex/dir_92fecd8d02dd5e7a67429447fdf0f60f.tex
+++ b/doc/latex/dir_92fecd8d02dd5e7a67429447fdf0f60f.tex
@@ -19,6 +19,8 @@ directory \hyperlink{dir_540a4c8f2977878a343351220ffba92b}{oo}
\subsection*{Files}
\begin{DoxyCompactItemize}
\item
+file \hyperlink{Pipeline_8h}{Pipeline.\-h}
+\item
file \hyperlink{Self_8h}{Self.\-h}
\item
file \hyperlink{Usage_8h}{Usage.\-h}
diff --git a/doc/latex/doxygen.sty b/doc/latex/doxygen.sty
index a5088f3..035aa63 100644
--- a/doc/latex/doxygen.sty
+++ b/doc/latex/doxygen.sty
@@ -41,8 +41,8 @@
\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
\fancyfoot[LE]{\fancyplain{}{}}
\fancyfoot[CE]{\fancyplain{}{}}
-\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated on Sun Jun 1 2014 13\-:54\-:33 for Templates -\/-\/ Meow by Doxygen }}
-\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated on Sun Jun 1 2014 13\-:54\-:33 for Templates -\/-\/ Meow by Doxygen }}
+\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated on Fri Jun 6 2014 17\-:51\-:46 for Templates -\/-\/ Meow by Doxygen }}
+\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated on Fri Jun 6 2014 17\-:51\-:46 for Templates -\/-\/ Meow by Doxygen }}
\fancyfoot[CO]{\fancyplain{}{}}
\fancyfoot[RO]{\fancyplain{}{}}
%---------- Internal commands used in this style file ----------------
diff --git a/doc/latex/files.tex b/doc/latex/files.tex
index abe2be8..65e5719 100644
--- a/doc/latex/files.tex
+++ b/doc/latex/files.tex
@@ -1,5 +1,6 @@
\section{File List}
Here is a list of all files with brief descriptions\-:\begin{DoxyCompactList}
+\item\contentsline{section}{meowpp/\hyperlink{Pipeline_8h}{Pipeline.\-h} }{\pageref{Pipeline_8h}}{}
\item\contentsline{section}{meowpp/\hyperlink{Self_8h}{Self.\-h} }{\pageref{Self_8h}}{}
\item\contentsline{section}{meowpp/\hyperlink{Usage_8h}{Usage.\-h} }{\pageref{Usage_8h}}{}
\item\contentsline{section}{meowpp/\hyperlink{utility_8h}{utility.\-h} }{\pageref{utility_8h}}{}
diff --git a/doc/latex/group__gp1.tex b/doc/latex/group__gp1.tex
new file mode 100644
index 0000000..a8aaef1
--- /dev/null
+++ b/doc/latex/group__gp1.tex
@@ -0,0 +1,12 @@
+\hypertarget{group__gp1}{\section{Gp1}
+\label{group__gp1}\index{Gp1@{Gp1}}
+}
+\subsection*{Namespaces}
+\begin{DoxyCompactItemize}
+\item
+namespace \hyperlink{namespacemeow}{meow}
+\end{DoxyCompactItemize}
+
+
+\subsection{Detailed Description}
+lalala \ No newline at end of file
diff --git a/doc/latex/hierarchy.tex b/doc/latex/hierarchy.tex
index 81290ed..cbde87b 100644
--- a/doc/latex/hierarchy.tex
+++ b/doc/latex/hierarchy.tex
@@ -24,6 +24,7 @@ This inheritance list is sorted roughly, but not completely, alphabetically\-:\b
\item \contentsline{section}{meow\-:\-:Matrix$<$ double $>$}{\pageref{classmeow_1_1Matrix}}{}
\item \contentsline{section}{meow\-:\-:Matrix$<$ Pixel $>$}{\pageref{classmeow_1_1Matrix}}{}
\item \contentsline{section}{meow\-:\-:Matrix$<$ Scalar $>$}{\pageref{classmeow_1_1Matrix}}{}
+\item \contentsline{section}{meow\-:\-:Pipeline$<$ Input, Output, Medium $>$\-:\-:Myself\-:\-:Medium\-Info}{\pageref{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo}}{}
\item \contentsline{section}{meow\-:\-:Mergeable\-Heap$<$ Element $>$}{\pageref{classmeow_1_1MergeableHeap}}{}
\item \contentsline{section}{meow\-:\-:Obj\-Base}{\pageref{classmeow_1_1ObjBase}}{}
\begin{DoxyCompactList}
@@ -49,6 +50,11 @@ This inheritance list is sorted roughly, but not completely, alphabetically\-:\b
\item \contentsline{section}{meow\-:\-:Watch\-Ball$<$ Pixel $>$}{\pageref{classmeow_1_1WatchBall}}{}
\end{DoxyCompactList}
\item \contentsline{section}{meow\-:\-:Obj\-Selector$<$ id $>$}{\pageref{classmeow_1_1ObjSelector}}{}
+\item \contentsline{section}{meow\-:\-:Pipeline$<$ Input, Output, Medium $>$}{\pageref{classmeow_1_1Pipeline}}{}
+\item \contentsline{section}{meow\-:\-:Pipeline$<$ Matrix$<$ Scalar $>$, Matrix$<$ Scalar $>$, Transformate$<$ Scalar $>$ $>$}{\pageref{classmeow_1_1Pipeline}}{}
+\begin{DoxyCompactList}
+\item \contentsline{section}{meow\-:\-:Transformate\-Pipeline$<$ Scalar $>$}{\pageref{classmeow_1_1TransformatePipeline}}{}
+\end{DoxyCompactList}
\item \contentsline{section}{meow\-:\-:Reader\-Writer\-\_\-double}{\pageref{classmeow_1_1ReaderWriter__double}}{}
\item \contentsline{section}{meow\-:\-:Reader\-Writer\-\_\-int}{\pageref{classmeow_1_1ReaderWriter__int}}{}
\item \contentsline{section}{meow\-:\-:Reader\-Writer\-\_\-size\-\_\-t}{\pageref{classmeow_1_1ReaderWriter__size__t}}{}
diff --git a/doc/latex/math_2utility_8h.tex b/doc/latex/math_2utility_8h.tex
index e088c00..c47ee28 100644
--- a/doc/latex/math_2utility_8h.tex
+++ b/doc/latex/math_2utility_8h.tex
@@ -23,6 +23,8 @@ namespace \hyperlink{namespacemeow}{meow}
\begin{DoxyCompactList}\small\item\em {\ttfamily denormalize}(l2,u2,normalize(l1,u1,m1)) \end{DoxyCompactList}\item
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_a98d838d338a3e6f3c57e94562fab3fa7}{meow\-::in\-Range} (T const \&mn, T const \&mx, T const \&v)
\begin{DoxyCompactList}\small\item\em {\ttfamily std\-::min}(mx,std\-::max(mn,v)) \end{DoxyCompactList}\item
+{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_ae8486a6227b6ed69d5ff666fe67ebf4e}{meow\-::is\-In\-Range} (T const \&mn, T const \&mx, T const \&x)
+\begin{DoxyCompactList}\small\item\em (mn $<$= x \&\& x $<$= mx) \end{DoxyCompactList}\item
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_a1954e235973a2ac79a7a72a4b7d25573}{meow\-::squ} (T const \&x)
\begin{DoxyCompactList}\small\item\em {\ttfamily x$\ast$x} \end{DoxyCompactList}\item
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_a10a8cca705773b7d9f6f91d3fb08c104}{meow\-::cub} (T const \&x)
diff --git a/doc/latex/modules.tex b/doc/latex/modules.tex
new file mode 100644
index 0000000..efbb015
--- /dev/null
+++ b/doc/latex/modules.tex
@@ -0,0 +1,4 @@
+\section{Modules}
+Here is a list of all modules\-:\begin{DoxyCompactList}
+\item \contentsline{section}{Gp1}{\pageref{group__gp1}}{}
+\end{DoxyCompactList}
diff --git a/doc/latex/namespacemeow.tex b/doc/latex/namespacemeow.tex
index aa51ef9..349690e 100644
--- a/doc/latex/namespacemeow.tex
+++ b/doc/latex/namespacemeow.tex
@@ -70,6 +70,8 @@ class \hyperlink{classmeow_1_1Matrix}{Matrix}
\begin{DoxyCompactList}\small\item\em {\bfseries matrix} \end{DoxyCompactList}\item
class \hyperlink{classmeow_1_1Transformation}{Transformation}
\begin{DoxyCompactList}\small\item\em A base class for implementing kinds of transformations. \end{DoxyCompactList}\item
+class \hyperlink{classmeow_1_1TransformatePipeline}{Transformate\-Pipeline}
+\begin{DoxyCompactList}\small\item\em a pipeline for transformations \end{DoxyCompactList}\item
class \hyperlink{classmeow_1_1BallProjection}{Ball\-Projection}
\begin{DoxyCompactList}\small\item\em A ball projection is to project the given vector to a hyper-\/sphere. \end{DoxyCompactList}\item
class \hyperlink{classmeow_1_1PhotoProjection}{Photo\-Projection}
@@ -96,6 +98,8 @@ class \hyperlink{classmeow_1_1ReaderWriter__double}{Reader\-Writer\-\_\-double}
\item
class \hyperlink{classmeow_1_1ReaderWriter__string}{Reader\-Writer\-\_\-string}
\item
+class \hyperlink{classmeow_1_1Pipeline}{Pipeline}
+\begin{DoxyCompactList}\small\item\em {\bfseries pipeline} \end{DoxyCompactList}\item
class \hyperlink{classmeow_1_1Self}{Self}
\begin{DoxyCompactList}\small\item\em 具有copy on write, 且擁有比\-C++更靈活的reference機制 \end{DoxyCompactList}\item
class \hyperlink{classmeow_1_1Usage}{Usage}
@@ -175,6 +179,8 @@ void \hyperlink{namespacemeow_af4d344590a86168090c2f2322289f080}{color\-Transfor
\begin{DoxyCompactList}\small\item\em {\ttfamily denormalize}(l2,u2,normalize(l1,u1,m1)) \end{DoxyCompactList}\item
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_a98d838d338a3e6f3c57e94562fab3fa7}{in\-Range} (T const \&mn, T const \&mx, T const \&v)
\begin{DoxyCompactList}\small\item\em {\ttfamily std\-::min}(mx,std\-::max(mn,v)) \end{DoxyCompactList}\item
+{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_ae8486a6227b6ed69d5ff666fe67ebf4e}{is\-In\-Range} (T const \&mn, T const \&mx, T const \&x)
+\begin{DoxyCompactList}\small\item\em (mn $<$= x \&\& x $<$= mx) \end{DoxyCompactList}\item
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_a1954e235973a2ac79a7a72a4b7d25573}{squ} (T const \&x)
\begin{DoxyCompactList}\small\item\em {\ttfamily x$\ast$x} \end{DoxyCompactList}\item
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespacemeow_a10a8cca705773b7d9f6f91d3fb08c104}{cub} (T const \&x)
@@ -591,6 +597,19 @@ static const size\-\_\-t \hyperlink{namespacemeow_aaa678bbd106012a98ed5679e2ca8c
{\ttfamily std\-::min}(mx,std\-::max(mn,v))
+\hypertarget{namespacemeow_ae8486a6227b6ed69d5ff666fe67ebf4e}{\index{meow@{meow}!is\-In\-Range@{is\-In\-Range}}
+\index{is\-In\-Range@{is\-In\-Range}!meow@{meow}}
+\subsubsection[{is\-In\-Range}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ T meow\-::is\-In\-Range (
+\begin{DoxyParamCaption}
+\item[{T const \&}]{mn, }
+\item[{T const \&}]{mx, }
+\item[{T const \&}]{x}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{namespacemeow_ae8486a6227b6ed69d5ff666fe67ebf4e}
+
+
+(mn $<$= x \&\& x $<$= mx)
+
\hypertarget{namespacemeow_a8e4a4baed7fb497f170075648ac95077}{\index{meow@{meow}!levenberg\-Marquardt@{levenberg\-Marquardt}}
\index{levenberg\-Marquardt@{levenberg\-Marquardt}!meow@{meow}}
\subsubsection[{levenberg\-Marquardt}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar , class F , class J , class I , class Stop $>$ {\bf Vector}$<$Scalar$>$ meow\-::levenberg\-Marquardt (
diff --git a/doc/latex/refman.aux b/doc/latex/refman.aux
new file mode 100644
index 0000000..6bb748b
--- /dev/null
+++ b/doc/latex/refman.aux
@@ -0,0 +1,109 @@
+\relax
+\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument}
+\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined
+\global\let\oldcontentsline\contentsline
+\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}}
+\global\let\oldnewlabel\newlabel
+\gdef\newlabel#1#2{\newlabelxx{#1}#2}
+\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}}
+\AtEndDocument{\ifx\hyper@anchor\@undefined
+\let\contentsline\oldcontentsline
+\let\newlabel\oldnewlabel
+\fi}
+\fi}
+\global\let\hyper@last\relax
+\gdef\HyperFirstAtBeginDocument#1{#1}
+\providecommand\HyField@AuxAddToFields[1]{}
+\@writefile{toc}{\contentsline {chapter}{\numberline {1}Namespace Index}{1}{chapter.1}}
+\@writefile{lof}{\addvspace {10\p@ }}
+\@writefile{lot}{\addvspace {10\p@ }}
+\@writefile{toc}{\contentsline {section}{\numberline {1.1}Namespace List}{1}{section.1.1}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {2}Hierarchical Index}{3}{chapter.2}}
+\@writefile{lof}{\addvspace {10\p@ }}
+\@writefile{lot}{\addvspace {10\p@ }}
+\@writefile{toc}{\contentsline {section}{\numberline {2.1}Class Hierarchy}{3}{section.2.1}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {3}Class Index}{5}{chapter.3}}
+\@writefile{lof}{\addvspace {10\p@ }}
+\@writefile{lot}{\addvspace {10\p@ }}
+\@writefile{toc}{\contentsline {section}{\numberline {3.1}Class List}{5}{section.3.1}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {4}File Index}{9}{chapter.4}}
+\@writefile{lof}{\addvspace {10\p@ }}
+\@writefile{lot}{\addvspace {10\p@ }}
+\@writefile{toc}{\contentsline {section}{\numberline {4.1}File List}{9}{section.4.1}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {5}Namespace Documentation}{11}{chapter.5}}
+\@writefile{lof}{\addvspace {10\p@ }}
+\@writefile{lot}{\addvspace {10\p@ }}
+\@writefile{toc}{\contentsline {section}{\numberline {5.1}meow Namespace Reference}{11}{section.5.1}}
+\newlabel{namespacemeow}{{5.1}{11}{meow Namespace Reference\relax }{section.5.1}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {5.1.1}Typedef Documentation}{15}{subsection.5.1.1}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.1.1}Feature\discretionary {-}{}{}Point\discretionary {-}{}{}Index\discretionary {-}{}{}Pairs}{15}{subsubsection.5.1.1.1}}
+\newlabel{namespacemeow_a03cd29a3b4f8874be532a4b0c9422961}{{5.1.1.1}{15}{Feature\-Point\-Index\-Pairs\relax }{subsubsection.5.1.1.1}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.1.2}Obj\discretionary {-}{}{}Double}{15}{subsubsection.5.1.1.2}}
+\newlabel{namespacemeow_a936afddaa5716457741832ee501c7a58}{{5.1.1.2}{15}{Obj\-Double\relax }{subsubsection.5.1.1.2}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.1.3}Obj\discretionary {-}{}{}Int}{15}{subsubsection.5.1.1.3}}
+\newlabel{namespacemeow_add07dcc8e06a1394daa3e6402bc40c4b}{{5.1.1.3}{15}{Obj\-Int\relax }{subsubsection.5.1.1.3}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.1.4}Obj\discretionary {-}{}{}Size\discretionary {-}{}{}T}{15}{subsubsection.5.1.1.4}}
+\newlabel{namespacemeow_a52b9d9ec3b004a9335222e7bf30e521a}{{5.1.1.4}{15}{Obj\-Size\-T\relax }{subsubsection.5.1.1.4}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.1.5}Obj\discretionary {-}{}{}String}{15}{subsubsection.5.1.1.5}}
+\newlabel{namespacemeow_a52d52e58feff5e9f9013279e2dbd2fee}{{5.1.1.5}{15}{Obj\-String\relax }{subsubsection.5.1.1.5}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {5.1.2}Function Documentation}{15}{subsection.5.1.2}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.1}average}{15}{subsubsection.5.1.2.1}}
+\newlabel{namespacemeow_ad4d1e5fa951e5534204a0ee3eee22777}{{5.1.2.1}{15}{average\relax }{subsubsection.5.1.2.1}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.2}average}{15}{subsubsection.5.1.2.2}}
+\newlabel{namespacemeow_a6ae78e60d507c85de003f8fa8423b650}{{5.1.2.2}{15}{average\relax }{subsubsection.5.1.2.2}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.3}color\discretionary {-}{}{}Transformate}{15}{subsubsection.5.1.2.3}}
+\newlabel{namespacemeow_a6ebfe120c658a6320de42c449e485e54}{{5.1.2.3}{15}{color\-Transformate\relax }{subsubsection.5.1.2.3}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.4}color\discretionary {-}{}{}Transformate}{15}{subsubsection.5.1.2.4}}
+\newlabel{namespacemeow_af9ab85cd87a9f843e710657188f4c601}{{5.1.2.4}{15}{color\-Transformate\relax }{subsubsection.5.1.2.4}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.5}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.5}}
+\newlabel{namespacemeow_a1591a113b022322f1119894a83a56625}{{5.1.2.5}{16}{color\-Transformate\relax }{subsubsection.5.1.2.5}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.6}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.6}}
+\newlabel{namespacemeow_ab4756ef949554840f60a762661acc103}{{5.1.2.6}{16}{color\-Transformate\relax }{subsubsection.5.1.2.6}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.7}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.7}}
+\newlabel{namespacemeow_ad01fb20ad0ae3932e408c06ad80f7b1e}{{5.1.2.7}{16}{color\-Transformate\relax }{subsubsection.5.1.2.7}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.8}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.8}}
+\newlabel{namespacemeow_a7f2b465df93750016d3ff54b2adce77b}{{5.1.2.8}{16}{color\-Transformate\relax }{subsubsection.5.1.2.8}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.9}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.9}}
+\newlabel{namespacemeow_a91f42614ccd31fdb9a3d8529f65198fd}{{5.1.2.9}{16}{color\-Transformate\relax }{subsubsection.5.1.2.9}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.10}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.10}}
+\newlabel{namespacemeow_a19e830f03459a25435ff963551772e74}{{5.1.2.10}{16}{color\-Transformate\relax }{subsubsection.5.1.2.10}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.11}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.11}}
+\newlabel{namespacemeow_ad429f8a956d1f0e1484d08bb9419685b}{{5.1.2.11}{16}{color\-Transformate\relax }{subsubsection.5.1.2.11}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.12}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.12}}
+\newlabel{namespacemeow_af4d344590a86168090c2f2322289f080}{{5.1.2.12}{16}{color\-Transformate\relax }{subsubsection.5.1.2.12}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.13}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.13}}
+\newlabel{namespacemeow_a2f627a58a3394af709ddc8114b4b5286}{{5.1.2.13}{16}{color\-Transformate\relax }{subsubsection.5.1.2.13}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.14}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.14}}
+\newlabel{namespacemeow_a764c66bb63095b178107b276eb0cc24e}{{5.1.2.14}{16}{color\-Transformate\relax }{subsubsection.5.1.2.14}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.15}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.15}}
+\newlabel{namespacemeow_a930aec4a586b79b076e64541f3a96cc7}{{5.1.2.15}{16}{color\-Transformate\relax }{subsubsection.5.1.2.15}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.16}color\discretionary {-}{}{}Transformate}{16}{subsubsection.5.1.2.16}}
+\newlabel{namespacemeow_a5612b34e84764e275631d662e5f210cb}{{5.1.2.16}{16}{color\-Transformate\relax }{subsubsection.5.1.2.16}{}}
+\gdef \LT@i {\LT@entry
+ {1}{55.42702pt}\LT@entry
+ {1}{77.78368pt}\LT@entry
+ {1}{321.34094pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.17}color\discretionary {-}{}{}Transformate}{17}{subsubsection.5.1.2.17}}
+\newlabel{namespacemeow_a4c39f0ec6860546a7b16e3f165bed83e}{{5.1.2.17}{17}{color\-Transformate\relax }{subsubsection.5.1.2.17}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.18}color\discretionary {-}{}{}Transformate}{17}{subsubsection.5.1.2.18}}
+\newlabel{namespacemeow_ae5a2c4f9f20fe94d8fcd378a86e05260}{{5.1.2.18}{17}{color\-Transformate\relax }{subsubsection.5.1.2.18}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.19}color\discretionary {-}{}{}Transformate}{17}{subsubsection.5.1.2.19}}
+\newlabel{namespacemeow_a992d4c33aed66c0d4d7f578ef92dfa15}{{5.1.2.19}{17}{color\-Transformate\relax }{subsubsection.5.1.2.19}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.20}color\discretionary {-}{}{}Transformate}{17}{subsubsection.5.1.2.20}}
+\newlabel{namespacemeow_a303120584f2d7e474096da63bec4cdf5}{{5.1.2.20}{17}{color\-Transformate\relax }{subsubsection.5.1.2.20}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.21}color\discretionary {-}{}{}Transformate}{17}{subsubsection.5.1.2.21}}
+\newlabel{namespacemeow_ae9b7bb880aa5b6dfebd523a6b344a4f1}{{5.1.2.21}{17}{color\-Transformate\relax }{subsubsection.5.1.2.21}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.22}color\discretionary {-}{}{}Transformate}{17}{subsubsection.5.1.2.22}}
+\newlabel{namespacemeow_a0239dc74535f528644a22e3e86e5221c}{{5.1.2.22}{17}{color\-Transformate\relax }{subsubsection.5.1.2.22}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.23}cstring\discretionary {-}{}{}End\discretionary {-}{}{}With}{17}{subsubsection.5.1.2.23}}
+\newlabel{namespacemeow_a375bf0494e671d61343f5be28f3204fb}{{5.1.2.23}{17}{cstring\-End\-With\relax }{subsubsection.5.1.2.23}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.24}cub}{17}{subsubsection.5.1.2.24}}
+\newlabel{namespacemeow_a10a8cca705773b7d9f6f91d3fb08c104}{{5.1.2.24}{17}{cub\relax }{subsubsection.5.1.2.24}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.25}debug\discretionary {-}{}{}Printf\discretionary {-}{}{}\_\discretionary {-}{}{}}{17}{subsubsection.5.1.2.25}}
+\newlabel{namespacemeow_a644a491d867da42696e3cf226019fc25}{{5.1.2.25}{17}{debug\-Printf\-\_\-\relax }{subsubsection.5.1.2.25}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2.26}denormalize}{17}{subsubsection.5.1.2.26}}
+\newlabel{namespacemeow_af95cfca15ad7a51ed4d07b06e1296080}{{5.1.2.26}{17}{denormalize\relax }{subsubsection.5.1.2.26}{}}
+\gdef \LT@ii {\LT@entry
+ {1}{55.42702pt}\LT@entry
+ {1}{77.78368pt}\LT@entry
+ {1}{321.34094pt}}
diff --git a/doc/latex/refman.idx b/doc/latex/refman.idx
new file mode 100644
index 0000000..702bbd7
--- /dev/null
+++ b/doc/latex/refman.idx
@@ -0,0 +1,65 @@
+\indexentry{meow@{meow}|hyperpage}{11}
+\indexentry{meow@{meow}!Feature\discretionary {-}{}{}Point\discretionary {-}{}{}Index\discretionary {-}{}{}Pairs@{Feature\discretionary {-}{}{}Point\discretionary {-}{}{}Index\discretionary {-}{}{}Pairs}|hyperpage}{15}
+\indexentry{Feature\discretionary {-}{}{}Point\discretionary {-}{}{}Index\discretionary {-}{}{}Pairs@{Feature\discretionary {-}{}{}Point\discretionary {-}{}{}Index\discretionary {-}{}{}Pairs}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!Obj\discretionary {-}{}{}Double@{Obj\discretionary {-}{}{}Double}|hyperpage}{15}
+\indexentry{Obj\discretionary {-}{}{}Double@{Obj\discretionary {-}{}{}Double}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!Obj\discretionary {-}{}{}Int@{Obj\discretionary {-}{}{}Int}|hyperpage}{15}
+\indexentry{Obj\discretionary {-}{}{}Int@{Obj\discretionary {-}{}{}Int}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!Obj\discretionary {-}{}{}Size\discretionary {-}{}{}T@{Obj\discretionary {-}{}{}Size\discretionary {-}{}{}T}|hyperpage}{15}
+\indexentry{Obj\discretionary {-}{}{}Size\discretionary {-}{}{}T@{Obj\discretionary {-}{}{}Size\discretionary {-}{}{}T}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!Obj\discretionary {-}{}{}String@{Obj\discretionary {-}{}{}String}|hyperpage}{15}
+\indexentry{Obj\discretionary {-}{}{}String@{Obj\discretionary {-}{}{}String}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!average@{average}|hyperpage}{15}
+\indexentry{average@{average}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!average@{average}|hyperpage}{15}
+\indexentry{average@{average}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{15}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{15}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{15}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{15}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{16}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{16}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{17}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{17}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{17}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{17}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}|hyperpage}{17}
+\indexentry{color\discretionary {-}{}{}Transformate@{color\discretionary {-}{}{}Transformate}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!cstring\discretionary {-}{}{}End\discretionary {-}{}{}With@{cstring\discretionary {-}{}{}End\discretionary {-}{}{}With}|hyperpage}{17}
+\indexentry{cstring\discretionary {-}{}{}End\discretionary {-}{}{}With@{cstring\discretionary {-}{}{}End\discretionary {-}{}{}With}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!cub@{cub}|hyperpage}{17}
+\indexentry{cub@{cub}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!debug\discretionary {-}{}{}Printf\discretionary {-}{}{}\_\discretionary {-}{}{}@{debug\discretionary {-}{}{}Printf\discretionary {-}{}{}\_\discretionary {-}{}{}}|hyperpage}{17}
+\indexentry{debug\discretionary {-}{}{}Printf\discretionary {-}{}{}\_\discretionary {-}{}{}@{debug\discretionary {-}{}{}Printf\discretionary {-}{}{}\_\discretionary {-}{}{}}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!denormalize@{denormalize}|hyperpage}{17}
+\indexentry{denormalize@{denormalize}!meow@{meow}|hyperpage}{17}
+\indexentry{meow@{meow}!filename\discretionary {-}{}{}Compare@{filename\discretionary {-}{}{}Compare}|hyperpage}{17}
+\indexentry{filename\discretionary {-}{}{}Compare@{filename\discretionary {-}{}{}Compare}!meow@{meow}|hyperpage}{17}
diff --git a/doc/latex/refman.log b/doc/latex/refman.log
new file mode 100644
index 0000000..7fad593
--- /dev/null
+++ b/doc/latex/refman.log
@@ -0,0 +1,16784 @@
+This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012/Debian) (format=pdflatex 2013.9.25) 10 JUN 2014 16:02
+entering extended mode
+ restricted \write18 enabled.
+ %&-line parsing enabled.
+**refman
+(./refman.tex
+LaTeX2e <2011/06/27>
+Babel <v3.8m> and hyphenation patterns for english, dumylang, nohyphenation, pi
+nyin, usenglishmax, ukenglish, thai, loaded.
+(/usr/share/texlive/texmf-dist/tex/latex/base/book.cls
+Document Class: book 2007/10/19 v1.4h Standard LaTeX document class
+(/usr/share/texlive/texmf-dist/tex/latex/base/bk10.clo
+File: bk10.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
+)
+\c@part=\count79
+\c@chapter=\count80
+\c@section=\count81
+\c@subsection=\count82
+\c@subsubsection=\count83
+\c@paragraph=\count84
+\c@subparagraph=\count85
+\c@figure=\count86
+\c@table=\count87
+\abovecaptionskip=\skip41
+\belowcaptionskip=\skip42
+\bibindent=\dimen102
+)
+(/usr/share/texlive/texmf-dist/tex/latex/geometry/geometry.sty
+Package: geometry 2010/09/12 v5.6 Page Geometry
+
+(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
+Package: keyval 1999/03/16 v1.13 key=value parser (DPC)
+\KV@toks@=\toks14
+)
+(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
+Package: ifpdf 2011/01/30 v2.3 Provides the ifpdf switch (HO)
+Package ifpdf Info: pdfTeX in PDF mode is detected.
+)
+(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifvtex.sty
+Package: ifvtex 2010/03/01 v1.5 Detect VTeX and its facilities (HO)
+Package ifvtex Info: VTeX not detected.
+)
+(/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
+Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional
+)
+\Gm@cnth=\count88
+\Gm@cntv=\count89
+\c@Gm@tempcnt=\count90
+\Gm@bindingoffset=\dimen103
+\Gm@wd@mp=\dimen104
+\Gm@odd@mp=\dimen105
+\Gm@even@mp=\dimen106
+\Gm@layoutwidth=\dimen107
+\Gm@layoutheight=\dimen108
+\Gm@layouthoffset=\dimen109
+\Gm@layoutvoffset=\dimen110
+\Gm@dimlist=\toks15
+)
+(/usr/share/texlive/texmf-dist/tex/latex/base/makeidx.sty
+Package: makeidx 2000/03/29 v1.0m Standard LaTeX package
+)
+(/usr/share/texlive/texmf-dist/tex/latex/natbib/natbib.sty
+Package: natbib 2010/09/13 8.31b (PWD, AO)
+\bibhang=\skip43
+\bibsep=\skip44
+LaTeX Info: Redefining \cite on input line 694.
+\c@NAT@ctr=\count91
+)
+(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
+Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR)
+
+(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
+Package: graphics 2009/02/05 v1.0o Standard LaTeX Graphics (DPC,SPQR)
+
+(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
+Package: trig 1999/03/16 v1.09 sin cos tan (DPC)
+)
+(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg
+File: graphics.cfg 2010/04/23 v1.9 graphics configuration of TeX Live
+)
+Package graphics Info: Driver file: pdftex.def on input line 91.
+
+(/usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def
+File: pdftex.def 2011/05/27 v0.06d Graphics/color for pdfTeX
+
+(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty
+Package: infwarerr 2010/04/08 v1.3 Providing info/warning/error messages (HO)
+)
+(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty
+Package: ltxcmds 2011/11/09 v1.22 LaTeX kernel commands for general use (HO)
+)
+\Gread@gobject=\count92
+))
+\Gin@req@height=\dimen111
+\Gin@req@width=\dimen112
+)
+(/usr/share/texlive/texmf-dist/tex/latex/tools/multicol.sty
+Package: multicol 2011/06/27 v1.7a multicolumn formatting (FMi)
+\c@tracingmulticols=\count93
+\mult@box=\box26
+\multicol@leftmargin=\dimen113
+\c@unbalance=\count94
+\c@collectmore=\count95
+\doublecol@number=\count96
+\multicoltolerance=\count97
+\multicolpretolerance=\count98
+\full@width=\dimen114
+\page@free=\dimen115
+\premulticols=\dimen116
+\postmulticols=\dimen117
+\multicolsep=\skip45
+\multicolbaselineskip=\skip46
+\partial@page=\box27
+\last@line=\box28
+\mult@rightbox=\box29
+\mult@grightbox=\box30
+\mult@gfirstbox=\box31
+\mult@firstbox=\box32
+\@tempa=\box33
+\@tempa=\box34
+\@tempa=\box35
+\@tempa=\box36
+\@tempa=\box37
+\@tempa=\box38
+\@tempa=\box39
+\@tempa=\box40
+\@tempa=\box41
+\@tempa=\box42
+\@tempa=\box43
+\@tempa=\box44
+\@tempa=\box45
+\@tempa=\box46
+\@tempa=\box47
+\@tempa=\box48
+\@tempa=\box49
+\c@columnbadness=\count99
+\c@finalcolumnbadness=\count100
+\last@try=\dimen118
+\multicolovershoot=\dimen119
+\multicolundershoot=\dimen120
+\mult@nat@firstbox=\box50
+\colbreak@box=\box51
+\multicol@sort@counter=\count101
+)
+(/usr/share/texlive/texmf-dist/tex/latex/float/float.sty
+Package: float 2001/11/08 v1.3d Float enhancements (AL)
+\c@float@type=\count102
+\float@exts=\toks16
+\float@box=\box52
+\@float@everytoks=\toks17
+\@floatcapt=\box53
+)
+(/usr/share/texlive/texmf-dist/tex/latex/listings/listings.sty
+\lst@mode=\count103
+\lst@gtempboxa=\box54
+\lst@token=\toks18
+\lst@length=\count104
+\lst@currlwidth=\dimen121
+\lst@column=\count105
+\lst@pos=\count106
+\lst@lostspace=\dimen122
+\lst@width=\dimen123
+\lst@newlines=\count107
+\lst@lineno=\count108
+\lst@maxwidth=\dimen124
+
+(/usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty
+File: lstmisc.sty 2007/02/22 1.4 (Carsten Heinz)
+\c@lstnumber=\count109
+\lst@skipnumbers=\count110
+\lst@framebox=\box55
+)
+(/usr/share/texlive/texmf-dist/tex/latex/listings/listings.cfg
+File: listings.cfg 2007/02/22 1.4 listings configuration
+))
+Package: listings 2007/02/22 1.4 (Carsten Heinz)
+
+(/usr/share/texlive/texmf-dist/tex/latex/graphics/color.sty
+Package: color 2005/11/14 v1.0j Standard LaTeX Color (DPC)
+
+(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg
+File: color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive
+)
+Package color Info: Driver file: pdftex.def on input line 130.
+)
+(/usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty
+Package: ifthen 2001/05/26 v1.1c Standard LaTeX ifthen package (DPC)
+)
+(/usr/share/texmf/tex/latex/xcolor/xcolor.sty
+Package: xcolor 2007/01/21 v2.11 LaTeX color extensions (UK)
+
+(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg
+File: color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive
+)
+Package xcolor Info: Driver file: pdftex.def on input line 225.
+
+(/usr/share/texlive/texmf-dist/tex/latex/colortbl/colortbl.sty
+Package: colortbl 2012/02/13 v1.0a Color table columns (DPC)
+
+(/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
+Package: array 2008/09/09 v2.4c Tabular extension package (FMi)
+\col@sep=\dimen125
+\extrarowheight=\dimen126
+\NC@list=\toks19
+\extratabsurround=\skip47
+\backup@length=\skip48
+)
+\everycr=\toks20
+\minrowclearance=\skip49
+)
+LaTeX Info: Redefining \color on input line 702.
+\rownum=\count111
+Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1337.
+Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1341.
+Package xcolor Info: Model `RGB' extended on input line 1353.
+Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1355.
+Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1356.
+Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1357.
+Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1358.
+Package xcolor Info: Model `Gray' substituted by `gray' on input line 1359.
+Package xcolor Info: Model `wave' substituted by `hsb' on input line 1360.
+)
+(/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
+Package: textcomp 2005/09/27 v1.99g Standard LaTeX package
+Package textcomp Info: Sub-encoding information:
+(textcomp) 5 = only ISO-Adobe without \textcurrency
+(textcomp) 4 = 5 + \texteuro
+(textcomp) 3 = 4 + \textohm
+(textcomp) 2 = 3 + \textestimated + \textcurrency
+(textcomp) 1 = TS1 - \textcircled - \t
+(textcomp) 0 = TS1 (full)
+(textcomp) Font families with sub-encoding setting implement
+(textcomp) only a restricted character set as indicated.
+(textcomp) Family '?' is the default used for unknown fonts.
+(textcomp) See the documentation for details.
+Package textcomp Info: Setting ? sub-encoding to TS1/1 on input line 71.
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def
+File: ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file
+)
+LaTeX Info: Redefining \oldstylenums on input line 266.
+Package textcomp Info: Setting cmr sub-encoding to TS1/0 on input line 281.
+Package textcomp Info: Setting cmss sub-encoding to TS1/0 on input line 282.
+Package textcomp Info: Setting cmtt sub-encoding to TS1/0 on input line 283.
+Package textcomp Info: Setting cmvtt sub-encoding to TS1/0 on input line 284.
+Package textcomp Info: Setting cmbr sub-encoding to TS1/0 on input line 285.
+Package textcomp Info: Setting cmtl sub-encoding to TS1/0 on input line 286.
+Package textcomp Info: Setting ccr sub-encoding to TS1/0 on input line 287.
+Package textcomp Info: Setting ptm sub-encoding to TS1/4 on input line 288.
+Package textcomp Info: Setting pcr sub-encoding to TS1/4 on input line 289.
+Package textcomp Info: Setting phv sub-encoding to TS1/4 on input line 290.
+Package textcomp Info: Setting ppl sub-encoding to TS1/3 on input line 291.
+Package textcomp Info: Setting pag sub-encoding to TS1/4 on input line 292.
+Package textcomp Info: Setting pbk sub-encoding to TS1/4 on input line 293.
+Package textcomp Info: Setting pnc sub-encoding to TS1/4 on input line 294.
+Package textcomp Info: Setting pzc sub-encoding to TS1/4 on input line 295.
+Package textcomp Info: Setting bch sub-encoding to TS1/4 on input line 296.
+Package textcomp Info: Setting put sub-encoding to TS1/5 on input line 297.
+Package textcomp Info: Setting uag sub-encoding to TS1/5 on input line 298.
+Package textcomp Info: Setting ugq sub-encoding to TS1/5 on input line 299.
+Package textcomp Info: Setting ul8 sub-encoding to TS1/4 on input line 300.
+Package textcomp Info: Setting ul9 sub-encoding to TS1/4 on input line 301.
+Package textcomp Info: Setting augie sub-encoding to TS1/5 on input line 302.
+Package textcomp Info: Setting dayrom sub-encoding to TS1/3 on input line 303.
+Package textcomp Info: Setting dayroms sub-encoding to TS1/3 on input line 304.
+
+Package textcomp Info: Setting pxr sub-encoding to TS1/0 on input line 305.
+Package textcomp Info: Setting pxss sub-encoding to TS1/0 on input line 306.
+Package textcomp Info: Setting pxtt sub-encoding to TS1/0 on input line 307.
+Package textcomp Info: Setting txr sub-encoding to TS1/0 on input line 308.
+Package textcomp Info: Setting txss sub-encoding to TS1/0 on input line 309.
+Package textcomp Info: Setting txtt sub-encoding to TS1/0 on input line 310.
+Package textcomp Info: Setting lmr sub-encoding to TS1/0 on input line 311.
+Package textcomp Info: Setting lmdh sub-encoding to TS1/0 on input line 312.
+Package textcomp Info: Setting lmss sub-encoding to TS1/0 on input line 313.
+Package textcomp Info: Setting lmssq sub-encoding to TS1/0 on input line 314.
+Package textcomp Info: Setting lmvtt sub-encoding to TS1/0 on input line 315.
+Package textcomp Info: Setting qhv sub-encoding to TS1/0 on input line 316.
+Package textcomp Info: Setting qag sub-encoding to TS1/0 on input line 317.
+Package textcomp Info: Setting qbk sub-encoding to TS1/0 on input line 318.
+Package textcomp Info: Setting qcr sub-encoding to TS1/0 on input line 319.
+Package textcomp Info: Setting qcs sub-encoding to TS1/0 on input line 320.
+Package textcomp Info: Setting qpl sub-encoding to TS1/0 on input line 321.
+Package textcomp Info: Setting qtm sub-encoding to TS1/0 on input line 322.
+Package textcomp Info: Setting qzc sub-encoding to TS1/0 on input line 323.
+Package textcomp Info: Setting qhvc sub-encoding to TS1/0 on input line 324.
+Package textcomp Info: Setting futs sub-encoding to TS1/4 on input line 325.
+Package textcomp Info: Setting futx sub-encoding to TS1/4 on input line 326.
+Package textcomp Info: Setting futj sub-encoding to TS1/4 on input line 327.
+Package textcomp Info: Setting hlh sub-encoding to TS1/3 on input line 328.
+Package textcomp Info: Setting hls sub-encoding to TS1/3 on input line 329.
+Package textcomp Info: Setting hlst sub-encoding to TS1/3 on input line 330.
+Package textcomp Info: Setting hlct sub-encoding to TS1/5 on input line 331.
+Package textcomp Info: Setting hlx sub-encoding to TS1/5 on input line 332.
+Package textcomp Info: Setting hlce sub-encoding to TS1/5 on input line 333.
+Package textcomp Info: Setting hlcn sub-encoding to TS1/5 on input line 334.
+Package textcomp Info: Setting hlcw sub-encoding to TS1/5 on input line 335.
+Package textcomp Info: Setting hlcf sub-encoding to TS1/5 on input line 336.
+Package textcomp Info: Setting pplx sub-encoding to TS1/3 on input line 337.
+Package textcomp Info: Setting pplj sub-encoding to TS1/3 on input line 338.
+Package textcomp Info: Setting ptmx sub-encoding to TS1/4 on input line 339.
+Package textcomp Info: Setting ptmj sub-encoding to TS1/4 on input line 340.
+)
+(/usr/share/texlive/texmf-dist/tex/latex/base/alltt.sty
+Package: alltt 1997/06/16 v2.0g defines alltt environment
+)
+(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty
+Package: hyperref 2012/05/13 v6.82q Hypertext links for LaTeX
+
+(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
+Package: hobsub-hyperref 2012/05/28 v1.13 Bundle oberdiek, subset hyperref (HO)
+
+
+(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty
+Package: hobsub-generic 2012/05/28 v1.13 Bundle oberdiek, subset generic (HO)
+Package: hobsub 2012/05/28 v1.13 Construct package bundles (HO)
+Package hobsub Info: Skipping package `infwarerr' (already loaded).
+Package hobsub Info: Skipping package `ltxcmds' (already loaded).
+Package: ifluatex 2010/03/01 v1.3 Provides the ifluatex switch (HO)
+Package ifluatex Info: LuaTeX not detected.
+Package hobsub Info: Skipping package `ifvtex' (already loaded).
+Package: intcalc 2007/09/27 v1.1 Expandable calculations with integers (HO)
+Package hobsub Info: Skipping package `ifpdf' (already loaded).
+Package: etexcmds 2011/02/16 v1.5 Avoid name clashes with e-TeX commands (HO)
+Package etexcmds Info: Could not find \expanded.
+(etexcmds) That can mean that you are not using pdfTeX 1.50 or
+(etexcmds) that some package has redefined \expanded.
+(etexcmds) In the latter case, load this package earlier.
+Package: kvsetkeys 2012/04/25 v1.16 Key value parser (HO)
+Package: kvdefinekeys 2011/04/07 v1.3 Define keys (HO)
+Package: pdftexcmds 2011/11/29 v0.20 Utility functions of pdfTeX for LuaTeX (HO
+)
+Package pdftexcmds Info: LuaTeX not detected.
+Package pdftexcmds Info: \pdf@primitive is available.
+Package pdftexcmds Info: \pdf@ifprimitive is available.
+Package pdftexcmds Info: \pdfdraftmode found.
+Package: pdfescape 2011/11/25 v1.13 Implements pdfTeX's escape features (HO)
+Package: bigintcalc 2012/04/08 v1.3 Expandable calculations on big integers (HO
+)
+Package: bitset 2011/01/30 v1.1 Handle bit-vector datatype (HO)
+Package: uniquecounter 2011/01/30 v1.2 Provide unlimited unique counter (HO)
+)
+Package hobsub Info: Skipping package `hobsub' (already loaded).
+Package: letltxmacro 2010/09/02 v1.4 Let assignment for LaTeX macros (HO)
+Package: hopatch 2012/05/28 v1.2 Wrapper for package hooks (HO)
+Package: xcolor-patch 2011/01/30 xcolor patch
+Package: atveryend 2011/06/30 v1.8 Hooks at the very end of document (HO)
+Package atveryend Info: \enddocument detected (standard20110627).
+Package: atbegshi 2011/10/05 v1.16 At begin shipout hook (HO)
+Package: refcount 2011/10/16 v3.4 Data extraction from label references (HO)
+Package: hycolor 2011/01/30 v1.7 Color options for hyperref/bookmark (HO)
+)
+(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty
+Package: kvoptions 2011/06/30 v3.11 Key value format for package options (HO)
+)
+\@linkdim=\dimen127
+\Hy@linkcounter=\count112
+\Hy@pagecounter=\count113
+
+(/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def
+File: pd1enc.def 2012/05/13 v6.82q Hyperref: PDFDocEncoding definition (HO)
+)
+\Hy@SavedSpaceFactor=\count114
+
+(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg
+File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive
+)
+Package hyperref Info: Option `colorlinks' set `true' on input line 3941.
+Package hyperref Info: Option `unicode' set `true' on input line 3941.
+
+(/usr/share/texlive/texmf-dist/tex/latex/hyperref/puenc.def
+File: puenc.def 2012/05/13 v6.82q Hyperref: PDF Unicode definition (HO)
+)
+Package hyperref Info: Hyper figures OFF on input line 4062.
+Package hyperref Info: Link nesting OFF on input line 4067.
+Package hyperref Info: Hyper index ON on input line 4070.
+Package hyperref Info: Plain pages OFF on input line 4077.
+Package hyperref Info: Backreferencing ON on input line 4080.
+Package hyperref Info: Implicit mode ON; LaTeX internals redefined.
+Package hyperref Info: Bookmarks ON on input line 4300.
+
+(/usr/share/texlive/texmf-dist/tex/latex/hyperref/backref.sty
+Package: backref 2010/08/30 v1.36 Bibliographical back referencing
+
+(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty
+Package: rerunfilecheck 2011/04/15 v1.7 Rerun checks for auxiliary files (HO)
+Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2
+82.
+))
+\c@Hy@tempcnt=\count115
+
+(/usr/share/texlive/texmf-dist/tex/latex/url/url.sty
+\Urlmuskip=\muskip10
+Package: url 2006/04/12 ver 3.3 Verb mode for urls, etc.
+)
+LaTeX Info: Redefining \url on input line 4653.
+\Fld@menulength=\count116
+\Field@Width=\dimen128
+\Fld@charsize=\dimen129
+Package hyperref Info: Hyper figures OFF on input line 5773.
+Package hyperref Info: Link nesting OFF on input line 5778.
+Package hyperref Info: Hyper index ON on input line 5781.
+Package hyperref Info: backreferencing ON on input line 5786.
+Package hyperref Info: Link coloring ON on input line 5791.
+Package hyperref Info: Link coloring with OCG OFF on input line 5798.
+Package hyperref Info: PDF/A mode OFF on input line 5803.
+LaTeX Info: Redefining \ref on input line 5843.
+LaTeX Info: Redefining \pageref on input line 5847.
+\Hy@abspage=\count117
+\c@Item=\count118
+\c@Hfootnote=\count119
+)
+
+Package hyperref Message: Driver: hpdftex.
+
+(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def
+File: hpdftex.def 2012/05/13 v6.82q Hyperref driver for pdfTeX
+\Fld@listcount=\count120
+\c@bookmark@seq@number=\count121
+\Hy@SectionHShift=\skip50
+)
+(/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
+Package: inputenc 2008/03/30 v1.1d Input encoding file
+\inpenc@prehook=\toks21
+\inpenc@posthook=\toks22
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def
+File: utf8.def 2008/04/05 v1.1m UTF-8 support for inputenc
+Now handling font encoding OML ...
+... no UTF-8 mapping file for font encoding OML
+Now handling font encoding T1 ...
+... processing UTF-8 mapping file for font encoding T1
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu
+File: t1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc
+ defining Unicode char U+00A1 (decimal 161)
+ defining Unicode char U+00A3 (decimal 163)
+ defining Unicode char U+00AB (decimal 171)
+ defining Unicode char U+00BB (decimal 187)
+ defining Unicode char U+00BF (decimal 191)
+ defining Unicode char U+00C0 (decimal 192)
+ defining Unicode char U+00C1 (decimal 193)
+ defining Unicode char U+00C2 (decimal 194)
+ defining Unicode char U+00C3 (decimal 195)
+ defining Unicode char U+00C4 (decimal 196)
+ defining Unicode char U+00C5 (decimal 197)
+ defining Unicode char U+00C6 (decimal 198)
+ defining Unicode char U+00C7 (decimal 199)
+ defining Unicode char U+00C8 (decimal 200)
+ defining Unicode char U+00C9 (decimal 201)
+ defining Unicode char U+00CA (decimal 202)
+ defining Unicode char U+00CB (decimal 203)
+ defining Unicode char U+00CC (decimal 204)
+ defining Unicode char U+00CD (decimal 205)
+ defining Unicode char U+00CE (decimal 206)
+ defining Unicode char U+00CF (decimal 207)
+ defining Unicode char U+00D0 (decimal 208)
+ defining Unicode char U+00D1 (decimal 209)
+ defining Unicode char U+00D2 (decimal 210)
+ defining Unicode char U+00D3 (decimal 211)
+ defining Unicode char U+00D4 (decimal 212)
+ defining Unicode char U+00D5 (decimal 213)
+ defining Unicode char U+00D6 (decimal 214)
+ defining Unicode char U+00D8 (decimal 216)
+ defining Unicode char U+00D9 (decimal 217)
+ defining Unicode char U+00DA (decimal 218)
+ defining Unicode char U+00DB (decimal 219)
+ defining Unicode char U+00DC (decimal 220)
+ defining Unicode char U+00DD (decimal 221)
+ defining Unicode char U+00DE (decimal 222)
+ defining Unicode char U+00DF (decimal 223)
+ defining Unicode char U+00E0 (decimal 224)
+ defining Unicode char U+00E1 (decimal 225)
+ defining Unicode char U+00E2 (decimal 226)
+ defining Unicode char U+00E3 (decimal 227)
+ defining Unicode char U+00E4 (decimal 228)
+ defining Unicode char U+00E5 (decimal 229)
+ defining Unicode char U+00E6 (decimal 230)
+ defining Unicode char U+00E7 (decimal 231)
+ defining Unicode char U+00E8 (decimal 232)
+ defining Unicode char U+00E9 (decimal 233)
+ defining Unicode char U+00EA (decimal 234)
+ defining Unicode char U+00EB (decimal 235)
+ defining Unicode char U+00EC (decimal 236)
+ defining Unicode char U+00ED (decimal 237)
+ defining Unicode char U+00EE (decimal 238)
+ defining Unicode char U+00EF (decimal 239)
+ defining Unicode char U+00F0 (decimal 240)
+ defining Unicode char U+00F1 (decimal 241)
+ defining Unicode char U+00F2 (decimal 242)
+ defining Unicode char U+00F3 (decimal 243)
+ defining Unicode char U+00F4 (decimal 244)
+ defining Unicode char U+00F5 (decimal 245)
+ defining Unicode char U+00F6 (decimal 246)
+ defining Unicode char U+00F8 (decimal 248)
+ defining Unicode char U+00F9 (decimal 249)
+ defining Unicode char U+00FA (decimal 250)
+ defining Unicode char U+00FB (decimal 251)
+ defining Unicode char U+00FC (decimal 252)
+ defining Unicode char U+00FD (decimal 253)
+ defining Unicode char U+00FE (decimal 254)
+ defining Unicode char U+00FF (decimal 255)
+ defining Unicode char U+0102 (decimal 258)
+ defining Unicode char U+0103 (decimal 259)
+ defining Unicode char U+0104 (decimal 260)
+ defining Unicode char U+0105 (decimal 261)
+ defining Unicode char U+0106 (decimal 262)
+ defining Unicode char U+0107 (decimal 263)
+ defining Unicode char U+010C (decimal 268)
+ defining Unicode char U+010D (decimal 269)
+ defining Unicode char U+010E (decimal 270)
+ defining Unicode char U+010F (decimal 271)
+ defining Unicode char U+0110 (decimal 272)
+ defining Unicode char U+0111 (decimal 273)
+ defining Unicode char U+0118 (decimal 280)
+ defining Unicode char U+0119 (decimal 281)
+ defining Unicode char U+011A (decimal 282)
+ defining Unicode char U+011B (decimal 283)
+ defining Unicode char U+011E (decimal 286)
+ defining Unicode char U+011F (decimal 287)
+ defining Unicode char U+0130 (decimal 304)
+ defining Unicode char U+0131 (decimal 305)
+ defining Unicode char U+0132 (decimal 306)
+ defining Unicode char U+0133 (decimal 307)
+ defining Unicode char U+0139 (decimal 313)
+ defining Unicode char U+013A (decimal 314)
+ defining Unicode char U+013D (decimal 317)
+ defining Unicode char U+013E (decimal 318)
+ defining Unicode char U+0141 (decimal 321)
+ defining Unicode char U+0142 (decimal 322)
+ defining Unicode char U+0143 (decimal 323)
+ defining Unicode char U+0144 (decimal 324)
+ defining Unicode char U+0147 (decimal 327)
+ defining Unicode char U+0148 (decimal 328)
+ defining Unicode char U+014A (decimal 330)
+ defining Unicode char U+014B (decimal 331)
+ defining Unicode char U+0150 (decimal 336)
+ defining Unicode char U+0151 (decimal 337)
+ defining Unicode char U+0152 (decimal 338)
+ defining Unicode char U+0153 (decimal 339)
+ defining Unicode char U+0154 (decimal 340)
+ defining Unicode char U+0155 (decimal 341)
+ defining Unicode char U+0158 (decimal 344)
+ defining Unicode char U+0159 (decimal 345)
+ defining Unicode char U+015A (decimal 346)
+ defining Unicode char U+015B (decimal 347)
+ defining Unicode char U+015E (decimal 350)
+ defining Unicode char U+015F (decimal 351)
+ defining Unicode char U+0160 (decimal 352)
+ defining Unicode char U+0161 (decimal 353)
+ defining Unicode char U+0162 (decimal 354)
+ defining Unicode char U+0163 (decimal 355)
+ defining Unicode char U+0164 (decimal 356)
+ defining Unicode char U+0165 (decimal 357)
+ defining Unicode char U+016E (decimal 366)
+ defining Unicode char U+016F (decimal 367)
+ defining Unicode char U+0170 (decimal 368)
+ defining Unicode char U+0171 (decimal 369)
+ defining Unicode char U+0178 (decimal 376)
+ defining Unicode char U+0179 (decimal 377)
+ defining Unicode char U+017A (decimal 378)
+ defining Unicode char U+017B (decimal 379)
+ defining Unicode char U+017C (decimal 380)
+ defining Unicode char U+017D (decimal 381)
+ defining Unicode char U+017E (decimal 382)
+ defining Unicode char U+200C (decimal 8204)
+ defining Unicode char U+2013 (decimal 8211)
+ defining Unicode char U+2014 (decimal 8212)
+ defining Unicode char U+2018 (decimal 8216)
+ defining Unicode char U+2019 (decimal 8217)
+ defining Unicode char U+201A (decimal 8218)
+ defining Unicode char U+201C (decimal 8220)
+ defining Unicode char U+201D (decimal 8221)
+ defining Unicode char U+201E (decimal 8222)
+ defining Unicode char U+2030 (decimal 8240)
+ defining Unicode char U+2031 (decimal 8241)
+ defining Unicode char U+2039 (decimal 8249)
+ defining Unicode char U+203A (decimal 8250)
+ defining Unicode char U+2423 (decimal 9251)
+)
+Now handling font encoding OT1 ...
+... processing UTF-8 mapping file for font encoding OT1
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu
+File: ot1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc
+ defining Unicode char U+00A1 (decimal 161)
+ defining Unicode char U+00A3 (decimal 163)
+ defining Unicode char U+00B8 (decimal 184)
+ defining Unicode char U+00BF (decimal 191)
+ defining Unicode char U+00C5 (decimal 197)
+ defining Unicode char U+00C6 (decimal 198)
+ defining Unicode char U+00D8 (decimal 216)
+ defining Unicode char U+00DF (decimal 223)
+ defining Unicode char U+00E6 (decimal 230)
+ defining Unicode char U+00EC (decimal 236)
+ defining Unicode char U+00ED (decimal 237)
+ defining Unicode char U+00EE (decimal 238)
+ defining Unicode char U+00EF (decimal 239)
+ defining Unicode char U+00F8 (decimal 248)
+ defining Unicode char U+0131 (decimal 305)
+ defining Unicode char U+0141 (decimal 321)
+ defining Unicode char U+0142 (decimal 322)
+ defining Unicode char U+0152 (decimal 338)
+ defining Unicode char U+0153 (decimal 339)
+ defining Unicode char U+2013 (decimal 8211)
+ defining Unicode char U+2014 (decimal 8212)
+ defining Unicode char U+2018 (decimal 8216)
+ defining Unicode char U+2019 (decimal 8217)
+ defining Unicode char U+201C (decimal 8220)
+ defining Unicode char U+201D (decimal 8221)
+)
+Now handling font encoding OMS ...
+... processing UTF-8 mapping file for font encoding OMS
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu
+File: omsenc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc
+ defining Unicode char U+00A7 (decimal 167)
+ defining Unicode char U+00B6 (decimal 182)
+ defining Unicode char U+00B7 (decimal 183)
+ defining Unicode char U+2020 (decimal 8224)
+ defining Unicode char U+2021 (decimal 8225)
+ defining Unicode char U+2022 (decimal 8226)
+)
+Now handling font encoding OMX ...
+... no UTF-8 mapping file for font encoding OMX
+Now handling font encoding U ...
+... no UTF-8 mapping file for font encoding U
+Now handling font encoding TS1 ...
+... processing UTF-8 mapping file for font encoding TS1
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu
+File: ts1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc
+ defining Unicode char U+00A2 (decimal 162)
+ defining Unicode char U+00A3 (decimal 163)
+ defining Unicode char U+00A4 (decimal 164)
+ defining Unicode char U+00A5 (decimal 165)
+ defining Unicode char U+00A6 (decimal 166)
+ defining Unicode char U+00A7 (decimal 167)
+ defining Unicode char U+00A8 (decimal 168)
+ defining Unicode char U+00A9 (decimal 169)
+ defining Unicode char U+00AA (decimal 170)
+ defining Unicode char U+00AC (decimal 172)
+ defining Unicode char U+00AE (decimal 174)
+ defining Unicode char U+00AF (decimal 175)
+ defining Unicode char U+00B0 (decimal 176)
+ defining Unicode char U+00B1 (decimal 177)
+ defining Unicode char U+00B2 (decimal 178)
+ defining Unicode char U+00B3 (decimal 179)
+ defining Unicode char U+00B4 (decimal 180)
+ defining Unicode char U+00B5 (decimal 181)
+ defining Unicode char U+00B6 (decimal 182)
+ defining Unicode char U+00B7 (decimal 183)
+ defining Unicode char U+00B9 (decimal 185)
+ defining Unicode char U+00BA (decimal 186)
+ defining Unicode char U+00BC (decimal 188)
+ defining Unicode char U+00BD (decimal 189)
+ defining Unicode char U+00BE (decimal 190)
+ defining Unicode char U+00D7 (decimal 215)
+ defining Unicode char U+00F7 (decimal 247)
+ defining Unicode char U+0192 (decimal 402)
+ defining Unicode char U+02C7 (decimal 711)
+ defining Unicode char U+02D8 (decimal 728)
+ defining Unicode char U+02DD (decimal 733)
+ defining Unicode char U+0E3F (decimal 3647)
+ defining Unicode char U+2016 (decimal 8214)
+ defining Unicode char U+2020 (decimal 8224)
+ defining Unicode char U+2021 (decimal 8225)
+ defining Unicode char U+2022 (decimal 8226)
+ defining Unicode char U+2030 (decimal 8240)
+ defining Unicode char U+2031 (decimal 8241)
+ defining Unicode char U+203B (decimal 8251)
+ defining Unicode char U+203D (decimal 8253)
+ defining Unicode char U+2044 (decimal 8260)
+ defining Unicode char U+204E (decimal 8270)
+ defining Unicode char U+2052 (decimal 8274)
+ defining Unicode char U+20A1 (decimal 8353)
+ defining Unicode char U+20A4 (decimal 8356)
+ defining Unicode char U+20A6 (decimal 8358)
+ defining Unicode char U+20A9 (decimal 8361)
+ defining Unicode char U+20AB (decimal 8363)
+ defining Unicode char U+20AC (decimal 8364)
+ defining Unicode char U+20B1 (decimal 8369)
+ defining Unicode char U+2103 (decimal 8451)
+ defining Unicode char U+2116 (decimal 8470)
+ defining Unicode char U+2117 (decimal 8471)
+ defining Unicode char U+211E (decimal 8478)
+ defining Unicode char U+2120 (decimal 8480)
+ defining Unicode char U+2122 (decimal 8482)
+ defining Unicode char U+2126 (decimal 8486)
+ defining Unicode char U+2127 (decimal 8487)
+ defining Unicode char U+212E (decimal 8494)
+ defining Unicode char U+2190 (decimal 8592)
+ defining Unicode char U+2191 (decimal 8593)
+ defining Unicode char U+2192 (decimal 8594)
+ defining Unicode char U+2193 (decimal 8595)
+ defining Unicode char U+2329 (decimal 9001)
+ defining Unicode char U+232A (decimal 9002)
+ defining Unicode char U+2422 (decimal 9250)
+ defining Unicode char U+25E6 (decimal 9702)
+ defining Unicode char U+25EF (decimal 9711)
+ defining Unicode char U+266A (decimal 9834)
+)
+Now handling font encoding PD1 ...
+... no UTF-8 mapping file for font encoding PD1
+Now handling font encoding PU ...
+... no UTF-8 mapping file for font encoding PU
+ defining Unicode char U+00A9 (decimal 169)
+ defining Unicode char U+00AA (decimal 170)
+ defining Unicode char U+00AE (decimal 174)
+ defining Unicode char U+00BA (decimal 186)
+ defining Unicode char U+02C6 (decimal 710)
+ defining Unicode char U+02DC (decimal 732)
+ defining Unicode char U+200C (decimal 8204)
+ defining Unicode char U+2026 (decimal 8230)
+ defining Unicode char U+2122 (decimal 8482)
+ defining Unicode char U+2423 (decimal 9251)
+))
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/mathptmx.sty
+Package: mathptmx 2005/04/12 PSNFSS-v9.2a Times w/ Math, improved (SPQR, WaS)
+LaTeX Font Info: Redeclaring symbol font `operators' on input line 28.
+LaTeX Font Info: Overwriting symbol font `operators' in version `normal'
+(Font) OT1/cmr/m/n --> OT1/ztmcm/m/n on input line 28.
+LaTeX Font Info: Overwriting symbol font `operators' in version `bold'
+(Font) OT1/cmr/bx/n --> OT1/ztmcm/m/n on input line 28.
+LaTeX Font Info: Redeclaring symbol font `letters' on input line 29.
+LaTeX Font Info: Overwriting symbol font `letters' in version `normal'
+(Font) OML/cmm/m/it --> OML/ztmcm/m/it on input line 29.
+LaTeX Font Info: Overwriting symbol font `letters' in version `bold'
+(Font) OML/cmm/b/it --> OML/ztmcm/m/it on input line 29.
+LaTeX Font Info: Redeclaring symbol font `symbols' on input line 30.
+LaTeX Font Info: Overwriting symbol font `symbols' in version `normal'
+(Font) OMS/cmsy/m/n --> OMS/ztmcm/m/n on input line 30.
+LaTeX Font Info: Overwriting symbol font `symbols' in version `bold'
+(Font) OMS/cmsy/b/n --> OMS/ztmcm/m/n on input line 30.
+LaTeX Font Info: Redeclaring symbol font `largesymbols' on input line 31.
+LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal'
+(Font) OMX/cmex/m/n --> OMX/ztmcm/m/n on input line 31.
+LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold'
+(Font) OMX/cmex/m/n --> OMX/ztmcm/m/n on input line 31.
+\symbold=\mathgroup4
+\symitalic=\mathgroup5
+LaTeX Font Info: Redeclaring math alphabet \mathbf on input line 34.
+LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal'
+(Font) OT1/cmr/bx/n --> OT1/ptm/bx/n on input line 34.
+LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold'
+(Font) OT1/cmr/bx/n --> OT1/ptm/bx/n on input line 34.
+LaTeX Font Info: Redeclaring math alphabet \mathit on input line 35.
+LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal'
+(Font) OT1/cmr/m/it --> OT1/ptm/m/it on input line 35.
+LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold'
+(Font) OT1/cmr/bx/it --> OT1/ptm/m/it on input line 35.
+LaTeX Info: Redefining \hbar on input line 50.
+)
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/helvet.sty
+Package: helvet 2005/04/12 PSNFSS-v9.2a (WaS)
+)
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/courier.sty
+Package: courier 2005/04/12 PSNFSS-v9.2a (WaS)
+)
+(/usr/share/texlive/texmf-dist/tex/latex/sectsty/sectsty.sty
+Package: sectsty 2002/02/25 v2.0.2 Commands to change all sectional heading sty
+les
+)
+(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty
+Package: amssymb 2009/06/22 v3.00
+
+(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty
+Package: amsfonts 2009/06/22 v3.00 Basic AMSFonts support
+\@emptytoks=\toks23
+\symAMSa=\mathgroup6
+\symAMSb=\mathgroup7
+LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold'
+(Font) U/euf/m/n --> U/euf/b/n on input line 96.
+))
+(/usr/share/texlive/texmf-dist/tex/latex/tocloft/tocloft.sty
+Package: tocloft 2010/10/13 v2.3e parameterised ToC, etc., typesetting
+Package tocloft Info: The document has chapter divisions on input line 43.
+\cftparskip=\skip51
+\cftbeforetoctitleskip=\skip52
+\cftaftertoctitleskip=\skip53
+\cftbeforepartskip=\skip54
+\cftpartnumwidth=\skip55
+\cftpartindent=\skip56
+\cftbeforechapskip=\skip57
+\cftchapindent=\skip58
+\cftchapnumwidth=\skip59
+\cftbeforesecskip=\skip60
+\cftsecindent=\skip61
+\cftsecnumwidth=\skip62
+\cftbeforesubsecskip=\skip63
+\cftsubsecindent=\skip64
+\cftsubsecnumwidth=\skip65
+\cftbeforesubsubsecskip=\skip66
+\cftsubsubsecindent=\skip67
+\cftsubsubsecnumwidth=\skip68
+\cftbeforeparaskip=\skip69
+\cftparaindent=\skip70
+\cftparanumwidth=\skip71
+\cftbeforesubparaskip=\skip72
+\cftsubparaindent=\skip73
+\cftsubparanumwidth=\skip74
+\cftbeforeloftitleskip=\skip75
+\cftafterloftitleskip=\skip76
+\cftbeforefigskip=\skip77
+\cftfigindent=\skip78
+\cftfignumwidth=\skip79
+\c@lofdepth=\count122
+\c@lotdepth=\count123
+\cftbeforelottitleskip=\skip80
+\cftafterlottitleskip=\skip81
+\cftbeforetabskip=\skip82
+\cfttabindent=\skip83
+\cfttabnumwidth=\skip84
+) (./doxygen.sty
+Package: doxygen
+
+(/usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty
+Package: calc 2007/08/22 v4.3 Infix arithmetic (KKT,FJ)
+\calc@Acount=\count124
+\calc@Bcount=\count125
+\calc@Adimen=\dimen130
+\calc@Bdimen=\dimen131
+\calc@Askip=\skip85
+\calc@Bskip=\skip86
+LaTeX Info: Redefining \setlength on input line 76.
+LaTeX Info: Redefining \addtolength on input line 77.
+\calc@Ccount=\count126
+\calc@Cskip=\skip87
+)
+(/usr/share/texlive/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty
+\fancy@headwidth=\skip88
+\f@ncyO@elh=\skip89
+\f@ncyO@erh=\skip90
+\f@ncyO@olh=\skip91
+\f@ncyO@orh=\skip92
+\f@ncyO@elf=\skip93
+\f@ncyO@erf=\skip94
+\f@ncyO@olf=\skip95
+\f@ncyO@orf=\skip96
+)
+(/usr/share/texlive/texmf-dist/tex/latex/tools/longtable.sty
+Package: longtable 2004/02/01 v4.11 Multi-page Table package (DPC)
+\LTleft=\skip97
+\LTright=\skip98
+\LTpre=\skip99
+\LTpost=\skip100
+\LTchunksize=\count127
+\LTcapwidth=\dimen132
+\LT@head=\box56
+\LT@firsthead=\box57
+\LT@foot=\box58
+\LT@lastfoot=\box59
+\LT@cols=\count128
+\LT@rows=\count129
+\c@LT@tables=\count130
+\c@LT@chunks=\count131
+\LT@p@ftn=\toks24
+)
+(/usr/share/texlive/texmf-dist/tex/latex/tools/verbatim.sty
+Package: verbatim 2003/08/22 v1.5q LaTeX2e package for verbatim enhancements
+\every@verbatim=\toks25
+\verbatim@line=\toks26
+\verbatim@in@stream=\read1
+)
+(/usr/share/texlive/texmf-dist/tex/latex/xtab/xtab.sty
+Package: xtab 2011/07/31 v2.3f Extended supertabular package
+\c@tracingst=\count132
+\PWSTcapht=\dimen133
+\ST@wd=\dimen134
+\ST@rightskip=\skip101
+\ST@leftskip=\skip102
+\ST@parfillskip=\skip103
+\c@PWSTtable=\count133
+\PWSTlastpage=\count134
+\PWSTpenultimate=\count135
+\PWSTcurpage=\count136
+\PWSTtempc=\count137
+\PWSTlines=\count138
+\PWST@lastht=\dimen135
+\PWST@generalht=\dimen136
+\PWST@ht=\dimen137
+\ST@pageleft=\dimen138
+\ST@headht=\dimen139
+\ST@tailht=\dimen140
+\ST@pagesofar=\dimen141
+\ST@pboxht=\dimen142
+\ST@lineht=\dimen143
+\ST@stretchht=\dimen144
+\ST@prevht=\dimen145
+\ST@toadd=\dimen146
+\ST@dimen=\dimen147
+\ST@pbox=\box60
+)
+(/usr/share/texlive/texmf-dist/tex/latex/multirow/multirow.sty
+\bigstrutjot=\dimen148
+)
+\tmplength=\skip104
+\xrefbox=\box61
+\xreflength=\skip105
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
+Package: fontenc 2005/09/27 v1.99g Standard LaTeX package
+
+(/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
+File: t1enc.def 2005/09/27 v1.99g Standard LaTeX file
+LaTeX Font Info: Redeclaring font encoding T1 on input line 43.
+)))
+(/usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
+File: lstlang1.sty 2004/09/05 1.3 listings language file
+)
+(/usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
+File: lstlang1.sty 2004/09/05 1.3 listings language file
+)
+(/usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty
+File: lstmisc.sty 2007/02/22 1.4 (Carsten Heinz)
+)
+\@indexfile=\write3
+\openout3 = `refman.idx'.
+
+
+Writing index file refman.idx
+No file refman.aux.
+\openout1 = `refman.aux'.
+
+LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 49.
+LaTeX Font Info: Try loading font information for TS1+cmr on input line 49.
+(/usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd
+File: ts1cmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions
+)
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 49.
+LaTeX Font Info: ... okay on input line 49.
+LaTeX Font Info: Try loading font information for T1+phv on input line 49.
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1phv.fd
+File: t1phv.fd 2001/06/04 scalable font definitions for T1/phv.
+)
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 8.99994pt on input line 49.
+
+*geometry* driver: auto-detecting
+*geometry* detected driver: pdftex
+*geometry* verbose mode - [ preamble ] result:
+* driver: pdftex
+* paper: a4paper
+* layout: <same size as paper>
+* layoutoffset:(h,v)=(0.0pt,0.0pt)
+* modes: twoside
+* h-part:(L,W,R)=(71.13188pt, 455.24411pt, 71.13188pt)
+* v-part:(T,H,B)=(71.13188pt, 702.78308pt, 71.13188pt)
+* \paperwidth=597.50787pt
+* \paperheight=845.04684pt
+* \textwidth=455.24411pt
+* \textheight=702.78308pt
+* \oddsidemargin=-1.1381pt
+* \evensidemargin=-1.1381pt
+* \topmargin=-31.2056pt
+* \headheight=12.0pt
+* \headsep=18.06749pt
+* \topskip=10.0pt
+* \footskip=25.29494pt
+* \marginparwidth=125.0pt
+* \marginparsep=7.0pt
+* \columnsep=10.0pt
+* \skip\footins=9.0pt plus 4.0pt minus 2.0pt
+* \hoffset=0.0pt
+* \voffset=0.0pt
+* \mag=1000
+* \@twocolumnfalse
+* \@twosidetrue
+* \@mparswitchtrue
+* \@reversemarginfalse
+* (1in=72.27pt=25.4mm, 1cm=28.453pt)
+
+(/usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii
+[Loading MPS to PDF converter (version 2006.09.02).]
+\scratchcounter=\count139
+\scratchdimen=\dimen149
+\scratchbox=\box62
+\nofMPsegments=\count140
+\nofMParguments=\count141
+\everyMPshowfont=\toks27
+\MPscratchCnt=\count142
+\MPscratchDim=\dimen150
+\MPnumerator=\count143
+\makeMPintoPDFobject=\count144
+\everyMPtoPDFconversion=\toks28
+) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
+Package: epstopdf-base 2010/02/09 v2.5 Base part for package epstopdf
+
+(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty
+Package: grfext 2010/08/19 v1.1 Manage graphics extensions (HO)
+)
+Package grfext Info: Graphics extension search list:
+(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE
+G,.JBIG2,.JB2,.eps]
+(grfext) \AppendGraphicsExtensions on input line 452.
+
+(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
+File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv
+e
+))
+\c@lstlisting=\count145
+\AtBeginShipoutBox=\box63
+Package backref Info: ** backref set up for natbib ** on input line 49.
+Package hyperref Info: Link coloring ON on input line 49.
+
+(/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
+Package: nameref 2010/04/30 v2.40 Cross-referencing by name of section
+
+(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty
+Package: gettitlestring 2010/12/03 v1.4 Cleanup title references (HO)
+)
+\c@section@level=\count146
+)
+LaTeX Info: Redefining \ref on input line 49.
+LaTeX Info: Redefining \pageref on input line 49.
+LaTeX Info: Redefining \nameref on input line 49.
+\@outlinefile=\write4
+\openout4 = `refman.out'.
+
+\big@size=\dimen151
+Package hyperref Info: Option `pageanchor' set `false' on input line 50.
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 12.9599pt on input line 54.
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 10.79993pt on input line 56.
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 8.09995pt on input line 58.
+
+[1
+
+
+{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2
+
+]
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 22.39185pt on input line 63.
+LaTeX Font Info: Font shape `T1/phv/bx/n' in size <24.88> not available
+(Font) Font shape `T1/phv/b/n' tried instead on input line 63.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 22.39185pt on input line 63.
+LaTeX Font Info: Try loading font information for OT1+phv on input line 63.
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/ot1phv.fd
+File: ot1phv.fd 2001/06/04 scalable font definitions for OT1/phv.
+)
+LaTeX Font Info: Font shape `OT1/phv/bc/n' will be
+(Font) scaled to size 22.39185pt on input line 63.
+\tf@toc=\write5
+\openout5 = `refman.toc'.
+
+ [1
+
+] [2
+
+]
+Package hyperref Info: Option `pageanchor' set `true' on input line 66.
+
+Chapter 1.
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 18.66588pt on input line 68.
+LaTeX Font Info: Font shape `T1/phv/bx/n' in size <20.74> not available
+(Font) Font shape `T1/phv/b/n' tried instead on input line 68.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 18.66588pt on input line 68.
+LaTeX Font Info: Font shape `OT1/phv/bc/n' will be
+(Font) scaled to size 18.66588pt on input line 68.
+(./namespaces.tex
+LaTeX Font Info: Font shape `T1/phv/bx/n' in size <14.4> not available
+(Font) Font shape `T1/phv/b/n' tried instead on input line 1.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 12.9599pt on input line 1.
+LaTeX Font Info: Font shape `OT1/phv/bc/n' will be
+(Font) scaled to size 12.9599pt on input line 1.
+LaTeX Font Info: Try loading font information for OT1+ztmcm on input line 3.
+
+ (/usr/share/texlive/texmf-dist/tex/latex/psnfss/ot1ztmcm.fd
+File: ot1ztmcm.fd 2000/01/03 Fontinst v1.801 font definitions for OT1/ztmcm.
+)
+LaTeX Font Info: Try loading font information for OML+ztmcm on input line 3.
+
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/omlztmcm.fd
+File: omlztmcm.fd 2000/01/03 Fontinst v1.801 font definitions for OML/ztmcm.
+)
+LaTeX Font Info: Try loading font information for OMS+ztmcm on input line 3.
+
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/omsztmcm.fd
+File: omsztmcm.fd 2000/01/03 Fontinst v1.801 font definitions for OMS/ztmcm.
+)
+LaTeX Font Info: Try loading font information for OMX+ztmcm on input line 3.
+
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/omxztmcm.fd
+File: omxztmcm.fd 2000/01/03 Fontinst v1.801 font definitions for OMX/ztmcm.
+)
+LaTeX Font Info: Try loading font information for OT1+ptm on input line 3.
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/ot1ptm.fd
+File: ot1ptm.fd 2001/06/04 font definitions for OT1/ptm.
+)
+LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <10> not available
+(Font) Font shape `OT1/ptm/b/n' tried instead on input line 3.
+LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <7.4> not available
+(Font) Font shape `OT1/ptm/b/n' tried instead on input line 3.
+LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <6> not available
+(Font) Font shape `OT1/ptm/b/n' tried instead on input line 3.
+LaTeX Font Info: Font shape `T1/phv/bx/n' in size <10> not available
+(Font) Font shape `T1/phv/b/n' tried instead on input line 3.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 8.99994pt on input line 3.
+
+
+LaTeX Warning: Reference `namespacemeow' on page 1 undefined on input line 3.
+
+) [1
+
+]
+LaTeX Font Info: Font shape `T1/phv/bx/n' in size <7> not available
+(Font) Font shape `T1/phv/b/n' tried instead on input line 70.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 6.29996pt on input line 70.
+ [2
+
+]
+Chapter 2.
+(./hierarchy.tex
+
+LaTeX Warning: Reference `classmeow_1_1BinaryIndexTree' on page 3 undefined on
+input line 3.
+
+
+LaTeX Warning: Reference `classmeow_1_1Color3__Space' on page 3 undefined on in
+put line 4.
+
+
+LaTeX Warning: Reference `classmeow_1_1Color3__Space' on page 3 undefined on in
+put line 5.
+
+
+LaTeX Warning: Reference `classmeow_1_1HSLf__Space' on page 3 undefined on inpu
+t line 7.
+
+
+LaTeX Warning: Reference `classmeow_1_1HSVf__Space' on page 3 undefined on inpu
+t line 8.
+
+
+LaTeX Warning: Reference `classmeow_1_1RGBf__Space' on page 3 undefined on inpu
+t line 9.
+
+
+LaTeX Warning: Reference `classmeow_1_1YUVf__Space' on page 3 undefined on inpu
+t line 10.
+
+
+LaTeX Warning: Reference `classmeow_1_1Color3__Space' on page 3 undefined on in
+put line 12.
+
+
+LaTeX Warning: Reference `classmeow_1_1RGBi__Space' on page 3 undefined on inpu
+t line 14.
+
+
+LaTeX Warning: Reference `classmeow_1_1DisjointSet' on page 3 undefined on inpu
+t line 16.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree_1_1Element' on page 3 undefine
+d on input line 17.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree__Range_1_1Element' on page 3 u
+ndefined on input line 18.
+
+
+LaTeX Warning: Reference `structmeow_1_1FeaturePointIndexPair' on page 3 undefi
+ned on input line 19.
+
+
+LaTeX Warning: Reference `classmeow_1_1HashTableList' on page 3 undefined on in
+put line 20.
+
+
+LaTeX Warning: Reference `classmeow_1_1KD__Tree' on page 3 undefined on input l
+ine 21.
+
+
+LaTeX Warning: Reference `classmeow_1_1Matrix' on page 3 undefined on input lin
+e 22.
+
+
+LaTeX Warning: Reference `classmeow_1_1Matrix' on page 3 undefined on input lin
+e 23.
+
+
+LaTeX Warning: Reference `classmeow_1_1Matrix' on page 3 undefined on input lin
+e 24.
+
+
+LaTeX Warning: Reference `classmeow_1_1Matrix' on page 3 undefined on input lin
+e 25.
+
+
+LaTeX Warning: Reference `classmeow_1_1Matrix' on page 3 undefined on input lin
+e 26.
+
+
+LaTeX Warning: Reference `structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo' on pa
+ge 3 undefined on input line 27.
+
+
+LaTeX Warning: Reference `classmeow_1_1MergeableHeap' on page 3 undefined on in
+put line 28.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjBase' on page 3 undefined on input li
+ne 29.
+
+
+LaTeX Warning: Reference `classmeow_1_1IdentityPoints' on page 3 undefined on i
+nput line 31.
+
+
+LaTeX Warning: Reference `classmeow_1_1Bitmap' on page 3 undefined on input lin
+e 32.
+
+
+LaTeX Warning: Reference `classmeow_1_1Camera' on page 3 undefined on input lin
+e 33.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePoint' on page 3 undefined on inp
+ut line 34.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsDetector' on page 3 undefin
+ed on input line 35.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsDetector__Harris' on page 3
+ undefined on input line 37.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsMatch' on page 3 undefined
+on input line 39.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsMatch__K__Match' on page 3
+undefined on input line 41.
+
+
+LaTeX Warning: Reference `classmeow_1_1IdentityPoints' on page 3 undefined on i
+nput line 43.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjArray' on page 3 undefined on input l
+ine 44.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjDictionary' on page 3 undefined on in
+put line 45.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjProperties' on page 3 undefined on in
+put line 46.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjType' on page 3 undefined on input li
+ne 47.
+
+
+LaTeX Warning: Reference `classmeow_1_1Photo' on page 3 undefined on input line
+ 48.
+
+
+LaTeX Warning: Reference `classmeow_1_1ViewPort' on page 3 undefined on input l
+ine 49.
+
+[3]
+
+LaTeX Warning: Reference `classmeow_1_1WatchBall' on page 4 undefined on input
+line 50.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjSelector' on page 4 undefined on inpu
+t line 52.
+
+
+LaTeX Warning: Reference `classmeow_1_1Pipeline' on page 4 undefined on input l
+ine 53.
+
+
+LaTeX Warning: Reference `classmeow_1_1Pipeline' on page 4 undefined on input l
+ine 54.
+
+
+LaTeX Warning: Reference `classmeow_1_1TransformatePipeline' on page 4 undefine
+d on input line 56.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__double' on page 4 undefine
+d on input line 58.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__int' on page 4 undefined o
+n input line 59.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__size__t' on page 4 undefin
+ed on input line 60.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__string' on page 4 undefine
+d on input line 61.
+
+
+LaTeX Warning: Reference `classmeow_1_1SegmentTree' on page 4 undefined on inpu
+t line 62.
+
+
+LaTeX Warning: Reference `classmeow_1_1Self' on page 4 undefined on input line
+63.
+
+
+LaTeX Warning: Reference `classmeow_1_1Self' on page 4 undefined on input line
+64.
+
+
+LaTeX Warning: Reference `classmeow_1_1Self' on page 4 undefined on input line
+65.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree' on page 4 undefined on input
+line 66.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree__Range' on page 4 undefined on
+ input line 67.
+
+
+LaTeX Warning: Reference `classmeow_1_1Transformation' on page 4 undefined on i
+nput line 68.
+
+
+LaTeX Warning: Reference `classmeow_1_1BallProjection' on page 4 undefined on i
+nput line 70.
+
+
+LaTeX Warning: Reference `classmeow_1_1LinearTransformation' on page 4 undefine
+d on input line 71.
+
+
+LaTeX Warning: Reference `classmeow_1_1Rotation3D' on page 4 undefined on input
+ line 73.
+
+
+LaTeX Warning: Reference `classmeow_1_1PhotoProjection' on page 4 undefined on
+input line 75.
+
+
+LaTeX Warning: Reference `classmeow_1_1Transformation' on page 4 undefined on i
+nput line 77.
+
+
+LaTeX Warning: Reference `classmeow_1_1LinearTransformation' on page 4 undefine
+d on input line 79.
+
+
+LaTeX Warning: Reference `classmeow_1_1Rotation3D' on page 4 undefined on input
+ line 81.
+
+
+LaTeX Warning: Reference `classmeow_1_1PhotoProjection' on page 4 undefined on
+input line 83.
+
+
+LaTeX Warning: Reference `classmeow_1_1Usage' on page 4 undefined on input line
+ 85.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector' on page 4 undefined on input lin
+e 86.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector2D' on page 4 undefined on input l
+ine 87.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector2D' on page 4 undefined on input l
+ine 88.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector3D' on page 4 undefined on input l
+ine 89.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector3D' on page 4 undefined on input l
+ine 90.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector3D' on page 4 undefined on input l
+ine 91.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector3D' on page 4 undefined on input l
+ine 92.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector' on page 4 undefined on input lin
+e 93.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector' on page 4 undefined on input lin
+e 94.
+
+
+LaTeX Warning: Reference `classmeow_1_1VP__Tree' on page 4 undefined on input l
+ine 95.
+
+
+LaTeX Warning: Reference `classdouble' on page 4 undefined on input line 96.
+
+
+LaTeX Warning: Reference `classint' on page 4 undefined on input line 97.
+
+) [4]
+Chapter 3.
+(./annotated.tex
+
+LaTeX Warning: Reference `classmeow_1_1BallProjection' on page 5 undefined on i
+nput line 3.
+
+
+! Package inputenc Error: Unicode char \u8:極 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+?
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+?
+
+! Package inputenc Error: Unicode char \u8:簡 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+?
+
+! Package inputenc Error: Unicode char \u8:化 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+?
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+?
+LaTeX Font Info: Try loading font information for T1+pcr on input line 4.
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1pcr.fd
+File: t1pcr.fd 2001/06/04 font definitions for T1/pcr.
+)
+
+! Package inputenc Error: Unicode char \u8:已 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+? q
+OK, entering \batchmode...
+
+! Package inputenc Error: Unicode char \u8:無 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:區 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:更 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:新 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:操 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.4 ...}{\pageref{classmeow_1_1BinaryIndexTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1BinaryIndexTree' on page 5 undefined on
+input line 4.
+
+
+! Package inputenc Error: Unicode char \u8:二 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 ...資料 }{\pageref{classmeow_1_1Bitmap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:維 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 ...資料 }{\pageref{classmeow_1_1Bitmap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 ...資料 }{\pageref{classmeow_1_1Bitmap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:陣 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 ...資料 }{\pageref{classmeow_1_1Bitmap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:資 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 ...資料 }{\pageref{classmeow_1_1Bitmap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:料 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 ...資料 }{\pageref{classmeow_1_1Bitmap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1Bitmap' on page 5 undefined on input lin
+e 5.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 5--5
+ []
+ []
+
+
+LaTeX Warning: Reference `classmeow_1_1Camera' on page 5 undefined on input lin
+e 6.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 ... }{\pageref{classmeow_1_1Color3__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1Color3__Space' on page 5 undefined on in
+put line 7.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:維 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:護 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:堆 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:互 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:斥 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:集 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:資 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:訊 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...訊 }{\pageref{classmeow_1_1DisjointSet}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1DisjointSet' on page 5 undefined on inpu
+t line 8.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 8--8
+ []
+ []
+
+
+! Package inputenc Error: Unicode char \u8:類 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:似 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:過 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:這 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:邊 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:叫 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:做 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 ...geref{classmeow_1_1SplayTree_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree_1_1Element' on page 5 undefine
+d on input line 9.
+
+
+! Package inputenc Error: Unicode char \u8:類 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:似 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:過 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:這 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:邊 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:叫 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:做 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...assmeow_1_1SplayTree__Range_1_1Element}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree__Range_1_1Element' on page 5 u
+ndefined on input line 10.
+
+
+! Package inputenc Error: Unicode char \u8:特 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.11 ... }{\pageref{classmeow_1_1FeaturePoint}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:徵 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.11 ... }{\pageref{classmeow_1_1FeaturePoint}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.11 ... }{\pageref{classmeow_1_1FeaturePoint}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePoint' on page 5 undefined on inp
+ut line 11.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 11--11
+ []
+ []
+
+
+LaTeX Warning: Reference `structmeow_1_1FeaturePointIndexPair' on page 5 undefi
+ned on input line 12.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsDetector' on page 5 undefin
+ed on input line 13.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsDetector__Harris' on page 5
+ undefined on input line 14.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsMatch' on page 5 undefined
+on input line 15.
+
+
+LaTeX Warning: Reference `classmeow_1_1FeaturePointsMatch__K__Match' on page 5
+undefined on input line 16.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:當 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:相 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:撞 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:時 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:會 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:解 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:決 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.17 ... }{\pageref{classmeow_1_1HashTableList}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1HashTableList' on page 5 undefined on in
+put line 17.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:亮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:濃 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... }{\pageref{classmeow_1_1HSLf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1HSLf__Space' on page 5 undefined on inpu
+t line 18.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:亮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:濃 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.19 ... }{\pageref{classmeow_1_1HSVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1HSVf__Space' on page 5 undefined on inpu
+t line 19.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...}{\pageref{classmeow_1_1IdentityPoints}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...}{\pageref{classmeow_1_1IdentityPoints}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...}{\pageref{classmeow_1_1IdentityPoints}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...}{\pageref{classmeow_1_1IdentityPoints}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...}{\pageref{classmeow_1_1IdentityPoints}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...}{\pageref{classmeow_1_1IdentityPoints}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1IdentityPoints' on page 5 undefined on i
+nput line 20.
+
+
+LaTeX Warning: Reference `classmeow_1_1KD__Tree' on page 5 undefined on input l
+ine 21.
+
+
+LaTeX Warning: Reference `classmeow_1_1LinearTransformation' on page 5 undefine
+d on input line 22.
+
+
+LaTeX Warning: Reference `classmeow_1_1Matrix' on page 5 undefined on input lin
+e 23.
+
+
+LaTeX Warning: Reference `structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo' on pa
+ge 5 undefined on input line 24.
+
+ [5
+
+]
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:左 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:偏 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:實 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:除 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:了 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:原 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:本 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:功 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:能 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:外 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:還 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:支 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:援 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:功 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:能 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.25 ... }{\pageref{classmeow_1_1MergeableHeap}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1MergeableHeap' on page 6 undefined on in
+put line 25.
+
+
+! Package inputenc Error: Unicode char \u8:純 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:粹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:變 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:繼 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:承 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.26 ...Base} }{\pageref{classmeow_1_1ObjArray}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjArray' on page 6 undefined on input l
+ine 26.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:切 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:物 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:件 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:並 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:要 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:求 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:每 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:物 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:件 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:都 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:要 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:等 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:功 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:能 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.27 ...功能 }{\pageref{classmeow_1_1ObjBase}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjBase' on page 6 undefined on input li
+ne 27.
+
+
+! Package inputenc Error: Unicode char \u8:純 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:粹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:變 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:繼 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:承 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... }{\pageref{classmeow_1_1ObjDictionary}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjDictionary' on page 6 undefined on in
+put line 28.
+
+
+! Package inputenc Error: Unicode char \u8:目 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.29 ... }{\pageref{classmeow_1_1ObjProperties}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:前 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.29 ... }{\pageref{classmeow_1_1ObjProperties}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:擺 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.29 ... }{\pageref{classmeow_1_1ObjProperties}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:爛 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.29 ... }{\pageref{classmeow_1_1ObjProperties}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.29 ... }{\pageref{classmeow_1_1ObjProperties}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjProperties' on page 6 undefined on in
+put line 29.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 29--29
+ []
+ []
+
+
+! Package inputenc Error: Unicode char \u8:利 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:概 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:念 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:達 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:到 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:選 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:擇 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:要 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...ss }{\pageref{classmeow_1_1ObjSelector}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjSelector' on page 6 undefined on inpu
+t line 30.
+
+
+! Package inputenc Error: Unicode char \u8:純 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:粹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:給 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:變 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:繼 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:承 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.31 ...-Base} }{\pageref{classmeow_1_1ObjType}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1ObjType' on page 6 undefined on input li
+ne 31.
+
+
+! Package inputenc Error: Unicode char \u8:底 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...\*底片 }{\pageref{classmeow_1_1Photo}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:片 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...\*底片 }{\pageref{classmeow_1_1Photo}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1Photo' on page 6 undefined on input line
+ 32.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 32--32
+ []
+ []
+
+
+LaTeX Warning: Reference `classmeow_1_1PhotoProjection' on page 6 undefined on
+input line 33.
+
+
+LaTeX Warning: Reference `classmeow_1_1Pipeline' on page 6 undefined on input l
+ine 34.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__double' on page 6 undefine
+d on input line 35.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__int' on page 6 undefined o
+n input line 36.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__size__t' on page 6 undefin
+ed on input line 37.
+
+
+LaTeX Warning: Reference `classmeow_1_1ReaderWriter__string' on page 6 undefine
+d on input line 38.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.39 ... }{\pageref{classmeow_1_1RGBf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1RGBf__Space' on page 6 undefined on inpu
+t line 39.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:整 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.40 ... }{\pageref{classmeow_1_1RGBi__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1RGBi__Space' on page 6 undefined on inpu
+t line 40.
+
+
+LaTeX Warning: Reference `classmeow_1_1Rotation3D' on page 6 undefined on input
+ line 41.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...} }{\pageref{classmeow_1_1SegmentTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:文 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...} }{\pageref{classmeow_1_1SegmentTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:名 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...} }{\pageref{classmeow_1_1SegmentTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:線 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...} }{\pageref{classmeow_1_1SegmentTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:段 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...} }{\pageref{classmeow_1_1SegmentTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...} }{\pageref{classmeow_1_1SegmentTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1SegmentTree' on page 6 undefined on inpu
+t line 42.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 42--42
+ []
+ []
+
+
+! Package inputenc Error: Unicode char \u8:具 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:且 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:擁 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:比 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:更 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:靈 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:活 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:機 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:制 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.43 ...nce機制 }{\pageref{classmeow_1_1Self}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1Self' on page 6 undefined on input line
+43.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:種 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:神 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:乎 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:其 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:技 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:資 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:料 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:結 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:構 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:維 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:護 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:堆 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:並 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:且 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:支 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:援 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:些 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:難 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:快 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:速 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:實 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:踐 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:操 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:如 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.44 ...set} }{\pageref{classmeow_1_1SplayTree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree' on page 6 undefined on input
+line 44.
+
+
+! Package inputenc Error: Unicode char \u8:基 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:本 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:上 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:跟 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樣 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:過 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:這 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:邊 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:結 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:合 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:線 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:段 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:多 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:了 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:區 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:操 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:線 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:段 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:相 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:關 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:義 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:請 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:見 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.45 ...\pageref{classmeow_1_1SplayTree__Range}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1SplayTree__Range' on page 6 undefined on
+ input line 45.
+
+
+LaTeX Warning: Reference `classmeow_1_1TransformatePipeline' on page 6 undefine
+d on input line 46.
+
+
+LaTeX Warning: Reference `classmeow_1_1Transformation' on page 6 undefined on i
+nput line 47.
+
+
+! Package inputenc Error: Unicode char \u8:管 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:理 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:參 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:設 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:置 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:訂 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:分 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:析 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.48 ...gc, argv }{\pageref{classmeow_1_1Usage}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1Usage' on page 6 undefined on input line
+ 48.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector' on page 6 undefined on input lin
+e 49.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector2D' on page 6 undefined on input l
+ine 50.
+
+
+LaTeX Warning: Reference `classmeow_1_1Vector3D' on page 6 undefined on input l
+ine 51.
+
+
+! Package inputenc Error: Unicode char \u8:未 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.52 ...續 }{\pageref{classmeow_1_1ViewPort}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:完 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.52 ...續 }{\pageref{classmeow_1_1ViewPort}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:待 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.52 ...續 }{\pageref{classmeow_1_1ViewPort}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:續 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.52 ...續 }{\pageref{classmeow_1_1ViewPort}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1ViewPort' on page 6 undefined on input l
+ine 52.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 52--52
+ []
+ []
+
+
+! Package inputenc Error: Unicode char \u8:跟 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.53 ...歐 }{\pageref{classmeow_1_1VP__Tree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:很 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.53 ...歐 }{\pageref{classmeow_1_1VP__Tree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:像 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.53 ...歐 }{\pageref{classmeow_1_1VP__Tree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:歐 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.53 ...歐 }{\pageref{classmeow_1_1VP__Tree}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1VP__Tree' on page 6 undefined on input l
+ine 53.
+
+
+! Package inputenc Error: Unicode char \u8:多 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.54 ...tion }{\pageref{classmeow_1_1WatchBall}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.54 ...tion }{\pageref{classmeow_1_1WatchBall}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.54 ...tion }{\pageref{classmeow_1_1WatchBall}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.54 ...tion }{\pageref{classmeow_1_1WatchBall}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.54 ...tion }{\pageref{classmeow_1_1WatchBall}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.54 ...tion }{\pageref{classmeow_1_1WatchBall}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1WatchBall' on page 6 undefined on input
+line 54.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:亮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:濃 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.55 ... }{\pageref{classmeow_1_1YUVf__Space}}{}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Warning: Reference `classmeow_1_1YUVf__Space' on page 6 undefined on inpu
+t line 55.
+
+
+Underfull \vbox (badness 4144) has occurred while \output is active []
+
+ [6]) [7] [8
+
+]
+Chapter 4.
+ (./files.tex
+
+LaTeX Warning: Reference `Pipeline_8h' on page 9 undefined on input line 3.
+
+
+LaTeX Warning: Reference `Self_8h' on page 9 undefined on input line 4.
+
+
+LaTeX Warning: Reference `Usage_8h' on page 9 undefined on input line 5.
+
+
+LaTeX Warning: Reference `utility_8h' on page 9 undefined on input line 6.
+
+
+LaTeX Warning: Reference `Color3__Space_8h' on page 9 undefined on input line 7
+.
+
+
+LaTeX Warning: Reference `HSL__Space_8h' on page 9 undefined on input line 8.
+
+
+LaTeX Warning: Reference `HSV__Space_8h' on page 9 undefined on input line 9.
+
+
+LaTeX Warning: Reference `RGB__Space_8h' on page 9 undefined on input line 10.
+
+
+LaTeX Warning: Reference `YUV__Space_8h' on page 9 undefined on input line 11.
+
+
+LaTeX Warning: Reference `BinaryIndexTree_8h' on page 9 undefined on input line
+ 12.
+
+
+LaTeX Warning: Reference `DisjointSet_8h' on page 9 undefined on input line 13.
+
+
+
+LaTeX Warning: Reference `HashTable_8h' on page 9 undefined on input line 14.
+
+
+LaTeX Warning: Reference `KD__Tree_8h' on page 9 undefined on input line 15.
+
+
+LaTeX Warning: Reference `MergeableHeap_8h' on page 9 undefined on input line 1
+6.
+
+
+LaTeX Warning: Reference `SegmentTree_8h' on page 9 undefined on input line 17.
+
+
+
+LaTeX Warning: Reference `SplayTree_8h' on page 9 undefined on input line 18.
+
+
+LaTeX Warning: Reference `VP__Tree_8h' on page 9 undefined on input line 19.
+
+
+LaTeX Warning: Reference `Vectors_8h' on page 9 undefined on input line 20.
+
+
+LaTeX Warning: Reference `Bitmap_8h' on page 9 undefined on input line 21.
+
+
+LaTeX Warning: Reference `Camera_8h' on page 9 undefined on input line 22.
+
+
+LaTeX Warning: Reference `FeaturePoint_8h' on page 9 undefined on input line 23
+.
+
+
+LaTeX Warning: Reference `FeaturePointsDetector_8h' on page 9 undefined on inpu
+t line 24.
+
+
+LaTeX Warning: Reference `FeaturePointsDetector__Harris_8h' on page 9 undefined
+ on input line 25.
+
+
+LaTeX Warning: Reference `FeaturePointsMatch_8h' on page 9 undefined on input l
+ine 26.
+
+
+LaTeX Warning: Reference `FeaturePointsMatch__K__Match_8h' on page 9 undefined
+on input line 27.
+
+
+LaTeX Warning: Reference `IdentityPoints_8h' on page 9 undefined on input line
+28.
+
+
+LaTeX Warning: Reference `Photo_8h' on page 9 undefined on input line 29.
+
+
+LaTeX Warning: Reference `ViewPort_8h' on page 9 undefined on input line 30.
+
+
+LaTeX Warning: Reference `WatchBall_8h' on page 9 undefined on input line 31.
+
+
+LaTeX Warning: Reference `LinearTransformation_8h' on page 9 undefined on input
+ line 32.
+
+
+LaTeX Warning: Reference `LinearTransformations_8h' on page 9 undefined on inpu
+t line 33.
+
+
+LaTeX Warning: Reference `Matrix_8h' on page 9 undefined on input line 34.
+
+
+LaTeX Warning: Reference `methods_8h' on page 9 undefined on input line 35.
+
+
+LaTeX Warning: Reference `Transformation_8h' on page 9 undefined on input line
+36.
+
+
+LaTeX Warning: Reference `Transformations_8h' on page 9 undefined on input line
+ 37.
+
+
+LaTeX Warning: Reference `math_2utility_8h' on page 9 undefined on input line 3
+8.
+
+
+LaTeX Warning: Reference `Vector_8h' on page 9 undefined on input line 39.
+
+
+LaTeX Warning: Reference `ObjArray_8h' on page 9 undefined on input line 40.
+
+
+LaTeX Warning: Reference `ObjBase_8h' on page 9 undefined on input line 41.
+
+ [9]
+
+LaTeX Warning: Reference `ObjDictionary_8h' on page 10 undefined on input line
+42.
+
+
+LaTeX Warning: Reference `ObjProperties_8h' on page 10 undefined on input line
+43.
+
+
+LaTeX Warning: Reference `ObjSelector_8h' on page 10 undefined on input line 44
+.
+
+
+LaTeX Warning: Reference `ObjTypes_8h' on page 10 undefined on input line 45.
+
+) [10]
+Chapter 5.
+ (./namespacemeow.tex
+LaTeX Font Info: Font shape `T1/phv/bx/n' in size <12> not available
+(Font) Font shape `T1/phv/b/n' tried instead on input line 4.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 10.79993pt on input line 4.
+LaTeX Font Info: Font shape `OT1/phv/bc/n' will be
+(Font) scaled to size 10.79993pt on input line 4.
+LaTeX Font Info: Try loading font information for TS1+phv on input line 7.
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1phv.fd
+File: ts1phv.fd 2001/06/04 scalable font definitions for TS1/phv.
+)
+LaTeX Font Info: Font shape `TS1/phv/m/n' will be
+(Font) scaled to size 8.99994pt on input line 7.
+LaTeX Font Info: Font shape `T1/phv/m/it' in size <9> not available
+(Font) Font shape `T1/phv/m/sl' tried instead on input line 8.
+LaTeX Font Info: Font shape `T1/phv/m/sl' will be
+(Font) scaled to size 8.09995pt on input line 8.
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 \begin{DoxyCompactList}\small\item\em 以
+ 三個channel所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 \begin{DoxyCompactList}\small\item\em 以三
+ 個channel所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...in{DoxyCompactList}\small\item\em 以三個
+ channel所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...pactList}\small\item\em 以三個channel所
+ 組成的色彩空間 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...tList}\small\item\em 以三個channel所組
+ 成的色彩空間 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...st}\small\item\em 以三個channel所組成
+ 的色彩空間 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...\small\item\em 以三個channel所組成的
+ 色彩空間 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...all\item\em 以三個channel所組成的色
+ 彩空間 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...\item\em 以三個channel所組成的色彩
+ 空間 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...em\em 以三個channel所組成的色彩空
+ 間 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 ...em 以三個channel所組成的色彩空間
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 \begin{DoxyCompactList}\small\item\em 以
+ 浮點數{\bfseries Y}(亮度)...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 \begin{DoxyCompactList}\small\item\em 以浮
+ 點數{\bfseries Y}(亮度)...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...n{DoxyCompactList}\small\item\em 以浮點
+ 數{\bfseries Y}(亮度), ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...oxyCompactList}\small\item\em 以浮點數
+ {\bfseries Y}(亮度), {\b...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+LaTeX Font Info: Font shape `T1/phv/bx/it' in size <9> not available
+(Font) Font shape `T1/phv/b/it' tried instead on input line 10.
+LaTeX Font Info: Font shape `T1/phv/b/it' in size <9> not available
+(Font) Font shape `T1/phv/b/sl' tried instead on input line 10.
+LaTeX Font Info: Font shape `T1/phv/b/sl' will be
+(Font) scaled to size 8.09995pt on input line 10.
+
+! Package inputenc Error: Unicode char \u8:亮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...mall\item\em 以浮點數{\bfseries Y}(亮
+ 度), {\bfseries U}(色度...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...l\item\em 以浮點數{\bfseries Y}(亮度
+ ), {\bfseries U}(色度), ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...{\bfseries Y}(亮度), {\bfseries U}(色
+ 度), {\bfseries V}(濃度...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...\bfseries Y}(亮度), {\bfseries U}(色度
+ ), {\bfseries V}(濃度) ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:濃 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ..., {\bfseries U}(色度), {\bfseries V}(濃
+ 度) 三個值所組成的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...\bfseries U}(色度), {\bfseries V}(濃度
+ ) 三個值所組成的色...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...ries U}(色度), {\bfseries V}(濃度) 三
+ 個值所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...s U}(色度), {\bfseries V}(濃度) 三個
+ 值所組成的色彩空...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...}(色度), {\bfseries V}(濃度) 三個值
+ 所組成的色彩空間 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...度), {\bfseries V}(濃度) 三個值所
+ 組成的色彩空間 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...), {\bfseries V}(濃度) 三個值所組
+ 成的色彩空間 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ..., {\bfseries V}(濃度) 三個值所組成
+ 的色彩空間 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...\bfseries V}(濃度) 三個值所組成的
+ 色彩空間 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...series V}(濃度) 三個值所組成的色
+ 彩空間 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...ies V}(濃度) 三個值所組成的色彩
+ 空間 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ... V}(濃度) 三個值所組成的色彩空
+ 間 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.10 ...(濃度) 三個值所組成的色彩空間
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 \begin{DoxyCompactList}\small\item\em 以
+ 浮點數{\bfseries Y}(亮度)...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 \begin{DoxyCompactList}\small\item\em 以浮
+ 點數{\bfseries Y}(亮度)...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...n{DoxyCompactList}\small\item\em 以浮點
+ 數{\bfseries Y}(亮度), ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...oxyCompactList}\small\item\em 以浮點數
+ {\bfseries Y}(亮度), {\b...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:亮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...mall\item\em 以浮點數{\bfseries Y}(亮
+ 度), {\bfseries U}(色度...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...l\item\em 以浮點數{\bfseries Y}(亮度
+ ), {\bfseries U}(色度), ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...{\bfseries Y}(亮度), {\bfseries U}(色
+ 度), {\bfseries V}(濃度...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...\bfseries Y}(亮度), {\bfseries U}(色度
+ ), {\bfseries V}(濃度) ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:濃 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ..., {\bfseries U}(色度), {\bfseries V}(濃
+ 度) 三個值所組成的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...\bfseries U}(色度), {\bfseries V}(濃度
+ ) 三個值所組成的色...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...ries U}(色度), {\bfseries V}(濃度) 三
+ 個值所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...s U}(色度), {\bfseries V}(濃度) 三個
+ 值所組成的色彩空...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...}(色度), {\bfseries V}(濃度) 三個值
+ 所組成的色彩空間 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...度), {\bfseries V}(濃度) 三個值所
+ 組成的色彩空間 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...), {\bfseries V}(濃度) 三個值所組
+ 成的色彩空間 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ..., {\bfseries V}(濃度) 三個值所組成
+ 的色彩空間 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...\bfseries V}(濃度) 三個值所組成的
+ 色彩空間 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...series V}(濃度) 三個值所組成的色
+ 彩空間 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...ies V}(濃度) 三個值所組成的色彩
+ 空間 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ... V}(濃度) 三個值所組成的色彩空
+ 間 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 ...(濃度) 三個值所組成的色彩空間
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 \begin{DoxyCompactList}\small\item\em 以
+ 整數 {\bfseries Red}, {\bfse...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:整 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 \begin{DoxyCompactList}\small\item\em 以整
+ 數 {\bfseries Red}, {\bfse...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...n{DoxyCompactList}\small\item\em 以整數
+ {\bfseries Red}, {\bfseri...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...}, {\bfseries Green}, {\bfseries Blue} 三
+ 個值所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...{\bfseries Green}, {\bfseries Blue} 三個
+ 值所組成的色彩空...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...fseries Green}, {\bfseries Blue} 三個值
+ 所組成的色彩空間 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...ries Green}, {\bfseries Blue} 三個值所
+ 組成的色彩空間 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...s Green}, {\bfseries Blue} 三個值所組
+ 成的色彩空間 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...reen}, {\bfseries Blue} 三個值所組成
+ 的色彩空間 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...n}, {\bfseries Blue} 三個值所組成的
+ 色彩空間 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ... {\bfseries Blue} 三個值所組成的色
+ 彩空間 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...bfseries Blue} 三個值所組成的色彩
+ 空間 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...eries Blue} 三個值所組成的色彩空
+ 間 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 ...es Blue} 三個值所組成的色彩空間
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 \begin{DoxyCompactList}\small\item\em 以
+ 浮點數{\bfseries Red}, {\bf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 \begin{DoxyCompactList}\small\item\em 以浮
+ 點數{\bfseries Red}, {\bf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...n{DoxyCompactList}\small\item\em 以浮點
+ 數{\bfseries Red}, {\bfse...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...oxyCompactList}\small\item\em 以浮點數
+ {\bfseries Red}, {\bfserie...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...}, {\bfseries Green}, {\bfseries Blue} 三
+ 個值所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...{\bfseries Green}, {\bfseries Blue} 三個
+ 值所組成的色彩空...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...fseries Green}, {\bfseries Blue} 三個值
+ 所組成的色彩空間 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...ries Green}, {\bfseries Blue} 三個值所
+ 組成的色彩空間 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...s Green}, {\bfseries Blue} 三個值所組
+ 成的色彩空間 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...reen}, {\bfseries Blue} 三個值所組成
+ 的色彩空間 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...n}, {\bfseries Blue} 三個值所組成的
+ 色彩空間 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ... {\bfseries Blue} 三個值所組成的色
+ 彩空間 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...bfseries Blue} 三個值所組成的色彩
+ 空間 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...eries Blue} 三個值所組成的色彩空
+ 間 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.16 ...es Blue} 三個值所組成的色彩空間
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 \begin{DoxyCompactList}\small\item\em 以
+ 浮點數{\bfseries Y}(亮度)...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:浮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 \begin{DoxyCompactList}\small\item\em 以浮
+ 點數{\bfseries Y}(亮度)...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...n{DoxyCompactList}\small\item\em 以浮點
+ 數{\bfseries Y}(亮度), ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...oxyCompactList}\small\item\em 以浮點數
+ {\bfseries Y}(亮度), {\b...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:亮 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...mall\item\em 以浮點數{\bfseries Y}(亮
+ 度), {\bfseries U}(色度...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...l\item\em 以浮點數{\bfseries Y}(亮度
+ ), {\bfseries U}(色度), ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...{\bfseries Y}(亮度), {\bfseries U}(色
+ 度), {\bfseries V}(濃度...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...\bfseries Y}(亮度), {\bfseries U}(色度
+ ), {\bfseries V}(濃度) ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:濃 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ..., {\bfseries U}(色度), {\bfseries V}(濃
+ 度) 三個值所組成的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...\bfseries U}(色度), {\bfseries V}(濃度
+ ) 三個值所組成的色...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:三 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...ries U}(色度), {\bfseries V}(濃度) 三
+ 個值所組成的色彩...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...s U}(色度), {\bfseries V}(濃度) 三個
+ 值所組成的色彩空...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...}(色度), {\bfseries V}(濃度) 三個值
+ 所組成的色彩空間 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...度), {\bfseries V}(濃度) 三個值所
+ 組成的色彩空間 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:組 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...), {\bfseries V}(濃度) 三個值所組
+ 成的色彩空間 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ..., {\bfseries V}(濃度) 三個值所組成
+ 的色彩空間 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...\bfseries V}(濃度) 三個值所組成的
+ 色彩空間 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:色 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...series V}(濃度) 三個值所組成的色
+ 彩空間 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:彩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...ies V}(濃度) 三個值所組成的色彩
+ 空間 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:空 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ... V}(濃度) 三個值所組成的色彩空
+ 間 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.18 ...(濃度) 三個值所組成的色彩空間
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:極 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 \begin{DoxyCompactList}\small\item\em 極
+ 度簡化的 {\ttfamily \hyper...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:度 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 \begin{DoxyCompactList}\small\item\em 極度
+ 簡化的 {\ttfamily \hyper...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:簡 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...n{DoxyCompactList}\small\item\em 極度簡
+ 化的 {\ttfamily \hyperli...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:化 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...oxyCompactList}\small\item\em 極度簡化
+ 的 {\ttfamily \hyperlink{...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...CompactList}\small\item\em 極度簡化的
+ {\ttfamily \hyperlink{cla...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+LaTeX Font Info: Font shape `T1/pcr/m/it' in size <9> not available
+(Font) Font shape `T1/pcr/m/sl' tried instead on input line 20.
+
+! Package inputenc Error: Unicode char \u8:已 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...ssmeow_1_1SegmentTree}{Segment\-Tree}} 已
+ 無區間更新的操作 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:無 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...eow_1_1SegmentTree}{Segment\-Tree}} 已無
+ 區間更新的操作 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:區 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ..._1_1SegmentTree}{Segment\-Tree}} 已無區
+ 間更新的操作 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...1SegmentTree}{Segment\-Tree}} 已無區間
+ 更新的操作 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:更 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...gmentTree}{Segment\-Tree}} 已無區間更
+ 新的操作 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:新 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...ntTree}{Segment\-Tree}} 已無區間更新
+ 的操作 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...ree}{Segment\-Tree}} 已無區間更新的
+ 操作 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:操 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...}{Segment\-Tree}} 已無區間更新的操
+ 作 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.20 ...egment\-Tree}} 已無區間更新的操作
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 \begin{DoxyCompactList}\small\item\em 用
+ 來維護一堆互斥集的資...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 \begin{DoxyCompactList}\small\item\em 用來
+ 維護一堆互斥集的資...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:維 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...n{DoxyCompactList}\small\item\em 用來維
+ 護一堆互斥集的資...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:護 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...oxyCompactList}\small\item\em 用來維護
+ 一堆互斥集的資訊 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...CompactList}\small\item\em 用來維護一
+ 堆互斥集的資訊 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:堆 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...pactList}\small\item\em 用來維護一堆
+ 互斥集的資訊 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:互 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...tList}\small\item\em 用來維護一堆互
+ 斥集的資訊 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:斥 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...st}\small\item\em 用來維護一堆互斥
+ 集的資訊 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:集 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...\small\item\em 用來維護一堆互斥集
+ 的資訊 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...all\item\em 用來維護一堆互斥集的
+ 資訊 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:資 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...\item\em 用來維護一堆互斥集的資
+ 訊 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:訊 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.22 ...em\em 用來維護一堆互斥集的資訊
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 \begin{DoxyCompactList}\small\item\em 一
+ 個當key相撞時會用list...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 \begin{DoxyCompactList}\small\item\em 一個
+ 當key相撞時會用list...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:當 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...n{DoxyCompactList}\small\item\em 一個當
+ key相撞時會用list解...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:相 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...CompactList}\small\item\em 一個當key相
+ 撞時會用list解決的h...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:撞 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...pactList}\small\item\em 一個當key相撞
+ 時會用list解決的hash...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:時 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...tList}\small\item\em 一個當key相撞時
+ 會用list解決的hash\-\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:會 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...st}\small\item\em 一個當key相撞時會
+ 用list解決的hash\-\_\-...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...\small\item\em 一個當key相撞時會用
+ list解決的hash\-\_\-tab...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:解 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...item\em 一個當key相撞時會用list解
+ 決的hash\-\_\-table \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:決 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...m\em 一個當key相撞時會用list解決
+ 的hash\-\_\-table \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.24 ...m 一個當key相撞時會用list解決的
+ hash\-\_\-table \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 \begin{DoxyCompactList}\small\item\em 一
+ 個用 {\bfseries 左偏樹} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 \begin{DoxyCompactList}\small\item\em 一個
+ 用 {\bfseries 左偏樹} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...n{DoxyCompactList}\small\item\em 一個用
+ {\bfseries 左偏樹} 實...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:左 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...st}\small\item\em 一個用 {\bfseries 左
+ 偏樹} 實作的 {\ttfami...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:偏 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...\small\item\em 一個用 {\bfseries 左偏
+ 樹} 實作的 {\ttfamily ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...all\item\em 一個用 {\bfseries 左偏樹
+ } 實作的 {\ttfamily Max...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:實 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...tem\em 一個用 {\bfseries 左偏樹} 實
+ 作的 {\ttfamily Maximum-...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...\em 一個用 {\bfseries 左偏樹} 實作
+ 的 {\ttfamily Maximum-\/\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... 一個用 {\bfseries 左偏樹} 實作的
+ {\ttfamily Maximum-\/\-He...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:除 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...作的 {\ttfamily Maximum-\/\-Heap} , 除
+ 了原本heap有的功能...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:了 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...的 {\ttfamily Maximum-\/\-Heap} , 除了
+ 原本heap有的功能外,...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:原 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... {\ttfamily Maximum-\/\-Heap} , 除了原
+ 本heap有的功能外, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:本 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...\ttfamily Maximum-\/\-Heap} , 除了原本
+ heap有的功能外, 還...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...ly Maximum-\/\-Heap} , 除了原本heap有
+ 的功能外, 還支援 {\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...Maximum-\/\-Heap} , 除了原本heap有的
+ 功能外, 還支援 {\ttf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:功 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...imum-\/\-Heap} , 除了原本heap有的功
+ 能外, 還支援 {\ttfami...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:能 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...m-\/\-Heap} , 除了原本heap有的功能
+ 外, 還支援 {\ttfamily ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:外 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 .../\-Heap} , 除了原本heap有的功能外
+ , 還支援 {\ttfamily mer...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:還 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...ap} , 除了原本heap有的功能外, 還
+ 支援 {\ttfamily merge} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:支 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ... , 除了原本heap有的功能外, 還支
+ 援 {\ttfamily merge} 功...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:援 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...除了原本heap有的功能外, 還支援
+ {\ttfamily merge} 功能 ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:功 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...功能外, 還支援 {\ttfamily merge} 功
+ 能 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:能 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.28 ...能外, 還支援 {\ttfamily merge} 功能
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 \begin{DoxyCompactList}\small\item\em 中
+ 文名 {\ttfamily 線段樹} \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:文 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 \begin{DoxyCompactList}\small\item\em 中文
+ 名 {\ttfamily 線段樹} \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:名 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...n{DoxyCompactList}\small\item\em 中文名
+ {\ttfamily 線段樹} \en...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:線 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...st}\small\item\em 中文名 {\ttfamily 線
+ 段樹} \end{DoxyCompactLi...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:段 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...\small\item\em 中文名 {\ttfamily 線段
+ 樹} \end{DoxyCompactList}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.30 ...all\item\em 中文名 {\ttfamily 線段樹
+ } \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 \begin{DoxyCompactList}\small\item\em 是
+ 一種神乎其技的資料結...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 \begin{DoxyCompactList}\small\item\em 是一
+ 種神乎其技的資料結...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:種 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...n{DoxyCompactList}\small\item\em 是一種
+ 神乎其技的資料結...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:神 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...oxyCompactList}\small\item\em 是一種神
+ 乎其技的資料結構, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:乎 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...CompactList}\small\item\em 是一種神乎
+ 其技的資料結構, 維...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:其 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...pactList}\small\item\em 是一種神乎其
+ 技的資料結構, 維護...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:技 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...tList}\small\item\em 是一種神乎其技
+ 的資料結構, 維護一...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...st}\small\item\em 是一種神乎其技的
+ 資料結構, 維護一堆...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:資 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...\small\item\em 是一種神乎其技的資
+ 料結構, 維護一堆 Ke...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:料 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...all\item\em 是一種神乎其技的資料
+ 結構, 維護一堆 Key-\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:結 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...\item\em 是一種神乎其技的資料結
+ 構, 維護一堆 Key-\/$>...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:構 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...em\em 是一種神乎其技的資料結構
+ , 維護一堆 Key-\/$>$Va...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:維 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ... 是一種神乎其技的資料結構, 維
+ 護一堆 Key-\/$>$Value ....
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:護 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...一種神乎其技的資料結構, 維護
+ 一堆 Key-\/$>$Value . ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...種神乎其技的資料結構, 維護一
+ 堆 Key-\/$>$Value . 並...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:堆 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...神乎其技的資料結構, 維護一堆
+ Key-\/$>$Value . 並且...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <9> not available
+(Font) Font shape `OT1/ptm/b/n' tried instead on input line 32.
+LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <7> not available
+(Font) Font shape `OT1/ptm/b/n' tried instead on input line 32.
+LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <5> not available
+(Font) Font shape `OT1/ptm/b/n' tried instead on input line 32.
+
+! Package inputenc Error: Unicode char \u8:並 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...結構, 維護一堆 Key-\/$>$Value . 並
+ 且支援 一些 {\ttfamil...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:且 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...構, 維護一堆 Key-\/$>$Value . 並且
+ 支援 一些 {\ttfamily s...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:支 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ..., 維護一堆 Key-\/$>$Value . 並且支
+ 援 一些 {\ttfamily std\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:援 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...維護一堆 Key-\/$>$Value . 並且支援
+ 一些 {\ttfamily std\-::...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...一堆 Key-\/$>$Value . 並且支援 一
+ 些 {\ttfamily std\-::map}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:些 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...堆 Key-\/$>$Value . 並且支援 一些
+ {\ttfamily std\-::map} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:難 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...支援 一些 {\ttfamily std\-::map} 難
+ 以快速實踐的操作, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...援 一些 {\ttfamily std\-::map} 難以
+ 快速實踐的操作, 如...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:快 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ... 一些 {\ttfamily std\-::map} 難以快
+ 速實踐的操作, 如 {\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:速 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...一些 {\ttfamily std\-::map} 難以快速
+ 實踐的操作, 如 {\ttf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:實 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...些 {\ttfamily std\-::map} 難以快速實
+ 踐的操作, 如 {\ttfami...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:踐 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ... {\ttfamily std\-::map} 難以快速實踐
+ 的操作, 如 {\ttfamily ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...ttfamily std\-::map} 難以快速實踐的
+ 操作, 如 {\ttfamily spl...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:操 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...amily std\-::map} 難以快速實踐的操
+ 作, 如 {\ttfamily split}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...ly std\-::map} 難以快速實踐的操作
+ , 如 {\ttfamily split} , ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:如 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.32 ...d\-::map} 難以快速實踐的操作, 如
+ {\ttfamily split} , {\ttf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:基 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 \begin{DoxyCompactList}\small\item\em 基
+ 本上跟\-Splay\-Tree一樣, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:本 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 \begin{DoxyCompactList}\small\item\em 基本
+ 上跟\-Splay\-Tree一樣, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:上 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...n{DoxyCompactList}\small\item\em 基本上
+ 跟\-Splay\-Tree一樣, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:跟 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...oxyCompactList}\small\item\em 基本上跟
+ \-Splay\-Tree一樣, 不...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...small\item\em 基本上跟\-Splay\-Tree一
+ 樣, 不過這邊結合線...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樣 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...ll\item\em 基本上跟\-Splay\-Tree一樣
+ , 不過這邊結合線段...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...em\em 基本上跟\-Splay\-Tree一樣, 不
+ 過這邊結合線段樹, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:過 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...em 基本上跟\-Splay\-Tree一樣, 不過
+ 這邊結合線段樹, 多...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:這 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...基本上跟\-Splay\-Tree一樣, 不過這
+ 邊結合線段樹, 多了...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:邊 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...本上跟\-Splay\-Tree一樣, 不過這邊
+ 結合線段樹, 多了區...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:結 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...上跟\-Splay\-Tree一樣, 不過這邊結
+ 合線段樹, 多了區間...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:合 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...跟\-Splay\-Tree一樣, 不過這邊結合
+ 線段樹, 多了區間操...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:線 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...\-Splay\-Tree一樣, 不過這邊結合線
+ 段樹, 多了區間操作...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:段 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...play\-Tree一樣, 不過這邊結合線段
+ 樹, 多了區間操作 (...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...y\-Tree一樣, 不過這邊結合線段樹
+ , 多了區間操作 (線...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:多 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...ee一樣, 不過這邊結合線段樹, 多
+ 了區間操作 (線段樹...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:了 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...樣, 不過這邊結合線段樹, 多了
+ 區間操作 (線段樹相...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:區 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ..., 不過這邊結合線段樹, 多了區
+ 間操作 (線段樹相關...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:間 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ... 不過這邊結合線段樹, 多了區間
+ 操作 (線段樹相關ope...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:操 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...過這邊結合線段樹, 多了區間操
+ 作 (線段樹相關operat...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:作 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...這邊結合線段樹, 多了區間操作
+ (線段樹相關operator...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:線 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...結合線段樹, 多了區間操作 (線
+ 段樹相關operator定義...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:段 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...合線段樹, 多了區間操作 (線段
+ 樹相關operator定義請...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:樹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...線段樹, 多了區間操作 (線段樹
+ 相關operator定義請見...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:相 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...段樹, 多了區間操作 (線段樹相
+ 關operator定義請見 {\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:關 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...樹, 多了區間操作 (線段樹相關
+ operator定義請見 {\ttf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...區間操作 (線段樹相關operator定
+ 義請見 {\ttfamily \hype...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:義 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...間操作 (線段樹相關operator定義
+ 請見 {\ttfamily \hyperli...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:請 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...操作 (線段樹相關operator定義請
+ 見 {\ttfamily \hyperlink{...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:見 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.34 ...作 (線段樹相關operator定義請見
+ {\ttfamily \hyperlink{cla...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:跟 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.36 \begin{DoxyCompactList}\small\item\em 跟
+ \-K\-D\-\_\-\-Tree很像歐 \e...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:很 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.36 ...st}\small\item\em 跟\-K\-D\-\_\-\-Tree很
+ 像歐 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:像 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.36 ...\small\item\em 跟\-K\-D\-\_\-\-Tree很像
+ 歐 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:歐 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.36 ...all\item\em 跟\-K\-D\-\_\-\-Tree很像歐
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+ [11
+
+]
+
+! Package inputenc Error: Unicode char \u8:二 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 \begin{DoxyCompactList}\small\item\em 二
+ 維點陣資料 \end{DoxyCompa...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:維 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 \begin{DoxyCompactList}\small\item\em 二維
+ 點陣資料 \end{DoxyCompa...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...n{DoxyCompactList}\small\item\em 二維點
+ 陣資料 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:陣 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...oxyCompactList}\small\item\em 二維點陣
+ 資料 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:資 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...CompactList}\small\item\em 二維點陣資
+ 料 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:料 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.42 ...pactList}\small\item\em 二維點陣資料
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:特 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.46 \begin{DoxyCompactList}\small\item\em 特
+ 徵點 \end{DoxyCompactList}\item
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:徵 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.46 \begin{DoxyCompactList}\small\item\em 特徵
+ 點 \end{DoxyCompactList}\item
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:點 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.46 ...n{DoxyCompactList}\small\item\em 特徵點
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.58 \begin{DoxyCompactList}\small\item\em 把
+ 一個 {\ttfamily std\-::map$<...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.58 \begin{DoxyCompactList}\small\item\em 把一
+ 個 {\ttfamily std\-::map$<...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.58 ...n{DoxyCompactList}\small\item\em 把一個
+ {\ttfamily std\-::map$<$I...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.58 ...::map$<$I\-D},Vector$<$\-Scalar$>$ $>$ 包
+ 起來 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.58 ...ap$<$I\-D},Vector$<$\-Scalar$>$ $>$ 包起
+ 來 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.58 ...<$I\-D},Vector$<$\-Scalar$>$ $>$ 包起來
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:底 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.60 \begin{DoxyCompactList}\small\item\em 底
+ 片 \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:片 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.60 \begin{DoxyCompactList}\small\item\em 底片
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:未 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.62 \begin{DoxyCompactList}\small\item\em 未
+ 完待續 \end{DoxyCompactList...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:完 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.62 \begin{DoxyCompactList}\small\item\em 未完
+ 待續 \end{DoxyCompactList...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:待 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.62 ...n{DoxyCompactList}\small\item\em 未完待
+ 續 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:續 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.62 ...oxyCompactList}\small\item\em 未完待續
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:多 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.64 ...yCompactList}\small\item\em {\bfseries 多
+ 個camera}, 一個offset, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.64 ...mpactList}\small\item\em {\bfseries 多個
+ camera}, 一個offset, 一...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.64 ...mall\item\em {\bfseries 多個camera}, 一
+ 個offset, 一個rotation ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.64 ...l\item\em {\bfseries 多個camera}, 一個
+ offset, 一個rotation \en...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.64 ...\bfseries 多個camera}, 一個offset, 一
+ 個rotation \end{DoxyCompa...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.64 ...series 多個camera}, 一個offset, 一個
+ rotation \end{DoxyCompactL...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:純 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 \begin{DoxyCompactList}\small\item\em 純
+ 粹把 {\ttfamily std\-::vecto...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:粹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 \begin{DoxyCompactList}\small\item\em 純粹
+ 把 {\ttfamily std\-::vecto...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ...n{DoxyCompactList}\small\item\em 純粹把
+ {\ttfamily std\-::vector}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ...em 純粹把 {\ttfamily std\-::vector} 包
+ 起來, 變成繼承自 \h...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ...純粹把 {\ttfamily std\-::vector} 包起
+ 來, 變成繼承自 \hype...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ...粹把 {\ttfamily std\-::vector} 包起來
+ , 變成繼承自 \hyperli...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:變 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ... {\ttfamily std\-::vector} 包起來, 變
+ 成繼承自 \hyperlink{cl...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ...\ttfamily std\-::vector} 包起來, 變成
+ 繼承自 \hyperlink{class...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:繼 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ...family std\-::vector} 包起來, 變成繼
+ 承自 \hyperlink{classmeo...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:承 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ...ily std\-::vector} 包起來, 變成繼承
+ 自 \hyperlink{classmeow_1...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.82 ... std\-::vector} 包起來, 變成繼承自
+ \hyperlink{classmeow_1_1O...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 \begin{DoxyCompactList}\small\item\em 一
+ 切物件的\-Base, 並要求...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:切 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 \begin{DoxyCompactList}\small\item\em 一切
+ 物件的\-Base, 並要求...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:物 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...n{DoxyCompactList}\small\item\em 一切物
+ 件的\-Base, 並要求每...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:件 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...oxyCompactList}\small\item\em 一切物件
+ 的\-Base, 並要求每個...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...CompactList}\small\item\em 一切物件的
+ \-Base, 並要求每個物...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:並 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...}\small\item\em 一切物件的\-Base, 並
+ 要求每個物件都要...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:要 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...mall\item\em 一切物件的\-Base, 並要
+ 求每個物件都要有re...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:求 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...l\item\em 一切物件的\-Base, 並要求
+ 每個物件都要有read,...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:每 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...tem\em 一切物件的\-Base, 並要求每
+ 個物件都要有read, wr...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...\em 一切物件的\-Base, 並要求每個
+ 物件都要有read, write...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:物 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ... 一切物件的\-Base, 並要求每個物
+ 件都要有read, write, c...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:件 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...切物件的\-Base, 並要求每個物件
+ 都要有read, write, crea...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:都 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...物件的\-Base, 並要求每個物件都
+ 要有read, write, create,...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:要 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...件的\-Base, 並要求每個物件都要
+ 有read, write, create, .....
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...的\-Base, 並要求每個物件都要有
+ read, write, create, ... ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:等 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...件都要有read, write, create, ... 等
+ 功能 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:功 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...都要有read, write, create, ... 等功
+ 能 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:能 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.84 ...要有read, write, create, ... 等功能
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:純 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 \begin{DoxyCompactList}\small\item\em 純
+ 粹把 {\ttfamily std\-::map} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:粹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 \begin{DoxyCompactList}\small\item\em 純粹
+ 把 {\ttfamily std\-::map} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...n{DoxyCompactList}\small\item\em 純粹把
+ {\ttfamily std\-::map} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...em\em 純粹把 {\ttfamily std\-::map} 包
+ 起來, 變成繼承自 \h...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...em 純粹把 {\ttfamily std\-::map} 包起
+ 來, 變成繼承自 \hype...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...純粹把 {\ttfamily std\-::map} 包起來
+ , 變成繼承自 \hyperli...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:變 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...把 {\ttfamily std\-::map} 包起來, 變
+ 成繼承自 \hyperlink{cl...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ... {\ttfamily std\-::map} 包起來, 變成
+ 繼承自 \hyperlink{class...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:繼 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...\ttfamily std\-::map} 包起來, 變成繼
+ 承自 \hyperlink{classmeo...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:承 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...family std\-::map} 包起來, 變成繼承
+ 自 \hyperlink{classmeow_1...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.86 ...ily std\-::map} 包起來, 變成繼承自
+ \hyperlink{classmeow_1_1O...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:目 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.88 \begin{DoxyCompactList}\small\item\em 目
+ 前擺爛中 \end{DoxyCompactL...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:前 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.88 \begin{DoxyCompactList}\small\item\em 目前
+ 擺爛中 \end{DoxyCompactL...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:擺 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.88 ...n{DoxyCompactList}\small\item\em 目前擺
+ 爛中 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:爛 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.88 ...oxyCompactList}\small\item\em 目前擺爛
+ 中 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.88 ...CompactList}\small\item\em 目前擺爛中
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:利 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 \begin{DoxyCompactList}\small\item\em 利
+ 用register的概念, 達到ru...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 \begin{DoxyCompactList}\small\item\em 利用
+ register的概念, 達到ru...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...mpactList}\small\item\em 利用register的
+ 概念, 達到runtime用st...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:概 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...ctList}\small\item\em 利用register的概
+ 念, 達到runtime用strin...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:念 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...ist}\small\item\em 利用register的概念
+ , 達到runtime用string...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:達 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...small\item\em 利用register的概念, 達
+ 到runtime用string選擇...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:到 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...ll\item\em 利用register的概念, 達到
+ runtime用string選擇要n...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ... 利用register的概念, 達到runtime用
+ string選擇要new的class...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:選 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...gister的概念, 達到runtime用string選
+ 擇要new的class \end{Dox...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:擇 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...ter的概念, 達到runtime用string選擇
+ 要new的class \end{DoxyCo...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:要 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...的概念, 達到runtime用string選擇要
+ new的class \end{DoxyCompa...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.90 ...念, 達到runtime用string選擇要new的
+ class \end{DoxyCompactList...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:純 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 \begin{DoxyCompactList}\small\item\em 純
+ 粹把給定的 {\ttfamily Typ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:粹 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 \begin{DoxyCompactList}\small\item\em 純粹
+ 把給定的 {\ttfamily Typ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:把 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...n{DoxyCompactList}\small\item\em 純粹把
+ 給定的 {\ttfamily Type}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:給 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...oxyCompactList}\small\item\em 純粹把給
+ 定的 {\ttfamily Type} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...CompactList}\small\item\em 純粹把給定
+ 的 {\ttfamily Type} 包...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...pactList}\small\item\em 純粹把給定的
+ {\ttfamily Type} 包起...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:包 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...em 純粹把給定的 {\ttfamily Type} 包
+ 起來, 變成繼承自 \h...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:起 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...純粹把給定的 {\ttfamily Type} 包起
+ 來, 變成繼承自 \hype...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...粹把給定的 {\ttfamily Type} 包起來
+ , 變成繼承自 \hyperli...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:變 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...給定的 {\ttfamily Type} 包起來, 變
+ 成繼承自 \hyperlink{cl...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...定的 {\ttfamily Type} 包起來, 變成
+ 繼承自 \hyperlink{class...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:繼 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...的 {\ttfamily Type} 包起來, 變成繼
+ 承自 \hyperlink{classmeo...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:承 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ... {\ttfamily Type} 包起來, 變成繼承
+ 自 \hyperlink{classmeow_1...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.92 ...\ttfamily Type} 包起來, 變成繼承自
+ \hyperlink{classmeow_1_1O...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+ [12]
+
+! Package inputenc Error: Unicode char \u8:具 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 \begin{DoxyCompactList}\small\item\em 具
+ 有copy on write, 且擁有...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 \begin{DoxyCompactList}\small\item\em 具有
+ copy on write, 且擁有...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:且 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...t}\small\item\em 具有copy on write, 且
+ 擁有比\-C++更靈活的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:擁 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...small\item\em 具有copy on write, 且擁
+ 有比\-C++更靈活的ref...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...ll\item\em 具有copy on write, 且擁有
+ 比\-C++更靈活的refere...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:比 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...item\em 具有copy on write, 且擁有比
+ \-C++更靈活的reference...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:更 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...具有copy on write, 且擁有比\-C++更
+ 靈活的reference機制 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:靈 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...有copy on write, 且擁有比\-C++更靈
+ 活的reference機制 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:活 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...copy on write, 且擁有比\-C++更靈活
+ 的reference機制 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...y on write, 且擁有比\-C++更靈活的
+ reference機制 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:機 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...且擁有比\-C++更靈活的reference機
+ 制 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:制 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.104 ...擁有比\-C++更靈活的reference機制
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:管 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 \begin{DoxyCompactList}\small\item\em 管
+ 理參數設置, 自訂usage ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:理 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 \begin{DoxyCompactList}\small\item\em 管理
+ 參數設置, 自訂usage ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:參 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...{DoxyCompactList}\small\item\em 管理參
+ 數設置, 自訂usage doc...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...xyCompactList}\small\item\em 管理參數
+ 設置, 自訂usage docume...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:設 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...ompactList}\small\item\em 管理參數設
+ 置, 自訂usage document,...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:置 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...actList}\small\item\em 管理參數設置
+ , 自訂usage document, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:自 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...st}\small\item\em 管理參數設置, 自
+ 訂usage document, 分析a...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:訂 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...\small\item\em 管理參數設置, 自訂
+ usage document, 分析argc...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:分 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...參數設置, 自訂usage document, 分
+ 析argc, argv \end{DoxyCom...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:析 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.106 ...數設置, 自訂usage document, 分析
+ argc, argv \end{DoxyCompac...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+ [13]
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 7.19995pt on input line 168.
+LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <8> not available
+(Font) Font shape `OT1/ptm/b/n' tried instead on input line 168.
+
+! Package inputenc Error: Unicode char \u8:如 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 \begin{DoxyCompactList}\small\item\em 如
+ 果abs(輸入的數值) $<$ e...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:果 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 \begin{DoxyCompactList}\small\item\em 如果
+ abs(輸入的數值) $<$ e...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:輸 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...yCompactList}\small\item\em 如果abs(輸
+ 入的數值) $<$ eps, 則...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:入 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...mpactList}\small\item\em 如果abs(輸入
+ 的數值) $<$ eps, 則回...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...ctList}\small\item\em 如果abs(輸入的
+ 數值) $<$ eps, 則回傳...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...ist}\small\item\em 如果abs(輸入的數
+ 值) $<$ eps, 則回傳0, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...}\small\item\em 如果abs(輸入的數值
+ ) $<$ eps, 則回傳0, 否...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:則 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...m 如果abs(輸入的數值) $<$ eps, 則
+ 回傳0, 否則回傳輸...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:回 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...果abs(輸入的數值) $<$ eps, 則回
+ 傳0, 否則回傳輸入...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:傳 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...abs(輸入的數值) $<$ eps, 則回傳
+ 0, 否則回傳輸入的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:否 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...輸入的數值) $<$ eps, 則回傳0, 否
+ 則回傳輸入的數值 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:則 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...入的數值) $<$ eps, 則回傳0, 否則
+ 回傳輸入的數值 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:回 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...的數值) $<$ eps, 則回傳0, 否則回
+ 傳輸入的數值 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:傳 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...數值) $<$ eps, 則回傳0, 否則回傳
+ 輸入的數值 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:輸 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...值) $<$ eps, 則回傳0, 否則回傳輸
+ 入的數值 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:入 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...) $<$ eps, 則回傳0, 否則回傳輸入
+ 的數值 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...<$ eps, 則回傳0, 否則回傳輸入的
+ 數值 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ...eps, 則回傳0, 否則回傳輸入的數
+ 值 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.173 ..., 則回傳0, 否則回傳輸入的數值
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:只 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 \begin{DoxyCompactList}\small\item\em 只
+ 將 {\ttfamily sigs} 個標...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 \begin{DoxyCompactList}\small\item\em 只將
+ {\ttfamily sigs} 個標...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...small\item\em 只將 {\ttfamily sigs} 個
+ 標準差以內的數據...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:標 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...ll\item\em 只將 {\ttfamily sigs} 個標
+ 準差以內的數據拿...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:準 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...item\em 只將 {\ttfamily sigs} 個標準
+ 差以內的數據拿來...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:差 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...m\em 只將 {\ttfamily sigs} 個標準差
+ 以內的數據拿來取...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...m 只將 {\ttfamily sigs} 個標準差以
+ 內的數據拿來取平...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:內 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...將 {\ttfamily sigs} 個標準差以內
+ 的數據拿來取平均 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ... {\ttfamily sigs} 個標準差以內的
+ 數據拿來取平均 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...{\ttfamily sigs} 個標準差以內的數
+ 據拿來取平均 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:據 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...tfamily sigs} 個標準差以內的數據
+ 拿來取平均 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:拿 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...mily sigs} 個標準差以內的數據拿
+ 來取平均 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...y sigs} 個標準差以內的數據拿來
+ 取平均 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:取 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...igs} 個標準差以內的數據拿來取
+ 平均 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:平 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...} 個標準差以內的數據拿來取平
+ 均 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:均 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.189 ...標準差以內的數據拿來取平均
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:只 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 \begin{DoxyCompactList}\small\item\em 只
+ 將 {\ttfamily sigs} 個標...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 \begin{DoxyCompactList}\small\item\em 只將
+ {\ttfamily sigs} 個標...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...small\item\em 只將 {\ttfamily sigs} 個
+ 標準差以內的數據...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:標 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...ll\item\em 只將 {\ttfamily sigs} 個標
+ 準差以內的數據拿...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:準 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...item\em 只將 {\ttfamily sigs} 個標準
+ 差以內的數據拿來...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:差 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...m\em 只將 {\ttfamily sigs} 個標準差
+ 以內的數據拿來取...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...m 只將 {\ttfamily sigs} 個標準差以
+ 內的數據拿來取平...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:內 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...將 {\ttfamily sigs} 個標準差以內
+ 的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ... {\ttfamily sigs} 個標準差以內的
+ 數據拿來取平均, 不...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...{\ttfamily sigs} 個標準差以內的數
+ 據拿來取平均, 不過...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:據 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...tfamily sigs} 個標準差以內的數據
+ 拿來取平均, 不過這...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:拿 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...mily sigs} 個標準差以內的數據拿
+ 來取平均, 不過這次...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...y sigs} 個標準差以內的數據拿來
+ 取平均, 不過這次用...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:取 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...igs} 個標準差以內的數據拿來取
+ 平均, 不過這次用 {\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:平 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...} 個標準差以內的數據拿來取平
+ 均, 不過這次用 {\ttf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:均 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...標準差以內的數據拿來取平均
+ , 不過這次用 {\ttfami...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...準差以內的數據拿來取平均, 不
+ 過這次用 {\ttfamily p}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:過 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...差以內的數據拿來取平均, 不過
+ 這次用 {\ttfamily p} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:這 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...以內的數據拿來取平均, 不過這
+ 次用 {\ttfamily p} 來...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:次 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...內的數據拿來取平均, 不過這次
+ 用 {\ttfamily p} 來加...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...的數據拿來取平均, 不過這次用
+ {\ttfamily p} 來加權...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...平均, 不過這次用 {\ttfamily p} 來
+ 加權平均 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:加 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...均, 不過這次用 {\ttfamily p} 來加
+ 權平均 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:權 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ..., 不過這次用 {\ttfamily p} 來加權
+ 平均 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:平 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...過這次用 {\ttfamily p} 來加權平
+ 均 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:均 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.191 ...這次用 {\ttfamily p} 來加權平均
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:就 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 \begin{DoxyCompactList}\small\item\em 就
+ 只是個取絕對值 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:只 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 \begin{DoxyCompactList}\small\item\em 就只
+ 是個取絕對值 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 ...{DoxyCompactList}\small\item\em 就只是
+ 個取絕對值 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 ...xyCompactList}\small\item\em 就只是個
+ 取絕對值 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:取 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 ...ompactList}\small\item\em 就只是個取
+ 絕對值 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:絕 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 ...actList}\small\item\em 就只是個取絕
+ 對值 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:對 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 ...List}\small\item\em 就只是個取絕對
+ 值 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:值 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.193 ...t}\small\item\em 就只是個取絕對值
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+ [14]
+
+! Package inputenc Error: Unicode char \u8:類 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 \begin{DoxyCompactList}\small\item\em 類
+ 似\-C的printf, 不過是將...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:似 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 \begin{DoxyCompactList}\small\item\em 類似
+ \-C的printf, 不過是將...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...xyCompactList}\small\item\em 類似\-C的
+ printf, 不過是將格式...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...st}\small\item\em 類似\-C的printf, 不
+ 過是將格式化的字...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:過 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...\small\item\em 類似\-C的printf, 不過
+ 是將格式化的字串...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...all\item\em 類似\-C的printf, 不過是
+ 將格式化的字串丟...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...\item\em 類似\-C的printf, 不過是將
+ 格式化的字串丟到 {...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:格 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...em\em 類似\-C的printf, 不過是將格
+ 式化的字串丟到 {\tt...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:式 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...em 類似\-C的printf, 不過是將格式
+ 化的字串丟到 {\ttfam...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:化 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...類似\-C的printf, 不過是將格式化
+ 的字串丟到 {\ttfamily...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...似\-C的printf, 不過是將格式化的
+ 字串丟到 {\ttfamily st...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...\-C的printf, 不過是將格式化的字
+ 串丟到 {\ttfamily std\-...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...的printf, 不過是將格式化的字串
+ 丟到 {\ttfamily std\-::s...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:丟 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...printf, 不過是將格式化的字串丟
+ 到 {\ttfamily std\-::stri...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:到 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...ntf, 不過是將格式化的字串丟到
+ {\ttfamily std\-::string}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:裡 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...串丟到 {\ttfamily std\-::string} 裡
+ 回傳 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:回 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...丟到 {\ttfamily std\-::string} 裡回
+ 傳 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:傳 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.195 ...到 {\ttfamily std\-::string} 裡回傳
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 \begin{DoxyCompactList}\small\item\em 將
+ 輸入字串中的某個patte...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:輸 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 \begin{DoxyCompactList}\small\item\em 將輸
+ 入字串中的某個patte...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:入 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...{DoxyCompactList}\small\item\em 將輸入
+ 字串中的某個pattern...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...xyCompactList}\small\item\em 將輸入字
+ 串中的某個pattern取...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...ompactList}\small\item\em 將輸入字串
+ 中的某個pattern取代...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...actList}\small\item\em 將輸入字串中
+ 的某個pattern取代成...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...List}\small\item\em 將輸入字串中的
+ 某個pattern取代成另...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:某 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...t}\small\item\em 將輸入字串中的某
+ 個pattern取代成另一...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...small\item\em 將輸入字串中的某個
+ pattern取代成另一個p...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:取 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...\em 將輸入字串中的某個pattern取
+ 代成另一個pattern \en...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:代 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ... 將輸入字串中的某個pattern取代
+ 成另一個pattern \end{D...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:成 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...輸入字串中的某個pattern取代成
+ 另一個pattern \end{Doxy...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:另 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...入字串中的某個pattern取代成另
+ 一個pattern \end{DoxyCom...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...字串中的某個pattern取代成另一
+ 個pattern \end{DoxyCompac...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.197 ...串中的某個pattern取代成另一個
+ pattern \end{DoxyCompactLi...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:檢 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 \begin{DoxyCompactList}\small\item\em 檢
+ 查給定字串的結尾是...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:查 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 \begin{DoxyCompactList}\small\item\em 檢查
+ 給定字串的結尾是...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:給 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...{DoxyCompactList}\small\item\em 檢查給
+ 定字串的結尾是否...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...xyCompactList}\small\item\em 檢查給定
+ 字串的結尾是否符...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...ompactList}\small\item\em 檢查給定字
+ 串的結尾是否符合...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...actList}\small\item\em 檢查給定字串
+ 的結尾是否符合給...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...List}\small\item\em 檢查給定字串的
+ 結尾是否符合給定...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:結 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...t}\small\item\em 檢查給定字串的結
+ 尾是否符合給定的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:尾 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...small\item\em 檢查給定字串的結尾
+ 是否符合給定的數...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...ll\item\em 檢查給定字串的結尾是
+ 否符合給定的數個pa...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:否 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...item\em 檢查給定字串的結尾是否
+ 符合給定的數個patte...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:符 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...m\em 檢查給定字串的結尾是否符
+ 合給定的數個patterns...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:合 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...m 檢查給定字串的結尾是否符合
+ 給定的數個patterns中...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:給 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...查給定字串的結尾是否符合給
+ 定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...給定字串的結尾是否符合給定
+ 的數個patterns中的一...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...定字串的結尾是否符合給定的
+ 數個patterns中的一個...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...字串的結尾是否符合給定的數
+ 個patterns中的一個 \e...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...串的結尾是否符合給定的數個
+ patterns中的一個 \end{...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...尾是否符合給定的數個patterns中
+ 的一個 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...是否符合給定的數個patterns中的
+ 一個 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...否符合給定的數個patterns中的一
+ 個 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.199 ...符合給定的數個patterns中的一個
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:階 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.203 \begin{DoxyCompactList}\small\item\em 階
+ 層式輸出 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:層 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.203 \begin{DoxyCompactList}\small\item\em 階層
+ 式輸出 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:式 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.203 ...{DoxyCompactList}\small\item\em 階層式
+ 輸出 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:輸 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.203 ...xyCompactList}\small\item\em 階層式輸
+ 出 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:出 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.203 ...ompactList}\small\item\em 階層式輸出
+ \end{DoxyCompactList}\item
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 \begin{DoxyCompactList}\small\item\em 將
+ 兩個字串用人類習慣...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:兩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 \begin{DoxyCompactList}\small\item\em 將兩
+ 個字串用人類習慣...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...{DoxyCompactList}\small\item\em 將兩個
+ 字串用人類習慣的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...xyCompactList}\small\item\em 將兩個字
+ 串用人類習慣的檔...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...ompactList}\small\item\em 將兩個字串
+ 用人類習慣的檔名...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...actList}\small\item\em 將兩個字串用
+ 人類習慣的檔名排...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:人 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...List}\small\item\em 將兩個字串用人
+ 類習慣的檔名排序...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:類 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...t}\small\item\em 將兩個字串用人類
+ 習慣的檔名排序方...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:習 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...small\item\em 將兩個字串用人類習
+ 慣的檔名排序方式...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:慣 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...ll\item\em 將兩個字串用人類習慣
+ 的檔名排序方式排...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...item\em 將兩個字串用人類習慣的
+ 檔名排序方式排序 \...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:檔 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...m\em 將兩個字串用人類習慣的檔
+ 名排序方式排序 \end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:名 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...m 將兩個字串用人類習慣的檔名
+ 排序方式排序 \end{Do...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:排 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...兩個字串用人類習慣的檔名排
+ 序方式排序 \end{DoxyC...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:序 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...個字串用人類習慣的檔名排序
+ 方式排序 \end{DoxyComp...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:方 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...字串用人類習慣的檔名排序方
+ 式排序 \end{DoxyCompact...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:式 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...串用人類習慣的檔名排序方式
+ 排序 \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:排 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...用人類習慣的檔名排序方式排
+ 序 \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:序 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.205 ...人類習慣的檔名排序方式排序
+ \end{DoxyCompactList}\end...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:圓 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.210 \begin{DoxyCompactList}\small\item\em 圓
+ 周率... \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:周 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.210 \begin{DoxyCompactList}\small\item\em 圓周
+ 率... \end{DoxyCompactLis...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:率 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.210 ...{DoxyCompactList}\small\item\em 圓周率
+ ... \end{DoxyCompactList}\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+LaTeX Font Info: Font shape `OT1/phv/bc/n' will be
+(Font) scaled to size 8.99994pt on input line 218.
+LaTeX Font Info: Font shape `OT1/phv/bc/it' in size <10> not available
+(Font) Font shape `OT1/phv/bc/sl' tried instead on input line 242.
+
+LaTeX Font Info: Font shape `OT1/phv/bc/sl' will be
+(Font) scaled to size 8.99994pt on input line 242.
+LaTeX Font Info: Try loading font information for OT1+pcr on input line 242.
+
+
+(/usr/share/texlive/texmf-dist/tex/latex/psnfss/ot1pcr.fd
+File: ot1pcr.fd 2001/06/04 font definitions for OT1/pcr.
+)
+
+LaTeX Font Warning: Font shape `OT1/pcr/bc/n' undefined
+(Font) using `OT1/pcr/m/n' instead on input line 242.
+
+
+! Package inputenc Error: Unicode char \u8:只 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只
+ 將 {\ttfamily sigs} 個標準差以內的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只將
+ {\ttfamily sigs} 個標準差以內的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只將 {\ttfamily sigs} 個
+ 標準差以內的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:標 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只將 {\ttfamily sigs} 個標
+ 準差以內的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:準 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只將 {\ttfamily sigs} 個標準
+ 差以內的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:差 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只將 {\ttfamily sigs} 個標準差
+ 以內的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只將 {\ttfamily sigs} 個標準差以
+ 內的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:內 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 只將 {\ttfamily sigs} 個標準差以內
+ 的數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ... {\ttfamily sigs} 個標準差以內的
+ 數據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ...{\ttfamily sigs} 個標準差以內的數
+ 據拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:據 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ...tfamily sigs} 個標準差以內的數據
+ 拿來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:拿 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ...mily sigs} 個標準差以內的數據拿
+ 來取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ...y sigs} 個標準差以內的數據拿來
+ 取平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:取 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ...igs} 個標準差以內的數據拿來取
+ 平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:平 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ...} 個標準差以內的數據拿來取平
+ 均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:均 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.245 ...標準差以內的數據拿來取平均
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:只 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只
+ 將 {\ttfamily sigs} 個標準差以內的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只將
+ {\ttfamily sigs} 個標準差以內的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只將 {\ttfamily sigs} 個
+ 標準差以內的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:標 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只將 {\ttfamily sigs} 個標
+ 準差以內的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:準 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只將 {\ttfamily sigs} 個標準
+ 差以內的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:差 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只將 {\ttfamily sigs} 個標準差
+ 以內的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:以 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只將 {\ttfamily sigs} 個標準差以
+ 內的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:內 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 只將 {\ttfamily sigs} 個標準差以內
+ 的數據拿來取平均, ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ... {\ttfamily sigs} 個標準差以內的
+ 數據拿來取平均, 不...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...{\ttfamily sigs} 個標準差以內的數
+ 據拿來取平均, 不過...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:據 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...tfamily sigs} 個標準差以內的數據
+ 拿來取平均, 不過這...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:拿 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...mily sigs} 個標準差以內的數據拿
+ 來取平均, 不過這次...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...y sigs} 個標準差以內的數據拿來
+ 取平均, 不過這次用...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:取 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...igs} 個標準差以內的數據拿來取
+ 平均, 不過這次用 {\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:平 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...} 個標準差以內的數據拿來取平
+ 均, 不過這次用 {\ttf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:均 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...標準差以內的數據拿來取平均
+ , 不過這次用 {\ttfami...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...準差以內的數據拿來取平均, 不
+ 過這次用 {\ttfamily p}...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:過 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...差以內的數據拿來取平均, 不過
+ 這次用 {\ttfamily p} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:這 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...以內的數據拿來取平均, 不過這
+ 次用 {\ttfamily p} 來...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:次 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...內的數據拿來取平均, 不過這次
+ 用 {\ttfamily p} 來加...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...的數據拿來取平均, 不過這次用
+ {\ttfamily p} 來加權...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...平均, 不過這次用 {\ttfamily p} 來
+ 加權平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:加 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...均, 不過這次用 {\ttfamily p} 來加
+ 權平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:權 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ..., 不過這次用 {\ttfamily p} 來加權
+ 平均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:平 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...過這次用 {\ttfamily p} 來加權平
+ 均
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:均 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.259 ...這次用 {\ttfamily p} 來加權平均
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+ [15] [16]
+
+! Package inputenc Error: Unicode char \u8:檢 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢
+ 查給定字串的結尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:查 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查
+ 給定字串的結尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:給 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給
+ 定字串的結尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定
+ 字串的結尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字
+ 串的結尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串
+ 的結尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的
+ 結尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:結 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的結
+ 尾是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:尾 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的結尾
+ 是否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的結尾是
+ 否符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:否 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的結尾是否
+ 符合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:符 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的結尾是否符
+ 合給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:合 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的結尾是否符合
+ 給定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:給 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 檢查給定字串的結尾是否符合給
+ 定的數個patterns中的...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:定 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...給定字串的結尾是否符合給定
+ 的數個patterns中的一個
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...定字串的結尾是否符合給定的
+ 數個patterns中的一個
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...字串的結尾是否符合給定的數
+ 個patterns中的一個
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...串的結尾是否符合給定的數個
+ patterns中的一個
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...尾是否符合給定的數個patterns中
+ 的一個
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...是否符合給定的數個patterns中的
+ 一個
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...否符合給定的數個patterns中的一
+ 個
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.512 ...符合給定的數個patterns中的一個
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+LaTeX Font Info: Font shape `T1/phv/m/it' in size <10> not available
+(Font) Font shape `T1/phv/m/sl' tried instead on input line 516.
+LaTeX Font Info: Font shape `T1/phv/m/sl' will be
+(Font) scaled to size 8.99994pt on input line 516.
+
+! Package inputenc Error: Unicode char \u8:愈 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.516 \mbox{\tt in} & {\em str} & 愈
+ 檢查的字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:檢 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.516 \mbox{\tt in} & {\em str} & 愈檢
+ 查的字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:查 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.516 \mbox{\tt in} & {\em str} & 愈檢查
+ 的字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.516 \mbox{\tt in} & {\em str} & 愈檢查的
+ 字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.516 \mbox{\tt in} & {\em str} & 愈檢查的字
+ 串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.516 ...\tt in} & {\em str} & 愈檢查的字串
+ \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.518 \mbox{\tt in} & {\em n} & pattern數
+ \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:各 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.520 \mbox{\tt in} & {\em ...} & 各
+ 種pattern \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:種 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.520 \mbox{\tt in} & {\em ...} & 各種
+ pattern \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+Underfull \vbox (badness 10000) detected at line 522
+ []
+
+
+! Package inputenc Error: Unicode char \u8:表 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.524 {\ttfamily true/false} 表
+ 示 {\bfseries 是否有符合}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:示 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.524 {\ttfamily true/false} 表示
+ {\bfseries 是否有符合}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.524 {\ttfamily true/false} 表示 {\bfseries 是
+ 否有符合}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:否 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.524 ...mily true/false} 表示 {\bfseries 是否
+ 有符合}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.524 ...y true/false} 表示 {\bfseries 是否有
+ 符合}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:符 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.524 ...rue/false} 表示 {\bfseries 是否有符
+ 合}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:合 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.524 .../false} 表示 {\bfseries 是否有符合
+ }
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:參 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參
+ 數中所有的字串都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:數 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數
+ 中所有的字串都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:中 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中
+ 所有的字串都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:所 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所
+ 有的字串都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:有 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所有
+ 的字串都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所有的
+ 字串都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所有的字
+ 串都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所有的字串
+ 都是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:都 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所有的字串都
+ 是用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所有的字串都是
+ 用{\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 參數中所有的字串都是用
+ {\ttfamily cstring} 來傳遞, 也就...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:來 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...的字串都是用{\ttfamily cstring} 來
+ 傳遞, 也就是 {\ttfami...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:傳 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...字串都是用{\ttfamily cstring} 來傳
+ 遞, 也就是 {\ttfamily ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:遞 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...串都是用{\ttfamily cstring} 來傳遞
+ , 也就是 {\ttfamily cha...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:也 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...是用{\ttfamily cstring} 來傳遞, 也
+ 就是 {\ttfamily char} {\...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:就 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...用{\ttfamily cstring} 來傳遞, 也就
+ 是 {\ttfamily char} {\ttf...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...{\ttfamily cstring} 來傳遞, 也就是
+ {\ttfamily char} {\ttfami...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:型 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...tfamily char} {\ttfamily const$\ast$} 型
+ 態
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:態 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.527 ...mily char} {\ttfamily const$\ast$} 型態
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:將 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將
+ 兩個字串用人類習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:兩 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩
+ 個字串用人類習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個
+ 字串用人類習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字
+ 串用人類習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串
+ 用人類習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:用 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用
+ 人類習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:人 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人
+ 類習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:類 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人類
+ 習慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:習 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人類習
+ 慣的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:慣 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人類習慣
+ 的檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:的 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人類習慣的
+ 檔名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:檔 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人類習慣的檔
+ 名排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:名 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人類習慣的檔名
+ 排序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:排 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 將兩個字串用人類習慣的檔名排
+ 序方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:序 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 ...個字串用人類習慣的檔名排序
+ 方式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:方 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 ...字串用人類習慣的檔名排序方
+ 式排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:式 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 ...串用人類習慣的檔名排序方式
+ 排序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:排 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 ...用人類習慣的檔名排序方式排
+ 序
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:序 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.573 ...人類習慣的檔名排序方式排序
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:例 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.575 例
+ 如 a1 $<$ a2 $<$ a3 $<$ a10 $<$ a12 $<$ a20, 而不是 a1 $<$ a10 ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:如 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.575 例如
+ a1 $<$ a2 $<$ a3 $<$ a10 $<$ a12 $<$ a20, 而不是 a1 $<$ a10 ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:而 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.575 ...<$ a2 $<$ a3 $<$ a10 $<$ a12 $<$ a20, 而
+ 不是 a1 $<$ a10 $<$ a12 ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:不 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.575 ...a2 $<$ a3 $<$ a10 $<$ a12 $<$ a20, 而不
+ 是 a1 $<$ a10 $<$ a12 $<$...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.575 ...$<$ a3 $<$ a10 $<$ a12 $<$ a20, 而不是
+ a1 $<$ a10 $<$ a12 $<$ a2...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+ [17]
+
+! Package inputenc Error: Unicode char \u8:第 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.579 \mbox{\tt in} & {\em f1} & 第
+ 一個字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:一 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.579 \mbox{\tt in} & {\em f1} & 第一
+ 個字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.579 \mbox{\tt in} & {\em f1} & 第一個
+ 字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.579 \mbox{\tt in} & {\em f1} & 第一個字
+ 串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.579 \mbox{\tt in} & {\em f1} & 第一個字串
+ \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:第 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.581 \mbox{\tt in} & {\em f2} & 第
+ 二個字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:二 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.581 \mbox{\tt in} & {\em f2} & 第二
+ 個字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:個 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.581 \mbox{\tt in} & {\em f2} & 第二個
+ 字串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:字 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.581 \mbox{\tt in} & {\em f2} & 第二個字
+ 串 \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:串 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.581 \mbox{\tt in} & {\em f2} & 第二個字串
+ \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+Underfull \vbox (badness 10000) detected at line 583
+ []
+
+
+! Package inputenc Error: Unicode char \u8:表 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 {\ttfamily true/false} 表
+ {\bfseries f1是否該排在f2前面}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:是 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 {\ttfamily true/false} 表 {\bfseries f1是
+ 否該排在f2前面}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:否 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 ...amily true/false} 表 {\bfseries f1是否
+ 該排在f2前面}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:該 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 ...ly true/false} 表 {\bfseries f1是否該
+ 排在f2前面}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:排 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 ...true/false} 表 {\bfseries f1是否該排
+ 在f2前面}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:在 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 ...e/false} 表 {\bfseries f1是否該排在
+ f2前面}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:前 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 ...se} 表 {\bfseries f1是否該排在f2前
+ 面}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! Package inputenc Error: Unicode char \u8:面 not set up for use with LaTeX.
+
+See the inputenc package documentation for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.585 ... 表 {\bfseries f1是否該排在f2前面
+ }
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+LaTeX Font Warning: Font shape `OT1/pcr/bc/it' undefined
+(Font) using `OT1/pcr/bc/n' instead on input line 624.
+
+! Extra }, or forgotten \endgroup.
+<recently read> \egroup
+
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've deleted a group-closing symbol because it seems to be
+spurious, as in `$x}$'. But perhaps the } is legitimate and
+you forgot something else, as in `\hbox{$x}'. In such cases
+the way to recover is to insert both the forgotten and the
+deleted material, e.g., by typing `I$}'.
+
+! Extra }, or forgotten \endgroup.
+<template> \unskip \relax \@endpbox \egroup
+ \egroup \begingroup \CT@setup \C...
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've deleted a group-closing symbol because it seems to be
+spurious, as in `$x}$'. But perhaps the } is legitimate and
+you forgot something else, as in `\hbox{$x}'. In such cases
+the way to recover is to insert both the forgotten and the
+deleted material, e.g., by typing `I$}'.
+
+! Extra }, or forgotten \endgroup.
+<template> ...ip \relax \@endpbox \egroup \egroup
+ \begingroup \CT@setup \CT@...
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've deleted a group-closing symbol because it seems to be
+spurious, as in `$x}$'. But perhaps the } is legitimate and
+you forgot something else, as in `\hbox{$x}'. In such cases
+the way to recover is to insert both the forgotten and the
+deleted material, e.g., by typing `I$}'.
+
+! Missing $ inserted.
+<inserted text>
+ $
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've inserted a begin-math/end-math symbol since I think
+you left one out. Proceed, with fingers crossed.
+
+! Missing \endgroup inserted.
+<inserted text>
+ \endgroup
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Display math should end with $$.
+<to be read again>
+ \endtemplate
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+The `$' that I just saw supposedly matches a previous `$$'.
+So I shall assume that you typed `$$' both times.
+
+! Missing } inserted.
+<inserted text>
+ }
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Missing } inserted.
+<inserted text>
+ }
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Missing } inserted.
+<inserted text>
+ }
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Extra alignment tab has been changed to \cr.
+<recently read> \endtemplate
+
+l.644 ..., so \[ S_{top}(v) = \begin{cases} true &
+ if~F(v)<\epsilon \\ false...
+You have given more \span or & marks than there were
+in the preamble to the \halign or \valign now in progress.
+So I'll assume that you meant to type \cr instead.
+
+! Missing $ inserted.
+<inserted text>
+ $
+l.644 ...) = \begin{cases} true & if~F(v)<\epsilon
+ \\ false & else \end{case...
+I've inserted a begin-math/end-math symbol since I think
+you left one out. Proceed, with fingers crossed.
+
+
+! LaTeX Error: There's no line here to end.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.644 ... \begin{cases} true & if~F(v)<\epsilon \\
+ false & else \end{cases} ...
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+! Missing $ inserted.
+<inserted text>
+ $
+l.644 ... \begin{cases} true & if~F(v)<\epsilon \\
+ false & else \end{cases} ...
+I've inserted a begin-math/end-math symbol since I think
+you left one out. Proceed, with fingers crossed.
+
+
+! LaTeX Error: \begin{longtable} on input line 635 ended by \end{cases}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+! Missing } inserted.
+<inserted text>
+ }
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Missing } inserted.
+<inserted text>
+ }
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Missing } inserted.
+<inserted text>
+ }
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Missing } inserted.
+<inserted text>
+ }
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I'm guessing that you meant to end an alignment here.
+
+! Misplaced \cr.
+<inserted text> \cr
+
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+! Missing \cr inserted.
+<inserted text>
+ \cr
+l.644 ...F(v)<\epsilon \\ false & else \end{cases}
+ \] \\
+(That makes 100 errors; please try again.)
+Here is how much of TeX's memory you used:
+ 12030 strings out of 494995
+ 166814 string characters out of 3179961
+ 287141 words of memory out of 3000000
+ 14772 multiletter control sequences out of 15000+200000
+ 85484 words of font info for 130 fonts, out of 3000000 for 9000
+ 36 hyphenation exceptions out of 8191
+ 41i,12n,58p,1177b,518s stack positions out of 5000i,500n,10000p,200000b,50000s
+
+! ==> Fatal error occurred, no output PDF file produced!
diff --git a/doc/latex/refman.out b/doc/latex/refman.out
new file mode 100644
index 0000000..7f860e8
--- /dev/null
+++ b/doc/latex/refman.out
@@ -0,0 +1,43 @@
+\BOOKMARK [0][-]{chapter.1}{\376\377\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000I\000n\000d\000e\000x}{}% 1
+\BOOKMARK [1][-]{section.1.1}{\376\377\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000L\000i\000s\000t}{chapter.1}% 2
+\BOOKMARK [0][-]{chapter.2}{\376\377\000H\000i\000e\000r\000a\000r\000c\000h\000i\000c\000a\000l\000\040\000I\000n\000d\000e\000x}{}% 3
+\BOOKMARK [1][-]{section.2.1}{\376\377\000C\000l\000a\000s\000s\000\040\000H\000i\000e\000r\000a\000r\000c\000h\000y}{chapter.2}% 4
+\BOOKMARK [0][-]{chapter.3}{\376\377\000C\000l\000a\000s\000s\000\040\000I\000n\000d\000e\000x}{}% 5
+\BOOKMARK [1][-]{section.3.1}{\376\377\000C\000l\000a\000s\000s\000\040\000L\000i\000s\000t}{chapter.3}% 6
+\BOOKMARK [0][-]{chapter.4}{\376\377\000F\000i\000l\000e\000\040\000I\000n\000d\000e\000x}{}% 7
+\BOOKMARK [1][-]{section.4.1}{\376\377\000F\000i\000l\000e\000\040\000L\000i\000s\000t}{chapter.4}% 8
+\BOOKMARK [0][-]{chapter.5}{\376\377\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{}% 9
+\BOOKMARK [1][-]{section.5.1}{\376\377\000m\000e\000o\000w\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{chapter.5}% 10
+\BOOKMARK [2][-]{subsection.5.1.1}{\376\377\000T\000y\000p\000e\000d\000e\000f\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{section.5.1}% 11
+\BOOKMARK [3][-]{subsubsection.5.1.1.1}{\376\377\000F\000e\000a\000t\000u\000r\000e\000P\000o\000i\000n\000t\000I\000n\000d\000e\000x\000P\000a\000i\000r\000s}{subsection.5.1.1}% 12
+\BOOKMARK [3][-]{subsubsection.5.1.1.2}{\376\377\000O\000b\000j\000D\000o\000u\000b\000l\000e}{subsection.5.1.1}% 13
+\BOOKMARK [3][-]{subsubsection.5.1.1.3}{\376\377\000O\000b\000j\000I\000n\000t}{subsection.5.1.1}% 14
+\BOOKMARK [3][-]{subsubsection.5.1.1.4}{\376\377\000O\000b\000j\000S\000i\000z\000e\000T}{subsection.5.1.1}% 15
+\BOOKMARK [3][-]{subsubsection.5.1.1.5}{\376\377\000O\000b\000j\000S\000t\000r\000i\000n\000g}{subsection.5.1.1}% 16
+\BOOKMARK [2][-]{subsection.5.1.2}{\376\377\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{section.5.1}% 17
+\BOOKMARK [3][-]{subsubsection.5.1.2.1}{\376\377\000a\000v\000e\000r\000a\000g\000e}{subsection.5.1.2}% 18
+\BOOKMARK [3][-]{subsubsection.5.1.2.2}{\376\377\000a\000v\000e\000r\000a\000g\000e}{subsection.5.1.2}% 19
+\BOOKMARK [3][-]{subsubsection.5.1.2.3}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 20
+\BOOKMARK [3][-]{subsubsection.5.1.2.4}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 21
+\BOOKMARK [3][-]{subsubsection.5.1.2.5}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 22
+\BOOKMARK [3][-]{subsubsection.5.1.2.6}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 23
+\BOOKMARK [3][-]{subsubsection.5.1.2.7}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 24
+\BOOKMARK [3][-]{subsubsection.5.1.2.8}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 25
+\BOOKMARK [3][-]{subsubsection.5.1.2.9}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 26
+\BOOKMARK [3][-]{subsubsection.5.1.2.10}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 27
+\BOOKMARK [3][-]{subsubsection.5.1.2.11}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 28
+\BOOKMARK [3][-]{subsubsection.5.1.2.12}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 29
+\BOOKMARK [3][-]{subsubsection.5.1.2.13}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 30
+\BOOKMARK [3][-]{subsubsection.5.1.2.14}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 31
+\BOOKMARK [3][-]{subsubsection.5.1.2.15}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 32
+\BOOKMARK [3][-]{subsubsection.5.1.2.16}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 33
+\BOOKMARK [3][-]{subsubsection.5.1.2.17}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 34
+\BOOKMARK [3][-]{subsubsection.5.1.2.18}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 35
+\BOOKMARK [3][-]{subsubsection.5.1.2.19}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 36
+\BOOKMARK [3][-]{subsubsection.5.1.2.20}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 37
+\BOOKMARK [3][-]{subsubsection.5.1.2.21}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 38
+\BOOKMARK [3][-]{subsubsection.5.1.2.22}{\376\377\000c\000o\000l\000o\000r\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000e}{subsection.5.1.2}% 39
+\BOOKMARK [3][-]{subsubsection.5.1.2.23}{\376\377\000c\000s\000t\000r\000i\000n\000g\000E\000n\000d\000W\000i\000t\000h}{subsection.5.1.2}% 40
+\BOOKMARK [3][-]{subsubsection.5.1.2.24}{\376\377\000c\000u\000b}{subsection.5.1.2}% 41
+\BOOKMARK [3][-]{subsubsection.5.1.2.25}{\376\377\000d\000e\000b\000u\000g\000P\000r\000i\000n\000t\000f\000\137}{subsection.5.1.2}% 42
+\BOOKMARK [3][-]{subsubsection.5.1.2.26}{\376\377\000d\000e\000n\000o\000r\000m\000a\000l\000i\000z\000e}{subsection.5.1.2}% 43
diff --git a/doc/latex/refman.tex b/doc/latex/refman.tex
index a4ae59e..80abd85 100644
--- a/doc/latex/refman.tex
+++ b/doc/latex/refman.tex
@@ -97,6 +97,7 @@
\input{classmeow_1_1KD__Tree}
\input{classmeow_1_1LinearTransformation}
\input{classmeow_1_1Matrix}
+\input{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo}
\input{classmeow_1_1MergeableHeap}
\input{classmeow_1_1ObjArray}
\input{classmeow_1_1ObjBase}
@@ -106,6 +107,7 @@
\input{classmeow_1_1ObjType}
\input{classmeow_1_1Photo}
\input{classmeow_1_1PhotoProjection}
+\input{classmeow_1_1Pipeline}
\input{classmeow_1_1ReaderWriter__double}
\input{classmeow_1_1ReaderWriter__int}
\input{classmeow_1_1ReaderWriter__size__t}
@@ -117,6 +119,7 @@
\input{classmeow_1_1Self}
\input{classmeow_1_1SplayTree}
\input{classmeow_1_1SplayTree__Range}
+\input{classmeow_1_1TransformatePipeline}
\input{classmeow_1_1Transformation}
\input{classmeow_1_1Usage}
\input{classmeow_1_1Vector}
@@ -167,6 +170,7 @@
\input{ObjProperties_8h}
\input{ObjSelector_8h}
\input{ObjTypes_8h}
+\input{Pipeline_8h}
\input{Self_8h}
\input{Usage_8h}
% Latex footer for doxygen 1.8.3.1
diff --git a/doc/latex/refman.toc b/doc/latex/refman.toc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/doc/latex/refman.toc
diff --git a/doc/latex/structMyself_1_1Piece.tex b/doc/latex/structMyself_1_1Piece.tex
new file mode 100644
index 0000000..cf85824
--- /dev/null
+++ b/doc/latex/structMyself_1_1Piece.tex
@@ -0,0 +1,58 @@
+\hypertarget{structMyself_1_1Piece}{\section{Myself\-:\-:Piece Struct Reference}
+\label{structMyself_1_1Piece}\index{Myself\-::\-Piece@{Myself\-::\-Piece}}
+}
+
+
+{\ttfamily \#include \char`\"{}Pipeline.\-h\char`\"{}}
+
+\subsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{structMyself_1_1Piece_a0fe9a50cf10927ee28f19ed1b4b9a45d}{Piece} (Medium $\ast$ptr, bool ad)
+\item
+\hyperlink{structMyself_1_1Piece_a088dc82189ee05282d8c7ff51356ed1f}{$\sim$\-Piece} ()
+\end{DoxyCompactItemize}
+\subsection*{Public Attributes}
+\begin{DoxyCompactItemize}
+\item
+Medium $\ast$ \hyperlink{structMyself_1_1Piece_a3aa3a2284581b112d2d7d17f762e26b2}{pointer\-\_\-}
+\item
+bool \hyperlink{structMyself_1_1Piece_aebe6ae48fa8203b2061bb3ae9899fa31}{auto\-Del\-\_\-}
+\item
+\hyperlink{classint}{int} \hyperlink{structMyself_1_1Piece_a9b5a71a373efc93537f111412df13f71}{counter\-\_\-}
+\end{DoxyCompactItemize}
+
+
+\subsection{Constructor \& Destructor Documentation}
+\hypertarget{structMyself_1_1Piece_a0fe9a50cf10927ee28f19ed1b4b9a45d}{\index{Myself\-::\-Piece@{Myself\-::\-Piece}!Piece@{Piece}}
+\index{Piece@{Piece}!Myself::Piece@{Myself\-::\-Piece}}
+\subsubsection[{Piece}]{\setlength{\rightskip}{0pt plus 5cm}Myself\-::\-Piece\-::\-Piece (
+\begin{DoxyParamCaption}
+\item[{Medium $\ast$}]{ptr, }
+\item[{bool}]{ad}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structMyself_1_1Piece_a0fe9a50cf10927ee28f19ed1b4b9a45d}
+\hypertarget{structMyself_1_1Piece_a088dc82189ee05282d8c7ff51356ed1f}{\index{Myself\-::\-Piece@{Myself\-::\-Piece}!$\sim$\-Piece@{$\sim$\-Piece}}
+\index{$\sim$\-Piece@{$\sim$\-Piece}!Myself::Piece@{Myself\-::\-Piece}}
+\subsubsection[{$\sim$\-Piece}]{\setlength{\rightskip}{0pt plus 5cm}Myself\-::\-Piece\-::$\sim$\-Piece (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structMyself_1_1Piece_a088dc82189ee05282d8c7ff51356ed1f}
+
+
+\subsection{Member Data Documentation}
+\hypertarget{structMyself_1_1Piece_aebe6ae48fa8203b2061bb3ae9899fa31}{\index{Myself\-::\-Piece@{Myself\-::\-Piece}!auto\-Del\-\_\-@{auto\-Del\-\_\-}}
+\index{auto\-Del\-\_\-@{auto\-Del\-\_\-}!Myself::Piece@{Myself\-::\-Piece}}
+\subsubsection[{auto\-Del\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}bool Myself\-::\-Piece\-::auto\-Del\-\_\-}}\label{structMyself_1_1Piece_aebe6ae48fa8203b2061bb3ae9899fa31}
+\hypertarget{structMyself_1_1Piece_a9b5a71a373efc93537f111412df13f71}{\index{Myself\-::\-Piece@{Myself\-::\-Piece}!counter\-\_\-@{counter\-\_\-}}
+\index{counter\-\_\-@{counter\-\_\-}!Myself::Piece@{Myself\-::\-Piece}}
+\subsubsection[{counter\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}{\bf int} Myself\-::\-Piece\-::counter\-\_\-}}\label{structMyself_1_1Piece_a9b5a71a373efc93537f111412df13f71}
+\hypertarget{structMyself_1_1Piece_a3aa3a2284581b112d2d7d17f762e26b2}{\index{Myself\-::\-Piece@{Myself\-::\-Piece}!pointer\-\_\-@{pointer\-\_\-}}
+\index{pointer\-\_\-@{pointer\-\_\-}!Myself::Piece@{Myself\-::\-Piece}}
+\subsubsection[{pointer\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}Medium$\ast$ Myself\-::\-Piece\-::pointer\-\_\-}}\label{structMyself_1_1Piece_a3aa3a2284581b112d2d7d17f762e26b2}
+
+
+The documentation for this struct was generated from the following file\-:\begin{DoxyCompactItemize}
+\item
+meowpp/\hyperlink{Pipeline_8h}{Pipeline.\-h}\end{DoxyCompactItemize}
diff --git a/doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.tex b/doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.tex
new file mode 100644
index 0000000..39aab80
--- /dev/null
+++ b/doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo.tex
@@ -0,0 +1,52 @@
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo}{\section{meow\-:\-:Pipeline$<$ Input, Output, Medium $>$\-:\-:Myself\-:\-:Medium\-Info Struct Reference}
+\label{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo}\index{meow\-::\-Pipeline$<$ Input, Output, Medium $>$\-::\-Myself\-::\-Medium\-Info@{meow\-::\-Pipeline$<$ Input, Output, Medium $>$\-::\-Myself\-::\-Medium\-Info}}
+}
+
+
+{\ttfamily \#include \char`\"{}Pipeline.\-h\char`\"{}}
+
+\subsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_ac7f042f7c96e2170e5c13f5d98fb5d0a}{Medium\-Info} (bool ad)
+\item
+\hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_a2cf1d9e410e152bc045017d966fa3e52}{$\sim$\-Medium\-Info} ()
+\end{DoxyCompactItemize}
+\subsection*{Public Attributes}
+\begin{DoxyCompactItemize}
+\item
+bool \hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_a690761e082bed4240d7d9c19d2bfe8f8}{auto\-Del\-\_\-}
+\item
+\hyperlink{classint}{int} \hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_affff71e6cc8c5f4bb3918d9bda624047}{counter\-\_\-}
+\end{DoxyCompactItemize}
+
+
+\subsection{Constructor \& Destructor Documentation}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_ac7f042f7c96e2170e5c13f5d98fb5d0a}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}!Medium\-Info@{Medium\-Info}}
+\index{Medium\-Info@{Medium\-Info}!meow::Pipeline::Myself::MediumInfo@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}}
+\subsubsection[{Medium\-Info}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Medium\-Info\-::\-Medium\-Info (
+\begin{DoxyParamCaption}
+\item[{bool}]{ad}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_ac7f042f7c96e2170e5c13f5d98fb5d0a}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_a2cf1d9e410e152bc045017d966fa3e52}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}!$\sim$\-Medium\-Info@{$\sim$\-Medium\-Info}}
+\index{$\sim$\-Medium\-Info@{$\sim$\-Medium\-Info}!meow::Pipeline::Myself::MediumInfo@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}}
+\subsubsection[{$\sim$\-Medium\-Info}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Medium\-Info\-::$\sim$\-Medium\-Info (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_a2cf1d9e410e152bc045017d966fa3e52}
+
+
+\subsection{Member Data Documentation}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_a690761e082bed4240d7d9c19d2bfe8f8}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}!auto\-Del\-\_\-@{auto\-Del\-\_\-}}
+\index{auto\-Del\-\_\-@{auto\-Del\-\_\-}!meow::Pipeline::Myself::MediumInfo@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}}
+\subsubsection[{auto\-Del\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Medium\-Info\-::auto\-Del\-\_\-}}\label{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_a690761e082bed4240d7d9c19d2bfe8f8}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_affff71e6cc8c5f4bb3918d9bda624047}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}!counter\-\_\-@{counter\-\_\-}}
+\index{counter\-\_\-@{counter\-\_\-}!meow::Pipeline::Myself::MediumInfo@{meow\-::\-Pipeline\-::\-Myself\-::\-Medium\-Info}}
+\subsubsection[{counter\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input, class Output, class Medium$>$ {\bf int} {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Medium\-Info\-::counter\-\_\-}}\label{structmeow_1_1Pipeline_1_1Myself_1_1MediumInfo_affff71e6cc8c5f4bb3918d9bda624047}
+
+
+The documentation for this struct was generated from the following file\-:\begin{DoxyCompactItemize}
+\item
+meowpp/\hyperlink{Pipeline_8h}{Pipeline.\-h}\end{DoxyCompactItemize}
diff --git a/doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1Piece.tex b/doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1Piece.tex
new file mode 100644
index 0000000..129ece2
--- /dev/null
+++ b/doc/latex/structmeow_1_1Pipeline_1_1Myself_1_1Piece.tex
@@ -0,0 +1,58 @@
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1Piece}{\section{meow\-:\-:Pipeline$<$ Input, Output, Medium $>$\-:\-:Myself\-:\-:Piece Struct Reference}
+\label{structmeow_1_1Pipeline_1_1Myself_1_1Piece}\index{meow\-::\-Pipeline$<$ Input, Output, Medium $>$\-::\-Myself\-::\-Piece@{meow\-::\-Pipeline$<$ Input, Output, Medium $>$\-::\-Myself\-::\-Piece}}
+}
+
+
+{\ttfamily \#include \char`\"{}Pipeline.\-h\char`\"{}}
+
+\subsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1Piece_ac039c45f7590f7fac7d53e1c3a9f32c8}{Piece} (Medium $\ast$ptr, bool ad)
+\item
+\hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a0505d119a337c9b670fd9e55d8dfe128}{$\sim$\-Piece} ()
+\end{DoxyCompactItemize}
+\subsection*{Public Attributes}
+\begin{DoxyCompactItemize}
+\item
+Medium $\ast$ \hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a4eec14f1a789a05686fecb5fc6bc288c}{pointer\-\_\-}
+\item
+bool \hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1Piece_ad08c25aaac6b23aeb333f41b764b3276}{auto\-Del\-\_\-}
+\item
+\hyperlink{classint}{int} \hyperlink{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a46c3361f4d950acaf84ee7ba11129cb4}{counter\-\_\-}
+\end{DoxyCompactItemize}
+
+
+\subsection{Constructor \& Destructor Documentation}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1Piece_ac039c45f7590f7fac7d53e1c3a9f32c8}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}!Piece@{Piece}}
+\index{Piece@{Piece}!meow::Pipeline::Myself::Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}}
+\subsubsection[{Piece}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input , class Output , class Medium $>$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Piece\-::\-Piece (
+\begin{DoxyParamCaption}
+\item[{Medium $\ast$}]{ptr, }
+\item[{bool}]{ad}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structmeow_1_1Pipeline_1_1Myself_1_1Piece_ac039c45f7590f7fac7d53e1c3a9f32c8}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a0505d119a337c9b670fd9e55d8dfe128}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}!$\sim$\-Piece@{$\sim$\-Piece}}
+\index{$\sim$\-Piece@{$\sim$\-Piece}!meow::Pipeline::Myself::Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}}
+\subsubsection[{$\sim$\-Piece}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input , class Output , class Medium $>$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Piece\-::$\sim$\-Piece (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a0505d119a337c9b670fd9e55d8dfe128}
+
+
+\subsection{Member Data Documentation}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1Piece_ad08c25aaac6b23aeb333f41b764b3276}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}!auto\-Del\-\_\-@{auto\-Del\-\_\-}}
+\index{auto\-Del\-\_\-@{auto\-Del\-\_\-}!meow::Pipeline::Myself::Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}}
+\subsubsection[{auto\-Del\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input , class Output , class Medium $>$ bool {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Piece\-::auto\-Del\-\_\-}}\label{structmeow_1_1Pipeline_1_1Myself_1_1Piece_ad08c25aaac6b23aeb333f41b764b3276}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a46c3361f4d950acaf84ee7ba11129cb4}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}!counter\-\_\-@{counter\-\_\-}}
+\index{counter\-\_\-@{counter\-\_\-}!meow::Pipeline::Myself::Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}}
+\subsubsection[{counter\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input , class Output , class Medium $>$ {\bf int} {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Piece\-::counter\-\_\-}}\label{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a46c3361f4d950acaf84ee7ba11129cb4}
+\hypertarget{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a4eec14f1a789a05686fecb5fc6bc288c}{\index{meow\-::\-Pipeline\-::\-Myself\-::\-Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}!pointer\-\_\-@{pointer\-\_\-}}
+\index{pointer\-\_\-@{pointer\-\_\-}!meow::Pipeline::Myself::Piece@{meow\-::\-Pipeline\-::\-Myself\-::\-Piece}}
+\subsubsection[{pointer\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Input , class Output , class Medium $>$ Medium$\ast$ {\bf meow\-::\-Pipeline}$<$ Input, Output, Medium $>$\-::Myself\-::\-Piece\-::pointer\-\_\-}}\label{structmeow_1_1Pipeline_1_1Myself_1_1Piece_a4eec14f1a789a05686fecb5fc6bc288c}
+
+
+The documentation for this struct was generated from the following file\-:\begin{DoxyCompactItemize}
+\item
+meowpp/\hyperlink{Pipeline_8h}{Pipeline.\-h}\end{DoxyCompactItemize}
diff --git a/doc/latex/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.tex b/doc/latex/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.tex
new file mode 100644
index 0000000..fef0efc
--- /dev/null
+++ b/doc/latex/structmeow_1_1TransformatePipeline_1_1Myself_1_1Element.tex
@@ -0,0 +1,58 @@
+\hypertarget{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element}{\section{meow\-:\-:Transformate\-Pipeline\-:\-:Myself\-:\-:Element Struct Reference}
+\label{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element}\index{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}}
+}
+
+
+{\ttfamily \#include \char`\"{}Transformation.\-h\char`\"{}}
+
+\subsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a26339d9dc84b86ebf9a8cf676afcb67a}{Element} (Transformate $\ast$ptr, bool ad)
+\item
+\hyperlink{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_ac3b69e508d6fb9c1dca4e1a24d434c8f}{$\sim$\-Element} ()
+\end{DoxyCompactItemize}
+\subsection*{Public Attributes}
+\begin{DoxyCompactItemize}
+\item
+Transformate $\ast$ \hyperlink{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a9cfafb531ffba21e51d18b4ec4717855}{pointer\-\_\-}
+\item
+bool \hyperlink{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a0c56fbb6fe7cd1f8bbc74e4e77da6b56}{auto\-Del\-\_\-}
+\item
+\hyperlink{classint}{int} \hyperlink{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_ae7682c851c192ba24797d0fc1cd8b7fe}{counter\-\_\-}
+\end{DoxyCompactItemize}
+
+
+\subsection{Constructor \& Destructor Documentation}
+\hypertarget{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a26339d9dc84b86ebf9a8cf676afcb67a}{\index{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}!Element@{Element}}
+\index{Element@{Element}!meow::TransformatePipeline::Myself::Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}}
+\subsubsection[{Element}]{\setlength{\rightskip}{0pt plus 5cm}meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element\-::\-Element (
+\begin{DoxyParamCaption}
+\item[{Transformate $\ast$}]{ptr, }
+\item[{bool}]{ad}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a26339d9dc84b86ebf9a8cf676afcb67a}
+\hypertarget{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_ac3b69e508d6fb9c1dca4e1a24d434c8f}{\index{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}!$\sim$\-Element@{$\sim$\-Element}}
+\index{$\sim$\-Element@{$\sim$\-Element}!meow::TransformatePipeline::Myself::Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}}
+\subsubsection[{$\sim$\-Element}]{\setlength{\rightskip}{0pt plus 5cm}meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element\-::$\sim$\-Element (
+\begin{DoxyParamCaption}
+{}
+\end{DoxyParamCaption}
+)\hspace{0.3cm}{\ttfamily [inline]}}}\label{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_ac3b69e508d6fb9c1dca4e1a24d434c8f}
+
+
+\subsection{Member Data Documentation}
+\hypertarget{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a0c56fbb6fe7cd1f8bbc74e4e77da6b56}{\index{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}!auto\-Del\-\_\-@{auto\-Del\-\_\-}}
+\index{auto\-Del\-\_\-@{auto\-Del\-\_\-}!meow::TransformatePipeline::Myself::Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}}
+\subsubsection[{auto\-Del\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}bool meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element\-::auto\-Del\-\_\-}}\label{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a0c56fbb6fe7cd1f8bbc74e4e77da6b56}
+\hypertarget{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_ae7682c851c192ba24797d0fc1cd8b7fe}{\index{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}!counter\-\_\-@{counter\-\_\-}}
+\index{counter\-\_\-@{counter\-\_\-}!meow::TransformatePipeline::Myself::Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}}
+\subsubsection[{counter\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}{\bf int} meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element\-::counter\-\_\-}}\label{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_ae7682c851c192ba24797d0fc1cd8b7fe}
+\hypertarget{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a9cfafb531ffba21e51d18b4ec4717855}{\index{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}!pointer\-\_\-@{pointer\-\_\-}}
+\index{pointer\-\_\-@{pointer\-\_\-}!meow::TransformatePipeline::Myself::Element@{meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element}}
+\subsubsection[{pointer\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}Transformate$\ast$ meow\-::\-Transformate\-Pipeline\-::\-Myself\-::\-Element\-::pointer\-\_\-}}\label{structmeow_1_1TransformatePipeline_1_1Myself_1_1Element_a9cfafb531ffba21e51d18b4ec4717855}
+
+
+The documentation for this struct was generated from the following file\-:\begin{DoxyCompactItemize}
+\item
+meowpp/math/\hyperlink{Transformation_8h}{Transformation.\-h}\end{DoxyCompactItemize}
diff --git a/doxygen/!readme.asciidoc b/doxygen/!readme.asciidoc
index 0e8802a..8fbca51 100644
--- a/doxygen/!readme.asciidoc
+++ b/doxygen/!readme.asciidoc
@@ -113,161 +113,169 @@ CALLER_GRAPH = YES
[source,css]
----------------------------------------------
body, table, div, p, dl {
- font: 400 14px/19px Roboto,sans-serif,monospace;
+ font: 400 14px/19px Roboto,sans-serif,monospace;
}
.title {
- line-height: 100%;
- font-size: 200%;
- margin : 0px;
- padding: 0px;
- border : 0px;
+ line-height: 100%;
+ font-size: 200%;
+ margin : 0px;
+ padding: 0px;
+ border : 0px;
}
dt {
- color: #999999;
- font-style:italic;
+ color: #999999;
+ font-style:italic;
}
div.qindex, div.navtab{
- background-color: #2B3F26;
+ background-color: #2B3F26;
}
a {
- color: #5D77AC;
+ color: #5D77AC;
}
.contents a:visited {
- color: #7695D2;
+ color: #7695D2;
}
a.code, a.code:visited {
- color: #7695D2;
+ color: #7695D2;
}
a.codeRef, a.codeRef:visited {
- color: #7695D2;
+ color: #7695D2;
}
pre.fragment {
- background-color: #0B0C0D;
- border-radius: 4px;
- -moz-border-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ background-color: #0B0C0D;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
div.fragment {
- background-color: #0B0C0D;
- border-radius: 4px;
- -moz-border-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ background-color: #0B0C0D;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
div.line {
- font-family: 'courier new', monospace, fixed;
- color: #CCCCCC;
- font-size: 14px;
- min-height: 14px;
+ font-family: 'courier new', monospace, fixed;
+ color: #CCCCCC;
+ font-size: 14px;
+ min-height: 14px;
}
span.lineno {
- background-color: #181818;
+ background-color: #181818;
}
span.lineno a {
- background-color: #3B3838;
+ background-color: #3B3838;
}
span.lineno a:hover {
- background-color: #6B6868;
+ background-color: #6B6868;
}
body {
- background-color: #212131;
- color: #DDFFDD;
+ background-color: #212131;
+ color: #DDFFDD;
}
span.keyword {
- color: #00A000
+ color: #00A000
}
span.keywordtype {
- color: #907050
+ color: #907050
}
span.comment {
- color: #808080
+ color: #808080
+}
+
+div.center img {
+ padding: 7px;
+ background-color: #5F5572;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
table.memberdecls {
- border-top-color: #111111;
+ border-top-color: #111111;
}
.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
- background-color: #192322;
+ background-color: #192322;
}
.mdescLeft, .mdescRight {
- color: #CCCCCC;
+ color: #CCCCCC;
}
.memTemplParams {
- color: #7695D2;
+ color: #7695D2;
}
.memtemplate {
- color: #7695D2;
+ color: #7695D2;
}
.memproto, dl.reflist dt {
- color: #758575;
- text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.95);
- /* background-image:url('nav_f.png'); */
- background-color: #181C28;
+ color: #758575;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.95);
+ /* background-image:url('nav_f.png'); */
+ background-color: #181C28;
}
.memdoc, dl.reflist dd {
- /* background-image:url('nav_g.png'); */
- background-color: #131923;
+ /* background-image:url('nav_g.png'); */
+ background-color: #212A31;
}
.params .paramdir {
- color:#A0AA00;
+ color:#A0AA00;
}
.directory tr.even {
- background-color: #272838;
+ background-color: #272838;
}
.directory .levels span {
- color: #5D77AC;
+ color: #5D77AC;
}
div.header
{
- /* background-image:url('nav_h.png'); */
- /* background-repeat:repeat-x; */
- background-color: #290A1C;
- padding: 0px;
- margin : 0px;
- border : 0px;
- margin-top: 10px;
- border-bottom: 1px solid #AA0000;/*#C4CFE5;*/
+ /* background-image:url('nav_h.png'); */
+ /* background-repeat:repeat-x; */
+ background-color: #290A1C;
+ padding: 0px;
+ margin : 0px;
+ border : 0px;
+ margin-top: 10px;
+ border-bottom: 1px solid #AA0000;/*#C4CFE5;*/
}
div.headertitle
{
- padding: 5px;
- margin : 0px;
- border : 0px;
+ padding: 5px;
+ margin : 0px;
+ border : 0px;
}
#projectname
{
- font: 400% Tahoma, Arial,sans-serif,monospace;
+ font: 400% Tahoma, Arial,sans-serif,monospace;
}
div.toc h3 {
- color: #7695D2;
+ color: #7695D2;
}
----------------------------------------------
diff --git a/doxygen/stylesheet.css b/doxygen/stylesheet.css
index ea16425..aa54b57 100644
--- a/doxygen/stylesheet.css
+++ b/doxygen/stylesheet.css
@@ -83,13 +83,13 @@ caption {
}
span.legend {
- font-size: 70%;
- text-align: center;
+ font-size: 70%;
+ text-align: center;
}
h3.version {
- font-size: 90%;
- text-align: center;
+ font-size: 90%;
+ text-align: center;
}
div.qindex, div.navtab{
@@ -135,7 +135,7 @@ a.qindexHL {
}
.contents a.qindexHL:visited {
- color: #ffffff;
+ color: #ffffff;
}
a.el {
@@ -160,35 +160,35 @@ dl.el {
}
pre.fragment {
- border: 1px solid #C4CFE5;
- background-color: #0B0C0D;
- padding: 4px 6px;
- margin: 4px 8px 4px 2px;
- overflow: auto;
- word-wrap: break-word;
- font-size: 9pt;
- line-height: 125%;
- font-family: monospace, fixed;
- font-size: 105%;
- border-radius: 4px;
- -moz-border-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ border: 1px solid #C4CFE5;
+ background-color: #0B0C0D;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
div.fragment {
- padding: 4px;
- margin: 4px;
+ padding: 4px;
+ margin: 4px;
background-color: #0B0C0D;
border: 1px solid #C4CFE5;
- border-radius: 4px;
- -moz-border-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
div.line {
font-family: 'courier new', monospace, fixed;
color: #CCCCCC;
- font-size: 14px;
+ font-size: 14px;
min-height: 14px;
line-height: 1.0;
text-wrap: unrestricted;
@@ -224,7 +224,7 @@ span.lineno {
text-align: right;
border-right: 2px solid #0F0;
background-color: #181818;
- white-space: pre;
+ white-space: pre;
}
span.lineno a {
background-color: #3B3838;
@@ -266,7 +266,7 @@ div.groupText {
body {
background-color: #212131;
color: #C0E0C0;
- margin: 0;
+ margin: 0;
}
div.contents {
@@ -281,8 +281,8 @@ td.indexkey {
border: 1px solid #C4CFE5;
margin: 2px 0px 2px 0;
padding: 2px 10px;
- white-space: nowrap;
- vertical-align: top;
+ white-space: nowrap;
+ vertical-align: top;
}
td.indexvalue {
@@ -310,12 +310,17 @@ img.formulaInl {
div.center {
text-align: center;
- margin-top: 0px;
- margin-bottom: 0px;
- padding: 0px;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
}
div.center img {
+ padding: 7px;
+ background-color: #5F5572;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
border: 0px;
}
@@ -376,10 +381,10 @@ span.vhdllogic {
}
blockquote {
- background-color: #F7F8FB;
- border-left: 2px solid #9CAFD4;
- margin: 0 24px 0 4px;
- padding: 0 12px 0 16px;
+ background-color: #F7F8FB;
+ border-left: 2px solid #9CAFD4;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
}
/* @end */
@@ -469,14 +474,14 @@ table.memberdecls {
}
.memSeparator {
- border-bottom: 1px solid #DEE4F0;
- line-height: 1px;
- margin: 0px;
- padding: 0px;
+ border-bottom: 1px solid #DEE4F0;
+ line-height: 1px;
+ margin: 0px;
+ padding: 0px;
}
.memItemLeft, .memTemplItemLeft {
- white-space: nowrap;
+ white-space: nowrap;
}
.memItemRight {
@@ -485,7 +490,7 @@ table.memberdecls {
.memTemplParams {
color: #7695D2;
- white-space: nowrap;
+ white-space: nowrap;
font-size: 80%;
}
@@ -519,22 +524,22 @@ table.memberdecls {
padding: 0;
margin-bottom: 10px;
margin-right: 5px;
- -webkit-transition: box-shadow 0.5s linear;
- -moz-transition: box-shadow 0.5s linear;
- -ms-transition: box-shadow 0.5s linear;
- -o-transition: box-shadow 0.5s linear;
- transition: box-shadow 0.5s linear;
- display: table !important;
- width: 100%;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+ display: table !important;
+ width: 100%;
}
.memitem.glow {
- box-shadow: 0 0 15px cyan;
+ box-shadow: 0 0 15px cyan;
}
.memname {
- font-weight: bold;
- margin-left: 6px;
+ font-weight: bold;
+ margin-left: 6px;
}
.memname td {
@@ -542,62 +547,62 @@ table.memberdecls {
}
.memproto, dl.reflist dt {
- border-top: 1px solid #A8B8D9;
- border-left: 1px solid #A8B8D9;
- border-right: 1px solid #A8B8D9;
- padding: 6px 0px 6px 0px;
- color: #758575;
- font-weight: bold;
- text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.95);
- /* background-image:url('nav_f.png'); */
- background-repeat:repeat-x;
- background-color: #181C28;
- /* opera specific markup */
- box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- border-top-right-radius: 4px;
- border-top-left-radius: 4px;
- /* firefox specific markup */
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
- -moz-border-radius-topright: 4px;
- -moz-border-radius-topleft: 4px;
- /* webkit specific markup */
- -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- -webkit-border-top-right-radius: 4px;
- -webkit-border-top-left-radius: 4px;
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 0px 6px 0px;
+ color: #758575;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.95);
+ /* background-image:url('nav_f.png'); */
+ background-repeat:repeat-x;
+ background-color: #181C28;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ -moz-border-radius-topleft: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
}
.memdoc, dl.reflist dd {
- border-bottom: 1px solid #A8B8D9;
- border-left: 1px solid #A8B8D9;
- border-right: 1px solid #A8B8D9;
- padding: 6px 10px 2px 10px;
- /* background-color: #FBFCFD; */
- border-top-width: 0;
- /* background-image:url('nav_g.png'); */
- background-repeat:repeat-x;
- background-color: #131923;
- /* opera specific markup */
- border-bottom-left-radius: 4px;
- border-bottom-right-radius: 4px;
- box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- /* firefox specific markup */
- -moz-border-radius-bottomleft: 4px;
- -moz-border-radius-bottomright: 4px;
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
- /* webkit specific markup */
- -webkit-border-bottom-left-radius: 4px;
- -webkit-border-bottom-right-radius: 4px;
- -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-bottom: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 10px 2px 10px;
+ /* background-color: #FBFCFD; */
+ border-top-width: 0;
+ /* background-image:url('nav_g.png'); */
+ background-repeat:repeat-x;
+ background-color: #212A31;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
}
dl.reflist dt {
- padding: 5px;
+ padding: 5px;
}
dl.reflist dd {
- margin: 0px 0px 10px 0px;
- padding: 5px;
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
}
.paramkey {
@@ -616,27 +621,27 @@ dl.reflist dd {
font-style: normal;
}
.paramname code {
- line-height: 14px;
+ line-height: 14px;
}
.params, .retval, .exception, .tparams {
- margin-left: 0px;
- padding-left: 0px;
+ margin-left: 0px;
+ padding-left: 0px;
}
.params .paramname, .retval .paramname {
- font-weight: bold;
- vertical-align: top;
+ font-weight: bold;
+ vertical-align: top;
}
-
+
.params .paramtype {
- font-style: italic;
- vertical-align: top;
+ font-style: italic;
+ vertical-align: top;
}
-
+
.params .paramdir {
- font-family: "courier new",courier,monospace;
- vertical-align: top;
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
color:#A0AA00;
}
@@ -656,15 +661,15 @@ td.mlabels-right {
}
span.mlabels {
- margin-left: 8px;
+ margin-left: 8px;
}
span.mlabel {
- background-color: #728DC1;
- border-top:1px solid #5373B4;
- border-left:1px solid #5373B4;
- border-right:1px solid #C4CFE5;
- border-bottom:1px solid #C4CFE5;
+ background-color: #728DC1;
+ border-top:1px solid #5373B4;
+ border-left:1px solid #5373B4;
+ border-right:1px solid #C4CFE5;
+ border-bottom:1px solid #C4CFE5;
text-shadow: none;
color: white;
margin-right: 4px;
@@ -682,38 +687,38 @@ span.mlabel {
/* these are for tree view when not used as main index */
div.directory {
- margin: 10px 0px;
- border-top: 1px solid #A8B8D9;
- border-bottom: 1px solid #A8B8D9;
- width: 100%;
+ margin: 10px 0px;
+ border-top: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ width: 100%;
}
.directory table {
- border-collapse:collapse;
+ border-collapse:collapse;
}
.directory td {
- margin: 0px;
- padding: 0px;
+ margin: 0px;
+ padding: 0px;
vertical-align: top;
}
.directory td.entry {
- white-space: nowrap;
- padding-right: 6px;
+ white-space: nowrap;
+ padding-right: 6px;
}
.directory td.entry a {
- outline:none;
+ outline:none;
}
.directory td.entry a img {
- border: none;
+ border: none;
}
.directory td.desc {
- width: 100%;
- padding-left: 6px;
+ width: 100%;
+ padding-left: 6px;
padding-right: 6px;
padding-top: 3px;
border-left: 1px solid rgba(0,0,0,0.05);
@@ -729,21 +734,21 @@ div.directory {
}
.directory .levels {
- white-space: nowrap;
- width: 100%;
- text-align: right;
- font-size: 9pt;
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
}
.directory .levels span {
- cursor: pointer;
- padding-left: 2px;
- padding-right: 2px;
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
color: #5D77AC;
}
div.dynheader {
- margin-top: 8px;
+ margin-top: 8px;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
@@ -759,8 +764,8 @@ address {
table.doxtable {
border-collapse:collapse;
- margin-top: 4px;
- margin-bottom: 4px;
+ margin-top: 4px;
+ margin-bottom: 4px;
}
table.doxtable td, table.doxtable th {
@@ -777,66 +782,66 @@ table.doxtable th {
}
table.fieldtable {
- /*width: 100%;*/
- margin-bottom: 10px;
- border: 1px solid #A8B8D9;
- border-spacing: 0px;
- -moz-border-radius: 4px;
- -webkit-border-radius: 4px;
- border-radius: 4px;
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
- -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
- box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ /*width: 100%;*/
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
}
.fieldtable td, .fieldtable th {
- padding: 3px 7px 2px;
+ padding: 3px 7px 2px;
}
.fieldtable td.fieldtype, .fieldtable td.fieldname {
- white-space: nowrap;
- border-right: 1px solid #A8B8D9;
- border-bottom: 1px solid #A8B8D9;
- vertical-align: top;
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
}
.fieldtable td.fieldname {
- padding-top: 5px;
+ padding-top: 5px;
}
.fieldtable td.fielddoc {
- border-bottom: 1px solid #A8B8D9;
- /*width: 100%;*/
+ border-bottom: 1px solid #A8B8D9;
+ /*width: 100%;*/
}
.fieldtable td.fielddoc p:first-child {
- margin-top: 2px;
+ margin-top: 2px;
}
-
+
.fieldtable td.fielddoc p:last-child {
- margin-bottom: 2px;
+ margin-bottom: 2px;
}
.fieldtable tr:last-child td {
- border-bottom: none;
+ border-bottom: none;
}
.fieldtable th {
- background-image:url('nav_f.png');
- background-repeat:repeat-x;
- background-color: #E2E8F2;
- font-size: 90%;
- color: #253555;
- padding-bottom: 4px;
- padding-top: 5px;
- text-align:left;
- -moz-border-radius-topleft: 4px;
- -moz-border-radius-topright: 4px;
- -webkit-border-top-left-radius: 4px;
- -webkit-border-top-right-radius: 4px;
- border-top-left-radius: 4px;
- border-top-right-radius: 4px;
- border-bottom: 1px solid #A8B8D9;
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A8B8D9;
}
@@ -886,7 +891,7 @@ table.fieldtable {
color: #283A5D;
font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
- text-decoration: none;
+ text-decoration: none;
}
.navpath li.navelem a:hover
@@ -896,15 +901,15 @@ table.fieldtable {
.navpath li.footer
{
- list-style-type:none;
- float:right;
- padding-left:10px;
- padding-right:15px;
- background-image:none;
- background-repeat:no-repeat;
- background-position:right;
- color:#364D7C;
- font-size: 8pt;
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+ font-size: 8pt;
}
@@ -936,8 +941,8 @@ div.ingroups a
div.header
{
- /* background-image:url('nav_h.png'); */
- /* background-repeat:repeat-x; */
+ /* background-image:url('nav_h.png'); */
+ /* background-repeat:repeat-x; */
background-color: #290A1C;
padding: 0px;
margin : 0px;
@@ -955,7 +960,7 @@ div.headertitle
dl
{
- padding: 0 0 0 10px;
+ padding: 0 0 0 10px;
}
/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
@@ -967,58 +972,58 @@ dl.section
dl.note
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #D0C000;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
}
dl.warning, dl.attention
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #FF0000;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
}
dl.pre, dl.post, dl.invariant
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #00D000;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
}
dl.deprecated
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #505050;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
}
dl.todo
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #00C0E0;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
}
dl.test
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #3030E0;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
}
dl.bug
{
- margin-left:-7px;
- padding-left: 3px;
- border-left:4px solid;
- border-color: #C08050;
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
}
dl.section dd {
@@ -1069,17 +1074,17 @@ dl.section dd {
.image
{
- text-align: center;
+ text-align: center;
}
.dotgraph
{
- text-align: center;
+ text-align: center;
}
.mscgraph
{
- text-align: center;
+ text-align: center;
}
.caption
@@ -1093,74 +1098,74 @@ div.zoom
}
dl.citelist {
- margin-bottom:50px;
+ margin-bottom:50px;
}
dl.citelist dt {
- color:#334975;
- float:left;
- font-weight:bold;
- margin-right:10px;
- padding:5px;
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
}
dl.citelist dd {
- margin:2px 0;
- padding:5px 0;
+ margin:2px 0;
+ padding:5px 0;
}
div.toc {
- padding: 14px 25px;
- background-color: #F4F6FA;
- border: 1px solid #D8DFEE;
- border-radius: 7px 7px 7px 7px;
- float: right;
- height: auto;
- margin: 0 20px 10px 10px;
- width: 200px;
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D8DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 20px 10px 10px;
+ width: 200px;
}
div.toc li {
- background: url("bdwn.png") no-repeat scroll 0 5px transparent;
- font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
- margin-top: 5px;
- padding-left: 10px;
- padding-top: 2px;
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
}
div.toc h3 {
- font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
color: #7695D2;
- border-bottom: 0 none;
- margin: 0;
+ border-bottom: 0 none;
+ margin: 0;
}
div.toc ul {
- list-style: none outside none;
- border: medium none;
- padding: 0px;
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
}
div.toc li.level1 {
- margin-left: 0px;
+ margin-left: 0px;
}
div.toc li.level2 {
- margin-left: 15px;
+ margin-left: 15px;
}
div.toc li.level3 {
- margin-left: 30px;
+ margin-left: 30px;
}
div.toc li.level4 {
- margin-left: 45px;
+ margin-left: 45px;
}
.inherit_header {
- font-weight: bold;
- color: gray;
- cursor: pointer;
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
@@ -1170,16 +1175,16 @@ div.toc li.level4 {
}
.inherit_header td {
- padding: 6px 0px 2px 5px;
+ padding: 6px 0px 2px 5px;
}
.inherit {
- display: none;
+ display: none;
}
tr.heading h2 {
- margin-top: 12px;
- margin-bottom: 4px;
+ margin-top: 12px;
+ margin-bottom: 4px;
}
@media print
diff --git a/meowpp.test/GNUmakefile b/meowpp.test/GNUmakefile
index 2e503b8..839be8e 100644
--- a/meowpp.test/GNUmakefile
+++ b/meowpp.test/GNUmakefile
@@ -6,7 +6,7 @@ DEP := dep
LIB_INCS :=
CXX := g++
-CXXFLAGS := -Wall -I$(INC) $(LIB_INCS) -g -pedantic -lstdc++ -lm
+CXXFLAGS := -Wall -O2 -I$(INC) $(LIB_INCS) -g -pedantic -lstdc++ -lm
CXX_OBJ := $(CXX) -c
CXX_DEP := $(CXX) -MM
diff --git a/meowpp.test/GNUmakefile.targets b/meowpp.test/GNUmakefile.targets
index 6c1cd66..35486b6 100644
--- a/meowpp.test/GNUmakefile.targets
+++ b/meowpp.test/GNUmakefile.targets
@@ -20,3 +20,10 @@ $(BIN)/oo: $(OBJ)/oo.o $(oo_OBJS)
@echo Target: $@...
@$(CXX) $^ $(CXXFLAGS) `pkg-config --cflags --libs $(oo_LIBS) 2>/dev/null` -o $@
+TARGETS := $(TARGETS) $(BIN)/rot_bundle
+rot_bundle_OBJS :=
+rot_bundle_LIBS := opencv
+$(BIN)/rot_bundle: $(OBJ)/rot_bundle.o $(rot_bundle_OBJS)
+ @echo Target: $@...
+ @$(CXX) $^ $(CXXFLAGS) `pkg-config --cflags --libs $(rot_bundle_LIBS) 2>/dev/null` -o $@
+
diff --git a/meowpp.test/inc/autostitch.h b/meowpp.test/inc/autostitch.h
index 38e809f..469889f 100644
--- a/meowpp.test/inc/autostitch.h
+++ b/meowpp.test/inc/autostitch.h
@@ -45,13 +45,12 @@ public:
std::vector<std::vector<meow::FeaturePoint<double,double> > >const& fp);
};
-class MyRansacCheck{
+class MyRansacCheck {
private:
static double threshold;
std::vector<meow::Vector<double> > const* _from;
std::vector<meow::Vector<double> > const* _to ;
- meow::Vector3D<double> _vX;
- meow::Vector3D<double> _vY;
+ double a_, b_, c_, d_, e_, f_, A_, B_;
public:
static meow::Usage usage();
static bool usage(meow::Usage const& usg);
@@ -60,13 +59,12 @@ public:
MyRansacCheck(std::vector<meow::Vector<double> > const* __from,
std::vector<meow::Vector<double> > const* __to);
~MyRansacCheck();
- std::pair<meow::Vector3D<double>, meow::Vector3D<double> > vCalc(
- std::vector<meow::FeaturePointIndexPair> const& __sample
- ) const;
+ meow::Vector<double> vCalc(std::vector<meow::FeaturePointIndexPair> const& __sample) const;
void rememberVCalc(std::vector<meow::FeaturePointIndexPair> const& __sample);
bool ok(meow::FeaturePointIndexPair const& __m) const;
double operator()(std::vector<meow::FeaturePointIndexPair> const& __sample,
std::vector<meow::FeaturePointIndexPair> const& __data) const;
+ bool check(double, double);
meow::Vector2D<double> to(meow::Vector2D<double> const& __v) const;
};
diff --git a/meowpp.test/output.jpg b/meowpp.test/output.jpg
new file mode 100644
index 0000000..8ef882d
--- /dev/null
+++ b/meowpp.test/output.jpg
Binary files differ
diff --git a/meowpp.test/output.txt b/meowpp.test/output.txt
new file mode 100644
index 0000000..2e29d05
--- /dev/null
+++ b/meowpp.test/output.txt
@@ -0,0 +1,361 @@
+18
+input/parrington/prtn16.jpg
+86 10.0000000000 13.0000000000 230.0000000000 14.0000000000 87.0000000000 16.0000000000 73.0000000000 25.0000000000 88.0000000000 39.0000000000 111.0000000000 43.0000000000 122.0000000000 43.0000000000 10.0000000000 47.0000000000 95.0000000000 49.0000000000 169.0000000000 56.0000000000 96.0000000000 58.0000000000 266.0000000000 62.0000000000 11.0000000000 63.0000000000 293.0000000000 67.0000000000 59.0000000000 70.0000000000 249.0000000000 78.0000000000 123.0000000000 80.0000000000 338.0000000000 80.0000000000 128.0000000000 92.0000000000 373.0000000000 92.0000000000 189.0000000000 100.0000000000 357.0000000000 103.0000000000 97.0000000000 113.0000000000 62.0000000000 114.0000000000 303.0000000000 118.0000000000 47.0000000000 121.0000000000 121.0000000000 123.0000000000 68.0000000000 129.0000000000 334.0000000000 136.0000000000 175.0000000000 144.0000000000 316.0000000000 145.0000000000 166.0000000000 155.0000000000 199.0000000000 155.0000000000 213.0000000000 166.0000000000 132.0000000000 168.0000000000 306.0000000000 168.0000000000 145.0000000000 174.0000000000 221.0000000000 185.0000000000 133.0000000000 189.0000000000 67.0000000000 192.0000000000 236.0000000000 192.0000000000 363.0000000000 194.0000000000 294.0000000000 197.0000000000 318.0000000000 198.0000000000 372.0000000000 200.0000000000 149.0000000000 204.0000000000 303.0000000000 205.0000000000 312.0000000000 206.0000000000 15.0000000000 211.0000000000 311.0000000000 212.0000000000 162.0000000000 217.0000000000 366.0000000000 217.0000000000 221.0000000000 220.0000000000 123.0000000000 222.0000000000 286.0000000000 223.0000000000 292.0000000000 232.0000000000 260.0000000000 234.0000000000 301.0000000000 236.0000000000 329.0000000000 241.0000000000 60.0000000000 243.0000000000 223.0000000000 246.0000000000 168.0000000000 247.0000000000 211.0000000000 248.0000000000 62.0000000000 252.0000000000 198.0000000000 252.0000000000 360.0000000000 253.0000000000 146.0000000000 256.0000000000 235.0000000000 256.0000000000 47.0000000000 259.0000000000 157.0000000000 261.0000000000 365.0000000000 281.0000000000 147.0000000000 284.0000000000 158.0000000000 296.0000000000 147.0000000000 297.0000000000 115.0000000000 299.0000000000 366.0000000000 301.0000000000 15.0000000000 303.0000000000 31.0000000000 305.0000000000 314.0000000000 305.0000000000 132.0000000000 307.0000000000 158.0000000000 309.0000000000 173.0000000000 309.0000000000 319.0000000000 309.0000000000 334.0000000000 318.0000000000 149.0000000000 320.0000000000 307.0000000000 325.0000000000
+0
+15 0 17 1 22 0 51 1 65 0 56 1 74 0 11 1 13 0 13 1 15 0 21 1 27 0 24 1 31 0 28 1 38 0 46 1 62 0 54 1 69 0 55 1 73 0 57 1 76 0 65 1 85 0 75 1 97 0 83 1 105
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+11 0 77 17 48 0 14 17 23 0 59 17 41 0 5 17 13 0 8 17 17 0 22 17 28 0 23 17 29 0 27 17 32 0 39 17 39 0 68 17 45 0 76 17 47
+input/parrington/prtn15.jpg
+109 240.0000000000 11.0000000000 269.0000000000 12.0000000000 225.0000000000 13.0000000000 18.0000000000 14.0000000000 213.0000000000 14.0000000000 254.0000000000 17.0000000000 288.0000000000 20.0000000000 317.0000000000 27.0000000000 245.0000000000 29.0000000000 356.0000000000 35.0000000000 193.0000000000 38.0000000000 249.0000000000 43.0000000000 333.0000000000 49.0000000000 22.0000000000 54.0000000000 140.0000000000 56.0000000000 48.0000000000 62.0000000000 373.0000000000 63.0000000000 318.0000000000 64.0000000000 237.0000000000 69.0000000000 369.0000000000 75.0000000000 14.0000000000 76.0000000000 199.0000000000 76.0000000000 94.0000000000 77.0000000000 138.0000000000 93.0000000000 263.0000000000 94.0000000000 274.0000000000 95.0000000000 248.0000000000 100.0000000000 112.0000000000 102.0000000000 196.0000000000 105.0000000000 163.0000000000 107.0000000000 176.0000000000 108.0000000000 59.0000000000 114.0000000000 147.0000000000 115.0000000000 212.0000000000 115.0000000000 200.0000000000 123.0000000000 163.0000000000 125.0000000000 195.0000000000 125.0000000000 363.0000000000 129.0000000000 89.0000000000 132.0000000000 152.0000000000 132.0000000000 241.0000000000 134.0000000000 331.0000000000 134.0000000000 74.0000000000 138.0000000000 75.0000000000 148.0000000000 239.0000000000 151.0000000000 204.0000000000 152.0000000000 260.0000000000 153.0000000000 57.0000000000 155.0000000000 233.0000000000 159.0000000000 223.0000000000 170.0000000000 232.0000000000 171.0000000000 184.0000000000 173.0000000000 281.0000000000 176.0000000000 256.0000000000 186.0000000000 318.0000000000 190.0000000000 356.0000000000 191.0000000000 235.0000000000 192.0000000000 182.0000000000 193.0000000000 373.0000000000 194.0000000000 149.0000000000 198.0000000000 159.0000000000 199.0000000000 337.0000000000 200.0000000000 57.0000000000 201.0000000000 175.0000000000 205.0000000000 68.0000000000 208.0000000000 119.0000000000 213.0000000000 293.0000000000 213.0000000000 345.0000000000 215.0000000000 130.0000000000 216.0000000000 40.0000000000 217.0000000000 81.0000000000 221.0000000000 220.0000000000 222.0000000000 239.0000000000 225.0000000000 45.0000000000 227.0000000000 13.0000000000 228.0000000000 211.0000000000 231.0000000000 55.0000000000 232.0000000000 137.0000000000 233.0000000000 214.0000000000 235.0000000000 138.0000000000 239.0000000000 254.0000000000 241.0000000000 302.0000000000 243.0000000000 373.0000000000 243.0000000000 288.0000000000 245.0000000000 168.0000000000 248.0000000000 112.0000000000 249.0000000000 146.0000000000 249.0000000000 160.0000000000 251.0000000000 198.0000000000 254.0000000000 231.0000000000 256.0000000000 288.0000000000 269.0000000000 278.0000000000 272.0000000000 146.0000000000 275.0000000000 118.0000000000 277.0000000000 373.0000000000 277.0000000000 292.0000000000 287.0000000000 313.0000000000 289.0000000000 119.0000000000 296.0000000000 289.0000000000 296.0000000000 249.0000000000 298.0000000000 227.0000000000 299.0000000000 225.0000000000 308.0000000000 311.0000000000 310.0000000000 330.0000000000 310.0000000000 342.0000000000 311.0000000000 87.0000000000 313.0000000000 180.0000000000 317.0000000000 153.0000000000 318.0000000000 60.0000000000 321.0000000000
+15 1 65 0 51 1 13 0 11 1 74 0 56 1 22 0 17 1 15 0 13 1 27 0 21 1 31 0 24 1 38 0 28 1 62 0 46 1 69 0 54 1 73 0 55 1 76 0 57 1 85 0 65 1 93 0 70 1 105 0 83
+0
+16 1 9 2 1 1 6 2 0 1 98 2 108 1 104 2 118 1 12 2 2 1 37 2 27 1 41 2 31 1 46 2 43 1 52 2 57 1 54 2 64 1 55 2 66 1 66 2 79 1 83 2 91 1 90 2 101 1 96 2 105 1 102 2 117
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn14.jpg
+122 43.0000000000 13.0000000000 110.0000000000 34.0000000000 88.0000000000 47.0000000000 31.0000000000 48.0000000000 273.0000000000 55.0000000000 218.0000000000 59.0000000000 22.0000000000 66.0000000000 35.0000000000 67.0000000000 129.0000000000 67.0000000000 278.0000000000 69.0000000000 180.0000000000 71.0000000000 121.0000000000 74.0000000000 323.0000000000 75.0000000000 338.0000000000 76.0000000000 136.0000000000 78.0000000000 368.0000000000 80.0000000000 194.0000000000 88.0000000000 285.0000000000 89.0000000000 355.0000000000 96.0000000000 140.0000000000 98.0000000000 151.0000000000 100.0000000000 323.0000000000 103.0000000000 195.0000000000 107.0000000000 277.0000000000 109.0000000000 204.0000000000 111.0000000000 317.0000000000 113.0000000000 150.0000000000 118.0000000000 114.0000000000 126.0000000000 158.0000000000 126.0000000000 235.0000000000 126.0000000000 316.0000000000 128.0000000000 84.0000000000 131.0000000000 249.0000000000 134.0000000000 320.0000000000 135.0000000000 371.0000000000 135.0000000000 188.0000000000 136.0000000000 238.0000000000 136.0000000000 255.0000000000 137.0000000000 190.0000000000 139.0000000000 212.0000000000 139.0000000000 202.0000000000 141.0000000000 154.0000000000 144.0000000000 345.0000000000 144.0000000000 11.0000000000 146.0000000000 162.0000000000 148.0000000000 372.0000000000 148.0000000000 266.0000000000 149.0000000000 322.0000000000 150.0000000000 202.0000000000 152.0000000000 48.0000000000 154.0000000000 308.0000000000 154.0000000000 319.0000000000 155.0000000000 207.0000000000 163.0000000000 164.0000000000 164.0000000000 214.0000000000 167.0000000000 181.0000000000 170.0000000000 285.0000000000 170.0000000000 33.0000000000 171.0000000000 313.0000000000 172.0000000000 155.0000000000 176.0000000000 264.0000000000 180.0000000000 192.0000000000 182.0000000000 157.0000000000 183.0000000000 267.0000000000 185.0000000000 69.0000000000 186.0000000000 10.0000000000 188.0000000000 107.0000000000 188.0000000000 137.0000000000 188.0000000000 168.0000000000 188.0000000000 213.0000000000 190.0000000000 87.0000000000 191.0000000000 127.0000000000 191.0000000000 224.0000000000 192.0000000000 58.0000000000 196.0000000000 150.0000000000 197.0000000000 203.0000000000 197.0000000000 169.0000000000 203.0000000000 218.0000000000 207.0000000000 54.0000000000 208.0000000000 44.0000000000 209.0000000000 287.0000000000 209.0000000000 288.0000000000 223.0000000000 200.0000000000 224.0000000000 158.0000000000 225.0000000000 181.0000000000 229.0000000000 249.0000000000 229.0000000000 17.0000000000 236.0000000000 204.0000000000 237.0000000000 124.0000000000 240.0000000000 359.0000000000 240.0000000000 373.0000000000 240.0000000000 39.0000000000 241.0000000000 158.0000000000 241.0000000000 28.0000000000 244.0000000000 48.0000000000 244.0000000000 129.0000000000 254.0000000000 142.0000000000 257.0000000000 317.0000000000 257.0000000000 154.0000000000 258.0000000000 292.0000000000 261.0000000000 361.0000000000 262.0000000000 39.0000000000 265.0000000000 207.0000000000 276.0000000000 146.0000000000 278.0000000000 41.0000000000 284.0000000000 64.0000000000 284.0000000000 197.0000000000 288.0000000000 345.0000000000 290.0000000000 39.0000000000 292.0000000000 233.0000000000 293.0000000000 330.0000000000 293.0000000000 356.0000000000 294.0000000000 355.0000000000 295.0000000000 224.0000000000 296.0000000000 219.0000000000 300.0000000000 201.0000000000 302.0000000000 164.0000000000 304.0000000000 62.0000000000 306.0000000000 92.0000000000 306.0000000000 134.0000000000 307.0000000000 154.0000000000 307.0000000000 172.0000000000 307.0000000000
+0
+14 2 27 1 37 2 118 1 104 2 0 1 6 2 91 1 83 2 1 1 9 2 2 1 12 2 43 1 46 2 57 1 52 2 66 1 55 2 79 1 66 2 101 1 90 2 105 1 96 2 108 1 98 2 117 1 102
+0
+22 2 81 3 58 2 4 3 8 2 89 3 61 2 21 3 22 2 9 3 12 2 13 3 14 2 17 3 17 2 18 3 21 2 23 3 23 2 25 3 24 2 30 3 28 2 42 3 35 2 47 3 38 2 50 3 39 2 56 3 42 2 58 3 44 2 60 3 46 2 63 3 49 2 80 3 54 2 99 3 69 2 107 3 76 2 110 3 79
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn13.jpg
+85 265.0000000000 10.0000000000 336.0000000000 19.0000000000 274.0000000000 27.0000000000 336.0000000000 34.0000000000 75.0000000000 35.0000000000 349.0000000000 45.0000000000 298.0000000000 46.0000000000 337.0000000000 47.0000000000 21.0000000000 48.0000000000 320.0000000000 50.0000000000 368.0000000000 55.0000000000 337.0000000000 60.0000000000 27.0000000000 63.0000000000 368.0000000000 70.0000000000 87.0000000000 73.0000000000 292.0000000000 76.0000000000 317.0000000000 78.0000000000 33.0000000000 82.0000000000 353.0000000000 83.0000000000 67.0000000000 84.0000000000 336.0000000000 92.0000000000 102.0000000000 94.0000000000 71.0000000000 99.0000000000 24.0000000000 102.0000000000 64.0000000000 108.0000000000 10.0000000000 110.0000000000 270.0000000000 110.0000000000 350.0000000000 119.0000000000 63.0000000000 123.0000000000 122.0000000000 126.0000000000 337.0000000000 129.0000000000 324.0000000000 130.0000000000 118.0000000000 133.0000000000 127.0000000000 135.0000000000 49.0000000000 139.0000000000 92.0000000000 141.0000000000 118.0000000000 145.0000000000 232.0000000000 145.0000000000 69.0000000000 146.0000000000 55.0000000000 149.0000000000 16.0000000000 157.0000000000 293.0000000000 163.0000000000 33.0000000000 164.0000000000 66.0000000000 165.0000000000 60.0000000000 168.0000000000 270.0000000000 168.0000000000 10.0000000000 173.0000000000 268.0000000000 173.0000000000 175.0000000000 175.0000000000 13.0000000000 179.0000000000 185.0000000000 184.0000000000 350.0000000000 193.0000000000 334.0000000000 201.0000000000 219.0000000000 203.0000000000 32.0000000000 205.0000000000 177.0000000000 205.0000000000 273.0000000000 209.0000000000 261.0000000000 216.0000000000 34.0000000000 218.0000000000 184.0000000000 227.0000000000 210.0000000000 231.0000000000 105.0000000000 236.0000000000 118.0000000000 236.0000000000 198.0000000000 239.0000000000 334.0000000000 243.0000000000 257.0000000000 246.0000000000 62.0000000000 252.0000000000 351.0000000000 252.0000000000 368.0000000000 254.0000000000 37.0000000000 256.0000000000 202.0000000000 261.0000000000 214.0000000000 262.0000000000 75.0000000000 263.0000000000 35.0000000000 265.0000000000 226.0000000000 267.0000000000 305.0000000000 280.0000000000 91.0000000000 285.0000000000 293.0000000000 286.0000000000 120.0000000000 288.0000000000 76.0000000000 290.0000000000 190.0000000000 290.0000000000 338.0000000000 321.0000000000 332.0000000000 330.0000000000 351.0000000000 362.0000000000 336.0000000000 363.0000000000
+0
+0
+21 3 17 2 17 3 22 2 21 3 46 2 60 3 79 2 110 3 8 2 4 3 12 2 9 3 14 2 13 3 21 2 18 3 23 2 23 3 24 2 25 3 28 2 30 3 35 2 42 3 38 2 47 3 39 2 50 3 42 2 56 3 54 2 80 3 58 2 81 3 61 2 89 3 66 2 97 3 69 2 99 3 76 2 107
+0
+23 3 81 4 75 3 3 4 10 3 6 4 13 3 82 4 76 3 1 4 4 3 5 4 15 3 7 4 16 3 9 4 18 3 15 4 23 3 16 4 25 3 20 4 33 3 26 4 36 3 27 4 40 3 31 4 44 3 41 4 53 3 47 4 56 3 52 4 59 3 57 4 62 3 65 4 67 3 67 4 69 3 77 4 74 3 83 4 77 3 84 4 78
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn12.jpg
+79 119.0000000000 10.0000000000 168.0000000000 10.0000000000 340.0000000000 10.0000000000 373.0000000000 11.0000000000 96.0000000000 17.0000000000 257.0000000000 18.0000000000 33.0000000000 22.0000000000 156.0000000000 23.0000000000 365.0000000000 23.0000000000 188.0000000000 27.0000000000 95.0000000000 31.0000000000 373.0000000000 31.0000000000 243.0000000000 33.0000000000 57.0000000000 40.0000000000 24.0000000000 43.0000000000 107.0000000000 44.0000000000 95.0000000000 46.0000000000 349.0000000000 46.0000000000 79.0000000000 47.0000000000 249.0000000000 47.0000000000 126.0000000000 54.0000000000 219.0000000000 61.0000000000 96.0000000000 63.0000000000 49.0000000000 69.0000000000 303.0000000000 71.0000000000 75.0000000000 74.0000000000 227.0000000000 74.0000000000 237.0000000000 76.0000000000 356.0000000000 77.0000000000 38.0000000000 80.0000000000 110.0000000000 82.0000000000 240.0000000000 87.0000000000 373.0000000000 88.0000000000 93.0000000000 89.0000000000 139.0000000000 90.0000000000 167.0000000000 99.0000000000 26.0000000000 103.0000000000 308.0000000000 103.0000000000 180.0000000000 108.0000000000 349.0000000000 112.0000000000 107.0000000000 116.0000000000 162.0000000000 117.0000000000 184.0000000000 123.0000000000 326.0000000000 123.0000000000 81.0000000000 126.0000000000 93.0000000000 126.0000000000 57.0000000000 130.0000000000 164.0000000000 138.0000000000 153.0000000000 139.0000000000 178.0000000000 139.0000000000 28.0000000000 141.0000000000 182.0000000000 150.0000000000 361.0000000000 152.0000000000 49.0000000000 158.0000000000 318.0000000000 159.0000000000 131.0000000000 165.0000000000 24.0000000000 168.0000000000 188.0000000000 180.0000000000 342.0000000000 181.0000000000 89.0000000000 198.0000000000 184.0000000000 199.0000000000 163.0000000000 209.0000000000 15.0000000000 211.0000000000 354.0000000000 220.0000000000 338.0000000000 226.0000000000 83.0000000000 233.0000000000 132.0000000000 233.0000000000 11.0000000000 242.0000000000 124.0000000000 243.0000000000 106.0000000000 248.0000000000 152.0000000000 259.0000000000 216.0000000000 272.0000000000 154.0000000000 276.0000000000 231.0000000000 277.0000000000 48.0000000000 282.0000000000 93.0000000000 316.0000000000 87.0000000000 325.0000000000 107.0000000000 356.0000000000 92.0000000000 358.0000000000
+0
+0
+0
+22 4 75 3 81 4 74 3 77 4 23 3 15 4 15 3 5 4 4 3 1 4 10 3 3 4 13 3 6 4 16 3 7 4 18 3 9 4 25 3 16 4 33 3 20 4 36 3 26 4 44 3 31 4 53 3 41 4 56 3 47 4 59 3 52 4 62 3 57 4 67 3 65 4 69 3 67 4 76 3 82 4 77 3 83 4 78 3 84
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn11.jpg
+88 325.0000000000 10.0000000000 352.0000000000 11.0000000000 268.0000000000 13.0000000000 301.0000000000 13.0000000000 313.0000000000 13.0000000000 10.0000000000 14.0000000000 373.0000000000 17.0000000000 188.0000000000 20.0000000000 217.0000000000 21.0000000000 120.0000000000 23.0000000000 283.0000000000 28.0000000000 346.0000000000 28.0000000000 159.0000000000 30.0000000000 301.0000000000 30.0000000000 316.0000000000 33.0000000000 357.0000000000 34.0000000000 138.0000000000 36.0000000000 366.0000000000 36.0000000000 188.0000000000 40.0000000000 343.0000000000 44.0000000000 283.0000000000 45.0000000000 373.0000000000 49.0000000000 165.0000000000 56.0000000000 213.0000000000 56.0000000000 245.0000000000 62.0000000000 364.0000000000 63.0000000000 55.0000000000 65.0000000000 289.0000000000 67.0000000000 302.0000000000 67.0000000000 371.0000000000 67.0000000000 320.0000000000 70.0000000000 107.0000000000 75.0000000000 209.0000000000 75.0000000000 346.0000000000 76.0000000000 278.0000000000 80.0000000000 307.0000000000 82.0000000000 326.0000000000 84.0000000000 362.0000000000 84.0000000000 173.0000000000 85.0000000000 214.0000000000 85.0000000000 338.0000000000 88.0000000000 256.0000000000 90.0000000000 277.0000000000 93.0000000000 60.0000000000 98.0000000000 244.0000000000 101.0000000000 362.0000000000 101.0000000000 347.0000000000 106.0000000000 99.0000000000 109.0000000000 174.0000000000 113.0000000000 293.0000000000 114.0000000000 78.0000000000 119.0000000000 234.0000000000 120.0000000000 299.0000000000 121.0000000000 311.0000000000 122.0000000000 183.0000000000 131.0000000000 310.0000000000 136.0000000000 371.0000000000 137.0000000000 373.0000000000 139.0000000000 279.0000000000 140.0000000000 127.0000000000 145.0000000000 111.0000000000 149.0000000000 313.0000000000 149.0000000000 367.0000000000 149.0000000000 166.0000000000 151.0000000000 365.0000000000 152.0000000000 229.0000000000 153.0000000000 69.0000000000 155.0000000000 216.0000000000 156.0000000000 169.0000000000 158.0000000000 197.0000000000 159.0000000000 242.0000000000 160.0000000000 262.0000000000 161.0000000000 132.0000000000 164.0000000000 299.0000000000 167.0000000000 216.0000000000 168.0000000000 337.0000000000 168.0000000000 182.0000000000 171.0000000000 252.0000000000 171.0000000000 91.0000000000 177.0000000000 159.0000000000 181.0000000000 209.0000000000 185.0000000000 131.0000000000 187.0000000000 263.0000000000 187.0000000000 360.0000000000 193.0000000000 158.0000000000 196.0000000000 160.0000000000 203.0000000000 87.0000000000 222.0000000000 128.0000000000 262.0000000000
+0
+0
+0
+0
+9 5 86 4 64 5 60 4 52 5 31 4 28 5 26 4 24 5 43 4 37 5 47 4 39 5 50 4 43 5 66 4 54 5 78 4 58
+0
+24 5 10 6 8 5 37 6 46 5 58 6 73 5 61 6 76 5 13 6 9 5 14 6 11 5 15 6 12 5 19 6 20 5 28 6 36 5 30 6 39 5 33 6 43 5 34 6 42 5 35 6 44 5 36 6 45 5 40 6 48 5 45 6 56 5 46 6 59 5 52 6 66 5 53 6 65 5 57 6 75 5 62 6 79 5 75 6 88 5 82 6 94 5 83 6 99
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn10.jpg
+100 47.0000000000 10.0000000000 111.0000000000 10.0000000000 120.0000000000 10.0000000000 139.0000000000 10.0000000000 220.0000000000 10.0000000000 273.0000000000 10.0000000000 246.0000000000 12.0000000000 206.0000000000 13.0000000000 32.0000000000 20.0000000000 51.0000000000 24.0000000000 111.0000000000 28.0000000000 66.0000000000 29.0000000000 106.0000000000 33.0000000000 169.0000000000 35.0000000000 362.0000000000 35.0000000000 315.0000000000 36.0000000000 157.0000000000 37.0000000000 161.0000000000 37.0000000000 213.0000000000 37.0000000000 268.0000000000 40.0000000000 92.0000000000 42.0000000000 135.0000000000 42.0000000000 276.0000000000 42.0000000000 281.0000000000 43.0000000000 327.0000000000 44.0000000000 10.0000000000 48.0000000000 328.0000000000 49.0000000000 123.0000000000 50.0000000000 348.0000000000 51.0000000000 145.0000000000 56.0000000000 96.0000000000 58.0000000000 259.0000000000 59.0000000000 268.0000000000 59.0000000000 11.0000000000 60.0000000000 37.0000000000 60.0000000000 45.0000000000 62.0000000000 51.0000000000 62.0000000000 216.0000000000 62.0000000000 188.0000000000 65.0000000000 68.0000000000 67.0000000000 100.0000000000 67.0000000000 281.0000000000 70.0000000000 25.0000000000 72.0000000000 95.0000000000 73.0000000000 55.0000000000 76.0000000000 74.0000000000 80.0000000000 110.0000000000 82.0000000000 315.0000000000 84.0000000000 86.0000000000 85.0000000000 164.0000000000 88.0000000000 266.0000000000 89.0000000000 242.0000000000 91.0000000000 183.0000000000 93.0000000000 372.0000000000 94.0000000000 47.0000000000 95.0000000000 341.0000000000 97.0000000000 109.0000000000 100.0000000000 354.0000000000 101.0000000000 364.0000000000 102.0000000000 94.0000000000 104.0000000000 260.0000000000 105.0000000000 11.0000000000 109.0000000000 211.0000000000 110.0000000000 206.0000000000 111.0000000000 280.0000000000 112.0000000000 58.0000000000 115.0000000000 46.0000000000 116.0000000000 178.0000000000 118.0000000000 133.0000000000 121.0000000000 205.0000000000 123.0000000000 307.0000000000 123.0000000000 358.0000000000 125.0000000000 196.0000000000 130.0000000000 26.0000000000 133.0000000000 130.0000000000 133.0000000000 120.0000000000 138.0000000000 60.0000000000 144.0000000000 125.0000000000 145.0000000000 222.0000000000 145.0000000000 113.0000000000 147.0000000000 368.0000000000 150.0000000000 332.0000000000 153.0000000000 364.0000000000 153.0000000000 268.0000000000 156.0000000000 351.0000000000 157.0000000000 174.0000000000 160.0000000000 282.0000000000 160.0000000000 189.0000000000 162.0000000000 84.0000000000 165.0000000000 198.0000000000 165.0000000000 131.0000000000 168.0000000000 147.0000000000 171.0000000000 254.0000000000 173.0000000000 243.0000000000 175.0000000000 10.0000000000 180.0000000000 138.0000000000 182.0000000000 240.0000000000 183.0000000000 324.0000000000 185.0000000000 341.0000000000 189.0000000000 105.0000000000 190.0000000000
+0
+0
+0
+0
+0
+24 6 11 5 14 6 73 5 58 6 99 5 83 6 12 5 15 6 8 5 10 6 9 5 13 6 20 5 19 6 34 5 27 6 36 5 28 6 39 5 30 6 42 5 34 6 43 5 33 6 44 5 35 6 45 5 36 6 46 5 37 6 48 5 40 6 56 5 45 6 59 5 46 6 65 5 53 6 66 5 52 6 75 5 57 6 76 5 61 6 79 5 62 6 88 5 75
+0
+18 6 84 7 45 6 60 7 25 6 32 7 13 6 71 7 36 6 15 7 6 6 19 7 5 6 23 7 8 6 24 7 9 6 26 7 10 6 31 7 12 6 47 7 21 6 55 7 24 6 58 7 27 6 64 7 29 6 70 7 32 6 82 7 44 6 83 7 43 6 98 7 48
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn09.jpg
+52 169.0000000000 10.0000000000 131.0000000000 11.0000000000 300.0000000000 11.0000000000 277.0000000000 12.0000000000 84.0000000000 15.0000000000 26.0000000000 32.0000000000 74.0000000000 32.0000000000 166.0000000000 35.0000000000 39.0000000000 36.0000000000 86.0000000000 40.0000000000 87.0000000000 46.0000000000 10.0000000000 49.0000000000 17.0000000000 51.0000000000 26.0000000000 52.0000000000 97.0000000000 55.0000000000 10.0000000000 56.0000000000 154.0000000000 58.0000000000 158.0000000000 59.0000000000 281.0000000000 61.0000000000 38.0000000000 64.0000000000 247.0000000000 73.0000000000 72.0000000000 79.0000000000 254.0000000000 85.0000000000 24.0000000000 87.0000000000 98.0000000000 94.0000000000 17.0000000000 98.0000000000 213.0000000000 98.0000000000 121.0000000000 100.0000000000 280.0000000000 100.0000000000 36.0000000000 106.0000000000 263.0000000000 108.0000000000 275.0000000000 109.0000000000 63.0000000000 118.0000000000 284.0000000000 119.0000000000 317.0000000000 119.0000000000 268.0000000000 122.0000000000 114.0000000000 123.0000000000 296.0000000000 123.0000000000 264.0000000000 133.0000000000 17.0000000000 134.0000000000 327.0000000000 135.0000000000 89.0000000000 143.0000000000 123.0000000000 148.0000000000 23.0000000000 149.0000000000 120.0000000000 151.0000000000 107.0000000000 154.0000000000 76.0000000000 163.0000000000 10.0000000000 167.0000000000 97.0000000000 185.0000000000 333.0000000000 203.0000000000 368.0000000000 217.0000000000 250.0000000000 218.0000000000
+0
+0
+0
+0
+0
+0
+18 7 8 6 23 7 36 6 71 7 43 6 83 7 6 6 15 7 5 6 19 7 9 6 24 7 10 6 26 7 12 6 31 7 13 6 32 7 19 6 41 7 21 6 47 7 24 6 55 7 25 6 60 7 29 6 64 7 32 6 70 7 44 6 82 7 45 6 84 7 48 6 98
+0
+11 7 35 8 38 7 34 8 37 7 49 8 51 7 38 8 42 7 18 8 15 7 28 8 31 7 30 8 34 7 31 8 35 7 37 8 39 7 40 8 44 7 50 8 54
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn08.jpg
+60 204.0000000000 10.0000000000 256.0000000000 10.0000000000 315.0000000000 10.0000000000 360.0000000000 10.0000000000 283.0000000000 15.0000000000 271.0000000000 17.0000000000 299.0000000000 21.0000000000 29.0000000000 24.0000000000 254.0000000000 24.0000000000 210.0000000000 29.0000000000 207.0000000000 33.0000000000 286.0000000000 35.0000000000 147.0000000000 36.0000000000 188.0000000000 46.0000000000 10.0000000000 51.0000000000 34.0000000000 54.0000000000 163.0000000000 57.0000000000 265.0000000000 59.0000000000 247.0000000000 62.0000000000 311.0000000000 63.0000000000 144.0000000000 65.0000000000 175.0000000000 69.0000000000 204.0000000000 71.0000000000 329.0000000000 74.0000000000 352.0000000000 74.0000000000 249.0000000000 75.0000000000 344.0000000000 76.0000000000 10.0000000000 78.0000000000 141.0000000000 89.0000000000 207.0000000000 90.0000000000 337.0000000000 92.0000000000 32.0000000000 94.0000000000 172.0000000000 95.0000000000 185.0000000000 99.0000000000 14.0000000000 101.0000000000 26.0000000000 102.0000000000 203.0000000000 104.0000000000 68.0000000000 115.0000000000 19.0000000000 116.0000000000 48.0000000000 117.0000000000 14.0000000000 119.0000000000 145.0000000000 122.0000000000 15.0000000000 127.0000000000 347.0000000000 130.0000000000 79.0000000000 131.0000000000 299.0000000000 133.0000000000 346.0000000000 144.0000000000 273.0000000000 154.0000000000 351.0000000000 157.0000000000 293.0000000000 166.0000000000 282.0000000000 177.0000000000 83.0000000000 199.0000000000 148.0000000000 208.0000000000 222.0000000000 211.0000000000 118.0000000000 214.0000000000 267.0000000000 218.0000000000 199.0000000000 222.0000000000 253.0000000000 223.0000000000 172.0000000000 226.0000000000 210.0000000000 227.0000000000
+0
+0
+0
+0
+0
+0
+0
+11 8 42 7 38 8 31 7 28 8 54 7 50 8 15 7 18 8 34 7 30 8 35 7 31 8 37 7 34 8 38 7 35 8 39 7 37 8 44 7 40 8 51 7 49
+0
+14 8 6 9 6 8 50 9 65 8 43 9 48 8 17 9 24 8 3 9 3 8 5 9 0 8 23 9 34 8 24 9 35 8 26 9 36 8 30 9 41 8 45 9 49 8 46 9 55 8 47 9 57 8 48 9 60
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn07.jpg
+82 23.0000000000 10.0000000000 39.0000000000 10.0000000000 64.0000000000 10.0000000000 112.0000000000 10.0000000000 336.0000000000 10.0000000000 217.0000000000 13.0000000000 51.0000000000 15.0000000000 195.0000000000 16.0000000000 144.0000000000 17.0000000000 183.0000000000 20.0000000000 298.0000000000 20.0000000000 294.0000000000 26.0000000000 304.0000000000 29.0000000000 328.0000000000 29.0000000000 281.0000000000 30.0000000000 307.0000000000 34.0000000000 148.0000000000 38.0000000000 56.0000000000 39.0000000000 175.0000000000 40.0000000000 302.0000000000 40.0000000000 338.0000000000 42.0000000000 185.0000000000 43.0000000000 155.0000000000 46.0000000000 360.0000000000 49.0000000000 15.0000000000 50.0000000000 174.0000000000 54.0000000000 133.0000000000 55.0000000000 221.0000000000 56.0000000000 306.0000000000 58.0000000000 62.0000000000 59.0000000000 321.0000000000 59.0000000000 258.0000000000 62.0000000000 200.0000000000 63.0000000000 297.0000000000 69.0000000000 80.0000000000 70.0000000000 103.0000000000 70.0000000000 94.0000000000 74.0000000000 296.0000000000 77.0000000000 198.0000000000 80.0000000000 261.0000000000 85.0000000000 214.0000000000 87.0000000000 87.0000000000 88.0000000000 220.0000000000 96.0000000000 337.0000000000 96.0000000000 226.0000000000 101.0000000000 153.0000000000 106.0000000000 190.0000000000 122.0000000000 221.0000000000 122.0000000000 97.0000000000 126.0000000000 48.0000000000 128.0000000000 326.0000000000 132.0000000000 355.0000000000 132.0000000000 308.0000000000 133.0000000000 362.0000000000 133.0000000000 362.0000000000 138.0000000000 95.0000000000 141.0000000000 202.0000000000 142.0000000000 23.0000000000 146.0000000000 348.0000000000 146.0000000000 69.0000000000 149.0000000000 99.0000000000 153.0000000000 299.0000000000 153.0000000000 218.0000000000 158.0000000000 59.0000000000 159.0000000000 346.0000000000 164.0000000000 30.0000000000 171.0000000000 223.0000000000 171.0000000000 235.0000000000 173.0000000000 287.0000000000 190.0000000000 299.0000000000 190.0000000000 212.0000000000 195.0000000000 252.0000000000 208.0000000000 297.0000000000 217.0000000000 10.0000000000 220.0000000000 20.0000000000 222.0000000000 225.0000000000 222.0000000000 123.0000000000 225.0000000000 170.0000000000 228.0000000000 135.0000000000 236.0000000000 307.0000000000 241.0000000000 197.0000000000 244.0000000000 133.0000000000 246.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+13 9 6 8 6 9 65 8 50 9 24 8 17 9 48 8 43 9 0 8 5 9 3 8 3 9 34 8 23 9 35 8 24 9 36 8 26 9 41 8 30 9 49 8 45 9 55 8 46 9 57 8 47
+0
+21 9 58 10 56 9 79 10 72 9 39 10 39 9 11 10 7 9 4 10 0 9 13 10 10 9 14 10 9 9 23 10 22 9 28 10 24 9 30 10 26 9 31 10 25 9 33 10 28 9 37 10 36 9 50 10 53 9 51 10 54 9 52 10 52 9 61 10 58 9 64 10 61 9 68 10 67 9 69 10 68 9 72 10 70
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn06.jpg
+73 95.0000000000 10.0000000000 148.0000000000 10.0000000000 218.0000000000 10.0000000000 329.0000000000 10.0000000000 81.0000000000 11.0000000000 189.0000000000 13.0000000000 366.0000000000 18.0000000000 52.0000000000 19.0000000000 209.0000000000 20.0000000000 39.0000000000 23.0000000000 86.0000000000 25.0000000000 136.0000000000 26.0000000000 254.0000000000 26.0000000000 268.0000000000 26.0000000000 349.0000000000 26.0000000000 222.0000000000 28.0000000000 154.0000000000 35.0000000000 122.0000000000 36.0000000000 136.0000000000 36.0000000000 180.0000000000 36.0000000000 48.0000000000 37.0000000000 146.0000000000 45.0000000000 116.0000000000 49.0000000000 373.0000000000 52.0000000000 62.0000000000 53.0000000000 14.0000000000 54.0000000000 78.0000000000 55.0000000000 55.0000000000 58.0000000000 53.0000000000 64.0000000000 352.0000000000 64.0000000000 133.0000000000 65.0000000000 229.0000000000 65.0000000000 372.0000000000 65.0000000000 269.0000000000 67.0000000000 320.0000000000 69.0000000000 146.0000000000 70.0000000000 52.0000000000 72.0000000000 212.0000000000 72.0000000000 10.0000000000 74.0000000000 16.0000000000 77.0000000000 352.0000000000 77.0000000000 360.0000000000 77.0000000000 208.0000000000 78.0000000000 263.0000000000 79.0000000000 285.0000000000 81.0000000000 80.0000000000 93.0000000000 146.0000000000 101.0000000000 212.0000000000 103.0000000000 146.0000000000 114.0000000000 49.0000000000 116.0000000000 260.0000000000 120.0000000000 147.0000000000 124.0000000000 63.0000000000 129.0000000000 82.0000000000 129.0000000000 110.0000000000 130.0000000000 348.0000000000 140.0000000000 103.0000000000 143.0000000000 221.0000000000 143.0000000000 54.0000000000 148.0000000000 166.0000000000 152.0000000000 194.0000000000 157.0000000000 101.0000000000 161.0000000000 142.0000000000 161.0000000000 220.0000000000 161.0000000000 163.0000000000 165.0000000000 198.0000000000 165.0000000000 185.0000000000 177.0000000000 41.0000000000 185.0000000000 54.0000000000 186.0000000000 51.0000000000 204.0000000000 52.0000000000 213.0000000000 328.0000000000 223.0000000000 61.0000000000 236.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+20 10 58 9 61 10 39 9 39 10 9 9 14 10 22 9 23 10 0 9 4 10 7 9 11 10 10 9 13 10 24 9 28 10 26 9 30 10 28 9 33 10 36 9 37 10 52 9 52 10 53 9 50 10 54 9 51 10 56 9 58 10 61 9 64 10 67 9 68 10 68 9 69 10 70 9 72 10 72 9 79
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn05.jpg
+54 58.0000000000 10.0000000000 79.0000000000 10.0000000000 217.0000000000 10.0000000000 203.0000000000 12.0000000000 112.0000000000 17.0000000000 17.0000000000 19.0000000000 96.0000000000 24.0000000000 347.0000000000 27.0000000000 78.0000000000 28.0000000000 334.0000000000 34.0000000000 34.0000000000 36.0000000000 80.0000000000 41.0000000000 215.0000000000 41.0000000000 221.0000000000 43.0000000000 278.0000000000 43.0000000000 26.0000000000 47.0000000000 150.0000000000 50.0000000000 293.0000000000 52.0000000000 120.0000000000 53.0000000000 273.0000000000 56.0000000000 15.0000000000 58.0000000000 241.0000000000 61.0000000000 66.0000000000 65.0000000000 10.0000000000 71.0000000000 31.0000000000 74.0000000000 106.0000000000 74.0000000000 358.0000000000 84.0000000000 213.0000000000 88.0000000000 134.0000000000 103.0000000000 10.0000000000 114.0000000000 211.0000000000 115.0000000000 294.0000000000 130.0000000000 353.0000000000 136.0000000000 93.0000000000 137.0000000000 166.0000000000 139.0000000000 137.0000000000 142.0000000000 370.0000000000 147.0000000000 218.0000000000 149.0000000000 242.0000000000 161.0000000000 286.0000000000 163.0000000000 302.0000000000 165.0000000000 131.0000000000 170.0000000000 295.0000000000 172.0000000000 286.0000000000 176.0000000000 301.0000000000 181.0000000000 133.0000000000 193.0000000000 324.0000000000 196.0000000000 274.0000000000 199.0000000000 280.0000000000 208.0000000000 72.0000000000 219.0000000000 290.0000000000 226.0000000000 302.0000000000 231.0000000000 373.0000000000 259.0000000000 228.0000000000 275.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+8 11 24 10 44 11 33 10 55 11 6 10 14 11 49 10 71 11 20 10 33 11 22 10 34 11 23 10 43 11 25 10 41
+0
+9 11 51 12 52 11 47 12 40 11 39 12 31 11 46 12 39 11 14 12 7 11 31 12 20 11 32 12 24 11 44 12 35 11 50 12 50
+0
+0
+0
+0
+0
+input/parrington/prtn04.jpg
+60 347.0000000000 10.0000000000 354.0000000000 10.0000000000 240.0000000000 11.0000000000 219.0000000000 16.0000000000 274.0000000000 17.0000000000 87.0000000000 24.0000000000 373.0000000000 27.0000000000 35.0000000000 36.0000000000 188.0000000000 42.0000000000 197.0000000000 42.0000000000 51.0000000000 48.0000000000 285.0000000000 64.0000000000 262.0000000000 66.0000000000 284.0000000000 76.0000000000 358.0000000000 76.0000000000 98.0000000000 78.0000000000 136.0000000000 93.0000000000 249.0000000000 111.0000000000 142.0000000000 113.0000000000 231.0000000000 113.0000000000 49.0000000000 125.0000000000 273.0000000000 126.0000000000 199.0000000000 128.0000000000 174.0000000000 130.0000000000 107.0000000000 131.0000000000 187.0000000000 136.0000000000 127.0000000000 140.0000000000 194.0000000000 140.0000000000 219.0000000000 144.0000000000 198.0000000000 149.0000000000 216.0000000000 156.0000000000 41.0000000000 157.0000000000 299.0000000000 157.0000000000 328.0000000000 158.0000000000 203.0000000000 169.0000000000 56.0000000000 175.0000000000 240.0000000000 183.0000000000 35.0000000000 191.0000000000 34.0000000000 192.0000000000 78.0000000000 192.0000000000 29.0000000000 193.0000000000 177.0000000000 193.0000000000 254.0000000000 194.0000000000 246.0000000000 202.0000000000 372.0000000000 202.0000000000 316.0000000000 203.0000000000 296.0000000000 211.0000000000 337.0000000000 213.0000000000 33.0000000000 217.0000000000 264.0000000000 219.0000000000 44.0000000000 221.0000000000 367.0000000000 226.0000000000 56.0000000000 227.0000000000 127.0000000000 255.0000000000 168.0000000000 267.0000000000 314.0000000000 271.0000000000 182.0000000000 276.0000000000 165.0000000000 279.0000000000 336.0000000000 291.0000000000 309.0000000000 292.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+9 12 40 11 47 12 7 11 14 12 50 11 50 12 24 11 32 12 20 11 31 12 31 11 39 12 35 11 44 12 39 11 46 12 52 11 51
+0
+11 12 11 13 11 12 51 13 43 12 49 13 42 12 59 13 50 12 1 13 1 12 32 13 21 12 33 13 23 12 44 13 39 12 45 13 38 12 46 13 41 12 58 13 49
+0
+0
+0
+0
+input/parrington/prtn03.jpg
+57 23.0000000000 10.0000000000 103.0000000000 10.0000000000 240.0000000000 10.0000000000 286.0000000000 10.0000000000 329.0000000000 11.0000000000 94.0000000000 13.0000000000 155.0000000000 13.0000000000 59.0000000000 16.0000000000 366.0000000000 23.0000000000 373.0000000000 36.0000000000 10.0000000000 57.0000000000 33.0000000000 57.0000000000 48.0000000000 66.0000000000 202.0000000000 79.0000000000 222.0000000000 79.0000000000 238.0000000000 87.0000000000 214.0000000000 95.0000000000 180.0000000000 100.0000000000 291.0000000000 106.0000000000 158.0000000000 107.0000000000 196.0000000000 148.0000000000 45.0000000000 152.0000000000 220.0000000000 153.0000000000 74.0000000000 154.0000000000 249.0000000000 154.0000000000 243.0000000000 155.0000000000 133.0000000000 158.0000000000 293.0000000000 163.0000000000 318.0000000000 164.0000000000 210.0000000000 168.0000000000 267.0000000000 172.0000000000 330.0000000000 173.0000000000 307.0000000000 176.0000000000 236.0000000000 177.0000000000 249.0000000000 179.0000000000 315.0000000000 179.0000000000 10.0000000000 191.0000000000 237.0000000000 194.0000000000 61.0000000000 199.0000000000 117.0000000000 199.0000000000 208.0000000000 201.0000000000 42.0000000000 206.0000000000 10.0000000000 214.0000000000 112.0000000000 223.0000000000 270.0000000000 227.0000000000 331.0000000000 248.0000000000 230.0000000000 282.0000000000 260.0000000000 284.0000000000 286.0000000000 286.0000000000 81.0000000000 287.0000000000 55.0000000000 288.0000000000 308.0000000000 288.0000000000 136.0000000000 289.0000000000 321.0000000000 293.0000000000 262.0000000000 296.0000000000 287.0000000000 301.0000000000 307.0000000000 304.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+13 13 1 12 1 13 49 12 58 13 41 12 46 13 0 12 4 13 10 12 12 13 11 12 11 13 21 12 32 13 23 12 33 13 38 12 45 13 39 12 44 13 42 12 49 13 43 12 51 13 50 12 59
+0
+11 13 51 14 73 13 30 14 48 13 4 14 0 13 44 14 66 13 28 14 46 13 31 14 50 13 47 14 71 13 48 14 72 13 54 14 75 13 55 14 77 13 56 14 81
+0
+0
+0
+input/parrington/prtn02.jpg
+92 88.0000000000 10.0000000000 151.0000000000 10.0000000000 191.0000000000 10.0000000000 247.0000000000 11.0000000000 137.0000000000 17.0000000000 152.0000000000 18.0000000000 123.0000000000 21.0000000000 191.0000000000 21.0000000000 230.0000000000 24.0000000000 158.0000000000 25.0000000000 21.0000000000 27.0000000000 208.0000000000 31.0000000000 184.0000000000 33.0000000000 145.0000000000 43.0000000000 149.0000000000 61.0000000000 155.0000000000 66.0000000000 162.0000000000 71.0000000000 220.0000000000 74.0000000000 160.0000000000 85.0000000000 229.0000000000 85.0000000000 224.0000000000 96.0000000000 250.0000000000 103.0000000000 283.0000000000 107.0000000000 166.0000000000 108.0000000000 154.0000000000 110.0000000000 372.0000000000 114.0000000000 125.0000000000 116.0000000000 318.0000000000 120.0000000000 224.0000000000 124.0000000000 280.0000000000 125.0000000000 287.0000000000 125.0000000000 150.0000000000 127.0000000000 314.0000000000 130.0000000000 363.0000000000 131.0000000000 286.0000000000 136.0000000000 305.0000000000 136.0000000000 130.0000000000 138.0000000000 373.0000000000 141.0000000000 10.0000000000 142.0000000000 314.0000000000 143.0000000000 364.0000000000 144.0000000000 247.0000000000 147.0000000000 219.0000000000 149.0000000000 280.0000000000 151.0000000000 277.0000000000 156.0000000000 368.0000000000 156.0000000000 74.0000000000 160.0000000000 293.0000000000 163.0000000000 22.0000000000 166.0000000000 10.0000000000 169.0000000000 85.0000000000 169.0000000000 59.0000000000 177.0000000000 187.0000000000 177.0000000000 338.0000000000 177.0000000000 373.0000000000 180.0000000000 166.0000000000 185.0000000000 370.0000000000 193.0000000000 88.0000000000 197.0000000000 178.0000000000 199.0000000000 165.0000000000 200.0000000000 261.0000000000 204.0000000000 370.0000000000 204.0000000000 334.0000000000 206.0000000000 276.0000000000 207.0000000000 242.0000000000 213.0000000000 297.0000000000 221.0000000000 24.0000000000 222.0000000000 228.0000000000 227.0000000000 240.0000000000 230.0000000000 251.0000000000 255.0000000000 352.0000000000 269.0000000000 13.0000000000 280.0000000000 40.0000000000 282.0000000000 62.0000000000 284.0000000000 75.0000000000 288.0000000000 16.0000000000 292.0000000000 228.0000000000 295.0000000000 40.0000000000 296.0000000000 215.0000000000 296.0000000000 34.0000000000 297.0000000000 136.0000000000 297.0000000000 61.0000000000 300.0000000000 208.0000000000 300.0000000000 245.0000000000 300.0000000000 315.0000000000 301.0000000000 280.0000000000 302.0000000000 191.0000000000 303.0000000000 299.0000000000 303.0000000000 345.0000000000 304.0000000000 355.0000000000 316.0000000000 367.0000000000 316.0000000000 359.0000000000 326.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+11 14 77 13 55 14 66 13 44 14 0 13 4 14 46 13 28 14 48 13 30 14 50 13 31 14 71 13 47 14 72 13 48 14 73 13 51 14 75 13 54 14 81 13 56
+0
+20 14 40 15 17 14 63 15 42 14 89 15 60 14 85 15 55 14 22 15 0 14 27 15 5 14 30 15 8 14 33 15 9 14 34 15 12 14 35 15 10 14 45 15 19 14 47 15 21 14 53 15 26 14 60 15 38 14 62 15 41 14 65 15 45 14 70 15 53 14 87 15 56 14 88 15 57 14 91 15 62
+0
+0
+input/parrington/prtn01.jpg
+64 36.0000000000 101.0000000000 128.0000000000 102.0000000000 44.0000000000 104.0000000000 173.0000000000 111.0000000000 280.0000000000 113.0000000000 71.0000000000 116.0000000000 142.0000000000 118.0000000000 171.0000000000 118.0000000000 40.0000000000 119.0000000000 115.0000000000 129.0000000000 57.0000000000 130.0000000000 139.0000000000 131.0000000000 38.0000000000 133.0000000000 167.0000000000 133.0000000000 290.0000000000 134.0000000000 280.0000000000 138.0000000000 138.0000000000 140.0000000000 116.0000000000 141.0000000000 168.0000000000 149.0000000000 120.0000000000 153.0000000000 262.0000000000 156.0000000000 45.0000000000 158.0000000000 294.0000000000 165.0000000000 230.0000000000 168.0000000000 239.0000000000 169.0000000000 205.0000000000 170.0000000000 90.0000000000 173.0000000000 289.0000000000 175.0000000000 200.0000000000 177.0000000000 131.0000000000 180.0000000000 109.0000000000 181.0000000000 267.0000000000 181.0000000000 168.0000000000 187.0000000000 151.0000000000 188.0000000000 229.0000000000 188.0000000000 278.0000000000 193.0000000000 102.0000000000 195.0000000000 54.0000000000 198.0000000000 11.0000000000 199.0000000000 121.0000000000 201.0000000000 168.0000000000 201.0000000000 86.0000000000 202.0000000000 28.0000000000 203.0000000000 163.0000000000 204.0000000000 223.0000000000 209.0000000000 49.0000000000 217.0000000000 172.0000000000 217.0000000000 217.0000000000 221.0000000000 170.0000000000 231.0000000000 212.0000000000 232.0000000000 183.0000000000 235.0000000000 216.0000000000 240.0000000000 278.0000000000 247.0000000000 104.0000000000 264.0000000000 18.0000000000 293.0000000000 32.0000000000 298.0000000000 51.0000000000 298.0000000000 97.0000000000 299.0000000000 10.0000000000 301.0000000000 129.0000000000 308.0000000000 106.0000000000 310.0000000000 139.0000000000 311.0000000000 110.0000000000 321.0000000000 272.0000000000 322.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+19 15 26 14 53 15 60 14 89 15 45 14 65 15 56 14 87 15 0 14 22 15 5 14 27 15 8 14 30 15 9 14 33 15 10 14 35 15 12 14 34 15 17 14 40 15 19 14 45 15 21 14 47 15 41 14 62 15 42 14 63 15 53 14 70 15 55 14 85 15 57 14 88 15 62 14 91
+0
+0
+0
+input/parrington/prtn00.jpg
+40 315.0000000000 18.0000000000 354.0000000000 19.0000000000 340.0000000000 22.0000000000 370.0000000000 32.0000000000 334.0000000000 34.0000000000 298.0000000000 55.0000000000 362.0000000000 57.0000000000 249.0000000000 60.0000000000 354.0000000000 68.0000000000 232.0000000000 72.0000000000 242.0000000000 88.0000000000 244.0000000000 100.0000000000 291.0000000000 102.0000000000 306.0000000000 103.0000000000 264.0000000000 110.0000000000 239.0000000000 119.0000000000 220.0000000000 126.0000000000 42.0000000000 128.0000000000 32.0000000000 131.0000000000 285.0000000000 132.0000000000 303.0000000000 140.0000000000 173.0000000000 142.0000000000 328.0000000000 146.0000000000 170.0000000000 147.0000000000 373.0000000000 148.0000000000 13.0000000000 149.0000000000 29.0000000000 153.0000000000 151.0000000000 155.0000000000 46.0000000000 160.0000000000 171.0000000000 160.0000000000 10.0000000000 161.0000000000 304.0000000000 161.0000000000 18.0000000000 175.0000000000 29.0000000000 188.0000000000 39.0000000000 212.0000000000 44.0000000000 213.0000000000 13.0000000000 238.0000000000 28.0000000000 242.0000000000 22.0000000000 318.0000000000 40.0000000000 320.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+8 16 28 15 22 16 33 15 35 16 17 15 14 16 38 15 63 16 18 15 15 16 25 15 20 16 32 15 31 16 37 15 52
+0
+9 16 20 17 34 16 0 17 6 16 13 17 26 16 7 17 15 16 2 17 7 16 4 17 9 16 6 17 18 16 8 17 21 16 19 17 31
+input/parrington/prtn17.jpg
+50 140.0000000000 10.0000000000 152.0000000000 10.0000000000 296.0000000000 10.0000000000 307.0000000000 10.0000000000 344.0000000000 10.0000000000 371.0000000000 12.0000000000 73.0000000000 14.0000000000 100.0000000000 20.0000000000 370.0000000000 27.0000000000 92.0000000000 32.0000000000 371.0000000000 32.0000000000 325.0000000000 41.0000000000 337.0000000000 42.0000000000 366.0000000000 44.0000000000 332.0000000000 47.0000000000 10.0000000000 52.0000000000 25.0000000000 53.0000000000 349.0000000000 53.0000000000 120.0000000000 56.0000000000 285.0000000000 58.0000000000 352.0000000000 59.0000000000 112.0000000000 66.0000000000 132.0000000000 73.0000000000 313.0000000000 75.0000000000 51.0000000000 77.0000000000 28.0000000000 89.0000000000 64.0000000000 99.0000000000 21.0000000000 103.0000000000 352.0000000000 115.0000000000 318.0000000000 118.0000000000 361.0000000000 124.0000000000 42.0000000000 126.0000000000 324.0000000000 133.0000000000 266.0000000000 135.0000000000 61.0000000000 136.0000000000 84.0000000000 142.0000000000 200.0000000000 144.0000000000 129.0000000000 146.0000000000 217.0000000000 148.0000000000 322.0000000000 195.0000000000 283.0000000000 217.0000000000 316.0000000000 248.0000000000 277.0000000000 258.0000000000 297.0000000000 262.0000000000 333.0000000000 263.0000000000 305.0000000000 264.0000000000 373.0000000000 305.0000000000 273.0000000000 306.0000000000 288.0000000000 309.0000000000 202.0000000000 356.0000000000
+12 17 23 0 14 17 28 0 22 17 41 0 59 17 48 0 77 17 13 0 5 17 17 0 8 17 20 0 10 17 29 0 23 17 32 0 27 17 39 0 39 17 45 0 68 17 47 0 76
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+8 17 26 16 13 17 6 16 0 17 15 16 7 17 34 16 20 17 7 16 2 17 9 16 4 17 21 16 8 17 31 16 19
+0
diff --git a/meowpp.test/output2.jpg b/meowpp.test/output2.jpg
new file mode 100644
index 0000000..33b3b8e
--- /dev/null
+++ b/meowpp.test/output2.jpg
Binary files differ
diff --git a/meowpp.test/output3.jpg b/meowpp.test/output3.jpg
new file mode 100644
index 0000000..2fdc046
--- /dev/null
+++ b/meowpp.test/output3.jpg
Binary files differ
diff --git a/meowpp.test/points.txt b/meowpp.test/points.txt
new file mode 100644
index 0000000..a51f6ac
--- /dev/null
+++ b/meowpp.test/points.txt
@@ -0,0 +1,361 @@
+18
+input/parrington/prtn16.jpg
+512 384 86 10.0000000000 13.0000000000 230.0000000000 14.0000000000 87.0000000000 16.0000000000 73.0000000000 25.0000000000 88.0000000000 39.0000000000 111.0000000000 43.0000000000 122.0000000000 43.0000000000 10.0000000000 47.0000000000 95.0000000000 49.0000000000 169.0000000000 56.0000000000 96.0000000000 58.0000000000 266.0000000000 62.0000000000 11.0000000000 63.0000000000 293.0000000000 67.0000000000 59.0000000000 70.0000000000 249.0000000000 78.0000000000 123.0000000000 80.0000000000 338.0000000000 80.0000000000 128.0000000000 92.0000000000 373.0000000000 92.0000000000 189.0000000000 100.0000000000 357.0000000000 103.0000000000 97.0000000000 113.0000000000 62.0000000000 114.0000000000 303.0000000000 118.0000000000 47.0000000000 121.0000000000 121.0000000000 123.0000000000 68.0000000000 129.0000000000 334.0000000000 136.0000000000 175.0000000000 144.0000000000 316.0000000000 145.0000000000 166.0000000000 155.0000000000 199.0000000000 155.0000000000 213.0000000000 166.0000000000 132.0000000000 168.0000000000 306.0000000000 168.0000000000 145.0000000000 174.0000000000 221.0000000000 185.0000000000 133.0000000000 189.0000000000 67.0000000000 192.0000000000 236.0000000000 192.0000000000 363.0000000000 194.0000000000 294.0000000000 197.0000000000 318.0000000000 198.0000000000 372.0000000000 200.0000000000 149.0000000000 204.0000000000 303.0000000000 205.0000000000 312.0000000000 206.0000000000 15.0000000000 211.0000000000 311.0000000000 212.0000000000 162.0000000000 217.0000000000 366.0000000000 217.0000000000 221.0000000000 220.0000000000 123.0000000000 222.0000000000 286.0000000000 223.0000000000 292.0000000000 232.0000000000 260.0000000000 234.0000000000 301.0000000000 236.0000000000 329.0000000000 241.0000000000 60.0000000000 243.0000000000 223.0000000000 246.0000000000 168.0000000000 247.0000000000 211.0000000000 248.0000000000 62.0000000000 252.0000000000 198.0000000000 252.0000000000 360.0000000000 253.0000000000 146.0000000000 256.0000000000 235.0000000000 256.0000000000 47.0000000000 259.0000000000 157.0000000000 261.0000000000 365.0000000000 281.0000000000 147.0000000000 284.0000000000 158.0000000000 296.0000000000 147.0000000000 297.0000000000 115.0000000000 299.0000000000 366.0000000000 301.0000000000 15.0000000000 303.0000000000 31.0000000000 305.0000000000 314.0000000000 305.0000000000 132.0000000000 307.0000000000 158.0000000000 309.0000000000 173.0000000000 309.0000000000 319.0000000000 309.0000000000 334.0000000000 318.0000000000 149.0000000000 320.0000000000 307.0000000000 325.0000000000
+0
+15 0 17 1 22 0 51 1 65 0 56 1 74 0 11 1 13 0 13 1 15 0 21 1 27 0 24 1 31 0 28 1 38 0 46 1 62 0 54 1 69 0 55 1 73 0 57 1 76 0 65 1 85 0 75 1 97 0 83 1 105
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+11 0 77 17 48 0 14 17 23 0 59 17 41 0 5 17 13 0 8 17 17 0 22 17 28 0 23 17 29 0 27 17 32 0 39 17 39 0 68 17 45 0 76 17 47
+input/parrington/prtn15.jpg
+512 384 109 240.0000000000 11.0000000000 269.0000000000 12.0000000000 225.0000000000 13.0000000000 18.0000000000 14.0000000000 213.0000000000 14.0000000000 254.0000000000 17.0000000000 288.0000000000 20.0000000000 317.0000000000 27.0000000000 245.0000000000 29.0000000000 356.0000000000 35.0000000000 193.0000000000 38.0000000000 249.0000000000 43.0000000000 333.0000000000 49.0000000000 22.0000000000 54.0000000000 140.0000000000 56.0000000000 48.0000000000 62.0000000000 373.0000000000 63.0000000000 318.0000000000 64.0000000000 237.0000000000 69.0000000000 369.0000000000 75.0000000000 14.0000000000 76.0000000000 199.0000000000 76.0000000000 94.0000000000 77.0000000000 138.0000000000 93.0000000000 263.0000000000 94.0000000000 274.0000000000 95.0000000000 248.0000000000 100.0000000000 112.0000000000 102.0000000000 196.0000000000 105.0000000000 163.0000000000 107.0000000000 176.0000000000 108.0000000000 59.0000000000 114.0000000000 147.0000000000 115.0000000000 212.0000000000 115.0000000000 200.0000000000 123.0000000000 163.0000000000 125.0000000000 195.0000000000 125.0000000000 363.0000000000 129.0000000000 89.0000000000 132.0000000000 152.0000000000 132.0000000000 241.0000000000 134.0000000000 331.0000000000 134.0000000000 74.0000000000 138.0000000000 75.0000000000 148.0000000000 239.0000000000 151.0000000000 204.0000000000 152.0000000000 260.0000000000 153.0000000000 57.0000000000 155.0000000000 233.0000000000 159.0000000000 223.0000000000 170.0000000000 232.0000000000 171.0000000000 184.0000000000 173.0000000000 281.0000000000 176.0000000000 256.0000000000 186.0000000000 318.0000000000 190.0000000000 356.0000000000 191.0000000000 235.0000000000 192.0000000000 182.0000000000 193.0000000000 373.0000000000 194.0000000000 149.0000000000 198.0000000000 159.0000000000 199.0000000000 337.0000000000 200.0000000000 57.0000000000 201.0000000000 175.0000000000 205.0000000000 68.0000000000 208.0000000000 119.0000000000 213.0000000000 293.0000000000 213.0000000000 345.0000000000 215.0000000000 130.0000000000 216.0000000000 40.0000000000 217.0000000000 81.0000000000 221.0000000000 220.0000000000 222.0000000000 239.0000000000 225.0000000000 45.0000000000 227.0000000000 13.0000000000 228.0000000000 211.0000000000 231.0000000000 55.0000000000 232.0000000000 137.0000000000 233.0000000000 214.0000000000 235.0000000000 138.0000000000 239.0000000000 254.0000000000 241.0000000000 302.0000000000 243.0000000000 373.0000000000 243.0000000000 288.0000000000 245.0000000000 168.0000000000 248.0000000000 112.0000000000 249.0000000000 146.0000000000 249.0000000000 160.0000000000 251.0000000000 198.0000000000 254.0000000000 231.0000000000 256.0000000000 288.0000000000 269.0000000000 278.0000000000 272.0000000000 146.0000000000 275.0000000000 118.0000000000 277.0000000000 373.0000000000 277.0000000000 292.0000000000 287.0000000000 313.0000000000 289.0000000000 119.0000000000 296.0000000000 289.0000000000 296.0000000000 249.0000000000 298.0000000000 227.0000000000 299.0000000000 225.0000000000 308.0000000000 311.0000000000 310.0000000000 330.0000000000 310.0000000000 342.0000000000 311.0000000000 87.0000000000 313.0000000000 180.0000000000 317.0000000000 153.0000000000 318.0000000000 60.0000000000 321.0000000000
+15 1 65 0 51 1 13 0 11 1 74 0 56 1 22 0 17 1 15 0 13 1 27 0 21 1 31 0 24 1 38 0 28 1 62 0 46 1 69 0 54 1 73 0 55 1 76 0 57 1 85 0 65 1 93 0 70 1 105 0 83
+0
+16 1 9 2 1 1 6 2 0 1 98 2 108 1 104 2 118 1 12 2 2 1 37 2 27 1 41 2 31 1 46 2 43 1 52 2 57 1 54 2 64 1 55 2 66 1 66 2 79 1 83 2 91 1 90 2 101 1 96 2 105 1 102 2 117
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn14.jpg
+512 384 122 43.0000000000 13.0000000000 110.0000000000 34.0000000000 88.0000000000 47.0000000000 31.0000000000 48.0000000000 273.0000000000 55.0000000000 218.0000000000 59.0000000000 22.0000000000 66.0000000000 35.0000000000 67.0000000000 129.0000000000 67.0000000000 278.0000000000 69.0000000000 180.0000000000 71.0000000000 121.0000000000 74.0000000000 323.0000000000 75.0000000000 338.0000000000 76.0000000000 136.0000000000 78.0000000000 368.0000000000 80.0000000000 194.0000000000 88.0000000000 285.0000000000 89.0000000000 355.0000000000 96.0000000000 140.0000000000 98.0000000000 151.0000000000 100.0000000000 323.0000000000 103.0000000000 195.0000000000 107.0000000000 277.0000000000 109.0000000000 204.0000000000 111.0000000000 317.0000000000 113.0000000000 150.0000000000 118.0000000000 114.0000000000 126.0000000000 158.0000000000 126.0000000000 235.0000000000 126.0000000000 316.0000000000 128.0000000000 84.0000000000 131.0000000000 249.0000000000 134.0000000000 320.0000000000 135.0000000000 371.0000000000 135.0000000000 188.0000000000 136.0000000000 238.0000000000 136.0000000000 255.0000000000 137.0000000000 190.0000000000 139.0000000000 212.0000000000 139.0000000000 202.0000000000 141.0000000000 154.0000000000 144.0000000000 345.0000000000 144.0000000000 11.0000000000 146.0000000000 162.0000000000 148.0000000000 372.0000000000 148.0000000000 266.0000000000 149.0000000000 322.0000000000 150.0000000000 202.0000000000 152.0000000000 48.0000000000 154.0000000000 308.0000000000 154.0000000000 319.0000000000 155.0000000000 207.0000000000 163.0000000000 164.0000000000 164.0000000000 214.0000000000 167.0000000000 181.0000000000 170.0000000000 285.0000000000 170.0000000000 33.0000000000 171.0000000000 313.0000000000 172.0000000000 155.0000000000 176.0000000000 264.0000000000 180.0000000000 192.0000000000 182.0000000000 157.0000000000 183.0000000000 267.0000000000 185.0000000000 69.0000000000 186.0000000000 10.0000000000 188.0000000000 107.0000000000 188.0000000000 137.0000000000 188.0000000000 168.0000000000 188.0000000000 213.0000000000 190.0000000000 87.0000000000 191.0000000000 127.0000000000 191.0000000000 224.0000000000 192.0000000000 58.0000000000 196.0000000000 150.0000000000 197.0000000000 203.0000000000 197.0000000000 169.0000000000 203.0000000000 218.0000000000 207.0000000000 54.0000000000 208.0000000000 44.0000000000 209.0000000000 287.0000000000 209.0000000000 288.0000000000 223.0000000000 200.0000000000 224.0000000000 158.0000000000 225.0000000000 181.0000000000 229.0000000000 249.0000000000 229.0000000000 17.0000000000 236.0000000000 204.0000000000 237.0000000000 124.0000000000 240.0000000000 359.0000000000 240.0000000000 373.0000000000 240.0000000000 39.0000000000 241.0000000000 158.0000000000 241.0000000000 28.0000000000 244.0000000000 48.0000000000 244.0000000000 129.0000000000 254.0000000000 142.0000000000 257.0000000000 317.0000000000 257.0000000000 154.0000000000 258.0000000000 292.0000000000 261.0000000000 361.0000000000 262.0000000000 39.0000000000 265.0000000000 207.0000000000 276.0000000000 146.0000000000 278.0000000000 41.0000000000 284.0000000000 64.0000000000 284.0000000000 197.0000000000 288.0000000000 345.0000000000 290.0000000000 39.0000000000 292.0000000000 233.0000000000 293.0000000000 330.0000000000 293.0000000000 356.0000000000 294.0000000000 355.0000000000 295.0000000000 224.0000000000 296.0000000000 219.0000000000 300.0000000000 201.0000000000 302.0000000000 164.0000000000 304.0000000000 62.0000000000 306.0000000000 92.0000000000 306.0000000000 134.0000000000 307.0000000000 154.0000000000 307.0000000000 172.0000000000 307.0000000000
+0
+14 2 27 1 37 2 118 1 104 2 0 1 6 2 91 1 83 2 1 1 9 2 2 1 12 2 43 1 46 2 57 1 52 2 66 1 55 2 79 1 66 2 101 1 90 2 105 1 96 2 108 1 98 2 117 1 102
+0
+22 2 81 3 58 2 4 3 8 2 89 3 61 2 21 3 22 2 9 3 12 2 13 3 14 2 17 3 17 2 18 3 21 2 23 3 23 2 25 3 24 2 30 3 28 2 42 3 35 2 47 3 38 2 50 3 39 2 56 3 42 2 58 3 44 2 60 3 46 2 63 3 49 2 80 3 54 2 99 3 69 2 107 3 76 2 110 3 79
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn13.jpg
+512 384 85 265.0000000000 10.0000000000 336.0000000000 19.0000000000 274.0000000000 27.0000000000 336.0000000000 34.0000000000 75.0000000000 35.0000000000 349.0000000000 45.0000000000 298.0000000000 46.0000000000 337.0000000000 47.0000000000 21.0000000000 48.0000000000 320.0000000000 50.0000000000 368.0000000000 55.0000000000 337.0000000000 60.0000000000 27.0000000000 63.0000000000 368.0000000000 70.0000000000 87.0000000000 73.0000000000 292.0000000000 76.0000000000 317.0000000000 78.0000000000 33.0000000000 82.0000000000 353.0000000000 83.0000000000 67.0000000000 84.0000000000 336.0000000000 92.0000000000 102.0000000000 94.0000000000 71.0000000000 99.0000000000 24.0000000000 102.0000000000 64.0000000000 108.0000000000 10.0000000000 110.0000000000 270.0000000000 110.0000000000 350.0000000000 119.0000000000 63.0000000000 123.0000000000 122.0000000000 126.0000000000 337.0000000000 129.0000000000 324.0000000000 130.0000000000 118.0000000000 133.0000000000 127.0000000000 135.0000000000 49.0000000000 139.0000000000 92.0000000000 141.0000000000 118.0000000000 145.0000000000 232.0000000000 145.0000000000 69.0000000000 146.0000000000 55.0000000000 149.0000000000 16.0000000000 157.0000000000 293.0000000000 163.0000000000 33.0000000000 164.0000000000 66.0000000000 165.0000000000 60.0000000000 168.0000000000 270.0000000000 168.0000000000 10.0000000000 173.0000000000 268.0000000000 173.0000000000 175.0000000000 175.0000000000 13.0000000000 179.0000000000 185.0000000000 184.0000000000 350.0000000000 193.0000000000 334.0000000000 201.0000000000 219.0000000000 203.0000000000 32.0000000000 205.0000000000 177.0000000000 205.0000000000 273.0000000000 209.0000000000 261.0000000000 216.0000000000 34.0000000000 218.0000000000 184.0000000000 227.0000000000 210.0000000000 231.0000000000 105.0000000000 236.0000000000 118.0000000000 236.0000000000 198.0000000000 239.0000000000 334.0000000000 243.0000000000 257.0000000000 246.0000000000 62.0000000000 252.0000000000 351.0000000000 252.0000000000 368.0000000000 254.0000000000 37.0000000000 256.0000000000 202.0000000000 261.0000000000 214.0000000000 262.0000000000 75.0000000000 263.0000000000 35.0000000000 265.0000000000 226.0000000000 267.0000000000 305.0000000000 280.0000000000 91.0000000000 285.0000000000 293.0000000000 286.0000000000 120.0000000000 288.0000000000 76.0000000000 290.0000000000 190.0000000000 290.0000000000 338.0000000000 321.0000000000 332.0000000000 330.0000000000 351.0000000000 362.0000000000 336.0000000000 363.0000000000
+0
+0
+21 3 17 2 17 3 22 2 21 3 46 2 60 3 79 2 110 3 8 2 4 3 12 2 9 3 14 2 13 3 21 2 18 3 23 2 23 3 24 2 25 3 28 2 30 3 35 2 42 3 38 2 47 3 39 2 50 3 42 2 56 3 54 2 80 3 58 2 81 3 61 2 89 3 66 2 97 3 69 2 99 3 76 2 107
+0
+23 3 81 4 75 3 3 4 10 3 6 4 13 3 82 4 76 3 1 4 4 3 5 4 15 3 7 4 16 3 9 4 18 3 15 4 23 3 16 4 25 3 20 4 33 3 26 4 36 3 27 4 40 3 31 4 44 3 41 4 53 3 47 4 56 3 52 4 59 3 57 4 62 3 65 4 67 3 67 4 69 3 77 4 74 3 83 4 77 3 84 4 78
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn12.jpg
+512 384 79 119.0000000000 10.0000000000 168.0000000000 10.0000000000 340.0000000000 10.0000000000 373.0000000000 11.0000000000 96.0000000000 17.0000000000 257.0000000000 18.0000000000 33.0000000000 22.0000000000 156.0000000000 23.0000000000 365.0000000000 23.0000000000 188.0000000000 27.0000000000 95.0000000000 31.0000000000 373.0000000000 31.0000000000 243.0000000000 33.0000000000 57.0000000000 40.0000000000 24.0000000000 43.0000000000 107.0000000000 44.0000000000 95.0000000000 46.0000000000 349.0000000000 46.0000000000 79.0000000000 47.0000000000 249.0000000000 47.0000000000 126.0000000000 54.0000000000 219.0000000000 61.0000000000 96.0000000000 63.0000000000 49.0000000000 69.0000000000 303.0000000000 71.0000000000 75.0000000000 74.0000000000 227.0000000000 74.0000000000 237.0000000000 76.0000000000 356.0000000000 77.0000000000 38.0000000000 80.0000000000 110.0000000000 82.0000000000 240.0000000000 87.0000000000 373.0000000000 88.0000000000 93.0000000000 89.0000000000 139.0000000000 90.0000000000 167.0000000000 99.0000000000 26.0000000000 103.0000000000 308.0000000000 103.0000000000 180.0000000000 108.0000000000 349.0000000000 112.0000000000 107.0000000000 116.0000000000 162.0000000000 117.0000000000 184.0000000000 123.0000000000 326.0000000000 123.0000000000 81.0000000000 126.0000000000 93.0000000000 126.0000000000 57.0000000000 130.0000000000 164.0000000000 138.0000000000 153.0000000000 139.0000000000 178.0000000000 139.0000000000 28.0000000000 141.0000000000 182.0000000000 150.0000000000 361.0000000000 152.0000000000 49.0000000000 158.0000000000 318.0000000000 159.0000000000 131.0000000000 165.0000000000 24.0000000000 168.0000000000 188.0000000000 180.0000000000 342.0000000000 181.0000000000 89.0000000000 198.0000000000 184.0000000000 199.0000000000 163.0000000000 209.0000000000 15.0000000000 211.0000000000 354.0000000000 220.0000000000 338.0000000000 226.0000000000 83.0000000000 233.0000000000 132.0000000000 233.0000000000 11.0000000000 242.0000000000 124.0000000000 243.0000000000 106.0000000000 248.0000000000 152.0000000000 259.0000000000 216.0000000000 272.0000000000 154.0000000000 276.0000000000 231.0000000000 277.0000000000 48.0000000000 282.0000000000 93.0000000000 316.0000000000 87.0000000000 325.0000000000 107.0000000000 356.0000000000 92.0000000000 358.0000000000
+0
+0
+0
+22 4 75 3 81 4 74 3 77 4 23 3 15 4 15 3 5 4 4 3 1 4 10 3 3 4 13 3 6 4 16 3 7 4 18 3 9 4 25 3 16 4 33 3 20 4 36 3 26 4 44 3 31 4 53 3 41 4 56 3 47 4 59 3 52 4 62 3 57 4 67 3 65 4 69 3 67 4 76 3 82 4 77 3 83 4 78 3 84
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn11.jpg
+512 384 88 325.0000000000 10.0000000000 352.0000000000 11.0000000000 268.0000000000 13.0000000000 301.0000000000 13.0000000000 313.0000000000 13.0000000000 10.0000000000 14.0000000000 373.0000000000 17.0000000000 188.0000000000 20.0000000000 217.0000000000 21.0000000000 120.0000000000 23.0000000000 283.0000000000 28.0000000000 346.0000000000 28.0000000000 159.0000000000 30.0000000000 301.0000000000 30.0000000000 316.0000000000 33.0000000000 357.0000000000 34.0000000000 138.0000000000 36.0000000000 366.0000000000 36.0000000000 188.0000000000 40.0000000000 343.0000000000 44.0000000000 283.0000000000 45.0000000000 373.0000000000 49.0000000000 165.0000000000 56.0000000000 213.0000000000 56.0000000000 245.0000000000 62.0000000000 364.0000000000 63.0000000000 55.0000000000 65.0000000000 289.0000000000 67.0000000000 302.0000000000 67.0000000000 371.0000000000 67.0000000000 320.0000000000 70.0000000000 107.0000000000 75.0000000000 209.0000000000 75.0000000000 346.0000000000 76.0000000000 278.0000000000 80.0000000000 307.0000000000 82.0000000000 326.0000000000 84.0000000000 362.0000000000 84.0000000000 173.0000000000 85.0000000000 214.0000000000 85.0000000000 338.0000000000 88.0000000000 256.0000000000 90.0000000000 277.0000000000 93.0000000000 60.0000000000 98.0000000000 244.0000000000 101.0000000000 362.0000000000 101.0000000000 347.0000000000 106.0000000000 99.0000000000 109.0000000000 174.0000000000 113.0000000000 293.0000000000 114.0000000000 78.0000000000 119.0000000000 234.0000000000 120.0000000000 299.0000000000 121.0000000000 311.0000000000 122.0000000000 183.0000000000 131.0000000000 310.0000000000 136.0000000000 371.0000000000 137.0000000000 373.0000000000 139.0000000000 279.0000000000 140.0000000000 127.0000000000 145.0000000000 111.0000000000 149.0000000000 313.0000000000 149.0000000000 367.0000000000 149.0000000000 166.0000000000 151.0000000000 365.0000000000 152.0000000000 229.0000000000 153.0000000000 69.0000000000 155.0000000000 216.0000000000 156.0000000000 169.0000000000 158.0000000000 197.0000000000 159.0000000000 242.0000000000 160.0000000000 262.0000000000 161.0000000000 132.0000000000 164.0000000000 299.0000000000 167.0000000000 216.0000000000 168.0000000000 337.0000000000 168.0000000000 182.0000000000 171.0000000000 252.0000000000 171.0000000000 91.0000000000 177.0000000000 159.0000000000 181.0000000000 209.0000000000 185.0000000000 131.0000000000 187.0000000000 263.0000000000 187.0000000000 360.0000000000 193.0000000000 158.0000000000 196.0000000000 160.0000000000 203.0000000000 87.0000000000 222.0000000000 128.0000000000 262.0000000000
+0
+0
+0
+0
+9 5 86 4 64 5 60 4 52 5 31 4 28 5 26 4 24 5 43 4 37 5 47 4 39 5 50 4 43 5 66 4 54 5 78 4 58
+0
+24 5 10 6 8 5 37 6 46 5 58 6 73 5 61 6 76 5 13 6 9 5 14 6 11 5 15 6 12 5 19 6 20 5 28 6 36 5 30 6 39 5 33 6 43 5 34 6 42 5 35 6 44 5 36 6 45 5 40 6 48 5 45 6 56 5 46 6 59 5 52 6 66 5 53 6 65 5 57 6 75 5 62 6 79 5 75 6 88 5 82 6 94 5 83 6 99
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn10.jpg
+512 384 100 47.0000000000 10.0000000000 111.0000000000 10.0000000000 120.0000000000 10.0000000000 139.0000000000 10.0000000000 220.0000000000 10.0000000000 273.0000000000 10.0000000000 246.0000000000 12.0000000000 206.0000000000 13.0000000000 32.0000000000 20.0000000000 51.0000000000 24.0000000000 111.0000000000 28.0000000000 66.0000000000 29.0000000000 106.0000000000 33.0000000000 169.0000000000 35.0000000000 362.0000000000 35.0000000000 315.0000000000 36.0000000000 157.0000000000 37.0000000000 161.0000000000 37.0000000000 213.0000000000 37.0000000000 268.0000000000 40.0000000000 92.0000000000 42.0000000000 135.0000000000 42.0000000000 276.0000000000 42.0000000000 281.0000000000 43.0000000000 327.0000000000 44.0000000000 10.0000000000 48.0000000000 328.0000000000 49.0000000000 123.0000000000 50.0000000000 348.0000000000 51.0000000000 145.0000000000 56.0000000000 96.0000000000 58.0000000000 259.0000000000 59.0000000000 268.0000000000 59.0000000000 11.0000000000 60.0000000000 37.0000000000 60.0000000000 45.0000000000 62.0000000000 51.0000000000 62.0000000000 216.0000000000 62.0000000000 188.0000000000 65.0000000000 68.0000000000 67.0000000000 100.0000000000 67.0000000000 281.0000000000 70.0000000000 25.0000000000 72.0000000000 95.0000000000 73.0000000000 55.0000000000 76.0000000000 74.0000000000 80.0000000000 110.0000000000 82.0000000000 315.0000000000 84.0000000000 86.0000000000 85.0000000000 164.0000000000 88.0000000000 266.0000000000 89.0000000000 242.0000000000 91.0000000000 183.0000000000 93.0000000000 372.0000000000 94.0000000000 47.0000000000 95.0000000000 341.0000000000 97.0000000000 109.0000000000 100.0000000000 354.0000000000 101.0000000000 364.0000000000 102.0000000000 94.0000000000 104.0000000000 260.0000000000 105.0000000000 11.0000000000 109.0000000000 211.0000000000 110.0000000000 206.0000000000 111.0000000000 280.0000000000 112.0000000000 58.0000000000 115.0000000000 46.0000000000 116.0000000000 178.0000000000 118.0000000000 133.0000000000 121.0000000000 205.0000000000 123.0000000000 307.0000000000 123.0000000000 358.0000000000 125.0000000000 196.0000000000 130.0000000000 26.0000000000 133.0000000000 130.0000000000 133.0000000000 120.0000000000 138.0000000000 60.0000000000 144.0000000000 125.0000000000 145.0000000000 222.0000000000 145.0000000000 113.0000000000 147.0000000000 368.0000000000 150.0000000000 332.0000000000 153.0000000000 364.0000000000 153.0000000000 268.0000000000 156.0000000000 351.0000000000 157.0000000000 174.0000000000 160.0000000000 282.0000000000 160.0000000000 189.0000000000 162.0000000000 84.0000000000 165.0000000000 198.0000000000 165.0000000000 131.0000000000 168.0000000000 147.0000000000 171.0000000000 254.0000000000 173.0000000000 243.0000000000 175.0000000000 10.0000000000 180.0000000000 138.0000000000 182.0000000000 240.0000000000 183.0000000000 324.0000000000 185.0000000000 341.0000000000 189.0000000000 105.0000000000 190.0000000000
+0
+0
+0
+0
+0
+24 6 11 5 14 6 73 5 58 6 99 5 83 6 12 5 15 6 8 5 10 6 9 5 13 6 20 5 19 6 34 5 27 6 36 5 28 6 39 5 30 6 42 5 34 6 43 5 33 6 44 5 35 6 45 5 36 6 46 5 37 6 48 5 40 6 56 5 45 6 59 5 46 6 65 5 53 6 66 5 52 6 75 5 57 6 76 5 61 6 79 5 62 6 88 5 75
+0
+18 6 84 7 45 6 60 7 25 6 32 7 13 6 71 7 36 6 15 7 6 6 19 7 5 6 23 7 8 6 24 7 9 6 26 7 10 6 31 7 12 6 47 7 21 6 55 7 24 6 58 7 27 6 64 7 29 6 70 7 32 6 82 7 44 6 83 7 43 6 98 7 48
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn09.jpg
+512 384 52 169.0000000000 10.0000000000 131.0000000000 11.0000000000 300.0000000000 11.0000000000 277.0000000000 12.0000000000 84.0000000000 15.0000000000 26.0000000000 32.0000000000 74.0000000000 32.0000000000 166.0000000000 35.0000000000 39.0000000000 36.0000000000 86.0000000000 40.0000000000 87.0000000000 46.0000000000 10.0000000000 49.0000000000 17.0000000000 51.0000000000 26.0000000000 52.0000000000 97.0000000000 55.0000000000 10.0000000000 56.0000000000 154.0000000000 58.0000000000 158.0000000000 59.0000000000 281.0000000000 61.0000000000 38.0000000000 64.0000000000 247.0000000000 73.0000000000 72.0000000000 79.0000000000 254.0000000000 85.0000000000 24.0000000000 87.0000000000 98.0000000000 94.0000000000 17.0000000000 98.0000000000 213.0000000000 98.0000000000 121.0000000000 100.0000000000 280.0000000000 100.0000000000 36.0000000000 106.0000000000 263.0000000000 108.0000000000 275.0000000000 109.0000000000 63.0000000000 118.0000000000 284.0000000000 119.0000000000 317.0000000000 119.0000000000 268.0000000000 122.0000000000 114.0000000000 123.0000000000 296.0000000000 123.0000000000 264.0000000000 133.0000000000 17.0000000000 134.0000000000 327.0000000000 135.0000000000 89.0000000000 143.0000000000 123.0000000000 148.0000000000 23.0000000000 149.0000000000 120.0000000000 151.0000000000 107.0000000000 154.0000000000 76.0000000000 163.0000000000 10.0000000000 167.0000000000 97.0000000000 185.0000000000 333.0000000000 203.0000000000 368.0000000000 217.0000000000 250.0000000000 218.0000000000
+0
+0
+0
+0
+0
+0
+18 7 8 6 23 7 36 6 71 7 43 6 83 7 6 6 15 7 5 6 19 7 9 6 24 7 10 6 26 7 12 6 31 7 13 6 32 7 19 6 41 7 21 6 47 7 24 6 55 7 25 6 60 7 29 6 64 7 32 6 70 7 44 6 82 7 45 6 84 7 48 6 98
+0
+11 7 35 8 38 7 34 8 37 7 49 8 51 7 38 8 42 7 18 8 15 7 28 8 31 7 30 8 34 7 31 8 35 7 37 8 39 7 40 8 44 7 50 8 54
+0
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn08.jpg
+512 384 60 204.0000000000 10.0000000000 256.0000000000 10.0000000000 315.0000000000 10.0000000000 360.0000000000 10.0000000000 283.0000000000 15.0000000000 271.0000000000 17.0000000000 299.0000000000 21.0000000000 29.0000000000 24.0000000000 254.0000000000 24.0000000000 210.0000000000 29.0000000000 207.0000000000 33.0000000000 286.0000000000 35.0000000000 147.0000000000 36.0000000000 188.0000000000 46.0000000000 10.0000000000 51.0000000000 34.0000000000 54.0000000000 163.0000000000 57.0000000000 265.0000000000 59.0000000000 247.0000000000 62.0000000000 311.0000000000 63.0000000000 144.0000000000 65.0000000000 175.0000000000 69.0000000000 204.0000000000 71.0000000000 329.0000000000 74.0000000000 352.0000000000 74.0000000000 249.0000000000 75.0000000000 344.0000000000 76.0000000000 10.0000000000 78.0000000000 141.0000000000 89.0000000000 207.0000000000 90.0000000000 337.0000000000 92.0000000000 32.0000000000 94.0000000000 172.0000000000 95.0000000000 185.0000000000 99.0000000000 14.0000000000 101.0000000000 26.0000000000 102.0000000000 203.0000000000 104.0000000000 68.0000000000 115.0000000000 19.0000000000 116.0000000000 48.0000000000 117.0000000000 14.0000000000 119.0000000000 145.0000000000 122.0000000000 15.0000000000 127.0000000000 347.0000000000 130.0000000000 79.0000000000 131.0000000000 299.0000000000 133.0000000000 346.0000000000 144.0000000000 273.0000000000 154.0000000000 351.0000000000 157.0000000000 293.0000000000 166.0000000000 282.0000000000 177.0000000000 83.0000000000 199.0000000000 148.0000000000 208.0000000000 222.0000000000 211.0000000000 118.0000000000 214.0000000000 267.0000000000 218.0000000000 199.0000000000 222.0000000000 253.0000000000 223.0000000000 172.0000000000 226.0000000000 210.0000000000 227.0000000000
+0
+0
+0
+0
+0
+0
+0
+11 8 42 7 38 8 31 7 28 8 54 7 50 8 15 7 18 8 34 7 30 8 35 7 31 8 37 7 34 8 38 7 35 8 39 7 37 8 44 7 40 8 51 7 49
+0
+14 8 6 9 6 8 50 9 65 8 43 9 48 8 17 9 24 8 3 9 3 8 5 9 0 8 23 9 34 8 24 9 35 8 26 9 36 8 30 9 41 8 45 9 49 8 46 9 55 8 47 9 57 8 48 9 60
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn07.jpg
+512 384 82 23.0000000000 10.0000000000 39.0000000000 10.0000000000 64.0000000000 10.0000000000 112.0000000000 10.0000000000 336.0000000000 10.0000000000 217.0000000000 13.0000000000 51.0000000000 15.0000000000 195.0000000000 16.0000000000 144.0000000000 17.0000000000 183.0000000000 20.0000000000 298.0000000000 20.0000000000 294.0000000000 26.0000000000 304.0000000000 29.0000000000 328.0000000000 29.0000000000 281.0000000000 30.0000000000 307.0000000000 34.0000000000 148.0000000000 38.0000000000 56.0000000000 39.0000000000 175.0000000000 40.0000000000 302.0000000000 40.0000000000 338.0000000000 42.0000000000 185.0000000000 43.0000000000 155.0000000000 46.0000000000 360.0000000000 49.0000000000 15.0000000000 50.0000000000 174.0000000000 54.0000000000 133.0000000000 55.0000000000 221.0000000000 56.0000000000 306.0000000000 58.0000000000 62.0000000000 59.0000000000 321.0000000000 59.0000000000 258.0000000000 62.0000000000 200.0000000000 63.0000000000 297.0000000000 69.0000000000 80.0000000000 70.0000000000 103.0000000000 70.0000000000 94.0000000000 74.0000000000 296.0000000000 77.0000000000 198.0000000000 80.0000000000 261.0000000000 85.0000000000 214.0000000000 87.0000000000 87.0000000000 88.0000000000 220.0000000000 96.0000000000 337.0000000000 96.0000000000 226.0000000000 101.0000000000 153.0000000000 106.0000000000 190.0000000000 122.0000000000 221.0000000000 122.0000000000 97.0000000000 126.0000000000 48.0000000000 128.0000000000 326.0000000000 132.0000000000 355.0000000000 132.0000000000 308.0000000000 133.0000000000 362.0000000000 133.0000000000 362.0000000000 138.0000000000 95.0000000000 141.0000000000 202.0000000000 142.0000000000 23.0000000000 146.0000000000 348.0000000000 146.0000000000 69.0000000000 149.0000000000 99.0000000000 153.0000000000 299.0000000000 153.0000000000 218.0000000000 158.0000000000 59.0000000000 159.0000000000 346.0000000000 164.0000000000 30.0000000000 171.0000000000 223.0000000000 171.0000000000 235.0000000000 173.0000000000 287.0000000000 190.0000000000 299.0000000000 190.0000000000 212.0000000000 195.0000000000 252.0000000000 208.0000000000 297.0000000000 217.0000000000 10.0000000000 220.0000000000 20.0000000000 222.0000000000 225.0000000000 222.0000000000 123.0000000000 225.0000000000 170.0000000000 228.0000000000 135.0000000000 236.0000000000 307.0000000000 241.0000000000 197.0000000000 244.0000000000 133.0000000000 246.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+13 9 6 8 6 9 65 8 50 9 24 8 17 9 48 8 43 9 0 8 5 9 3 8 3 9 34 8 23 9 35 8 24 9 36 8 26 9 41 8 30 9 49 8 45 9 55 8 46 9 57 8 47
+0
+21 9 58 10 56 9 79 10 72 9 39 10 39 9 11 10 7 9 4 10 0 9 13 10 10 9 14 10 9 9 23 10 22 9 28 10 24 9 30 10 26 9 31 10 25 9 33 10 28 9 37 10 36 9 50 10 53 9 51 10 54 9 52 10 52 9 61 10 58 9 64 10 61 9 68 10 67 9 69 10 68 9 72 10 70
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn06.jpg
+512 384 73 95.0000000000 10.0000000000 148.0000000000 10.0000000000 218.0000000000 10.0000000000 329.0000000000 10.0000000000 81.0000000000 11.0000000000 189.0000000000 13.0000000000 366.0000000000 18.0000000000 52.0000000000 19.0000000000 209.0000000000 20.0000000000 39.0000000000 23.0000000000 86.0000000000 25.0000000000 136.0000000000 26.0000000000 254.0000000000 26.0000000000 268.0000000000 26.0000000000 349.0000000000 26.0000000000 222.0000000000 28.0000000000 154.0000000000 35.0000000000 122.0000000000 36.0000000000 136.0000000000 36.0000000000 180.0000000000 36.0000000000 48.0000000000 37.0000000000 146.0000000000 45.0000000000 116.0000000000 49.0000000000 373.0000000000 52.0000000000 62.0000000000 53.0000000000 14.0000000000 54.0000000000 78.0000000000 55.0000000000 55.0000000000 58.0000000000 53.0000000000 64.0000000000 352.0000000000 64.0000000000 133.0000000000 65.0000000000 229.0000000000 65.0000000000 372.0000000000 65.0000000000 269.0000000000 67.0000000000 320.0000000000 69.0000000000 146.0000000000 70.0000000000 52.0000000000 72.0000000000 212.0000000000 72.0000000000 10.0000000000 74.0000000000 16.0000000000 77.0000000000 352.0000000000 77.0000000000 360.0000000000 77.0000000000 208.0000000000 78.0000000000 263.0000000000 79.0000000000 285.0000000000 81.0000000000 80.0000000000 93.0000000000 146.0000000000 101.0000000000 212.0000000000 103.0000000000 146.0000000000 114.0000000000 49.0000000000 116.0000000000 260.0000000000 120.0000000000 147.0000000000 124.0000000000 63.0000000000 129.0000000000 82.0000000000 129.0000000000 110.0000000000 130.0000000000 348.0000000000 140.0000000000 103.0000000000 143.0000000000 221.0000000000 143.0000000000 54.0000000000 148.0000000000 166.0000000000 152.0000000000 194.0000000000 157.0000000000 101.0000000000 161.0000000000 142.0000000000 161.0000000000 220.0000000000 161.0000000000 163.0000000000 165.0000000000 198.0000000000 165.0000000000 185.0000000000 177.0000000000 41.0000000000 185.0000000000 54.0000000000 186.0000000000 51.0000000000 204.0000000000 52.0000000000 213.0000000000 328.0000000000 223.0000000000 61.0000000000 236.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+20 10 58 9 61 10 39 9 39 10 9 9 14 10 22 9 23 10 0 9 4 10 7 9 11 10 10 9 13 10 24 9 28 10 26 9 30 10 28 9 33 10 36 9 37 10 52 9 52 10 53 9 50 10 54 9 51 10 56 9 58 10 61 9 64 10 67 9 68 10 68 9 69 10 70 9 72 10 72 9 79
+0
+0
+0
+0
+0
+0
+0
+0
+input/parrington/prtn05.jpg
+512 384 54 58.0000000000 10.0000000000 79.0000000000 10.0000000000 217.0000000000 10.0000000000 203.0000000000 12.0000000000 112.0000000000 17.0000000000 17.0000000000 19.0000000000 96.0000000000 24.0000000000 347.0000000000 27.0000000000 78.0000000000 28.0000000000 334.0000000000 34.0000000000 34.0000000000 36.0000000000 80.0000000000 41.0000000000 215.0000000000 41.0000000000 221.0000000000 43.0000000000 278.0000000000 43.0000000000 26.0000000000 47.0000000000 150.0000000000 50.0000000000 293.0000000000 52.0000000000 120.0000000000 53.0000000000 273.0000000000 56.0000000000 15.0000000000 58.0000000000 241.0000000000 61.0000000000 66.0000000000 65.0000000000 10.0000000000 71.0000000000 31.0000000000 74.0000000000 106.0000000000 74.0000000000 358.0000000000 84.0000000000 213.0000000000 88.0000000000 134.0000000000 103.0000000000 10.0000000000 114.0000000000 211.0000000000 115.0000000000 294.0000000000 130.0000000000 353.0000000000 136.0000000000 93.0000000000 137.0000000000 166.0000000000 139.0000000000 137.0000000000 142.0000000000 370.0000000000 147.0000000000 218.0000000000 149.0000000000 242.0000000000 161.0000000000 286.0000000000 163.0000000000 302.0000000000 165.0000000000 131.0000000000 170.0000000000 295.0000000000 172.0000000000 286.0000000000 176.0000000000 301.0000000000 181.0000000000 133.0000000000 193.0000000000 324.0000000000 196.0000000000 274.0000000000 199.0000000000 280.0000000000 208.0000000000 72.0000000000 219.0000000000 290.0000000000 226.0000000000 302.0000000000 231.0000000000 373.0000000000 259.0000000000 228.0000000000 275.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+8 11 24 10 44 11 33 10 55 11 6 10 14 11 49 10 71 11 20 10 33 11 22 10 34 11 23 10 43 11 25 10 41
+0
+9 11 51 12 52 11 47 12 40 11 39 12 31 11 46 12 39 11 14 12 7 11 31 12 20 11 32 12 24 11 44 12 35 11 50 12 50
+0
+0
+0
+0
+0
+input/parrington/prtn04.jpg
+512 384 60 347.0000000000 10.0000000000 354.0000000000 10.0000000000 240.0000000000 11.0000000000 219.0000000000 16.0000000000 274.0000000000 17.0000000000 87.0000000000 24.0000000000 373.0000000000 27.0000000000 35.0000000000 36.0000000000 188.0000000000 42.0000000000 197.0000000000 42.0000000000 51.0000000000 48.0000000000 285.0000000000 64.0000000000 262.0000000000 66.0000000000 284.0000000000 76.0000000000 358.0000000000 76.0000000000 98.0000000000 78.0000000000 136.0000000000 93.0000000000 249.0000000000 111.0000000000 142.0000000000 113.0000000000 231.0000000000 113.0000000000 49.0000000000 125.0000000000 273.0000000000 126.0000000000 199.0000000000 128.0000000000 174.0000000000 130.0000000000 107.0000000000 131.0000000000 187.0000000000 136.0000000000 127.0000000000 140.0000000000 194.0000000000 140.0000000000 219.0000000000 144.0000000000 198.0000000000 149.0000000000 216.0000000000 156.0000000000 41.0000000000 157.0000000000 299.0000000000 157.0000000000 328.0000000000 158.0000000000 203.0000000000 169.0000000000 56.0000000000 175.0000000000 240.0000000000 183.0000000000 35.0000000000 191.0000000000 34.0000000000 192.0000000000 78.0000000000 192.0000000000 29.0000000000 193.0000000000 177.0000000000 193.0000000000 254.0000000000 194.0000000000 246.0000000000 202.0000000000 372.0000000000 202.0000000000 316.0000000000 203.0000000000 296.0000000000 211.0000000000 337.0000000000 213.0000000000 33.0000000000 217.0000000000 264.0000000000 219.0000000000 44.0000000000 221.0000000000 367.0000000000 226.0000000000 56.0000000000 227.0000000000 127.0000000000 255.0000000000 168.0000000000 267.0000000000 314.0000000000 271.0000000000 182.0000000000 276.0000000000 165.0000000000 279.0000000000 336.0000000000 291.0000000000 309.0000000000 292.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+9 12 40 11 47 12 7 11 14 12 50 11 50 12 24 11 32 12 20 11 31 12 31 11 39 12 35 11 44 12 39 11 46 12 52 11 51
+0
+11 12 11 13 11 12 51 13 43 12 49 13 42 12 59 13 50 12 1 13 1 12 32 13 21 12 33 13 23 12 44 13 39 12 45 13 38 12 46 13 41 12 58 13 49
+0
+0
+0
+0
+input/parrington/prtn03.jpg
+512 384 57 23.0000000000 10.0000000000 103.0000000000 10.0000000000 240.0000000000 10.0000000000 286.0000000000 10.0000000000 329.0000000000 11.0000000000 94.0000000000 13.0000000000 155.0000000000 13.0000000000 59.0000000000 16.0000000000 366.0000000000 23.0000000000 373.0000000000 36.0000000000 10.0000000000 57.0000000000 33.0000000000 57.0000000000 48.0000000000 66.0000000000 202.0000000000 79.0000000000 222.0000000000 79.0000000000 238.0000000000 87.0000000000 214.0000000000 95.0000000000 180.0000000000 100.0000000000 291.0000000000 106.0000000000 158.0000000000 107.0000000000 196.0000000000 148.0000000000 45.0000000000 152.0000000000 220.0000000000 153.0000000000 74.0000000000 154.0000000000 249.0000000000 154.0000000000 243.0000000000 155.0000000000 133.0000000000 158.0000000000 293.0000000000 163.0000000000 318.0000000000 164.0000000000 210.0000000000 168.0000000000 267.0000000000 172.0000000000 330.0000000000 173.0000000000 307.0000000000 176.0000000000 236.0000000000 177.0000000000 249.0000000000 179.0000000000 315.0000000000 179.0000000000 10.0000000000 191.0000000000 237.0000000000 194.0000000000 61.0000000000 199.0000000000 117.0000000000 199.0000000000 208.0000000000 201.0000000000 42.0000000000 206.0000000000 10.0000000000 214.0000000000 112.0000000000 223.0000000000 270.0000000000 227.0000000000 331.0000000000 248.0000000000 230.0000000000 282.0000000000 260.0000000000 284.0000000000 286.0000000000 286.0000000000 81.0000000000 287.0000000000 55.0000000000 288.0000000000 308.0000000000 288.0000000000 136.0000000000 289.0000000000 321.0000000000 293.0000000000 262.0000000000 296.0000000000 287.0000000000 301.0000000000 307.0000000000 304.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+13 13 1 12 1 13 49 12 58 13 41 12 46 13 0 12 4 13 10 12 12 13 11 12 11 13 21 12 32 13 23 12 33 13 38 12 45 13 39 12 44 13 42 12 49 13 43 12 51 13 50 12 59
+0
+11 13 51 14 73 13 30 14 48 13 4 14 0 13 44 14 66 13 28 14 46 13 31 14 50 13 47 14 71 13 48 14 72 13 54 14 75 13 55 14 77 13 56 14 81
+0
+0
+0
+input/parrington/prtn02.jpg
+512 384 92 88.0000000000 10.0000000000 151.0000000000 10.0000000000 191.0000000000 10.0000000000 247.0000000000 11.0000000000 137.0000000000 17.0000000000 152.0000000000 18.0000000000 123.0000000000 21.0000000000 191.0000000000 21.0000000000 230.0000000000 24.0000000000 158.0000000000 25.0000000000 21.0000000000 27.0000000000 208.0000000000 31.0000000000 184.0000000000 33.0000000000 145.0000000000 43.0000000000 149.0000000000 61.0000000000 155.0000000000 66.0000000000 162.0000000000 71.0000000000 220.0000000000 74.0000000000 160.0000000000 85.0000000000 229.0000000000 85.0000000000 224.0000000000 96.0000000000 250.0000000000 103.0000000000 283.0000000000 107.0000000000 166.0000000000 108.0000000000 154.0000000000 110.0000000000 372.0000000000 114.0000000000 125.0000000000 116.0000000000 318.0000000000 120.0000000000 224.0000000000 124.0000000000 280.0000000000 125.0000000000 287.0000000000 125.0000000000 150.0000000000 127.0000000000 314.0000000000 130.0000000000 363.0000000000 131.0000000000 286.0000000000 136.0000000000 305.0000000000 136.0000000000 130.0000000000 138.0000000000 373.0000000000 141.0000000000 10.0000000000 142.0000000000 314.0000000000 143.0000000000 364.0000000000 144.0000000000 247.0000000000 147.0000000000 219.0000000000 149.0000000000 280.0000000000 151.0000000000 277.0000000000 156.0000000000 368.0000000000 156.0000000000 74.0000000000 160.0000000000 293.0000000000 163.0000000000 22.0000000000 166.0000000000 10.0000000000 169.0000000000 85.0000000000 169.0000000000 59.0000000000 177.0000000000 187.0000000000 177.0000000000 338.0000000000 177.0000000000 373.0000000000 180.0000000000 166.0000000000 185.0000000000 370.0000000000 193.0000000000 88.0000000000 197.0000000000 178.0000000000 199.0000000000 165.0000000000 200.0000000000 261.0000000000 204.0000000000 370.0000000000 204.0000000000 334.0000000000 206.0000000000 276.0000000000 207.0000000000 242.0000000000 213.0000000000 297.0000000000 221.0000000000 24.0000000000 222.0000000000 228.0000000000 227.0000000000 240.0000000000 230.0000000000 251.0000000000 255.0000000000 352.0000000000 269.0000000000 13.0000000000 280.0000000000 40.0000000000 282.0000000000 62.0000000000 284.0000000000 75.0000000000 288.0000000000 16.0000000000 292.0000000000 228.0000000000 295.0000000000 40.0000000000 296.0000000000 215.0000000000 296.0000000000 34.0000000000 297.0000000000 136.0000000000 297.0000000000 61.0000000000 300.0000000000 208.0000000000 300.0000000000 245.0000000000 300.0000000000 315.0000000000 301.0000000000 280.0000000000 302.0000000000 191.0000000000 303.0000000000 299.0000000000 303.0000000000 345.0000000000 304.0000000000 355.0000000000 316.0000000000 367.0000000000 316.0000000000 359.0000000000 326.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+11 14 77 13 55 14 66 13 44 14 0 13 4 14 46 13 28 14 48 13 30 14 50 13 31 14 71 13 47 14 72 13 48 14 73 13 51 14 75 13 54 14 81 13 56
+0
+20 14 40 15 17 14 63 15 42 14 89 15 60 14 85 15 55 14 22 15 0 14 27 15 5 14 30 15 8 14 33 15 9 14 34 15 12 14 35 15 10 14 45 15 19 14 47 15 21 14 53 15 26 14 60 15 38 14 62 15 41 14 65 15 45 14 70 15 53 14 87 15 56 14 88 15 57 14 91 15 62
+0
+0
+input/parrington/prtn01.jpg
+512 384 64 36.0000000000 101.0000000000 128.0000000000 102.0000000000 44.0000000000 104.0000000000 173.0000000000 111.0000000000 280.0000000000 113.0000000000 71.0000000000 116.0000000000 142.0000000000 118.0000000000 171.0000000000 118.0000000000 40.0000000000 119.0000000000 115.0000000000 129.0000000000 57.0000000000 130.0000000000 139.0000000000 131.0000000000 38.0000000000 133.0000000000 167.0000000000 133.0000000000 290.0000000000 134.0000000000 280.0000000000 138.0000000000 138.0000000000 140.0000000000 116.0000000000 141.0000000000 168.0000000000 149.0000000000 120.0000000000 153.0000000000 262.0000000000 156.0000000000 45.0000000000 158.0000000000 294.0000000000 165.0000000000 230.0000000000 168.0000000000 239.0000000000 169.0000000000 205.0000000000 170.0000000000 90.0000000000 173.0000000000 289.0000000000 175.0000000000 200.0000000000 177.0000000000 131.0000000000 180.0000000000 109.0000000000 181.0000000000 267.0000000000 181.0000000000 168.0000000000 187.0000000000 151.0000000000 188.0000000000 229.0000000000 188.0000000000 278.0000000000 193.0000000000 102.0000000000 195.0000000000 54.0000000000 198.0000000000 11.0000000000 199.0000000000 121.0000000000 201.0000000000 168.0000000000 201.0000000000 86.0000000000 202.0000000000 28.0000000000 203.0000000000 163.0000000000 204.0000000000 223.0000000000 209.0000000000 49.0000000000 217.0000000000 172.0000000000 217.0000000000 217.0000000000 221.0000000000 170.0000000000 231.0000000000 212.0000000000 232.0000000000 183.0000000000 235.0000000000 216.0000000000 240.0000000000 278.0000000000 247.0000000000 104.0000000000 264.0000000000 18.0000000000 293.0000000000 32.0000000000 298.0000000000 51.0000000000 298.0000000000 97.0000000000 299.0000000000 10.0000000000 301.0000000000 129.0000000000 308.0000000000 106.0000000000 310.0000000000 139.0000000000 311.0000000000 110.0000000000 321.0000000000 272.0000000000 322.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+19 15 26 14 53 15 60 14 89 15 45 14 65 15 56 14 87 15 0 14 22 15 5 14 27 15 8 14 30 15 9 14 33 15 10 14 35 15 12 14 34 15 17 14 40 15 19 14 45 15 21 14 47 15 41 14 62 15 42 14 63 15 53 14 70 15 55 14 85 15 57 14 88 15 62 14 91
+0
+0
+0
+input/parrington/prtn00.jpg
+512 384 40 315.0000000000 18.0000000000 354.0000000000 19.0000000000 340.0000000000 22.0000000000 370.0000000000 32.0000000000 334.0000000000 34.0000000000 298.0000000000 55.0000000000 362.0000000000 57.0000000000 249.0000000000 60.0000000000 354.0000000000 68.0000000000 232.0000000000 72.0000000000 242.0000000000 88.0000000000 244.0000000000 100.0000000000 291.0000000000 102.0000000000 306.0000000000 103.0000000000 264.0000000000 110.0000000000 239.0000000000 119.0000000000 220.0000000000 126.0000000000 42.0000000000 128.0000000000 32.0000000000 131.0000000000 285.0000000000 132.0000000000 303.0000000000 140.0000000000 173.0000000000 142.0000000000 328.0000000000 146.0000000000 170.0000000000 147.0000000000 373.0000000000 148.0000000000 13.0000000000 149.0000000000 29.0000000000 153.0000000000 151.0000000000 155.0000000000 46.0000000000 160.0000000000 171.0000000000 160.0000000000 10.0000000000 161.0000000000 304.0000000000 161.0000000000 18.0000000000 175.0000000000 29.0000000000 188.0000000000 39.0000000000 212.0000000000 44.0000000000 213.0000000000 13.0000000000 238.0000000000 28.0000000000 242.0000000000 22.0000000000 318.0000000000 40.0000000000 320.0000000000
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+8 16 28 15 22 16 33 15 35 16 17 15 14 16 38 15 63 16 18 15 15 16 25 15 20 16 32 15 31 16 37 15 52
+0
+9 16 20 17 34 16 0 17 6 16 13 17 26 16 7 17 15 16 2 17 7 16 4 17 9 16 6 17 18 16 8 17 21 16 19 17 31
+input/parrington/prtn17.jpg
+512 384 50 140.0000000000 10.0000000000 152.0000000000 10.0000000000 296.0000000000 10.0000000000 307.0000000000 10.0000000000 344.0000000000 10.0000000000 371.0000000000 12.0000000000 73.0000000000 14.0000000000 100.0000000000 20.0000000000 370.0000000000 27.0000000000 92.0000000000 32.0000000000 371.0000000000 32.0000000000 325.0000000000 41.0000000000 337.0000000000 42.0000000000 366.0000000000 44.0000000000 332.0000000000 47.0000000000 10.0000000000 52.0000000000 25.0000000000 53.0000000000 349.0000000000 53.0000000000 120.0000000000 56.0000000000 285.0000000000 58.0000000000 352.0000000000 59.0000000000 112.0000000000 66.0000000000 132.0000000000 73.0000000000 313.0000000000 75.0000000000 51.0000000000 77.0000000000 28.0000000000 89.0000000000 64.0000000000 99.0000000000 21.0000000000 103.0000000000 352.0000000000 115.0000000000 318.0000000000 118.0000000000 361.0000000000 124.0000000000 42.0000000000 126.0000000000 324.0000000000 133.0000000000 266.0000000000 135.0000000000 61.0000000000 136.0000000000 84.0000000000 142.0000000000 200.0000000000 144.0000000000 129.0000000000 146.0000000000 217.0000000000 148.0000000000 322.0000000000 195.0000000000 283.0000000000 217.0000000000 316.0000000000 248.0000000000 277.0000000000 258.0000000000 297.0000000000 262.0000000000 333.0000000000 263.0000000000 305.0000000000 264.0000000000 373.0000000000 305.0000000000 273.0000000000 306.0000000000 288.0000000000 309.0000000000 202.0000000000 356.0000000000
+12 17 23 0 14 17 28 0 22 17 41 0 59 17 48 0 77 17 13 0 5 17 17 0 8 17 20 0 10 17 29 0 23 17 32 0 27 17 39 0 39 17 45 0 68 17 47 0 76
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+8 17 26 16 13 17 6 16 0 17 15 16 7 17 34 16 20 17 7 16 2 17 9 16 4 17 21 16 8 17 31 16 19
+0
diff --git a/meowpp.test/src/autostitch.cpp b/meowpp.test/src/autostitch.cpp
index e63ef43..b62d13b 100644
--- a/meowpp.test/src/autostitch.cpp
+++ b/meowpp.test/src/autostitch.cpp
@@ -16,7 +16,6 @@
#include "meowpp/gra/Bitmap.h"
#include "meowpp/gra/Photo.h"
#include "meowpp/gra/Camera.h"
-#include "meowpp/gra/WatchBall.h"
#include "meowpp/math/utility.h"
#include "meowpp/math/methods.h"
@@ -43,6 +42,10 @@ double p0 = 0.07, P = 0.99;
double q = 0.7, r = 0.01, Q = 0.97;
double stop = 1;
double o_radius = 500;
+double angle_t = PI / 4.0;
+double aspect_t = 2.0;
+
+std::vector<std::string> input_name;
MyK_Match match;
std::vector<Bitmap<RGBf_Space> > input_bitmap;
@@ -73,54 +76,67 @@ std::vector<OutputSet> outputs;
//////////////////////////// **# setup #** ///////////////////////////
bool setup(int argc, char** argv) {
- usg.optionAdd('h', "Display this help document.");
- usg.optionAdd('i',
+ usg.optionAdd("h", "Display this help document.");
+ usg.optionAdd("i",
"Specify the input images are in <type> "
"instead of specifying from arguments",
"<dirname>", "",
false);
- usg.optionAdd('o',
+ usg.optionAdd("o",
"Output file name, (not include '.jpg' suffix)",
"<filename>",
"output",
false);
- usg.optionAdd('d',
+ usg.optionAdd("f",
+ "File name for output the text data",
+ "<filename>",
+ "output.txt",
+ false);
+ usg.optionAdd("d",
"Specify which Feature-Point-Detect algorithm to use",
"<algorithm>",
"",
true);
- usg.optionAdd('p',
+ usg.optionAdd("ransac-p0",
"Pribabilicity for RANSAC to choose a right feature point",
"<floating point>", stringPrintf("%.10f", p0),
false);
- usg.optionAdd('P',
+ usg.optionAdd("ransac-ok",
"Pribabilicity for RANSAC access",
"<floating point>", stringPrintf("%.10f", P),
false);
- usg.optionAdd('q',
+ usg.optionAdd("prob-p1",
"p1 for Prob. Model",
"<floationg Point>", stringPrintf("%.10f", q),
false);
- usg.optionAdd('r',
+ usg.optionAdd("prob-p0",
"p0 for Prob. Model",
"<floationg Point>", stringPrintf("%.10f", r),
false);
- usg.optionAdd('Q',
+ usg.optionAdd("prob-min",
"p_min for Prob. Model",
"<floationg Point>", stringPrintf("%.10f", Q),
false);
- usg.optionAdd('s',
+ usg.optionAdd("s",
"stop threshold for boundle adjustment",
"<floationg Point>", stringPrintf("%.10f", stop),
false);
- usg.optionAdd('O',
+ usg.optionAdd("output-radius",
"output ball radius",
"<floationg Point>", stringPrintf("%.10f", o_radius),
false);
+ usg.optionAdd("match-angle",
+ "angle threshold for matching",
+ "<floating point>", stringPrintf("%.10f", angle_t / PI * 180),
+ false);
+ usg.optionAdd("match-aspect",
+ "aspect threshold for matching",
+ "<floating point>", stringPrintf("%.10f", aspect_t),
+ false);
std::vector<std::string> fpsd_algorithm_list = ObjSelector<FPSD_ID>::names();
for (size_t i = 0, I = fpsd_algorithm_list.size(); i < I; i++) {
const ObjBase* tmp = ObjSelector<FPSD_ID>::get(fpsd_algorithm_list[i]);
- usg.optionValueAcceptAdd('d',
+ usg.optionValueAcceptAdd("d",
fpsd_algorithm_list[i],
tmp->type());
usg.import(((MyFeaturePointsDetector*)tmp)->usage());
@@ -130,7 +146,7 @@ bool setup(int argc, char** argv) {
// set arg
std::string err_msg;
bool ok = usg.arguments(argc, argv, &err_msg);
- if (usg.hasOptionSetup('h')) {
+ if (usg.hasOptionSetup("h")) {
printf("%s\n", usg.usage().c_str());
exit(0);
}
@@ -144,12 +160,11 @@ bool setup(int argc, char** argv) {
//////////////// **# Input images and convert it #** /////////////////
bool input() {
- std::vector<std::string> input_name;
- if (!usg.hasOptionSetup('i')) {
+ if (!usg.hasOptionSetup("i")) {
input_name = usg.procArgs();
}
else {
- std::string base = usg.optionValue('i', 0);
+ std::string base = usg.optionValue("i", 0);
if (base.length() == 0 || base[base.length() - 1] != '/') {
base += "/";
}
@@ -197,7 +212,7 @@ bool input() {
//////////////////////// **# FeaturePoint #** ////////////////////////
bool detect() {
- std::string fpsd_algo_name = usg.optionValue('d', 0);
+ std::string fpsd_algo_name = usg.optionValue("d", 0);
MyFeaturePointsDetector* detector(
(MyFeaturePointsDetector*)ObjSelector<FPSD_ID>::create(fpsd_algo_name));
detector->usage(usg);
@@ -237,11 +252,11 @@ bool ransac() {
messagePrintf( 1, "RANSAC");
MyRansacCheck::usage(usg);
// tmp output
- p0 = inRange(0.00001, 0.9999, atof(usg.optionValue('p', 0).c_str()));
- P = inRange(0.00001, 0.9999, atof(usg.optionValue('P', 0).c_str()));
+ p0 = inRange(0.00001, 0.9999, atof(usg.optionValue("ransac-p0", 0).c_str()));
+ P = inRange(0.00001, 0.9999, atof(usg.optionValue("ransac-ok", 0).c_str()));
for (size_t i = 0, I = input_bitmap.size(); i < I; i++) {
for (size_t j = 0, J = input_bitmap.size(); j < J; j++) {
- size_t num = 3u;
+ size_t num = 4u; // !!!!!!!!!!!!!!!!!!!
messagePrintf( 1, "ransac %lu --- %lu", i, j);
MyRansacCheck chk(&(fpsv[i]), &(fpsv[j]));
FeaturePointIndexPairs ret = ransac(pairs[i][j], chk, num, p0, P);
@@ -273,11 +288,13 @@ bool ransac() {
return true;
}
-///////////////////////// **# prob module #** ////////////////////////
-bool prob_mod() {
- q = inRange(0.00001, 0.99999, atof(usg.optionValue('q', 0).c_str()));
- r = inRange(0.00001, 0.99999, atof(usg.optionValue('r', 0).c_str()));
- Q = inRange(0.00001, 0.99999, atof(usg.optionValue('Q', 0).c_str()));
+//////////////////// **# checking match again #** ////////////////////
+bool match_check() {
+ q = inRange(0.00001, 0.99999, atof(usg.optionValue("prob-p1", 0).c_str()));
+ r = inRange(0.00001, 0.99999, atof(usg.optionValue("prob-p0", 0).c_str()));
+ Q = inRange(0.00001, 0.99999, atof(usg.optionValue("prob-min", 0).c_str()));
+ aspect_t = inRange(0.000001, 9999.0, atof(usg.optionValue("match-aspect", 0).c_str()));
+ angle_t = inRange(0.1,999.0, atof(usg.optionValue("match-angle", 0).c_str()))/180 * PI;
double m_ni = log(q * (1 - r)) - log(r * (1 - q));
double c = log(Q) - log(1 - Q);
double m_nf = log(1 - r) - log(1 - q);
@@ -291,150 +308,32 @@ bool prob_mod() {
double ni = pairs[i][j].size(), nf = 0;
MyRansacCheck chk(&(fpsv[i]), &(fpsv[j]));
chk.rememberVCalc(pairs[i][j]);
- for (size_t k = 0, K = fpsv[i].size(); k < K; k++) {
- Vector2D<double> to(chk.to(Vector2D<double>(fpsv[i][k](0),
- fpsv[i][k](1))));
- if (0 <= to.x() && to.x() <= (double)input_bitmap[j].width() &&
- 0 <= to.y() && to.y() <= (double)input_bitmap[j].height()) {
- nf++;
+ if (chk.check(aspect_t, angle_t)) {
+ for (size_t k = 0, K = fpsv[i].size(); k < K; k++) {
+ Vector2D<double> to(chk.to(Vector2D<double>(fpsv[i][k](0),
+ fpsv[i][k](1))));
+ if (0 <= to.x() && to.x() <= (double)input_bitmap[j].width() &&
+ 0 <= to.y() && to.y() <= (double)input_bitmap[j].height()) {
+ nf++;
+ }
}
- }
- if (ni * m_ni > c + m_nf * nf) {
- messagePrintf(0, "accept %lu --- %lu", i, j);
- messagePrintf(0,
- "%.0f * %.3f = %.3f ?? %.3f = %.3f + %.3f * %.0f",
- ni, m_ni, ni * m_ni, c + m_nf * nf, c, m_nf, nf);
- continue;
- }
- else {
- pairs[i][j].clear();
- }
- }
- }
- messagePrintf(-1, "ok");
- return true;
-}
-
-///////////////////// **# group them together #** ////////////////////
-bool group() {
- messagePrintf(1, "group");
- // union
- DisjointSet dsj(input_bitmap.size());
- for (size_t i = 0, I = input_bitmap.size(); i < I; i++) {
- for (size_t j = 0; j < I; j++) {
- if(pairs[i][j].empty()) continue;
- dsj.merge(i, j);
- }
- }
- std::vector<size_t> root;
- for (size_t i = 0, I = input_bitmap.size(); i < I; i++) {
- if (dsj.root(i) == i) {
- root.push_back(i);
- }
- }
- // split into groups
- outputs.resize(root.size());
- for (size_t i = 0, I = root.size(); i < I; i++) {
- messagePrintf(1, "Group %d", i);
- std::vector<size_t> ids;
- for (size_t j = 0, J = input_bitmap.size(); j < J; j++) {
- if (dsj.root(j) != root[i]) continue;
- outputs[i].cameras.push_back(Camera<RGBf_Space>());
- outputs[i].cameras[outputs[i].cameras.size() - 1].photo(
- Photo<RGBf_Space>(input_bitmap[j])
- );
- ids.push_back(j);
- messagePrintf(0, "camera %lu from bitmap %lu",
- outputs[i].cameras.size() - 1, j);
- }
- for (size_t j = 0, J = ids.size(); j < J; ++j) {
- for (size_t k = 0; k < J; ++k) {
- if (j == k) continue;
- size_t i1 = ids[j], i2 = ids[k];
- if (pairs[i1][i2].empty()) continue;
- outputs[i].edges.push_back(OutputSet::Edge(j, k));
- size_t index = outputs[i].edges.size() - 1;
- for (size_t n = 0, N = pairs[i1][i2].size(); n < N; ++n) {
- outputs[i].edges[index].v1.push_back(
- fpsv[i1][pairs[i1][i2][n].from.second]
- );
- outputs[i].edges[index].v2.push_back(
- fpsv[i1][pairs[i1][i2][n].to.second]
- );
+ if (ni * m_ni > c + m_nf * nf) {
+ messagePrintf(0, "accept %lu --- %lu", i, j);
+ messagePrintf(0,
+ "%.0f * %.3f = %.3f ?? %.3f = %.3f + %.3f * %.0f",
+ ni, m_ni, ni * m_ni, c + m_nf * nf, c, m_nf, nf);
+ continue;
}
- messagePrintf(0, "Edge %lu---%lu, size = %lu",
- i1, i2, outputs[i].edges[index].v1.size());
- }
- }
- std::sort(outputs[i].edges.begin(), outputs[i].edges.end());
- messagePrintf(-1, "");
- }
- messagePrintf(-1, "ok");
- return true;
-}
-
-////////////////////// **# boundle adjustment #** ////////////////////
-bool boundle() {
- stop = inRange(0.01, 100000.0, atof(usg.optionValue('s', 0).c_str()));
- messagePrintf(1, "boundle adjustment");
- for (size_t i = 0, I = outputs.size(); i < I; i++) {
- int id = 0;
- std::set<size_t> in;
- size_t i1 = outputs[i].edges[0].i1;
- size_t i2 = outputs[i].edges[0].i2;
- for (size_t j = 0, J = outputs[i].edges[0].v1.size(); j < J; ++j) {
- outputs[i].cameras[i1].fixedPoints2DGet().identityPointAdd(
- id, outputs[i].edges[0].v1[j]);
- outputs[i].cameras[i2].fixedPoints2DGet().identityPointAdd(
- id, outputs[i].edges[0].v2[j]);
- id++;
- }
- in.insert(i1);
- in.insert(i2);
- double r_lst = Camera<RGBf_Space>::boundleAdjustment2D(
- &(outputs[i].cameras),
- stop
- );
- for (size_t j = 1, J = outputs[i].edges.size(); j < J; ++j) {
- size_t best;
- for (best = 0; best < J; ++best) {
- if (in.find(outputs[i].edges[best].i1) == in.end() &&
- in.find(outputs[i].edges[best].i2) == in.end()) continue;
- break;
- }
- i1 = outputs[i].edges[best].i1;
- i2 = outputs[i].edges[best].i2;
- for (size_t j = 0, J = outputs[i].edges[best].v1.size(); j < J; ++j) {
- outputs[i].cameras[i1].fixedPoints2DGet().identityPointAdd(
- id, outputs[i].edges[best].v1[j]);
- outputs[i].cameras[i2].fixedPoints2DGet().identityPointAdd(
- id, outputs[i].edges[best].v2[j]);
- id++;
}
- in.insert(i1);
- in.insert(i2);
- std::vector<Camera<RGBf_Space> > tmp(outputs[i].cameras);
- double r = Camera<RGBf_Space>::boundleAdjustment2D(&tmp, stop);
- if (r > r_lst * 1.5) continue;
- outputs[i].cameras = tmp;
+ pairs[i][j].clear();
}
}
messagePrintf(-1, "ok");
return true;
}
-bool expand() {
- o_radius = inRange(100.0, 1000000.0, atof(usg.optionValue('O', 0).c_str()));
- output_bitmap.resize(outputs.size());
- for (size_t i = 0, I = outputs.size(); i < I; ++i) {
- WatchBall<RGBf_Space> wb;
- wb.cameras(outputs[i].cameras);
- output_bitmap[i] = wb.expand(o_radius);
- }
- return true;
-}
-
////////////////////// **# Write to output file #** //////////////////
+
bool output() {
messagePrintf(1, "Write images");
for (size_t i = 0; i < output_bitmap.size(); i++) {
@@ -450,7 +349,7 @@ bool output() {
img.at<cv::Vec3b>(y, x)[2] = tmp.r();
}
}
- std::string output_name(usg.optionValue('o', 0)
+ std::string output_name(usg.optionValue("o", 0)
+ (output_bitmap.size() > 1
? stringPrintf("%lu", i)
: "")
@@ -467,54 +366,6 @@ bool output() {
return true;
}
-//*
-bool tmp_output() {
- output_bitmap = input_bitmap;
- for (size_t i = 0, I = input_bitmap.size(); i < I; i++) {
- for (size_t j = 0, J = fpsv[i].size(); j < J; j++) {
- ssize_t x = fpsv[i][j](0);
- ssize_t y = fpsv[i][j](1);
- ssize_t dx[2] = {0, 1}, x0[2] = {0, -10};
- ssize_t dy[2] = {1, 0}, y0[2] = {-10, 0};
- for(size_t k = 0; k < 2; k++){
- for(size_t count = 0; count < 20; count++){
- ssize_t xx = x + dx[k] * count + x0[k];
- ssize_t yy = y + dy[k] * count + y0[k];
- if(0 <= xx && xx < (ssize_t)input_bitmap[i].width() &&
- 0 <= yy && yy < (ssize_t)input_bitmap[i].height()){
- output_bitmap[i].pixel(yy, xx, Vector3D<double>(1.0, 1.0, 0.0));
- }
- }
- }
- }
- }
- return output();
-}
-// */
-
-/*
-bool g_output(){
- output_bitmap.resize(input_bitmap.size() * 2);
- for(size_t i = 0, I = input_bitmap.size(); i < I; i++){
- output_bitmap[i * 2 ] = input_bitmap[i];
- output_bitmap[i * 2 + 1] = input_bitmap[i];
- output_bitmap[i * 2 ].gradiancedX(3, 3);
- output_bitmap[i * 2 + 1].gradiancedY(3, 3);
- for(size_t x = 0, X = output_bitmap[i * 2].width(); x < X; x++){
- for(size_t y = 0, Y = output_bitmap[i * 2].height(); y < Y; y++){
- Vector3D<double> v;
- v = output_bitmap[i * 2](y, x);
- output_bitmap[i * 2](y, x) = Vector3D<double>(v.length() / sqrt(2.0));
- v = output_bitmap[i * 2 + 1](y, x);
- output_bitmap[i * 2 + 1](y, x) = Vector3D<double>(v.length() / sqrt(2.0));
- }
- }
- }
- return output();
-}
-
-// */
-
bool pair_output(){
for(size_t i = 0, I = input_bitmap.size(); i < I; i++){
for(size_t j = 0, J = input_bitmap.size(); j < J; j++){
@@ -523,75 +374,33 @@ bool pair_output(){
chk.rememberVCalc(pairs[i][j]);
size_t index = output_bitmap.size();
output_bitmap.push_back(input_bitmap[i]);
- for(ssize_t x = 0, X = input_bitmap[i].width(); x < X; x++){
- for(ssize_t y = 0, Y = input_bitmap[i].height(); y < Y; y++){
+ for(ssize_t x = 0, X = input_bitmap[i].width(); x < X; x++) {
+ for(ssize_t y = 0, Y = input_bitmap[i].height(); y < Y; y++) {
Vector2D<double> to(chk.to(Vector2D<double>(x, y)));
ssize_t x2 = to.x(), y2 = to.y();
- if(0 <= x2 && x2 <= (ssize_t)input_bitmap[j].width() &&
- 0 <= y2 && y2 <= (ssize_t)input_bitmap[j].height()){
+ if (0 <= x2 && x2 <= (ssize_t)input_bitmap[j].width() &&
+ 0 <= y2 && y2 <= (ssize_t)input_bitmap[j].height()) {
output_bitmap[index].pixel(y, x, (input_bitmap[i].pixel(y, x) +
input_bitmap[j].pixel(y2,x2)) / 2
);
}
}
}
- }
- }
- return output();
-}
-/*
-bool pair_output2(){
- for(size_t i = 0, I = input_bitmap.size(); i < I; i++){
- for(size_t j = 0, J = input_bitmap.size(); j < J; j++){
- if((i + 1) % I != j && (j + 1) % J != i) continue;
- messagePrintf(0, "%3lu--%3lu: %lu", i, j, pairs[i][j].size());
- if(pairs[i][j].empty()) continue;
- MyRansacCheck chk(&(fpsv[i]), &(fpsv[j]));
- chk.rememberVCalc(pairs[i][j]);
- size_t index = output_bitmap.size();
- output_bitmap.push_back(input_bitmap[i]);
- for(ssize_t x = 0, X = input_bitmap[i].width(); x < X; x++){
- for(ssize_t y = 0, Y = input_bitmap[i].height(); y < Y; y++){
- Vector2D<double> to(chk.to(Vector2D<double>(x, y)));
- ssize_t x2 = to.x(), y2 = to.y();
- if(0 <= x2 && x2 <= (ssize_t)input_bitmap[j].width() &&
- 0 <= y2 && y2 <= (ssize_t)input_bitmap[j].height()){
- output_bitmap[index].pixel(y, x, (input_bitmap[i].pixel(y, x) +
- input_bitmap[j].pixel(y2,x2)) / 2
- );
+ for (size_t k = 0, K = pairs[i][j].size(); k < K; ++k) {
+ ssize_t x0 = fpsv[i][pairs[i][j][k].from.second](0);
+ ssize_t y0 = fpsv[i][pairs[i][j][k].from.second](1);
+ for (ssize_t d = -10; d <= 10; ++d) {
+ if (0 <= x0 + d && x0 + d < (ssize_t)input_bitmap[i].width() - 1) {
+ output_bitmap[index].pixel(y0, x0 + d,
+ RGBf_Space(Vector3D<double>(
+ 1.0, 1.0, 0.0
+ )));
}
- }
- }
- for(size_t k = 0, K = fpsv[i].size(); k < K; k++){
- ssize_t dy[2] = {0, 1}, dx[2] = {1, 0};
- ssize_t y0[2] = {0, -10}, x0[2] = {-10, 0};
- ssize_t x = fpsv[i][k](0), y = fpsv[i][k](1);
- for(ssize_t m = 0; m < 2; m++){
- for(ssize_t n = 0; n < 20; n++){
- ssize_t xx = x + x0[m] + dx[m] * n;
- ssize_t yy = y + y0[m] + dy[m] * n;
- if(0 <= xx && xx <= (ssize_t)input_bitmap[j].width() &&
- 0 <= yy && yy <= (ssize_t)input_bitmap[j].height()){
- output_bitmap[index].pixel(yy, xx,
- Vector3D<double>(1.0, 1.0, 0));
- }
- }
- }
- }
- for(size_t k = 0, K = pairs[i][j].size(); k < K; k++){
- ssize_t dy[2] = {0, 1}, dx[2] = {1, 0};
- ssize_t y0[2] = {0, -10}, x0[2] = {-10, 0};
- ssize_t x = fpsv[i][pairs[i][j][k].from.second](0);
- ssize_t y = fpsv[i][pairs[i][j][k].from.second](1);
- for(ssize_t m = 0; m < 2; m++){
- for(ssize_t n = 0; n < 20; n++){
- ssize_t xx = x + x0[m] + dx[m] * n;
- ssize_t yy = y + y0[m] + dy[m] * n;
- if(0 <= xx && xx <= (ssize_t)input_bitmap[j].width() &&
- 0 <= yy && yy <= (ssize_t)input_bitmap[j].height()){
- output_bitmap[index].pixel(yy, xx,
- Vector3D<double>(1.0, 0.0, 0));
- }
+ if (0 <= y0 + d && y0 + d < (ssize_t)input_bitmap[i].height() - 1) {
+ output_bitmap[index].pixel(y0 + d, x0,
+ RGBf_Space(Vector3D<double>(
+ 1.0, 1.0, 0.0
+ )));
}
}
}
@@ -599,8 +408,34 @@ bool pair_output2(){
}
return output();
}
-// */
+bool text_output() {
+ std::string s = usg.optionValue("f", 0);
+ FILE* f = fopen(s.c_str(), "w");
+ fprintf(f, "%lu\n", input_bitmap.size());
+ for (size_t i = 0, I = input_bitmap.size(); i < I; ++i) {
+ fprintf(f, "%s\n", input_name[i].c_str());
+ fprintf(f, "%lu %lu %lu ",
+ input_bitmap[i].height(), input_bitmap[i].width(), fpsv[i].size());
+ for (size_t j = 0, J = fpsv[i].size(); j < J; ++j) {
+ fprintf(f, "%.10f %.10f ", fpsv[i][j](0), fpsv[i][j](1));
+ }
+ fprintf(f, "\n");
+ for (size_t j = 0; j < I; ++j) {
+ fprintf(f, "%lu ", pairs[i][j].size());
+ for (size_t k = 0, K = pairs[i][j].size(); k < K; ++k) {
+ fprintf(f, "%lu %lu %lu %lu ",
+ pairs[i][j][k].from.first,
+ pairs[i][j][k].from.second,
+ pairs[i][j][k].to.first,
+ pairs[i][j][k].to.second);
+ }
+ fprintf(f, "\n");
+ }
+ }
+ fclose(f);
+ return true;
+}
int main(int argc, char** argv){
setup(argc, argv);
@@ -608,11 +443,8 @@ int main(int argc, char** argv){
detect();
kmatch();
ransac();
- prob_mod();
- group();
- pair_output(); return 0;
- boundle();
- expand();
- output();
+ match_check();
+ pair_output();
+ text_output();
return 0;
}
diff --git a/meowpp.test/src/autostitch_FeaturePointsDetector_Harris.cpp b/meowpp.test/src/autostitch_FeaturePointsDetector_Harris.cpp
index ebcca5b..573c4b6 100644
--- a/meowpp.test/src/autostitch_FeaturePointsDetector_Harris.cpp
+++ b/meowpp.test/src/autostitch_FeaturePointsDetector_Harris.cpp
@@ -13,45 +13,45 @@ class Harris: public MyFeaturePointsDetector{
public:
Usage usage() const{
Usage ret;
- ret.optionAdd('K',
+ ret.optionAdd("harris-k",
"Specify the constant K of 'R = detM - KtraceM'",
"<floating point>", stringPrintf("%.10f", _body.paramK()),
false);
- ret.optionAdd('R',
+ ret.optionAdd("harris-r",
"Specify the threshold of R to determind whether is "
"featuer point or not",
"<floating point>", stringPrintf("%.10f", _body.paramR()),
false);
- ret.optionAdd('W',
+ ret.optionAdd("harris-w",
"Specify the sigma of the gaussian blur",
"<floating point>", stringPrintf("%.10f", _body.paramW()),
false);
- ret.optionAdd('N',
+ ret.optionAdd("harris-n",
"Specify the sigma of the gaussian blur to de-noise",
"<floating point>", stringPrintf("%.10f", _body.paramN()),
false);
- ret.optionAdd('G',
+ ret.optionAdd("harris-g",
"Specify the sigma of the gaussian blur to generate feature",
"<floating point>", stringPrintf("%.10f", _body.paramG()),
false);
- ret.optionAdd('L',
+ ret.optionAdd("harris-l",
".........",
"<floating point>", stringPrintf("%.10f", _body.paramL()),
false);
- ret.optionAdd('B',
+ ret.optionAdd("harris-b",
"Description size",
"<number>", stringPrintf("%lu", _body.paramB()),
false);
return ret;
}
bool usage(meow::Usage const& usg){
- double K = atof(usg.optionValue('K', 0).c_str());
- double R = atof(usg.optionValue('R', 0).c_str());
- double W = atof(usg.optionValue('W', 0).c_str());
- double N = atof(usg.optionValue('N', 0).c_str());
- double L = atof(usg.optionValue('L', 0).c_str());
- double G = atof(usg.optionValue('G', 0).c_str());
- size_t B = atoi(usg.optionValue('B', 0).c_str());
+ double K = atof(usg.optionValue("harris-k", 0).c_str());
+ double R = atof(usg.optionValue("harris-r", 0).c_str());
+ double W = atof(usg.optionValue("harris-w", 0).c_str());
+ double N = atof(usg.optionValue("harris-n", 0).c_str());
+ double L = atof(usg.optionValue("harris-l", 0).c_str());
+ double G = atof(usg.optionValue("harris-g", 0).c_str());
+ size_t B = atoi(usg.optionValue("harris-b", 0).c_str());
_body.paramK(K);
_body.paramR(R);
_body.paramW(W);
diff --git a/meowpp.test/src/autostitch_K_Match.cpp b/meowpp.test/src/autostitch_K_Match.cpp
index d2fe8c6..6e5c69f 100644
--- a/meowpp.test/src/autostitch_K_Match.cpp
+++ b/meowpp.test/src/autostitch_K_Match.cpp
@@ -18,7 +18,7 @@ MyK_Match::~MyK_Match(){
Usage MyK_Match::usage() const{
Usage usg;
- usg.optionAdd('k',
+ usg.optionAdd("kmatch-k",
"k nearest neighbors",
"<number>", stringPrintf("%d", 5),
false);
@@ -26,7 +26,7 @@ Usage MyK_Match::usage() const{
}
bool MyK_Match::usage(meow::Usage const& usg){
- _body.paramK(atoi(usg.optionValue('k', 0).c_str()));
+ _body.paramK(atoi(usg.optionValue("kmatch-k", 0).c_str()));
return true;
}
diff --git a/meowpp.test/src/autostitch_RansacCheck.cpp b/meowpp.test/src/autostitch_RansacCheck.cpp
index 0410396..becc7da 100644
--- a/meowpp.test/src/autostitch_RansacCheck.cpp
+++ b/meowpp.test/src/autostitch_RansacCheck.cpp
@@ -3,27 +3,30 @@
#include "meowpp/math/Matrix.h"
#include "meowpp/math/Vector.h"
#include <utility>
+#include <cmath>
+#include <algorithm>
+
using namespace meow;
double MyRansacCheck::threshold = 5.0;
-meow::Usage MyRansacCheck::usage(){
+meow::Usage MyRansacCheck::usage() {
Usage usg;
- usg.optionAdd('t',
+ usg.optionAdd("ransac-threshold",
"Threshold for RANSAC",
"<floating point>", stringPrintf("%.10f", threshold),
false);
return usg;
}
-bool MyRansacCheck::usage(Usage const& usg){
+bool MyRansacCheck::usage(Usage const& usg) {
threshold = inRange(0.0000001, 1000.0,
- atof(usg.optionValue('t', 0).c_str()));
+ atof(usg.optionValue("ransac-threshold", 0).c_str()));
return true;
}
-MyRansacCheck::MyRansacCheck(){
+MyRansacCheck::MyRansacCheck() {
}
@@ -44,44 +47,58 @@ MyRansacCheck::~MyRansacCheck(){
}
-std::pair<Vector3D<double>, Vector3D<double> > MyRansacCheck::vCalc(
- std::vector<FeaturePointIndexPair> const& __sample
-) const{
- Matrix<double> m(6, 7, 0.0);
- for(size_t i = 0; i < 3u; i++){
+Vector<double> MyRansacCheck::vCalc(std::vector<FeaturePointIndexPair> const& __sample) const {
+ Matrix<double> m(__sample.size() * 2, 9, 0.0);
+ for (size_t i = 0, I = __sample.size(); i < I; ++i) {
m(i * 2 , 0, (*_from)[__sample[i].from.second](0));
m(i * 2 , 1, (*_from)[__sample[i].from.second](1));
m(i * 2 , 2, 1.0);
- m(i * 2 , 6, (*_to)[__sample[i].to.second](0));
+ m(i * 2 , 6, -(*_from)[__sample[i].from.second](0) * (*_to)[__sample[i].to.second](0));
+ m(i * 2 , 7, -(*_from)[__sample[i].from.second](1) * (*_to)[__sample[i].to.second](0));
+ m(i * 2 , 8, (*_to)[__sample[i].to.second](0));
m(i * 2 + 1, 3, (*_from)[__sample[i].from.second](0));
m(i * 2 + 1, 4, (*_from)[__sample[i].from.second](1));
m(i * 2 + 1, 5, 1.0);
- m(i * 2 + 1, 6, (*_to)[__sample[i].to.second](1));
+ m(i * 2 + 1, 6, -(*_from)[__sample[i].from.second](0) * (*_to)[__sample[i].to.second](1));
+ m(i * 2 + 1, 7, -(*_from)[__sample[i].from.second](1) * (*_to)[__sample[i].to.second](1));
+ m(i * 2 + 1, 8, (*_to)[__sample[i].to.second](1));
}
- m.triangulared();
- Vector<double> x(6, 0.0);
- for(ssize_t i = 5; i >= 0; i--){
- double sum = 0;
- for(size_t j = i + 1; j < 6u; j++){
- sum += x(j) * m(i, j);
+ if (__sample.size() == 4) {
+ m.triangulared();
+ Vector<double> x(8, 0.0);
+ for (ssize_t i = 7; i >= 0; i--) {
+ double sum = 0;
+ for (size_t j = i + 1; j < 8u; j++) {
+ sum += x(j) * m(i, j);
+ }
+ x.entry(i, (m(i, 8) - sum) / m(i, i));
}
- x.entry(i, (m(i, 6) - sum) / m(i, i));
+ return x;
+ }
+ else {
+ Matrix<double> b(m.col(8));
+ m.cols(8, 0.0);
+ Vector<double> v((m.transpose() * m).inverse() * m.transpose() * b);
+ return v;
}
- Vector3D<double> vX(x(0), x(1), x(2));
- Vector3D<double> vY(x(3), x(4), x(5));
- return std::pair<Vector3D<double>, Vector3D<double> >(vX, vY);
}
void MyRansacCheck::rememberVCalc(std::vector<FeaturePointIndexPair>
- const& __sample){
- std::pair<Vector3D<double>, Vector3D<double> > p(vCalc(__sample));
- _vX = p.first;
- _vY = p.second;
+ const& __sample) {
+ Vector<double> x(vCalc(__sample));
+ a_ = x(0);
+ b_ = x(1);
+ c_ = x(2);
+ d_ = x(3);
+ e_ = x(4);
+ f_ = x(5);
+ A_ = x(6);
+ B_ = x(7);
}
-bool MyRansacCheck::ok(FeaturePointIndexPair const& __m) const{
+bool MyRansacCheck::ok(FeaturePointIndexPair const& __m) const {
Vector2D<double> from(
(*_from)[__m.from.second](0),
(*_from)[__m.from.second](1));
@@ -96,9 +113,9 @@ bool MyRansacCheck::ok(FeaturePointIndexPair const& __m) const{
double MyRansacCheck::operator()(std::vector<FeaturePointIndexPair>
const& __sample,
std::vector<FeaturePointIndexPair>
- const& __data) const{
- for(size_t i = 0, I = __sample.size(); i < I; i++){
- for(size_t j = 0, J = __sample.size(); j < J; j++){
+ const& __data) const {
+ for(size_t i = 0, I = __sample.size(); i < I; i++) {
+ for (size_t j = 0, J = __sample.size(); j < J; j++) {
if(i == j) continue;
if(__sample[i].from.second == __sample[j].from.second) return -1;
if(__sample[i].to .second == __sample[j].to .second) return -1;
@@ -106,16 +123,32 @@ double MyRansacCheck::operator()(std::vector<FeaturePointIndexPair>
}
((MyRansacCheck*)this)->rememberVCalc(__sample);
size_t ret = 0;
- for(size_t i = 0, I = __data.size(); i < I; i++){
- if(ok(__data[i])){
+ for (size_t i = 0, I = __data.size(); i < I; i++) {
+ if (ok(__data[i])) {
ret++;
}
}
return 0.001 + ret;
}
+bool MyRansacCheck::check(double r, double a) {
+ return true;
+ Vector2D<double> v_x(a_, b_);
+ Vector2D<double> v_y(c_, d_);
+ double len1 = v_x.length() * r;
+ double len2 = v_x.length() / r;
+ double len = v_y.length();
+ if (len1 > len2) std::swap(len1, len2);
+ if (len < len1 || len2 < len) return false;
+ double sn = fabs(sin(a));
+ double msn = fabs(v_x.cross(v_y) / v_x.length() / v_y.length());
+ if (msn < sn) return false;
+ return true;
+}
-Vector2D<double> MyRansacCheck::to(Vector2D<double> const& __v) const{
- Vector3D<double> v(__v(0), __v(1), 1);
- return Vector2D<double>(v.dot(_vX), v.dot(_vY));
+Vector2D<double> MyRansacCheck::to(Vector2D<double> const& v) const {
+ return Vector2D<double>(
+ (v.x() * a_ + v.y() * b_ + c_) / (A_ * v.x() + B_ * v.y() + 1),
+ (v.x() * d_ + v.y() * e_ + f_) / (A_ * v.x() + B_ * v.y() + 1)
+ );
}
diff --git a/meowpp.test/src/dsa.cpp b/meowpp.test/src/dsa.cpp
index 9b93395..8a3c499 100644
--- a/meowpp.test/src/dsa.cpp
+++ b/meowpp.test/src/dsa.cpp
@@ -14,15 +14,16 @@ int count = 0;
int main(int argc, char** argv){
std::vector<std::string> ids(meow::ObjSelector<0>::names());
- usg2.optionAdd('t', "Select which subject to test",
+ usg2.optionAdd("t", "Select which subject to test",
"<number>", "",
false);
for(size_t i = 0; i < ids.size(); i++){
TestFunction* tmp = (TestFunction*)meow::ObjSelector<0>::get(ids[i]);
- usg2.optionValueAcceptAdd('t', ids[i], tmp->name() + ", " + tmp->description());
+ usg2.optionValueAcceptAdd("t", ids[i], tmp->name()+", "+tmp->description());
}
- usg.optionAdd('h', "Display this help document");
+ usg.optionAdd("h", "Display this help document");
+ usg.optionAdd("help", "Display this help document");
usg.usageBeginAdd("<name> is a little test program to check whether"
"the data structures in the template is correct by"
"random generate lots of data to test");
@@ -33,14 +34,14 @@ int main(int argc, char** argv){
if(usg.arguments(argc, argv, &err) == false){
printf("%s\n\n%s\n", err.c_str(), usg.usage().c_str());
return 1;
- }else if(usg.hasOptionSetup('h')){
+ }else if(usg.hasOptionSetup("h") || usg.hasOptionSetup("help")) {
printf("%s", usg.usage().c_str());
return 0;
}else{
usg2.update(usg);
- if(usg2.optionValuesSize('t') > 0){
- for(int i = 0, I = usg2.optionValuesSize('t'); i < I; i++){
- std::string wh = usg2.optionValue('t', i);
+ if(usg2.optionValuesSize("t") > 0){
+ for(int i = 0, I = usg2.optionValuesSize("t"); i < I; i++){
+ std::string wh = usg2.optionValue("t", i);
TestFunction* f = (TestFunction*)meow::ObjSelector<0>::get(wh);
if(f->run() == false){
printf("error occure on %s\n", f->name().c_str());
diff --git a/meowpp.test/src/oo.cpp b/meowpp.test/src/oo.cpp
index 54c69d5..ede8a24 100644
--- a/meowpp.test/src/oo.cpp
+++ b/meowpp.test/src/oo.cpp
@@ -6,6 +6,7 @@
#include <algorithm>
#include <ctime>
+#include <cmath>
using namespace meow;
@@ -14,13 +15,14 @@ private:
struct Myself{
int n;
Myself() { }
+ Myself(Myself const& m): n(m.n) {
+ }
~Myself() { }
- void copyFrom(Myself const& m){ n = m.n; }
};
Self<Myself> const self;
public:
- A(): self(true){ self()->n = 0; }
- A(A const& b): self(false) { copyFrom(b); }
+ A(): self(){ self()->n = 0; }
+ A(A const& b): self(b.self, Self<Myself>::COPY_FROM) { }
~A() { }
int num() const { return self->n; }
int num(int k) { return (self()->n = k); }
@@ -34,38 +36,33 @@ struct B {
B() { n = 0; count = 1; }
};
-static A as[100];
-static B *bs[100];
-
-static size_t N = 100;
+static const size_t N = 50;
+static A as[N];
+static B *bs[N];
int main(){
+ srand(time(0));
for (size_t i = 0; i < N; i++) {
bs[i] = new B;
}
- for (size_t i = 0; i < 1000; i++) {
+ for (size_t i = 0; i < 500; i++) {
int k = rand();
- if (k % 3 == 0) {
+ if (k % 3 == 0) { // copyFrom
int x, y;
do {
x = rand() % N;
y = rand() % N;
} while(x == y);
as[x].copyFrom(as[y]);
- bs[x]->count--;
- if (bs[x]->count == 0) {
- delete bs[x];
- }
- bs[x] = new B;
bs[x]->n = bs[y]->n;
}
- else if (k % 3 == 1) {
+ else if (k % 3 == 1) { // referenceFrom
int x, y;
do {
x = rand() % N;
y = rand() % N;
- } while(x == y);
+ } while(x == y || x / (N / 5) != y / (N / 5));
as[x].referenceFrom(as[y]);
bs[x]->count--;
if (bs[x]->count == 0) {
@@ -74,7 +71,7 @@ int main(){
bs[x] = bs[y];
bs[x]->count++;
}
- else {
+ else { // set value
int x = rand() % N, v = rand() % 100;
as[x].num(v);
bs[x]->n = v;
@@ -90,6 +87,7 @@ int main(){
printf("false!\n");
return 1;
}
+ //for (size_t j = 0; j < N; j++) { printf("%d ", as[j].num()); } printf("\n");
}
for (size_t i = 0; i < N; i++) { printf("%d ", as[i].num()); }
printf("\n");
diff --git a/meowpp.test/src/rot_bundle.cpp b/meowpp.test/src/rot_bundle.cpp
new file mode 100644
index 0000000..d626e8e
--- /dev/null
+++ b/meowpp.test/src/rot_bundle.cpp
@@ -0,0 +1,319 @@
+#include <cstdio>
+#include <string>
+#include <cstdlib>
+#include <algorithm>
+#include <vector>
+
+#include <opencv/cv.h>
+#include <opencv/highgui.h>
+
+#include "meowpp/dsa/DisjointSet.h"
+#include "meowpp/Usage.h"
+#include "meowpp/gra/Eye.h"
+#include "meowpp/colors/RGB_Space.h"
+#include "meowpp/gra/Bitmap.h"
+#include "meowpp/utility.h"
+#include "meowpp/math/utility.h"
+#include "meowpp/geo/Vectors.h"
+#include "meowpp/gra/WatchBall.h"
+
+#include "meowpp/gra/BundleAdjustment_LM.h"
+
+using namespace meow;
+
+//////////////////////////////////////////////////////////////////
+
+Usage usg("rot_bundle");
+
+std::vector<std::string> bitmap_name;
+std::vector<Eye<RGBf_Space> > eyes;
+std::vector<std::vector<Vector<double> > > fpsv;
+std::vector<std::vector<std::vector<PairToPair<size_t> > > > pairs;
+std::vector<std::vector<size_t > > groups;
+std::vector<WatchBall<RGBf_Space> > balls;
+std::vector<Vector2D<double> > center;
+
+double f_init;
+double threshold;
+
+//////////////////////////////////////////////////////////////////
+
+bool setup(int argc, char** argv) {
+ usg.optionAdd("f",
+ "Input text file",
+ "filename",
+ "",
+ true);
+ usg.optionAdd("h",
+ "help docu");
+ usg.optionAdd("output-radius",
+ "...",
+ "floating point",
+ "1000",
+ false);
+ usg.optionAdd("o",
+ "prefix of output images",
+ "pathname",
+ "output",
+ false);
+ usg.optionAdd("f-init",
+ "init focal length",
+ "floating point",
+ "300.0",
+ false);
+ usg.optionAdd("t",
+ "threshold for bundle adjustment",
+ "floating point",
+ "5.0",
+ false);
+ std::string s;
+ bool ok = usg.arguments(argc, argv, &s);
+ if (usg.hasOptionSetup("h")) {
+ printf("%s\n", usg.usage().c_str());
+ exit(0);
+ }
+ if (!ok) {
+ fprintf(stderr, "%s\n", s.c_str());
+ exit(1);
+ }
+ return true;
+}
+
+bool read() {
+ messagePrintf(1, "read file");
+ FILE* f = fopen(usg.optionValue("f", 0).c_str(), "r");
+ size_t N;
+ if (fscanf(f, "%lu", &N) < 1) {
+ fprintf(stderr, "format error!\n");
+ exit(-1);
+ }
+ std::vector<std::vector<int> > fps_id;
+ int id_max = 0;
+ bitmap_name.resize(N);
+ eyes.resize(N);
+ fpsv.resize(N);
+ fps_id.resize(N);
+ pairs.resize(N);
+ center.resize(N);
+ for (size_t i = 0; i < N; ++i) {
+ pairs[i].resize(N);
+ char s[1000];
+ if (fscanf(f, "%s", s) < 1) {
+ fprintf(stderr, "format error!\n");
+ exit(-1);
+ }
+ size_t h, w;
+ if (fscanf(f, "%lu %lu", &h, &w) < 2) {
+ fprintf(stderr, "format error!\n");
+ exit(-1);
+ }
+ center[i].y(1.0 * h / 2);
+ center[i].x(1.0 * w / 2);
+ bitmap_name[i] = s;
+ size_t M;
+ if (fscanf(f, "%lu", &M) < 1) {
+ fprintf(stderr, "format error!\n");
+ exit(-1);
+ }
+ Vector<double> v(2, 0.0);
+ for (size_t j = 0; j < M; ++j) {
+ double x, y;
+ if (fscanf(f, "%lf %lf", &x, &y) < 2) {
+ fprintf(stderr, "format error!\n");
+ exit(-1);
+ }
+ v.entry(0, x - center[i].x());
+ v.entry(1, -(y - center[i].y()));
+ fpsv[i].push_back(v);
+ fps_id[i].push_back(id_max++);
+ }
+ for (size_t j = 0; j < N; ++j) {
+ size_t O;
+ if (fscanf(f, "%lu", &O) < 1) {
+ fprintf(stderr, "format error!\n");
+ exit(-1);
+ }
+ for (size_t k = 0; k < O; ++k) {
+ size_t a, b, c, d;
+ if (fscanf(f, "%lu %lu %lu %lu", &a, &b, &c, &d) < 4) {
+ fprintf(stderr, "format error!\n");
+ exit(-1);
+ }
+ pairs[i][j].push_back(PairToPair<size_t>(a, b, c, d));
+ }
+ }
+ }
+ fclose(f);
+ messagePrintf(-1, "ok");
+ messagePrintf(1, "merge fixed points");
+ DisjointSet st(id_max);
+ for (size_t i = 0, I = eyes.size(); i < I; ++i) {
+ for (size_t j = 0, J = pairs[i].size(); j < J; ++j) {
+ for (size_t k = 0, K = pairs[i][j].size(); k < K; ++k) {
+ st.merge(fps_id[pairs[i][j][k].from.first][pairs[i][j][k].from.second],
+ fps_id[pairs[i][j][k].to .first][pairs[i][j][k].to .second]);
+ }
+ }
+ }
+ for (size_t i = 0, I = eyes.size(); i < I; ++i) {
+ std::string s(stringPrintf("eye %lu: ", i));
+ for (size_t j = 0, J = fps_id[i].size(); j < J; ++j) {
+ int id = st.root(fps_id[i][j]);
+ s += stringPrintf("%d ", id);
+ eyes[i].cameraGet().fixedPoints2DGet().identityPointAdd(id, fpsv[i][j]);
+ }
+ messagePrintf(0, "%s", s.c_str());
+ }
+ messagePrintf(-1, "ok");
+ messagePrintf(0, "Number of Eyes: %lu", eyes.size());
+ for (size_t i = 0, I = eyes.size(); i < I; ++i) {
+ messagePrintf(0, "eyes[%lu] have %lu fixed points", i, fpsv[i].size());
+ }
+ messagePrintf(0, "relation:");
+ for (size_t i = 0, I = eyes.size(); i < I; ++i) {
+ std::string s;
+ for (size_t j = 0; j < I; ++j) {
+ s += stringPrintf("%3lu ", pairs[i][j].size());
+ }
+ messagePrintf(0, "%s", s.c_str());
+ }
+ return true;
+}
+
+bool group() {
+ size_t N = eyes.size();
+ messagePrintf(1, "group");
+ // union
+ DisjointSet dsj(N);
+ for (size_t i = 0; i < N; i++) {
+ for (size_t j = 0; j < N; j++) {
+ if(pairs[i][j].empty()) continue;
+ dsj.merge(i, j);
+ }
+ }
+ std::vector<size_t> root;
+ for (size_t i = 0, I = eyes.size(); i < I; i++) {
+ if (dsj.root(i) == i) {
+ root.push_back(i);
+ }
+ }
+ // split into groups
+ groups.resize(root.size());
+ for (size_t i = 0, I = root.size(); i < I; i++) {
+ messagePrintf(1, "Group %lu", i);
+ std::vector<size_t> ids;
+ for (size_t j = 0; j < N; ++j) {
+ if (dsj.root(j) != root[i]) continue;
+ groups[i].push_back(j);
+ }
+ for (size_t j = 0, J = groups[i].size(); j < J; ++j) {
+ messagePrintf(0, "eye %lu", groups[i][j]);
+ }
+ messagePrintf(-1, "");
+ }
+ messagePrintf(-1, "ok");
+ return true;
+}
+
+bool bundle() {
+ threshold = inRange(0.0005, 1000.0, atof(usg.optionValue("t", 0).c_str()));
+ f_init = inRange(0.005, 100000.0, atof(usg.optionValue("f-init", 0).c_str()));
+ BundleAdjustment_LM<RGBf_Space> bdl;
+ for (size_t i = 0, I = groups.size(); i < I; ++i) {
+ messagePrintf(1, "bundle adjust for group %lu", i);
+ std::vector<SceneInfo<RGBf_Space> > seq;
+ for (size_t j = 0, J = groups[i].size(); j < J; ++j) {
+ eyes[groups[i][j]].cameraGet().photoGet().focal(f_init);
+ seq.push_back(SceneInfo<RGBf_Space>(&(eyes[groups[i][j]]),
+ CAN_ROTATE | CAN_ZOOM));
+ }
+ bdl.threshold(threshold);
+ bdl.adjustEye(&seq);
+ messagePrintf(-1, "ok");
+ }
+ return true;
+}
+
+bool input() {
+ messagePrintf(1, "loading images");
+ for (size_t i = 0, I = eyes.size(); i < I; ++i) {
+ messagePrintf(1, "%s", bitmap_name[i].c_str());
+ cv::Mat img = cv::imread(bitmap_name[i], CV_LOAD_IMAGE_COLOR);
+ if (!img.data) {
+ messagePrintf(-1, "opencv read error!, ignore");
+ continue;
+ }
+ size_t width = img.size().width ;
+ size_t height = img.size().height;
+ Bitmap<RGBf_Space> bmp;
+ bmp.size(height, width, RGBf_Space(0));
+ for (size_t x = 0; x < width; x++) {
+ for (size_t y = 0; y < height; y++) {
+ RGBi_Space tmp(Vector3D<int>(
+ img.at<cv::Vec3b>(y, x)[2],
+ img.at<cv::Vec3b>(y, x)[1],
+ img.at<cv::Vec3b>(y, x)[0]));
+ RGBf_Space p;
+ colorTransformate(tmp, &p);
+ bmp.pixel(y, x, p);
+ }
+ }
+ eyes[i].cameraGet().photoGet().reset(bmp, eyes[i].camera().photo().focal());
+ messagePrintf(-1, "ok");
+ }
+ messagePrintf(-1, "ok");
+ return true;
+}
+
+bool output() {
+ for (size_t i = 0, I = groups.size(); i < I; ++i) {
+ WatchBall<RGBf_Space> ball;
+ std::vector<Camera<RGBf_Space> > cs(groups[i].size());
+ for (size_t j = 0, J = groups[i].size(); j < J; ++j) {
+ cs[j].referenceFrom(eyes[groups[i][j]].camera());
+ }
+ ball.cameras(cs);
+ balls.push_back(ball);
+ }
+ double r = inRange(10.0, 100000.0, atof(usg.optionValue("output-radius", 0).c_str()));
+ messagePrintf(1, "Write images");
+ Bitmap<RGBf_Space> bmp;
+ for (size_t i = 0; i < balls.size(); i++) {
+ bmp = balls[i].expand(r);
+ size_t width = bmp.width ();
+ size_t height = bmp.height();
+ cv::Mat img(height, width, CV_8UC3);
+ for (size_t x = 0; x < width; x++) {
+ for (size_t y = 0; y < height; y++) {
+ RGBi_Space tmp;
+ colorTransformate(bmp.pixel(y, x), &tmp);
+ img.at<cv::Vec3b>(y, x)[0] = tmp.b();
+ img.at<cv::Vec3b>(y, x)[1] = tmp.g();
+ img.at<cv::Vec3b>(y, x)[2] = tmp.r();
+ }
+ }
+ std::string output_name(usg.optionValue("o", 0)
+ + (balls.size() > 1 ? stringPrintf("%lu", i) : "")
+ + ".jpg");
+ messagePrintf(1, "Write to file '%s'", output_name.c_str());
+ if (imwrite(output_name, img) == false) {
+ messagePrintf(-1, "opencv fail, ignore");
+ }
+ else {
+ messagePrintf(-1, "%lux%lu, ok", width, height);
+ }
+ }
+ messagePrintf(-1, "ok");
+ return true;
+}
+
+int main(int argc, char** argv) {
+ setup(argc, argv);
+ read();
+ group();
+ bundle();
+ input();
+ output();
+ return 0;
+}
+
diff --git a/meowpp/Self.h b/meowpp/Self.h
index 5a62984..7de568b 100644
--- a/meowpp/Self.h
+++ b/meowpp/Self.h
@@ -15,32 +15,23 @@ namespace meow {
* private:
* struct Myself {
* int data;
- * Myself(){
+ * Myself() { // 必要
* data = 0;
* }
+ * Myself(Myself const& b): data(b.data) { // 必要, copy constructor
+ * }
* ~Myself() {
* }
- * Myself copyFrom(Myself const& ms) const {
- * data = ms.data;
+ * bool operator==(Myself const& b) const { // 不一定需要(有用到equal()才要)
+ * return (data == b.data);
* }
* };
+ *
* Self<Myself> const self;
* public:
- * A(): self(true) { // self(true) 表示要建立實體, 即struct Myself
- * }
- * A(A const& a): self(false) { // for std::swap
- * copyFrom(a);
- * }
- * // A(A const& a); // disable 模糊用法, 與上者二選一
- * A(A const& a, bool reference): self(false) {
- * if (reference) {
- * referenceFrom(a);
- * } else {
- * copyFrom(a);
- * }
- * }
- * ~A() {
- * }
+ * A(): self() { } // 預設呼叫Myself()
+ * A(A const& a): self(a.self, COPY_FROM) { } // 用Myself(b)做到copyFrom
+ * ~A() { }
* void setMemeber(int k) {
* self()->data = k; // self()->?? 可以有write權限
* }
@@ -56,138 +47,189 @@ namespace meow {
* A& operator=(A const& b) { // for std::swap
* copyFrom(b);
* }
- * A& operator=(A const& b); // 避免諢亂用法
* };
* @endcode
*
- *@author cathook
+ * @author cathook
*
- *@warning \c Self 這個class會把\c operator= 給disable掉, 所以使用它當
- * kernel的class預設的 \c operator= 都會無法使用
+ * @warning \c Self 這個class會把\c operator= 給disable掉, 所以使用它當
+ * kernel的class預設的 \c operator= 都會無法使用
*/
template<class Data>
class Self {
+public:
+ /*!
+ * @brief 複製資料的方法
+ */
+ enum DuplicateType {
+ COPY_FROM, //!< 跟一般的複製一樣
+ REFERENCE_FROM //!< 參照, 執行完兩個Self會完全等效
+ };
private:
class Body {
private:
struct Kernel {
Data data_;
int counter_;
- Kernel() {
- counter_ = 1;
- }
- Kernel(Data const& data) {
- counter_ = 1;
- data_.copyFrom(data);
- }
+
+ Kernel( ): data_( ), counter_(1) { }
+ Kernel(Data const& data): data_(data), counter_(1) { }
+ ~Kernel() { }
};
- Kernel *pointer_;
+
+ Kernel* pointer_;
int counter_;
public:
- Body() {
- counter_ = 1;
- pointer_ = new Kernel;
+ Body( ): pointer_(new Kernel( )), counter_(1) { }
+ Body(Data const& d): pointer_(new Kernel(d)), counter_(1) { }
+ Body(Body const& b): pointer_(b.pointer_ ), counter_(1) {
+ ++pointer_->counter_;
+ }
+ ~Body() {
+ clear();
}
- Body(Body const& b) {
- counter_ = 1;
+ Body& copyFrom(Body const& b) {
+ clear();
pointer_ = b.pointer_;
- pointer_->counter_++;
+ ++(pointer_->counter_);
+ return *this;
}
- ~Body() {
- pointer_->counter_--;
+ void clear() {
+ --(pointer_->counter_);
if (pointer_->counter_ <= 0) {
delete pointer_;
}
}
- int attatch() { return ++counter_; }
- int detatch() { return --counter_; }
- Data const* access() const { return &(pointer_->data_); }
- Data * modify() {
+ int attach() { return ++counter_; }
+ int detach() { return --counter_; }
+ Data const* access() const {
+ return &(pointer_->data_);
+ }
+ Data* modify() {
if (pointer_->counter_ > 1) {
- pointer_->counter_--;
+ --pointer_->counter_;
pointer_ = new Kernel(pointer_->data_);
}
return &(pointer_->data_);
}
};
- Body* body_;
-
- void clear(Body* body) {
- if (body != NULL) {
- if (body->detatch() <= 0) {
- delete body;
- }
+
+ Body* body_;
+
+ void clear() {
+ if (body_->detach() <= 0) {
+ delete body_;
}
}
public:
/*!
- *@brief constructor
+ *@brief constructor, 並宣告一個實體
+ */
+ Self(): body_(new Body()) {
+ }
+
+ /*!
+ * @brief connstructor, 宣告一個實體, 其中該實體的constructor用copy
+ * constructor
+ *
+ * @param [in] d Inital data
*
- *@param [in] create_body 是否要new一個實體資料 (如果constructor完, 馬上就要
- * \c copyFrom() , 或是 \c referenceFrom() 的話
- * 不太需要 new一個實體, 否則基本上都要
*/
- Self(bool create_body) {
- body_ = (create_body ? new Body() : NULL);
+ Self(Data const& d): body_(new Body(d)) {
+ }
+
+ /*!
+ * @brief constructor, 使用給定的Self當作init value, 並且可以指定要用
+ * reference還是copy
+ *
+ * @param [in] b 給定的Self
+ * @param [in] d 指定要用copy還是reference
+ */
+ Self(Self const& b, DuplicateType d) {
+ switch(d) {
+ case COPY_FROM:
+ body_ = new Body(*b.body_);
+ break;
+ case REFERENCE_FROM:
+ body_ = b.body_;
+ body_->attach();
+ break;
+ }
}
-
- //! @brief 不允許copy constructor
+
+ //! @brief Disallow copy constructor
Self(Self const& b);
-
+
//! @brief 解構子
~Self() {
- clear(body_);
+ clear();
}
-
+
//! @brief 回傳指向 Data const 的指標
Data const* operator->() const {
return body_->access();
}
-
+
//! @brief 回傳指向 Data 的指標, 如有需要, 這邊會做資料的duplicate
Data* operator->() {
return body_->modify();
}
-
+
//! @brief 回傳非const型態的自己
Self& operator()() const {
return *((Self*)this);
}
-
+
/*!
- *@brief 將給定的 \c Self 的資料複製到自己這裡
+ * @brief 將給定的 \c Self 的資料複製到自己這裡
*
- *@param [in] s 給定的\c Self
- *@return 無
+ * @param [in] s 給定的\c Self
+ * @return *this
*
- *@note 與reference的差別是, copy之後若該給定的 \c Self 有資料修改,
- * this 這邊 \b 不會 被改到
+ * @note 與reference的差別是, copy之後若該給定的 \c Self 有資料修改,
+ * this 這邊 \b 不會 被改到
*/
- void copyFrom(Self const& s) {
- Body* old = body_;
- body_ = new Body(*(s.body_));
- clear(old);
+ Self const& copyFrom(Self const& s) {
+ if (body_->access() != s.body_->access()) {
+ body_->copyFrom(*s.body_);
+ }
+ return *this;
}
-
+
/*!
- *@brief 將自己reference 到給定的 \c Self
+ * @brief 將自己reference 到給定的 \c Self
*
- *@param [in] s 給定的\c Self
- *@return 無
+ * @param [in] s 給定的\c Self
+ * @return *this
*
- *@note 把reference想像成指標會比較容易思考, 譬如 \c a.referenceFrom(b)
- * \c b.referenceFrom(c) 相當於 \b a指向b原本指的記憶體位置,
- * \b b指向c原本指的記憶體位置 , 之後更動c時, 只有b會被牽連
- *
+ * @note 把reference想像成指標會比較容易思考, 譬如 \c a.referenceFrom(b)
+ * \c b.referenceFrom(c) 相當於 \b a指向b原本指的記憶體位置,
+ * \b b指向c原本指的記憶體位置 , 之後更動c時, 只有b會被牽連
*/
- void referenceFrom(Self const& s) {
+ Self const& referenceFrom(Self const& s) {
if (body_ != s.body_) {
- clear(body_);
+ clear();
body_ = s.body_;
- body_->attatch();
+ body_->attach();
}
+ return *this;
}
-
+
+ /*!
+ * @brief 依據給定DuplicateType選擇要呼叫copyFrom還是referenceFrom
+ *
+ * @param [in] s 給定的 \c Self
+ * @param [in] t 給定的 \c DuplicateType
+ * @return *this
+ */
+ Self const& duplicateFrom(Self const& s, DuplicateType t) {
+ switch(t) {
+ case COPY_FROM : return copyFrom(s);
+ case REFERENCE_FROM: return referenceFrom(s);
+ }
+ return *this;
+ }
+
/*!
* @brief 比對兩個 \c Self 是否指向同一個reference
*
@@ -197,10 +239,10 @@ public:
bool same(Self const& s) const {
return (body_ == s.body_);
}
-
+
/*!
* @brief 比對兩個 \c Self 的內容是否一樣
- *
+ *
* @param [in] s 另一個 \c Self
* @return \c true/false 表示兩個內容是否一樣
*
@@ -208,9 +250,9 @@ public:
*/
bool equal(Self const& s) const {
if (same(s) || body_->access() == s.body_->access()) return true;
- return (body_->access()->equal(*(s.body_->access())));
+ return (*body_->access() == *s.body_->access());
}
-
+
/*!
* @brief 以reference作為判斷依據的小於判斷
*
@@ -220,7 +262,7 @@ public:
bool referenceLess(Self const& s) const {
return (body_ < s.body_);
}
-
+
//! @brief 將 \c operator= 給disable掉
void operator=(Self const& a);
};
diff --git a/meowpp/Usage.h b/meowpp/Usage.h
index 4537202..f0d2fc5 100644
--- a/meowpp/Usage.h
+++ b/meowpp/Usage.h
@@ -5,18 +5,14 @@
#include <cstdlib>
+#include <algorithm>
#include <string>
#include <vector>
#include <map>
-#include <algorithm>
-
-extern "C" {
-#include <unistd.h>
-}
namespace meow {
/*!
- * @brief 管理參數設置, 自訂usage document, 分析argc, argv
+ * @brief 管理參數設置, 自訂usage document, 分析argc, argv
*
* \b Usage 是用來分析argc, argv和輸出usage document的class. \n
* argc, argv的部份, 有以下規則
@@ -34,11 +30,10 @@ private:
//! 存 (value, description)
class Value {
private:
- String value_;
+ String value_;
String description_;
public:
- Value() {
- }
+ Value() { }
Value(String const& value, String const& description) {
value_ = value;
description_ = stringReplace(description, "<value>", value);
@@ -70,12 +65,12 @@ private:
Option() {
}
Option(String const& description) {
- has_setup_ = false;
- has_value_ = false;
+ has_setup_ = false;
+ has_value_ = false;
description_ = description;
- must_setup_ = false;
+ must_setup_ = false;
}
- Option(String const& description,
+ Option(String const& description,
String const& type,
String const& default_value,
bool must) {
@@ -110,31 +105,32 @@ private:
bool valueAcceptAdd(String const& value, String const& description) {
if (!has_value_) return false;
if (std::find(values_accept_.begin(), values_accept_.end(),
- Value(value, "")) == values_accept_.end()){
+ Value(value, "")) == values_accept_.end()) {
values_accept_.push_back(Value(value, description));
}
return true;
}
- bool valueAcceptChk(String const& value){
+ bool valueAcceptChk(String const& value) {
if (!has_value_) return false;
- if (values_accept_.size() == 0) return true;
- return (std::find(values_accept_.begin(), values_accept_.end(),
+ return (values_accept_.empty() ||
+ std::find(values_accept_.begin(), values_accept_.end(),
Value(value, "")) != values_accept_.end());
}
bool hasSetup() const{ return has_setup_; }
bool hasValue() const{ return has_value_; }
bool chkSetup() const{ return !(must_setup_ && !has_setup_); }
- String usage(unsigned char opt, bool detail) const {
- String ret(stringPrintf("-%c ", opt));
+ String usage(String opt, bool detail) const {
+ String ret(stringPrintf("%s%s ", (opt.size()>1 ? "--":"-"), opt.c_str()));
if (!detail) {
if (has_value_) ret += value_type_;
if (!must_setup_) ret = "[" + ret + "]";
- } else {
+ }
+ else {
if (has_value_) {
ret += value_type_ + " ";
String default_string("");
- if (value_default_ != "")
+ if (value_default_ != "")
default_string = "defalut='" + value_default_ + "'";
String optional_string("");
if (!must_setup_)
@@ -143,7 +139,8 @@ private:
if (default_string.size() + optional_string.size() > 0) {
if (default_string.size() > 0 && optional_string.size() > 0) {
ret += "(" + optional_string + ", " + default_string + ")";
- } else {
+ }
+ else {
ret += "(" + optional_string + default_string + ")";
}
}
@@ -152,8 +149,7 @@ private:
String accept_string;
for (size_t i = 0; i < values_accept_.size(); i++) {
if (i > 0)
- accept_string += (i + 1 < values_accept_.size()
- ? ", " : " or ");
+ accept_string += (i + 1 < values_accept_.size() ? ", " : " or ");
accept_string += "'" + values_accept_[i].value() + "'";
}
if (accept_string.size() == 0) accept_string = "... (anything)";
@@ -170,12 +166,14 @@ private:
return ret;
}
};
- typedef std::map<unsigned char, Option> Options;
- typedef Options::const_iterator OptionsIterator;
- String name_;
- Options options_;
- Strings usage_begin_;
- Strings usage_end_;
+ typedef std::map<String, Option> Options;
+ typedef Options:: iterator OptionsIterator;
+ typedef Options::const_iterator OptionsIteratorK;
+
+ String name_;
+ Options options_;
+ Strings usage_begin_;
+ Strings usage_end_;
Strings proc_arguments_;
public:
/*!
@@ -216,14 +214,14 @@ public:
* @return \c true/false 表示 \b 是否成功
*/
bool import(Usage const& usage) {
- for (OptionsIterator
+ for (OptionsIteratorK
it = usage.options_.begin(); it != usage.options_.end(); ++it) {
if (options_.find(it->first) != options_.end())
return false;
}
- for (OptionsIterator
+ for (OptionsIteratorK
it = usage.options_.begin(); it != usage.options_.end(); ++it) {
- options_[it->first] = it->second;
+ options_.insert(std::pair<String, Option>(it->first, it->second));
}
for (size_t i = 0; i < usage.usage_begin_.size(); ++i)
usage_begin_.push_back(usage.usage_begin_[i]);
@@ -239,11 +237,12 @@ public:
* @return \c true/false 表 \b 是否成功
*/
bool update(Usage const& usage) {
- for (OptionsIterator
+ for (OptionsIteratorK
it = usage.options_.begin(); it != usage.options_.end(); ++it) {
- if (options_.find(it->first) == options_.end()) continue;
- for(size_t i = 0, I = it->second.values().size(); i < I; i++){
- options_[it->first].valueAdd(it->second.value(i));
+ OptionsIterator my = options_.find(it->first);
+ if (my == options_.end()) continue;
+ for (size_t i = 0, I = it->second.values().size(); i < I; ++i) {
+ my->second.valueAdd(it->second.value(i));
}
}
return true;
@@ -256,9 +255,9 @@ public:
* @param [in] des 即description, 用來解釋這個選項的意義用的
* @return \c true/false 表 \b 是否成功
*/
- bool optionAdd(unsigned char opt, String const& des) {
+ bool optionAdd(String opt, String const& des) {
if (options_.find(opt) != options_.end()) return false;
- options_[opt] = Option(des);
+ options_.insert(std::pair<String, Option>(opt, Option(des)));
return true;
}
@@ -272,12 +271,13 @@ public:
* @param [in] must 表示是否一定要設定
* @return \c true/false 表 \b 是否成功
*/
- bool optionAdd(unsigned char opt, String const& des,
+ bool optionAdd(String opt, String const& des,
String const& val_type,
String const& val_default,
bool must) {
if (options_.find(opt) != options_.end()) return false;
- options_[opt] = Option(des, val_type, val_default, must);
+ options_.insert(std::pair<String, Option>(
+ opt, Option(des, val_type, val_default, must)));
return true;
}
@@ -289,11 +289,10 @@ public:
* @param [in] des 關於此額外選項的說明
* @return \c true/false 表 \b 是否成功
*/
- bool optionValueAcceptAdd(unsigned char opt,
- String const& val,
- String const& des) {
- if (options_.find(opt) == options_.end()) return false;
- return options_[opt].valueAcceptAdd(val, des);
+ bool optionValueAcceptAdd(String opt, String const& val, String const& des) {
+ OptionsIterator o = options_.find(opt);
+ if (o == options_.end()) return false;
+ return o->second.valueAcceptAdd(val, des);
}
/*!
@@ -302,9 +301,9 @@ public:
* @param [in] opt 指定字符
* @return \c true/false 表 \b 是否有設定此選項
*/
- bool hasOptionSetup(unsigned char opt) const {
- return (options_.find(opt) != options_.end() &&
- options_.find(opt)->second.hasSetup());
+ bool hasOptionSetup(String opt) const {
+ OptionsIteratorK o = options_.find(opt);
+ return (o != options_.end() && o->second.hasSetup());
}
/*!
@@ -313,9 +312,10 @@ public:
* @param [in] opt 指定字符
* @return 回傳次數
*/
- size_t optionValuesSize(unsigned char opt) const {
- if(options_.find(opt) == options_.end()) return 0;
- return options_.find(opt)->second.values().size();
+ size_t optionValuesSize(String opt) const {
+ OptionsIteratorK o = options_.find(opt);
+ if (o == options_.end()) return 0;
+ return o->second.values().size();
}
/*!
@@ -325,11 +325,10 @@ public:
* @param [in] index 第幾個
* @return 回傳參數 \b -(opt) 的第 \b index 個額外選項
*/
- String optionValue(unsigned char opt, size_t index) const {
- if (options_.find(opt) == options_.end()) {
- return String();
- }
- return options_.find(opt)->second.value(index);
+ String optionValue(String opt, size_t index) const {
+ OptionsIteratorK o = options_.find(opt);
+ if (o == options_.end()) return String();
+ return o->second.value(index);
}
/*!
@@ -386,16 +385,16 @@ public:
*
* @return \b usage \b string
*/
- String usage() const{
+ String usage() const {
Usage::String out = stringPrintf("USAGE\n %s", name_.c_str());
- for (OptionsIterator
+ for (OptionsIteratorK
it = options_.begin(); it != options_.end(); ++it)
out += " " + it->second.usage(it->first, false);
out += "\n\nDESCRIPTION\n";
for (size_t i = 0; i < usage_begin_.size(); ++i) {
out += " " + usage_begin_[i] + "\n\n";
}
- for (OptionsIterator
+ for (OptionsIteratorK
it = options_.begin(); it != options_.end(); ++it) {
out += it->second.usage(it->first, true);
}
@@ -407,52 +406,65 @@ public:
/*!
* @brief 給定argc, argv, 將各參數設置
- * @param [in] argc,argv
+ * @param [in] argc,argv
* @param [out] errmsg 將錯誤訊息寫到這裡
* (若給定NULL pointer, 則會把錯誤訊息忽略)
* @return \c true/false \b 成功與否 (否的話代表有錯誤的設定值在其中)
*/
- bool arguments(int argc, char** argv, String* errmsg){
- opterr = 0;
- String s;
- OptionsIterator it;
- String zzz;
+ bool arguments(int argc, char** argv, String* errmsg) {
+ String zzz;
String& err = (errmsg == NULL ? zzz : *errmsg);
- for (it = options_.begin(); it != options_.end(); ++it) {
- s += (char)(it->first);
- if (it->second.hasValue()) s += ":";
- }
- bool succ = true;
- for (int opt; (opt = getopt(argc, argv, s.c_str())) != -1; ) {
- if (options_.find(opt) == options_.end()) {
- if(options_.find(optopt) == options_.end()){
- err += stringPrintf("Unknown option '-%c'\n", optopt);
- }else{
- err += stringPrintf("No specify argument to '-%c'\n",
- optopt);
+ for (int i = 0; i < argc; ++i) {
+ if (argv[i][0] == '-') {
+ String opt;
+ if (argv[i][1] == '-') { // long option
+ if (argv[i][2] == '\0' || argv[i][3] == '\0') {
+ err = stringPrintf("Invalid option '%s'", argv[i]);
+ return false;
+ }
+ opt = String(argv[i] + 2);
+ }
+ else { // short option
+ if (argv[i][1] == '\0' || argv[i][2] != '\0') {
+ err = stringPrintf("Invalid option '%s'", argv[i]);
+ return false;
+ }
+ opt = String(argv[i] + 1);
+ }
+ OptionsIterator o = options_.find(opt);
+ if (o == options_.end()) {
+ err = stringPrintf("Unknown option '%s'", argv[i]);
+ return false;
+ }
+ if (o->second.hasValue()) {
+ if (i + 1 >= argc) {
+ err = stringPrintf("Option '%s' need a value", argv[i]);
+ return false;
+ }
+ if (o->second.valueAdd(argv[i + 1]) < 0) {
+ err = stringPrintf("Invalid value '%s' of options '%s'",
+ argv[i + 1], argv[i]);
+ return false;
+ }
+ ++i;
+ }
+ else {
+ o->second.valueAdd("");
}
- succ = false;
- continue;
}
- if (options_[opt].valueAdd(optarg == NULL ? "" : optarg) < 0) {
- err += stringPrintf("Option argument '%s' to '-%c' is not allowed\n"
- , optarg, opt);
- succ = false;
- continue;
+ else {
+ proc_arguments_.push_back(String(argv[i] + (argv[i][0]=='\\' ? 1:0)));
}
}
- for (it = options_.begin(); it != options_.end(); it++) {
+ for (OptionsIteratorK it = options_.begin(); it != options_.end(); ++it) {
if (it->second.chkSetup() == false) {
- err += stringPrintf("No specify argument to '-%c'\n",
- it->first);
- succ = false;
- continue;
+ err += stringPrintf("No specify argument to '%s%s'\n",
+ (it->first.size() > 1 ? "--" : "-"),
+ it->first.c_str());
+ return false;
}
}
- for (int i = optind; i < argc; i++) {
- proc_arguments_.push_back(String(argv[i]));
- }
- return succ;
+ return true;
}
};
diff --git a/meowpp/colors/Color3_Space.h b/meowpp/colors/Color3_Space.h
index 87e215b..94cae39 100644
--- a/meowpp/colors/Color3_Space.h
+++ b/meowpp/colors/Color3_Space.h
@@ -1,18 +1,17 @@
#ifndef colors_Color3_Space_H__
#define colors_Color3_Space_H__
-#include <cstdlib>
-
-#include "../Self.h"
#include "../geo/Vectors.h"
#include "../math/Matrix.h"
#include "../math/utility.h"
+#include <cstdlib>
+
namespace meow {
/*!
* @brief 以三個channel所組成的色彩空間
- *
+ *
* @author cat_leopard
*/
template<class T>
@@ -31,21 +30,14 @@ protected:
Color3_Space(Color3_Space const& b) {
min_ = b.min_;
max_ = b.max_;
- copyFrom(b);
+ val_ = b.val_;
}
-public:
- virtual ~Color3_Space() { }
Color3_Space<T>& copyFrom(Color3_Space<T> const& b) {
val_ = b.val_;
return *this;
}
- template<class T2>
- Color3_Space<T>& copyFrom(Color3_Space<T2> const& b) {
- for (size_t i = 0; i < 3; i++) {
- val(i, ratioMapping((double)b.min(i), (double)b.max(i), (double)b.rgb(i),
- (double)min(i), (double)max(i)));
- }
- }
+public:
+ virtual ~Color3_Space() { }
Vector3D<T> const& minV() const { return min_; }
Vector3D<T> const& maxV() const { return max_; }
Vector3D<T> const& valV() const { return val_; }
diff --git a/meowpp/colors/HSL_Space.h b/meowpp/colors/HSL_Space.h
index f70eab1..52c218f 100644
--- a/meowpp/colors/HSL_Space.h
+++ b/meowpp/colors/HSL_Space.h
@@ -2,10 +2,10 @@
#define colors_HSL_Space_H__
#include "Color3_Space.h"
-#include "../geo/Vectors.h"
-
#include "RGB_Space.h"
#include "YUV_Space.h"
+
+#include "../geo/Vectors.h"
#include "../math/utility.h"
#include <cstdlib>
@@ -16,7 +16,7 @@ namespace meow {
* @brief 以浮點數\b Y(亮度), \b U(色度), \b V(濃度) 三個值所組成的色彩空間
*
* 其中範圍都介於0.0~1.0之間
- *
+ *
* @author cat_leopard
*/
class HSLf_Space: public Color3_Space<double> {
diff --git a/meowpp/colors/HSV_Space.h b/meowpp/colors/HSV_Space.h
index 96ba33c..eb8971b 100644
--- a/meowpp/colors/HSV_Space.h
+++ b/meowpp/colors/HSV_Space.h
@@ -17,7 +17,7 @@ namespace meow {
* @brief 以浮點數\b Y(亮度), \b U(色度), \b V(濃度) 三個值所組成的色彩空間
*
* 其中範圍都介於0.0~1.0之間
- *
+ *
* @author cat_leopard
*/
class HSVf_Space: public Color3_Space<double> {
diff --git a/meowpp/colors/RGB_Space.h b/meowpp/colors/RGB_Space.h
index ea04598..2523d8b 100644
--- a/meowpp/colors/RGB_Space.h
+++ b/meowpp/colors/RGB_Space.h
@@ -13,7 +13,7 @@ namespace meow {
* @brief 以整數 \b Red, \b Green, \b Blue 三個值所組成的色彩空間
*
* 其中範圍都介於0~255之間
- *
+ *
* @author cat_leopard
*/
class RGBi_Space: public Color3_Space<int> {
@@ -80,7 +80,7 @@ public:
* @brief 以浮點數\b Red, \b Green, \b Blue 三個值所組成的色彩空間
*
* 其中範圍都介於0.0~1.0之間
- *
+ *
* @author cat_leopard
*/
class RGBf_Space: public Color3_Space<double> {
diff --git a/meowpp/colors/YUV_Space.h b/meowpp/colors/YUV_Space.h
index 651caaf..8390034 100644
--- a/meowpp/colors/YUV_Space.h
+++ b/meowpp/colors/YUV_Space.h
@@ -15,7 +15,7 @@ namespace meow {
* @brief 以浮點數\b Y(亮度), \b U(色度), \b V(濃度) 三個值所組成的色彩空間
*
* 其中範圍都介於0.0~1.0之間
- *
+ *
* @author cat_leopard
*/
class YUVf_Space: public Color3_Space<double> {
diff --git a/meowpp/dsa/DisjointSet.h b/meowpp/dsa/DisjointSet.h
index 4575835..9be9c35 100644
--- a/meowpp/dsa/DisjointSet.h
+++ b/meowpp/dsa/DisjointSet.h
@@ -13,11 +13,11 @@ namespace meow {
* 相關資料可參考
* <a href="http://www.csie.ntnu.edu.tw/~u91029/DisjointSets.html">
* 演算法筆記
- * </a>
+ * </a>
*
* @note
* - 時間複雜度 \b 非常快 表示它真的算的超級快, 可以視為常數時間
- * - 預設值所有 \a number 所在的集合的編號就是 \a number 本身,
+ * - 預設值所有 \a number 所在的集合的編號就是 \a number 本身,
* 即沒有任兩個數在同一個set裡面
*
* @author cat_leopard
@@ -119,7 +119,7 @@ public:
*
* 將 \a number1 所在的集合 跟 \b number2 所在的集合 \b 合併,
* 並回傳合併後新的集合的編號. \n
- * 時間複雜度\b 非常快
+ * 時間複雜度\b 非常快
*
* @param [in] a 即上述\a number1
* @param [in] b 即上述\a number2
diff --git a/meowpp/dsa/HashTable.h b/meowpp/dsa/HashTable.h
index 9171c72..5f343f5 100644
--- a/meowpp/dsa/HashTable.h
+++ b/meowpp/dsa/HashTable.h
@@ -25,7 +25,7 @@ public:
/*!
* @brief constructor
- *
+ *
* 設定table size, hash function
*/
HashTableList(size_t size, HashFunc const& func): table_(size), func_(func) {
@@ -193,18 +193,18 @@ public:
}
return ret;
}
-
+
//! @brief same as \c copyFrom(h)
HashTableList& operator=(HashTableList const& h) {
return copyFrom(h);
}
-
+
//! @brief same as \c add(h)
HashTableList& operator+=(HashTableList const& h) {
add(h);
return *this;
}
-
+
//! @brief same as \c del(h)
HashTableList& operator-=(HashTableList const& h) {
del(h);
diff --git a/meowpp/dsa/KD_Tree.h b/meowpp/dsa/KD_Tree.h
index 05f9b1b..e3bd73b 100644
--- a/meowpp/dsa/KD_Tree.h
+++ b/meowpp/dsa/KD_Tree.h
@@ -43,12 +43,12 @@ private:
Vector vector_;
ssize_t lChild_;
ssize_t rChild_;
-
+
Node(Vector v, ssize_t l, ssize_t r): vector_(v), lChild_(l), rChild_(r){
}
};
typedef std::vector<Node> Nodes;
-
+
class Sorter {
private:
Nodes const* nodes_;
@@ -187,16 +187,16 @@ private:
public:
//! Custom Type: Vectors is \c std::vector<Vector>
typedef typename std::vector<Vector> Vectors;
-
+
//! @brief constructor, with dimension = 1
KD_Tree(): kNIL_(-1), root_(kNIL_), needRebuild_(false), dimension_(1) {
}
-
+
//! @brief constructor, given dimension
KD_Tree(size_t dimension):
kNIL_(-1), root_(kNIL_), needRebuild_(false), dimension_(dimension) {
}
-
+
//! @brief destructor
~KD_Tree() {
}
@@ -254,7 +254,7 @@ public:
}
/*!
- * @brief 查找
+ * @brief 查找
*
* 於set中找尋距離指定向量前 \c i 近的向量, 並依照由近而遠的順序排序.
* 如果有兩個向量\c v1,v2 距離一樣, 且 \c cmp 為\c true , 則直接依照
diff --git a/meowpp/dsa/MergeableHeap.h b/meowpp/dsa/MergeableHeap.h
index af7ad75..0967edd 100644
--- a/meowpp/dsa/MergeableHeap.h
+++ b/meowpp/dsa/MergeableHeap.h
@@ -7,7 +7,7 @@
namespace meow {
/*!
- * @brief
+ * @brief
*
* 一個用 \b 左偏樹 實作的 \c Maximum-Heap , 除了原本heap有的功能外,
* 還支援 \c merge 功能
diff --git a/meowpp/dsa/SegmentTree.h b/meowpp/dsa/SegmentTree.h
index b2fa749..64eab4c 100644
--- a/meowpp/dsa/SegmentTree.h
+++ b/meowpp/dsa/SegmentTree.h
@@ -37,7 +37,7 @@ namespace meow {
* - 若要維護區間最總和, 即每次都是詢問範圍 `[a, b]` 的總和, 則可以定義
* - \c operator+ 為 '回傳相加值'
* - \c operator* 為 '回傳(*this) * n'
- * - \c operator| 為 '回傳相加值'
+ * - \c operator| 為 '回傳相加值'
*
* @author cat_leopard
*/
@@ -140,7 +140,7 @@ public:
nodes_ = b.nodes_;
return *this;
}
-
+
/*!
* @brief 回傳size
*/
@@ -182,7 +182,7 @@ public:
if (rangeCorrect(&first, &last) == false) return ;
update(first, last, 0, size_ - 1, 0, delta, false);
}
-
+
//! @brief same as copyFrom(b)
SegmentTree& operator=(SegmentTree const& b) {
return copyFrom(b);
diff --git a/meowpp/dsa/SplayTree.h b/meowpp/dsa/SplayTree.h
index 5e9fb3c..40a2a0b 100644
--- a/meowpp/dsa/SplayTree.h
+++ b/meowpp/dsa/SplayTree.h
@@ -43,7 +43,7 @@ private:
size_t size_;
Node* parent_;
Node* child_[2];
-
+
Node(Key const& key, Value const& value):
key_(key), keyOffset_(0), value_(value) {
size_ = 1;
@@ -373,7 +373,7 @@ public:
/*!
* @brief 回傳一個指向NULL的Element,
- *
+ *
* 以供 \c find ,\c order ,\c first ,\c last 等判斷是否有找到相對應的Element
*/
Element end() const {
@@ -404,7 +404,7 @@ public:
/*!
* @brief 插入一組\c (Key ---> \c Value)
- *
+ *
* 檢查是否已有Element的Key 為 \c key, 若有則回傳 \c false , 否則將
* 一個 (Key -> Value) = (\c key -> \c value)的Element加入, 並回傳 \c true
*/
@@ -504,7 +504,7 @@ public:
/*!
* @brief 合併
*
- * 檢查是否自己中的 Key 都小於 \c tree2 中的Key, 或是完全相反,
+ * 檢查是否自己中的 Key 都小於 \c tree2 中的Key, 或是完全相反,
* 是的話把 \c tree2`中的 Element 都搬到自己這,
* 同時清空 \c tree2 , 否則回傳 \c false
*/
@@ -522,7 +522,7 @@ public:
tree2->root_ = NULL;
return true;
}
-
+
/*!
* @brief 就像\c stl::map::operator[]
*
@@ -578,7 +578,7 @@ private:
size_t size_;
Node* parent_;
Node* child_[2];
-
+
Node(Key const& key, Value const& value):
valueOffset_(0), range_(value),
key_(key), keyOffset_(0), value_(value) {
@@ -932,7 +932,7 @@ public:
/*!
* @brief 回傳一個指向NULL的Element,
- *
+ *
* 以供 \c find ,\c order ,\c first ,\c last 等判斷是否有找到相對應的Element
*/
Element end() const {
@@ -952,7 +952,7 @@ public:
bool empty() const{
return (size() == 0);
}
-
+
/*!
* @brief 查找
*
@@ -992,7 +992,7 @@ public:
/*!
* @brief 插入一組\c (Key ---> \c Value)
- *
+ *
* 檢查是否已有Element的Key 為 \c key, 若有則回傳 \c false , 否則將
* 一個 (Key -> Value) = (\c key -> \c value)的Element加入, 並回傳 \c true
*/
@@ -1110,7 +1110,7 @@ public:
/*!
* @brief 合併
*
- * 檢查是否自己中的 Key 都小於 \c tree2 中的Key, 或是完全相反,
+ * 檢查是否自己中的 Key 都小於 \c tree2 中的Key, 或是完全相反,
* 是的話把 \c tree2`中的 Element 都搬到自己這,
* 同時清空 \c tree2 , 否則回傳 \c false
*/
@@ -1128,7 +1128,7 @@ public:
tree2->root_ = NULL;
return true;
}
-
+
/*!
* @brief 就像\c stl::map::operator[]
*
diff --git a/meowpp/dsa/VP_Tree.h b/meowpp/dsa/VP_Tree.h
index 75186e6..9c85930 100644
--- a/meowpp/dsa/VP_Tree.h
+++ b/meowpp/dsa/VP_Tree.h
@@ -15,13 +15,13 @@ namespace meow {
/*!
* @brief 跟KD_Tree很像歐
*
- * \c VP_Tree 用來維護由 \b N個K維度向量所成的集合 ,
+ * \c VP_Tree 用來維護由 \b N個K維度向量所成的集合 ,
* 並可於該set中查找 \b 前i個離給定向量最接近的向量* .
- * 不像 \c KD_Tree 二分樹每次都選擇一個維度去分, 分成小的跟大的,
+ * 不像 \c KD_Tree 二分樹每次都選擇一個維度去分, 分成小的跟大的,
* \c VP_Tree 每次選一個點, 將資料分成 離這個點近的, 跟離這個點遠的.
* 至於怎麼選呢...., 嘛還沒研究, 先random
*
- * 參考資料連結:
+ * 參考資料連結:
* - http://stevehanov.ca/blog/index.php?id=130
* - http://pnylab.com/pny/papers/vptree/vptree
*
@@ -33,7 +33,7 @@ namespace meow {
* |const | Vector|operator[] |(size_t \c n) | Scalar | 取得第\c n 維度量 |
* |const | Vector|operator= |(Vector \c v) | Vector& | copy operator |
* |const | Vector|operator< |(Vector \c v) | bool | 權重比較 |
- * |const | Scalar| 'Scalar' |(int \c n) | Scalar | 建構子,
+ * |const | Scalar| 'Scalar' |(int \c n) | Scalar | 建構子,
* 其中一定\c n=0or4 |
* |const | Scalar|operator* |(Scalar \c s) | Scalar | 相乘 |
* |const | Scalar|operator+ |(Scalar \c s) | Scalar | 相加 |
@@ -87,12 +87,12 @@ private:
};
typedef std::vector<Answer> AnswerV;
typedef std::priority_queue<Answer, AnswerV, AnswerCompare> Answers;
-
+
Vectors vectors_;
Node* root_;
size_t dimension_;
bool needRebuild_;
-
+
Scalar distance2(Vector const& v1, Vector const& v2) const {
Scalar ret(0);
for (size_t i = 0; i < dimension_; i++) ret += squ(v1[i] - v2[i]);
@@ -212,7 +212,7 @@ public:
VP_Tree(): root_(NULL), vectors_(0), dimension_(1), needRebuild_(false){
reset(0);
}
-
+
//! @brief constructor, 複製資料
VP_Tree(VP_Tree const& tree2):
vectors_(tree2.vectors_),
@@ -220,7 +220,7 @@ public:
dimension_(tree2.dimension_),
needRebuild_(tree2.needRebuild_) {
}
-
+
//! @brief constructor, 給定dimension
VP_Tree(size_t dimension):
vectors_(0),
@@ -229,12 +229,12 @@ public:
needRebuild_(false) {
reset(dimension);
}
-
+
//! @brief destructor
~VP_Tree() {
clear(root_);
}
-
+
/*!
* @brief 複製資料
*/
@@ -287,7 +287,7 @@ public:
}
/*!
- * @brief 查找
+ * @brief 查找
*
* 於set中找尋距離指定向量前 \c i 近的向量, 並依照由近而遠的順序排序.
* 如果有兩個向量\c v1,v2 距離一樣, 且 \c cmp 為\c true , 則直接依照
@@ -325,7 +325,7 @@ public:
dimension_ = std::max((size_t)1, dimension);
return dimension_;
}
-
+
//! @brief same as \c copyFrom(tree2)
VP_Tree& operator=(VP_Tree const& tree2) {
return copyFrom(tree2);
diff --git a/meowpp/geo/Vectors.h b/meowpp/geo/Vectors.h
index 8cdafc9..0f09ee6 100644
--- a/meowpp/geo/Vectors.h
+++ b/meowpp/geo/Vectors.h
@@ -22,165 +22,165 @@ public:
//! @brief consturctor (0, 0)
Vector2D(): x_(0), y_(0) {
}
-
+
//! @brief consturctor (from another Vector2D)
Vector2D(Vector2D const& v): x_(v.x_), y_(v.y_) {
}
-
+
//! @brief constructor (s, s)
Vector2D(Scalar const& s): x_(s), y_(s) {
}
-
+
//! @brief constructor (sx, sy)
Vector2D(Scalar const& sx, Scalar const& sy): x_(sx), y_(sy) {
}
-
+
//! @brief constructor (from another Vector)
Vector2D(Vector<Scalar> const& v): x_(v(0)), y_(v(1)) {
}
-
+
//! @brief constructor (from another Vector, i-th)
Vector2D(Vector<Scalar> const& v, size_t i): x_(v(i)), y_(v(i + 1)) {
}
-
+
//! @brief destructor
~Vector2D() {
}
-
+
//! @brief copy
Vector2D& copyFrom(Vector2D const& v) {
return xy(v.x(), v.y());
}
-
+
//! @brief access x
Scalar const& x() const {
return x_;
}
-
+
//! @brief access x with non constant reference
Scalar& xGet() {
return x_;
}
-
+
//! @brief access y with non constant reference
Scalar& yGet() {
return y_;
}
-
+
//! @brief access y
Scalar const& y() const {
return y_;
}
-
+
//! @brief modify x
Scalar const& x(Scalar const& s) {
x_ = s;
return x();
}
-
+
//! @brief modify y
Scalar const& y(Scalar const& s) {
y_ = s;
return y();
}
-
+
//! @brief modify x and y
Vector2D& xy(Scalar const& sx, Scalar const& sy){
x(sx);
y(sy);
return *this;
}
-
+
//! @brief return \a +(*this)
Vector2D positive() const {
return *this;
}
-
+
//! @brief return \a -(*this)
Vector2D negative() const {
return Vector2D(-x(), -y());
}
-
+
//! @brief return \a count-clockwise \a rotate \a 90 \a degree of itself
Vector2D right()const{
return Vector2D(-y(), x());
}
-
+
//! @brief return \a (*this)+v
Vector2D add(Vector2D const& v) const {
return Vector2D(x() + v.x(), y() + v.y());
}
-
+
//! @brief Let itself add v
Vector2D& added(Vector2D const& v) {
return xy(x() + v.x(), y() + v.y());
}
-
+
//! @brief return \a (*this)-v
Vector2D sub(Vector2D const& v) const {
return Vector2D(x() - v.x(), y() - v.y());
}
-
+
//! @brief Let itself substract v
Vector2D& subed(Vector2D const& v) {
return xy(x() - v.x(), y() - v.y());
}
-
+
//! @brief return \a (*this)*s , where s is a scalar
Vector2D mul(Scalar const& s) const {
return Vector2D(x() * s, y() * s);
}
-
+
//! @brief Let itself mulitple s
Vector2D& muled(Scalar const& s) {
return xy(x() * s, y() * s);
}
-
+
//! @brief return \a (*this)/s , where s is a scalar
Vector2D div(Scalar const& s) const {
return Vector2D(x() / s, y() / s);
}
-
+
//! @brief Let itself divide s
Vector2D& dived(Scalar const& s) {
return xy(x() / s, y() / s);
}
-
+
//! @brief same as dot(v)
Scalar mul(Vector2D const& v) const {
return dot(v);
}
-
+
//! @brief dot
Scalar dot(Vector2D const& v) const {
return x() * v.x() + y() * v.y();
}
-
+
//! @brief cross
Scalar cross(Vector2D const& v) const {
return x() * v.y() - y() * v.x();
}
-
+
//! @brief sqrt of length2
Scalar length() const {
return Scalar(sqrt(double(length2())));
}
-
+
//! @brief same as \a dot(*this)
Scalar length2() const {
return dot(*this);
}
-
+
//! @brief return normalize form of itself
Vector2D normalize() const {
return div(length());
}
-
+
//! @brief normalize itself
Vector2D& normalized() {
return dived(length());
}
-
+
//! @brief return rotate \a theta degree of itself
Vector2D rotate(Scalar const& theta) const {
Scalar cs(cos(-double(theta)));
@@ -188,22 +188,22 @@ public:
Vector2D<Scalar> new_x(cs, sn);
return Vector2D(new_x.dot(*this), new_x.cross(*this));
}
-
+
//! @brief Let itself rotate \a theta degree
Vector2D& rotated(Scalar const& theta) {
return copyFrom(rotate(theta));
}
-
+
//! @brief return reflect from given vector \a v
Vector2D reflect(Vector2D const& v) const {
return v.mul(v.dot(*this) * 2 / v.length2()).sub(*this);
}
-
+
//! @brief reflect itself given vector \a v
Vector2D& reflected(Vector2D const& v) {
return copyFrom(reflecte(v));
}
-
+
//! @brief return a 2x1 matrix form of itself
Matrix<Scalar> matrix() const {
static Matrix<Scalar> ret(2, 1, Scalar(0));
@@ -211,7 +211,7 @@ public:
ret(1, 0, y());
return ret;
}
-
+
//! @brief return a 3x1 matrix form of itself
Matrix<Scalar> matrix(Scalar const& homo) const {
static Matrix<Scalar> ret(3, 1, Scalar(0));
@@ -220,11 +220,11 @@ public:
ret(2, 0, homo);
return ret;
}
-
+
Scalar const& operator()(size_t n) const {
return (n == 0 ? x() : y());
}
-
+
Vector2D& operator()(Scalar const& sx, Scalar const& sy) {
return xy(sx, sy);
}
@@ -259,86 +259,86 @@ public:
//! @brief consturctor (0, 0)
Vector3D(): x_(0), y_(0), z_(0) {
}
-
+
//! @brief consturctor (from another Vector3D)
Vector3D(Vector3D const& v): x_(v.x_), y_(v.y_), z_(v.z_) {
}
-
+
//! @brief constructor (s, s)
Vector3D(Scalar const& s): x_(s), y_(s), z_(s) {
}
-
+
//! @brief constructor (sx, sy)
Vector3D(Scalar const& sx,
Scalar const& sy,
Scalar const& sz): x_(sx), y_(sy), z_(sz) {
}
-
+
//! @brief constructor (from another Vector)
Vector3D(Vector<Scalar> const& v): x_(v(0)), y_(v(1)), z_(v(2)) {
}
-
+
//! @brief constructor (from another Vector, i-th)
Vector3D(Vector<Scalar> const& v, size_t i): x_(v(i)), y_(v(i+1)), z_(v(i+2)){
}
-
+
//! @brief destructor
~Vector3D(){
}
-
+
//! @brief copy
Vector3D& copyFrom(Vector3D const& v){
return xyz(v.x(), v.y(), v.z());
}
-
+
//! @brief access x
Scalar const& x() const{
return x_;
}
-
+
//! @brief access y
Scalar const& y() const{
return y_;
}
-
+
//! @brief access z
Scalar const& z() const{
return z_;
}
-
+
//! @brief access x with non constant reference
Scalar& xGet() {
return x_;
}
-
+
//! @brief access y with non constant reference
Scalar& yGet() {
return y_;
}
-
+
//! @brief access z with non constant reference
Scalar& zGet() {
return z_;
}
-
+
//! @brief modify x
Scalar const& x(Scalar const& s) {
x_ = s;
return x();
}
-
+
//! @brief modify y
Scalar const& y(Scalar const& s) {
y_ = s;
return y();
}
-
+
//! @brief modify z
Scalar const& z(Scalar const& s) {
z_ = s;
return z();
}
-
+
//! @brief modify x and y
Vector3D& xyz(Scalar const& sx, Scalar const& sy, Scalar const& sz) {
x(sx);
@@ -346,99 +346,99 @@ public:
z(sz);
return *this;
}
-
+
//! @brief return \a +(*this)
Vector3D positive() const {
return *this;
}
-
+
//! @brief return \a -(*this)
Vector3D negative() const {
return Vector3D(-x(), -y(), -z());
}
-
+
//! @brief return \a (*this)+v
Vector3D add(Vector3D const& v) const {
return Vector3D(x() + v.x(), y() + v.y(), z() + v.z());
}
-
+
//! @brief Let itself add v
Vector3D& added(Vector3D const& v) {
return xyz(x() + v.x(), y() + v.y(), z() + v.z());
}
-
+
//! @brief return \a (*this)-v
Vector3D sub(Vector3D const& v) const {
return Vector3D(x() - v.x(), y() - v.y(), z() - v.z());
}
-
+
//! @brief Let itself substract v
Vector3D& subed(Vector3D const& v) {
return xyz(x() - v.x(), y() - v.y(), z() - v.z());
}
-
+
//! @brief return \a (*this)*s , where s is a scalar
Vector3D mul(Scalar const& s) const {
return Vector3D(x() * s, y() * s, z() * s);
}
-
+
//! @brief Let itself mulitple s
Vector3D& muled(Scalar const& s) {
return xyz(x() * s, y() * s, z() * s);
}
-
+
//! @brief return \a (*this)/s , where s is a scalar
Vector3D div(Scalar const& s) const {
return Vector3D(x() / s, y() / s, z() / s);
}
-
+
//! @brief Let itself divide s
Vector3D& dived(Scalar const& s) {
return xyz(x() / s, y() / s, z() / s);
}
-
+
//! @brief same as dot(v)
Scalar mul(Vector3D const& v) const {
return dot(v);
}
-
+
//! @brief dot
Scalar dot(Vector3D const& v) const {
return x() * v.x() + y() * v.y() + z() * v.z();
}
-
+
//! @brief cross
Vector3D cross(Vector3D const& v) const {
return Vector3D(y() * v.z() - z() * v.y(),
z() * v.x() - x() * v.z(),
x() * v.y() - y() * v.x());
}
-
+
//! @brief crossed
Vector3D& crossed(Vector3D const& v) {
return copyFrom(cross(v));
}
-
+
//! @brief sqrt of length2
Scalar length() const {
return Scalar(sqrt(double(length2())));
}
-
+
//! @brief same as \a dot(*this)
Scalar length2() const {
return dot(*this);
}
-
+
//! @brief return normalize form of itself
Vector3D normalize() const {
return div(length());
}
-
+
//! @brief normalize itself
Vector3D& normalized() {
return dived(length());
}
-
+
//! @brief return rotate \a theta degree by \a axis of itself
Vector3D rotate(Vector3D const& axis, double theta) const {
Vector3D a(axis.normalize());
@@ -446,22 +446,22 @@ public:
Vector3D yy(a.cross(*this).mul(sin(theta)));
return a.mul(a.dot(*this)).add(xx).add(yy);
}
-
+
//! @brief Let itself rotate \a theta degree
Vector3D& rotated(Vector3D const& axis, double theta) {
return copyFrom(rotate(axis, theta));
}
-
+
//! @brief return reflect from given vector \a v
Vector3D reflect(Vector3D const& v) const {
return v.mul(v.dot(*this) * 2 / v.length2()).sub(*this);
}
-
+
//! @brief reflect itself given vector \a v
Vector3D& reflected(Vector3D const& v) {
return copyFrom(reflecte(v));
}
-
+
//! @brief return a 3x1 matrix form of itself
Matrix<Scalar> matrix() const {
static Matrix<Scalar> ret(3, 1, Scalar(0));
@@ -470,7 +470,7 @@ public:
ret(2, 0, z());
return ret;
}
-
+
//! @brief return a 3x1 matrix form of itself
Matrix<Scalar> matrix(Scalar const& homo) const {
static Matrix<Scalar> ret(4, 1, Scalar(0));
@@ -480,11 +480,11 @@ public:
ret(3, 0, homo);
return ret;
}
-
+
Scalar const& operator()(size_t n) const {
return (n == 0 ? x() : (n == 1 ? y() : z()));
}
-
+
Vector3D& operator()(Scalar const& sx, Scalar const& sy, Scalar const& sz) {
return xyz(sx, sy, sz);
}
@@ -497,7 +497,7 @@ public:
Vector3D operator*(Scalar const& s) const { return mul(s); }
Vector3D operator/(Scalar const& s) const { return div(s); }
Scalar operator*(Vector3D const& v) const { return mul(v); }
-
+
Vector3D& operator=(Vector3D const& v) { return copyFrom(v); }
Vector3D& operator+=(Vector3D const& v) { return added(v); }
Vector3D& operator-=(Vector3D const& v) { return subed(v); }
diff --git a/meowpp/gra/Bitmap.h b/meowpp/gra/Bitmap.h
index c4ed4e0..59136c2 100644
--- a/meowpp/gra/Bitmap.h
+++ b/meowpp/gra/Bitmap.h
@@ -1,9 +1,6 @@
#ifndef gra_Bitmap_H__
#define gra_Bitmap_H__
-
-#include "../Self.h"
-
#include "../math/utility.h"
#include "../math/Matrix.h"
@@ -15,7 +12,7 @@
#include <typeinfo>
#include <cstdlib>
-namespace meow{
+namespace meow {
/*!
* @brief 二維點陣資料
@@ -26,7 +23,8 @@ template<class Pixel>
class Bitmap: public ObjBase {
private:
Matrix<Pixel> matrix_;
- //
+
+ //! 回傳高斯模糊的權重
static std::vector<double> gaussianFactor1(double sigma) {
double sigma2 = squ(sigma);
size_t width = std::max(ceil((double)(sigma * 2)), 0.0);
@@ -38,6 +36,8 @@ private:
factor[width] = 1.0;
return factor;
}
+
+ //! 回傳gradiance的權重
static std::vector<double> gradianceFactor1(double sigma) {
double sigma2 = squ(sigma), ss = sigma * 2;
size_t width = std::max(ceil(ss), 1.0);
@@ -49,6 +49,8 @@ private:
factor[width] = 0.0;
return factor;
}
+
+ //! 針對某一方向用某種權重模糊
Bitmap xyBlur(std::vector<double> const& factor,
ssize_t dx, ssize_t dy) const {
Bitmap ret(*this);
@@ -128,7 +130,7 @@ public:
void reset(size_t h, size_t w, Pixel const& p) {
matrix_.reset(h, w, p);
}
-
+
/*!
* @brief 清除資料, 寬高階規零
*/
@@ -233,6 +235,28 @@ public:
}
/*!
+ * @brief 回傳矩陣形式
+ */
+ Matrix<Pixel> const& matrix() const {
+ return matrix_;
+ }
+
+ /*!
+ * @brief 回傳矩陣形式 (non-constant form)
+ */
+ Matrix<Pixel>& matrixGet() {
+ return matrix_;
+ }
+
+ /*!
+ * @brief 直接設定
+ */
+ Matrix<Pixel> const& matrix(Matrix<Pixel> const& p) {
+ matrix_.copyFrom(p);
+ return matrix();
+ }
+
+ /*!
* @brief 回傳高斯模糊
*
* @param [in] radiusY 高斯模糊的Y軸方向的sigma
@@ -278,7 +302,7 @@ public:
Bitmap<Pixel>& gradiancedX(double radiusY, double radiusX) {
return copyFrom(gradianceX(radiusY, radiusX));
}
-
+
/*!
* @brief 回傳對y偏微分
*
@@ -322,48 +346,42 @@ public:
Pixel const& operator()(size_t y, size_t x, Pixel const& p) const {
return pixel(y, x, p);
}
-
+
/*! @brief 將資料寫入檔案
*
* @note 未完成, 輸入參數 fg 無用
*/
bool write(FILE* f, bool bin, unsigned int fg) const {
- size_t w = width(), h = height();
+ if (fg & 1)
+ return false;
if (bin) {
- if (fwrite(&h, sizeof(size_t), 1, f) < 1) return false;
- if (fwrite(&w, sizeof(size_t), 1, f) < 1) return false;
+ long tmp;
+ if (fwrite(&(tmp = matrix_.cols()), sizeof(tmp), 1, f) < 1) return false;
+ if (fwrite(&(tmp = matrix_.rows()), sizeof(tmp), 1, f) < 1) return false;
}
else {
- if (fprintf(f, "%lu %lu\n", h, w) < 2) return false;
- }
- if (fg) {
- // TODO
- return false;
+ if (fprintf(f, "%ld %ld\n", (long)matrix_.cols(), (long)matrix_.rows())
+ < 2) return false;
}
return true;
- //return propertyWrite(__f, __bin, __fg);
}
-
+
/*! @brief 將資料讀入
*
* @note 未完成, 輸入參數 fg 無用
*/
bool read(FILE* f, bool bin, unsigned int fg) {
- size_t w, h;
- if (bin) {
- if (fread(&h, sizeof(size_t), 1, f) < 1) return false;
- if (fread(&w, sizeof(size_t), 1, f) < 1) return false;
- }
- else {
- if (fscanf(f, "%lu %lu\n", &h, &w) < 2) return false;
- }
- if (fg) {
- // TODO
+ if (fg & 1)
return false;
+ long tmp1, tmp2;
+ if (bin) {
+ if (fread(&tmp1, sizeof(tmp1), 1, f) < 1) return false;
+ if (fread(&tmp2, sizeof(tmp2), 1, f) < 1) return false;
}
else {
- reset(h, w, Pixel(0));
+ if (fscanf(f, "%ld %ld", &tmp1, &tmp2) < 2) return false;
}
+ matrix_.size(tmp1, tmp2, Pixel(0));
return true;
}
@@ -374,7 +392,7 @@ public:
ObjBase* create() const {
return new Bitmap();
}
-
+
/*! @brief 複製資料
*
* 輸入型別是 \c ObjBase \c const*
@@ -387,16 +405,15 @@ public:
ObjBase* copyFrom(ObjBase const* b) {
return &(copyFrom(*(Bitmap*)b));
}
-
+
/*! @brief 回傳class的type
*
* @return \c char \c const\c * 形式的typename
*/
char const* ctype() const{
- static char const* ptr = typeid(*this).name();
- return ptr;
+ return typeid(*this).name();
}
-
+
/*! @brief 回傳class的type
*
* @return \c std::string 形式的typename
@@ -406,6 +423,6 @@ public:
}
};
-}
+} // meow
#endif // gra_Bitmap_H__
diff --git a/meowpp/gra/BundleAdjustment.h b/meowpp/gra/BundleAdjustment.h
new file mode 100644
index 0000000..9dd01b7
--- /dev/null
+++ b/meowpp/gra/BundleAdjustment.h
@@ -0,0 +1,54 @@
+#ifndef BundleAdjustment_H__
+#define BundleAdjustment_H__
+
+#include "Eye.h"
+
+#include "../oo/ObjBase.h"
+
+namespace meow {
+
+enum SceneInfoFlags {
+ CAN_OFFSET = 0x01,
+ CAN_ROTATE = 0x02,
+ CAN_ZOOM = 0x04
+};
+
+template<class Pixel>
+struct SceneInfo {
+ Eye<Pixel>* eye;
+ unsigned long flag;
+
+ SceneInfo(): eye(NULL), flag(0) {
+ }
+
+ SceneInfo(Eye<Pixel>* e, unsigned long f): eye(e), flag(f) {
+ }
+
+ SceneInfo(SceneInfo const& si): eye(si.eye), flag(si.flag) {
+ }
+
+ ~SceneInfo() {
+ }
+};
+
+template<class Pixel>
+class BundleAdjustment: public ObjBase {
+protected:
+ BundleAdjustment() {
+ }
+public:
+ virtual ~BundleAdjustment() {
+ }
+
+ virtual bool adjustEye(std::vector<SceneInfo<Pixel> >* seq) const {
+ return false;
+ }
+
+ virtual bool adjustFixedPoint(std::vector<SceneInfo<Pixel> >* seq) const {
+ return false;
+ }
+};
+
+} // meow
+
+#endif // BundleAdjustment_H__
diff --git a/meowpp/gra/BundleAdjustment_LM.h b/meowpp/gra/BundleAdjustment_LM.h
new file mode 100644
index 0000000..7a86666
--- /dev/null
+++ b/meowpp/gra/BundleAdjustment_LM.h
@@ -0,0 +1,375 @@
+#ifndef BundleAdjustment_LM_H__
+#define BundleAdjustment_LM_H__
+
+#include "Eye.h"
+
+#include "BundleAdjustment.h"
+
+#include "../math/methods.h"
+#include "../math/Vector.h"
+#include "../math/Matrix.h"
+#include "../math/utility.h"
+
+#include "../oo/ObjBase.h"
+
+#include <algorithm>
+
+namespace meow {
+
+template<class Pixel>
+class BundleAdjustment_LM: public BundleAdjustment<Pixel> {
+private:
+ struct MatchPair {
+ size_t from_i;
+ Matrix<double> from_m;
+ size_t to_i;
+ Matrix<double> to_m;
+ };
+
+ class NoOffsetController {
+ private:
+ std::vector<MatchPair >* pairs_;
+ std::vector<Rotation3D <double> >* rot_;
+ std::vector<PhotoProjection<double> >* pho_;
+ BallProjection<double> bll_;
+ bool flag;
+ public:
+ NoOffsetController(std::vector<MatchPair >* pairs,
+ std::vector<Rotation3D<double> >* rot,
+ std::vector<PhotoProjection<double> >* pho,
+ bool fg):
+ pairs_(pairs), rot_(rot), pho_(pho), bll_(3.0, 1.0), flag(fg) {
+ }
+ Vector<double> init() {
+ if (flag == false) {
+ Vector<double> v(4, 0.0);
+ int i = (*pho_).size() - 1, n = 0;
+ v.entry(n++, (*pho_)[i].focal());
+ v.entry(n++, (*rot_)[i].theta(0));
+ v.entry(n++, (*rot_)[i].theta(1));
+ v.entry(n++, (*rot_)[i].theta(2));
+ return v;
+ }
+ Vector<double> v((*rot_).size() * 4, 0.0);
+ for (size_t n = 0, i = 0, I = (*rot_).size(); i < I; ++i) {
+ v.entry(n++, (*pho_)[i].focal());
+ v.entry(n++, (*rot_)[i].theta(0));
+ v.entry(n++, (*rot_)[i].theta(1));
+ v.entry(n++, (*rot_)[i].theta(2));
+ }
+ return v;
+ }
+ Vector<double> residure(Vector<double> const& v) {
+ for (size_t n = 0, i = 0, I = (*rot_).size(); i < I; ++i) {
+ if (flag == false && i != I - 1) continue;
+ (*pho_)[i].focal(v(n++));
+ (*rot_)[i].theta(0, v(n++));
+ (*rot_)[i].theta(1, v(n++));
+ (*rot_)[i].theta(2, v(n++));
+ }
+ for (typename std::vector<MatchPair>::iterator
+ it = (*pairs_).begin(), ed = (*pairs_).end(); it != ed; ++it) {
+ (*it).from_m.entry(2, 0, -(*pho_)[(*it).from_i].focal());
+ (*it). to_m.entry(2, 0, -(*pho_)[(*it). to_i].focal());
+ }
+ //
+ Vector<double> ret((*pairs_).size() * 2, 0.0);
+ size_t n = 0;
+ for (typename std::vector<MatchPair>::iterator
+ it = (*pairs_).begin(), ed = (*pairs_).end(); it != ed; ++it, ++n) {
+ Matrix<double> tr(
+ (*it).to_m
+ -
+ (*pho_)[(*it).to_i].transformate(
+ (*rot_)[(*it).to_i].transformate(
+ (*rot_)[(*it).from_i].transformateInv(
+ bll_.transformate(
+ (*it).from_m
+ )
+ )
+ )
+ )
+ );
+ ret.entry(n * 2 , tr(0, 0));
+ ret.entry(n * 2 + 1, tr(1, 0));
+ }
+ //*
+ //for (size_t i = 0; i < ret.dimension(); i++) {
+ // printf("(%-9.1f ", ret(i));
+ // if (i % 8 == 7) printf("\n");
+ //}
+ //printf("\n");
+ printf("re = %20.5f ?? %f\n", ret.length2(), 25.0 * (*pairs_).size());
+ // */
+ return ret;
+ }
+ Matrix<double> jacobian() const {
+ Matrix<double> ret;
+ if (flag == false) {
+ ret.reset((*pairs_).size() * 2, 4, 0.0);
+ }
+ else {
+ ret.reset((*pairs_).size() * 2, (*rot_).size() * 4, 0.0);
+ }
+ size_t n = 0;
+ for (typename std::vector<MatchPair>::iterator
+ it = (*pairs_).begin(), ed = (*pairs_).end(); it != ed; ++it, ++n) {
+ Matrix<double> tr_A( bll_ .transformate((*it).from_m));
+ Matrix<double> tr_B((*rot_)[(*it).from_i].transformateInv(tr_A));
+ Matrix<double> tr_C((*rot_)[(*it). to_i].transformate (tr_B));
+ Matrix<double> ja_A((*pho_)[(*it). to_i].jacobian (tr_C));
+ Matrix<double> ja_B((*rot_)[(*it). to_i].jacobian (tr_B));
+ Matrix<double> ja_C((*rot_)[(*it).from_i].jacobianInv(tr_A));
+ Matrix<double> m;
+ int fr = (flag == false ? 0 : (*it).from_i);
+ int to = (flag == false ? 0 : (*it). to_i);
+ if (flag != false || (*it).from_i == (*rot_).size() - 1) {
+ m = ja_A * ja_B * ja_C * bll_.jacobian((*it).from_m).col(2);
+ ret.entry(n * 2 , fr * 4, m(0, 0));
+ ret.entry(n * 2 + 1, fr * 4, m(1, 0));
+ for (size_t k = 0; k < 3; ++k) {
+ m = ja_A * ja_B * (*rot_)[(*it).from_i].jacobianInv(tr_A, k);
+ ret.entry(n * 2 , fr * 4 + 1 + k, m(0, 0));
+ ret.entry(n * 2 + 1, fr * 4 + 1 + k, m(1, 0));
+ }
+ }
+ if (flag != false || (*it).to_i == (*rot_).size() - 1) {
+ m = (*pho_)[(*it).to_i].jacobian(tr_C, 0);
+ ret.entry(n * 2 , to * 4, m(0, 0));
+ ret.entry(n * 2 + 1, to * 4, m(1, 0));
+ for (size_t k = 0; k < 3; ++k) {
+ m = ja_A * (*rot_)[(*it).to_i].jacobian(tr_B, k);
+ ret.entry(n * 2 , to * 4 + 1 + k, m(0, 0));
+ ret.entry(n * 2 + 1, to * 4 + 1 + k, m(1, 0));
+ }
+ }
+ }
+ return ret;
+ }
+ Matrix<double> identity() const {
+ if (flag == false) {
+ Matrix<double> ret(4, 4, 0.0);
+ ret.identitied();
+ return ret;
+ }
+ Matrix<double> ret((*rot_).size() * 4, (*rot_).size() * 4, 0.0);
+ ret.identitied();
+ return ret;
+ }
+ };
+
+ struct Myself {
+ double t_;
+
+ Myself(): t_(5.0) {
+ }
+
+ Myself(Myself const& m): t_(m.t_) {
+ }
+
+ ~Myself() {
+ }
+ };
+
+ Self<Myself> const self;
+
+public:
+ BundleAdjustment_LM(): self() {
+ }
+
+ BundleAdjustment_LM(BundleAdjustment_LM const& b):
+ self(b.self, Self<Myself>::COPY_FROM) {
+ }
+
+ ~BundleAdjustment_LM() {
+ }
+
+ BundleAdjustment_LM& copyFrom(BundleAdjustment_LM const& b) {
+ self().copyFrom(b.self);
+ return *this;
+ }
+
+ BundleAdjustment_LM& referenceFrom(BundleAdjustment_LM const& b) {
+ self().referenceFrom(b.self);
+ return *this;
+ }
+
+ double threshold() const {
+ return self->t_;
+ }
+
+ double threshold(double t) {
+ self()->t_ = t;
+ return threshold();
+ }
+
+ bool adjustEye(std::vector<SceneInfo<Pixel> >* seq) const {
+ // check
+ size_t N = (*seq).size();
+ for (size_t i = 0; i < N; ++i) {
+ if ( (*seq)[i].flag & CAN_OFFSET ) return false;
+ if (!((*seq)[i].flag & CAN_ROTATE)) return false;
+ if (!((*seq)[i].flag & CAN_ZOOM )) return false;
+ }
+ // get all pairs
+ typedef typename Camera<Pixel>::FixedPoints2D::IdentityPointsMapIterK FPS_K;
+ std::vector<FPS_K> beg(N), end(N);
+ FPS_K it1, it2;
+ for (size_t i = 0; i < N; ++i) {
+ beg[i] = (*seq)[i].eye->camera().fixedPoints2D().identityPoints().begin();
+ end[i] = (*seq)[i].eye->camera().fixedPoints2D().identityPoints().end ();
+ }
+ std::vector<std::vector<std::vector<MatchPair> > > all_pairs(N);
+ for (size_t i = 0; i < N; ++i) {
+ all_pairs[i].resize(N);
+ for (size_t j = 0; j < N; ++j) {
+ if (i == j) continue;
+ for (it1 = beg[i], it2 = beg[j]; it1 != end[i] && it2 != end[j]; ) {
+ if (it1->first < it2->first) ++it1;
+ else if(it1->first > it2->first) ++it2;
+ else {
+ MatchPair tmp;
+ tmp.from_i = i;
+ tmp.from_m = it1->second.matrix();
+ tmp.from_m.rows(3, -(*seq)[i].eye->camera().photo().focal());
+ tmp. to_i = j;
+ tmp. to_m = it2->second.matrix();
+ tmp. to_m.rows(3, -(*seq)[j].eye->camera().photo().focal());
+ all_pairs[i][j].push_back(tmp);
+ ++it1;
+ ++it2;
+ }
+ }
+ }
+ }
+ //
+ std::vector<MatchPair > pairs;
+ std::vector<Rotation3D <double> > rot;
+ std::vector<PhotoProjection<double> > pho;
+ std::vector<int > sum (N, 0);
+ std::vector<int > big (N, 0);
+ std::vector<int > real(N);
+ std::vector<int > rev (N);
+ // first!!
+ int best = -1, best_ct = -1;
+ for (size_t i = 0; i < N; ++i) {
+ int d = 0;
+ for (size_t j = 0; j < N; ++j) {
+ d += all_pairs[i][j].size();
+ }
+ if (best_ct < d) {
+ best_ct = d;
+ best = i;
+ }
+ real[i] = i;
+ big [i] = i;
+ }
+ for (size_t i = 0; i < N; ++i) {
+ // update else
+ real[i] = best;
+ rev[best] = i;
+ for (size_t j = 0; j < N; ++j) {
+ if ((int)j == best) {
+ sum[j] = -1;
+ continue;
+ }
+ if (sum[j] < 0) continue;
+ sum[j] += all_pairs[best][j].size();
+ if (all_pairs[j][big[j]].size() < all_pairs[j][best].size())
+ big[j] = best;
+ }
+ // add me
+ printf("%d same as %d\n", best, big[best]);
+ if (big[best] == best) {
+ rot.push_back((*seq)[big[best]].eye->camera() .rotation());
+ pho.push_back((*seq)[big[best]].eye->camera().photo().projection());
+ }
+ else {
+ rot.push_back(rot[rev[big[best]]]);
+ pho.push_back(pho[rev[big[best]]]);
+ }
+ for (size_t j = 0; j < N; ++j) {
+ if (sum[j] >= 0) continue;
+ for (size_t k = 0, K = all_pairs[best][j].size(); k < K; ++k) {
+ all_pairs[best][j][k].from_i = rev[all_pairs[best][j][k].from_i];
+ all_pairs[best][j][k]. to_i = rev[all_pairs[best][j][k]. to_i];
+ pairs.push_back(all_pairs[best][j][k]);
+ }
+ for (size_t k = 0, K = all_pairs[j][best].size(); k < K; ++k) {
+ all_pairs[j][best][k].from_i = rev[all_pairs[j][best][k].from_i];
+ all_pairs[j][best][k]. to_i = rev[all_pairs[j][best][k]. to_i];
+ pairs.push_back(all_pairs[j][best][k]);
+ }
+ }
+ for (size_t j = 0; j < N; ++j) { printf("%4d ", sum[j]); } printf("\n");
+ for (size_t j = 0; j < N; ++j) { printf("%4d ", big[j]); } printf("\n");
+ for (size_t j = 0; j < N; ++j) { printf("%4d ", real[j]); } printf("\n");
+ printf("\n");
+ // bundle adjustment
+ if (i > 0) {
+ NoOffsetController ct1(&pairs, &rot, &pho, false);
+ ct1.residure(levenbergMarquardtTraining(ct1, ct1.init(),
+ 7.3, 1.0,
+ squ(threshold()) * pairs.size(),
+ 7, 1000));
+ /*
+ NoOffsetController ct2(&pairs, &rot, &pho, true);
+ ct2.residure(levenbergMarquardtTraining(ct2, ct2.init(),
+ 0.1 * pairs.size(), 1.0,
+ squ(threshold()) * pairs.size(),
+ 7, 1000));
+ // */
+ }
+ // find next
+ best_ct = 0;
+ for (size_t j = 0; j < N; ++j) {
+ if (best_ct < sum[j]) {
+ best = j;
+ best_ct = sum[j];
+ }
+ }
+ getchar();
+ //if (i == N - 2) break;
+ }
+ // feedback
+ for (size_t i = 0; i < N; ++i) {
+ int id = real[i];
+ (*seq)[id].eye->cameraGet() .rotation (rot[i]);
+ (*seq)[id].eye->cameraGet().photoGet().projection(pho[i]);
+ //if (i == N - 2) break;
+ }
+ return true;
+ }
+
+ bool adjustFixedPoint(std::vector<SceneInfo<Pixel> >* seq) const {
+ return false;
+ }
+
+ bool write(FILE* f, bool bin, unsigned int fg) const {
+ return false;
+ }
+
+ bool read(FILE* f, bool bin, unsigned int fg) const {
+ return false;
+ }
+
+ ObjBase* create() const {
+ return new BundleAdjustment_LM;
+ }
+
+ ObjBase* copyFrom(ObjBase const* o) {
+ return &(copyFrom(*(BundleAdjustment_LM const*)o));
+ }
+
+ char const* ctype() const {
+ return typeid(*this).name();
+ }
+
+ std::string type() const {
+ return std::string(ctype());
+ }
+};
+
+} // meow
+
+#endif // BundleAdjustment_LM_H__
diff --git a/meowpp/gra/Camera.h b/meowpp/gra/Camera.h
index 45321de..2b6347c 100644
--- a/meowpp/gra/Camera.h
+++ b/meowpp/gra/Camera.h
@@ -32,13 +32,10 @@ private:
Myself() {
fixed2D_.dimension(2);
}
- ~Myself() {
+ Myself(Myself const& v):
+ photo_(v.photo_), rot_(v.rot_), fixed2D_(v.fixed2D_) {
}
- Myself& copyFrom(Myself const& b) {
- photo_ .copyFrom(b. photo_);
- rot_ .copyFrom(b. rot_);
- fixed2D_.copyFrom(b.fixed2D_);
- return *this;
+ ~Myself() {
}
};
@@ -47,14 +44,13 @@ public:
/*!
* @brief constructor
*/
- Camera(): self(true) {
+ Camera(): self() {
}
/*!
* @brief copy constructor
*/
- Camera(Camera const& b): self(false) {
- copyFrom(b);
+ Camera(Camera const& b): self(b.self, Self<Myself>::COPY_FROM) {
}
/*!
@@ -119,7 +115,7 @@ public:
* @brief 設定rotation
*/
Rotation3D<double> const& rotation(Rotation3D<double> const& rot) {
- self()->rot_ = rot;
+ self()->rot_.copyFrom(rot);
return rotation();
}
@@ -142,7 +138,7 @@ public:
*/
FixedPoints2D const& fixedPoints2D(FixedPoints2D const& fps2d) const {
if (fps2d.dimension() == 2) {
- self()->fixed2D_ = fps2d;
+ self()->fixed2D_.copyFrom(fps2d);
}
return fixedPoints2D();
}
@@ -150,7 +146,7 @@ public:
/*!
* @brief 取得編號為i的fixed points 2d
*/
- Vector<double> fixedPoints2D(int i) {
+ Vector<double> fixedPoint2D(int i) {
return self->fixed2D_.identityPoint(i);
}
@@ -159,7 +155,7 @@ public:
*/
bool inside(Vector3D<double> p) const {
return self->photo_.inside(
- Vector3D<double>(self->rot_.transformate(p.matrix())));
+ Vector3D<double>(rotation().transformate(p.matrix())));
}
/*!
@@ -167,7 +163,7 @@ public:
*/
Pixel color(Vector3D<double> p) const {
return self->photo_.color(
- Vector3D<double>(self->rot_.transformate(p.matrix())));
+ Vector3D<double>(rotation().transformate(p.matrix())));
}
/*!
@@ -182,7 +178,20 @@ public:
* @note 未完成
*/
bool write(FILE* f, bool bin, unsigned int fg) const {
- return false;
+ if (bin) {
+ double tmp;
+ for (size_t i = 0; i < 3; ++i) {
+ if (fwrite(&(tmp = rotation().theta(i)), sizeof(tmp), 1, f) < 1)
+ return false;
+ }
+ }
+ else {
+ for (size_t i = 0; i < 3; ++i) {
+ if (fprintf(f, "%f ", rotation().theta(i)) < 1) return false;
+ }
+ fprintf(f, "\n");
+ }
+ return (fixedPoints2D().write(f, bin, fg) && photo().write(f, bin, fg));
}
/*! @brief 將資料讀入
@@ -190,7 +199,23 @@ public:
* @note 未完成
*/
bool read(FILE* f, bool bin, unsigned int fg) {
- return false;
+ if (bin) {
+ double tmp;
+ for (size_t i = 0; i < 3; ++i) {
+ if (fread(&tmp, sizeof(tmp), 1, f) < 1) {
+ return false;
+ }
+ rotationGet().theta(i, tmp);
+ }
+ }
+ else {
+ double a;
+ for (size_t i = 0; i < 3; ++i) {
+ if (fscanf(f, "%lf", &a) < 1) return false;
+ rotationGet().theta(i, a);
+ }
+ }
+ return (fixedPoints2DGet().read(f, bin, fg) && photoGet().read(f, bin, fg));
}
/*! @brief new一個自己
@@ -229,316 +254,8 @@ public:
std::string type() const {
return std::string(ctype());
}
-
- ////////////////////////////////////////////////////////////////////
-private:
- class BoundleAdjustment2D {
- private:
- class Parameters {
- private:
- std::vector<Camera>& cam_;
- std::vector<Rotation3D<double> > rot_;
- std::vector<PhotoProjection<double> > pho_;
- struct Pair {
- size_t i1_;
- size_t i2_;
- Vector<double> v1_;
- Vector<double> v2_;
- Pair(size_t a, size_t b,
- Vector<double> const& v1, Vector<double> const& v2):
- i1_(a), i2_(b), v1_(v1), v2_(v2) {
- }
- };
- std::vector<Pair> pairs_;
-
- void setParameters(Vector<double> const& v) {
- size_t n = 0;
- for (size_t i = 0, I = cam_.size(); i < I; ++i) {
- pho_[i].focal(v(n++));
- for (size_t j = 0; j < 3; j++) {
- rot_[i].theta(j, v(n++));
- }
- }
- for (size_t i = 0, I = pairs_.size(); i < I; ++i) {
- pairs_[i].v1_.entry(2, pho_[pairs_[i].i1_].focal());
- pairs_[i].v2_.entry(2, pho_[pairs_[i].i2_].focal());
- }
- }
- Vector<double> getParameters() const {
- Vector<double> ret(cam_.size() * 4, 0.0);
- for (size_t i = 0, I = cam_.size(); i < I; ++i) {
- ret.entry(i * 4, pho_[i].focal());
- for (size_t j = 0; j < 3; ++j) {
- ret.entry(i * 4 + 1 + j, rot_[i].theta(j));
- }
- }
- return ret;
- }
- Vector<double> residureV() const {
- Vector<double> ret(pairs_.size() * 3, 0.0);
- for (size_t i = 0, I = pairs_.size(); i < I; ++i) {
- size_t i_from = pairs_[i].i1_;
- size_t i_to = pairs_[i].i2_;
- Matrix<double> v_from(pairs_[i].v1_.matrix());
- Matrix<double> v_to (pairs_[i].v2_.matrix());
- Matrix<double> v_tr(
- pho_[i_to].transformate(
- rot_[i_to].transformate(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- )
- )
- );
- Matrix<double> delta(v_to - v_tr);
- for (size_t j = 0; j < 3; ++j) {
- ret.entry(i * 3 + j, delta(j, 0));
- }
- }
- return ret;
- }
- public:
- Parameters(std::vector<Camera>& cam): cam_(cam) {
- rot_.resize(cam_.size());
- pho_.resize(cam_.size(), PhotoProjection<double>(3));
- for (size_t i = 0, I = cam_.size(); i < I; ++i) {
- rot_[i].referenceFrom(cam_[i].rotation());
- pho_[i].focal(cam_[i].photo().focal());
- }
- for (size_t i = 0, I = cam_.size(); i < I; ++i) {
- std::map<int,Vector<double> >const& p1 = (
- cam_[i].fixedPoints2D().identityPoints());
- for (size_t j = 0; j < I; ++j) {
- if (i == j) continue;
- std::map<int,Vector<double> >const& p2 = (
- cam_[j].fixedPoints2D().identityPoints());
- for (std::map<int,Vector<double> >::const_iterator
- it1 = p1.begin(); it1 != p1.end(); ++it1) {
- for (std::map<int,Vector<double> >::const_iterator
- it2 = p2.begin(); it2 != p2.end(); ++it2) {
- if (it1->first != it2->first) continue;
- Vector<double> v1(it1->second), v2(it2->second);
- v1.dimension(3, 0.0);
- v2.dimension(3, 0.0);
- pairs_.push_back(Pair(i, j, v1, v2));
- }
- }
- }
- }
- }
- Vector<double> init() const {
- return getParameters();
- }
- Vector<double> residure(Vector<double> const& v) const {
- ((Parameters*)this)->setParameters(v);
- return residureV();
- }
- Matrix<double> jacobian(Vector<double> const& v) const {
- //setParameters(v);
- Matrix<double> ret(pairs_.size() * 3, v.dimension(), 0.0);
- for (size_t i = 0, I = pairs_.size(); i < I; ++i) {
- for (size_t j = 0, J = v.dimension(); j < J; ++j) {
- size_t j0 = j / 4;
- size_t dj = j % 4;
- size_t i_from = pairs_[i].i1_;
- size_t i_to = pairs_[i].i2_;
- Matrix<double> v_from(pairs_[i].v1_.matrix());
- Matrix<double> v_to (pairs_[i].v2_.matrix());
- Matrix<double> v_tr (3, 1, 0.0);
- if (j0 == i_from) {
- if (dj == 0) {
- v_tr = (
- pho_[i_to].jacobian(
- rot_[i_to].transformate(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- )
- )
- *
- rot_[i_to].jacobian(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- )
- *
- rot_[i_from].jacobianInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- *
- BallProjection<double>(3, 1.0).jacobian(
- v_from
- ).col(2)
- );
- }
- else {
- v_tr = (
- pho_[i_to].jacobian(
- rot_[i_to].transformate(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- )
- )
- *
- rot_[i_to].jacobian(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- )
- *
- rot_[i_from].jacobianInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- );
- }
- }
- else if (j0 == i_to) {
- if (dj == 0) {
- v_tr = (
- pho_[i_to].jacobian(
- rot_[i_to].transformate(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- )
- ).col(2)
- );
- }
- else {
- v_tr = (
- pho_[i_to].jacobian(
- rot_[i_to].transformate(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- )
- )
- )
- *
- rot_[i_to].jacobian(
- rot_[i_from].transformateInv(
- BallProjection<double>(3, 1.0).transformate(
- v_from
- )
- ),
- dj - 1
- )
- );
- }
- }
- for (size_t k = 0; k < 3; ++k) {
- ret.entry(i * 3 + k, j, -v_tr(k, 0));
- }
- }
- }
- return ret;
- }
- Matrix<double> identity(Vector<double> const& v) const {
- //setParameters(v);
- Matrix<double> ret(v.dimension(), v.dimension(), 0.0);
- ret.identity();
- return ret;
- }
- double averageResidure() const {
- Vector<double> res(residureV());
- double sum = 0;
- for (size_t i = 0, I = res.dimension(); i < I; ++i) {
- sum += res(i);
- }
- return sum / res.dimension();
- }
- size_t dimensinonI() const {
- return cam_.size() * 4;
- }
- size_t dimensionO() const {
- return pairs_.size() * 3;
- }
- };
- class F {
- private:
- Parameters& p_;
- public:
- F(Parameters& p): p_(p) {
- }
- Vector<double> operator()(Vector<double> const& v) const {
- return p_.residure(v);
- }
- };
- class J {
- private:
- Parameters& p_;
- public:
- J(Parameters& p): p_(p) {
- }
- Matrix<double> operator()(Vector<double> const& v) const {
- return p_.jacobian(v);
- }
- };
- class I {
- private:
- Parameters& p_;
- public:
- I(Parameters& p): p_(p) {
- }
- Matrix<double> operator()(Vector<double> const& v) const {
- return p_.identity(v);
- }
- };
- class Stop {
- private:
- Parameters& p_;
- double t_;
- public:
- Stop(Parameters& p, double t): p_(p), t_(t) {
- }
- bool operator()(double r) const {
- return (r < p_.dimensionO() * t_);
- }
- };
- public:
- BoundleAdjustment2D() {
- }
- ~BoundleAdjustment2D() {
- }
- double operator()(std::vector<Camera>* cs, double threshold) const {
- Parameters p(*cs);
- Vector<double> v0(p.init());
- levenbergMarquardt(F(p), J(p), I(p), v0, Stop(p, threshold), 100000);
- return p.averageResidure();
- }
- };
-public:
- /*!
- * @brief 將數台camera用fixed points做boundle adjustment
- *
- * @param [in] cs 要調整的cameras
- * @param [in] threshold 允許誤差值
- * @return 誤差值
- */
- static double boundleAdjustment2D(std::vector<Camera>* cs, double threshold) {
- static BoundleAdjustment2D bdl;
- return bdl(cs, threshold);
- }
};
-}
+} // meow
#endif // gra_Camera_H__
diff --git a/meowpp/gra/Eye.h b/meowpp/gra/Eye.h
new file mode 100644
index 0000000..2621a16
--- /dev/null
+++ b/meowpp/gra/Eye.h
@@ -0,0 +1,174 @@
+#ifndef Eye_H__
+#define Eye_H__
+
+#include "Camera.h"
+
+#include "../Self.h"
+#include "../oo/ObjBase.h"
+
+namespace meow {
+
+/*!
+ * @brief 一個 \c Camera 加上一個offset transformation
+ *
+ * @author cat_leopard
+ */
+template<class Pixel>
+class Eye: public ObjBase {
+private:
+ struct Myself {
+ Camera<Pixel> cam_;
+ Vector3D<double> ofs_;
+
+ Myself(): cam_(), ofs_(0.0, 0.0, 0.0) {
+ }
+
+ Myself(Camera<Pixel> const& c, Vector3D<double> const& o): cam_(c), ofs_(o){
+ }
+
+ Myself(Myself const& b): cam_(b.cam_), ofs_(b.ofs_) {
+ }
+
+ ~Myself() {
+ }
+ };
+
+ Self<Myself> const self;
+public:
+ Eye(): self() {
+ }
+
+ Eye(Eye const& b): self(b.self(), Self<Myself>::COPY_FROM) {
+ }
+
+ Eye(Camera<Pixel> const& c, Vector3D<double> const& o): self(Myself(c, o)) {
+ }
+
+ ~Eye() {
+ }
+
+ Eye& copyFrom(Eye const& e) {
+ self().copyFrom(e.self);
+ return *this;
+ }
+
+ Eye& referenceFrom(Eye const& e) {
+ self().referenceFrom(e.self);
+ return *this;
+ }
+
+ Camera<Pixel> const& camera() const {
+ return self->cam_;
+ }
+
+ Camera<Pixel>& cameraGet() {
+ return self()->cam_;
+ }
+
+ Camera<Pixel> const& camera(Camera<Pixel> const& c) {
+ self()->cam_.copyFrom(c);
+ return camera();
+ }
+
+ Vector3D<double> const& offset() const {
+ return self->ofs_;
+ }
+
+ Vector3D<double>& offsetGet() {
+ return self()->ofs_;
+ }
+
+ Vector3D<double> const& offset(Vector3D<double> const& ofs) {
+ self()->ofs_ = ofs;
+ return offset();
+ }
+
+ bool inside(Vector3D<double> const& v) const {
+ return camera().inside(v - offset());
+ }
+
+ Eye& operator=(Eye const& e) {
+ return copyFrom(e);
+ }
+
+ /*! @brief 將資料寫入檔案
+ *
+ * @note 未完成
+ */
+ bool write(FILE* f, bool bin, unsigned int fg) const {
+ if (bin) {
+ double tmp;
+ for (size_t i = 0; i < 3; ++i) {
+ if (fwrite(&(tmp = offset()(i)), sizeof(tmp), 1, f) < 1)
+ return false;
+ }
+ }
+ else {
+ for (size_t i = 0; i < 3; ++i) {
+ if (fprintf(f, "%f ", offset()(i)) < 1) return false;
+ }
+ fprintf(f, "\n");
+ }
+ return camera().write(f, bin, fg);
+ }
+
+ /*! @brief 將資料讀入
+ *
+ * @note 未完成
+ */
+ bool read(FILE* f, bool bin, unsigned int fg) {
+ if (bin) {
+ double tmp[3];
+ if (fread(tmp, sizeof(double), 3, f) < 3) return false;
+ offsetGet().xyz(tmp[0], tmp[1], tmp[2]);
+ }
+ else {
+ double a, b, c;
+ if (fscanf(f, "%lf %lf %lf", &a, &b, &c) < 3) return false;
+ offsetGet().x(a);
+ offsetGet().y(b);
+ offsetGet().z(c);
+ }
+ return cameraGet().read(f, bin, fg);
+ }
+
+ /*! @brief new一個自己
+ *
+ * @return 一個new出來的pointer
+ */
+ ObjBase* create() const {
+ return new Eye();
+ }
+
+ /*! @brief 複製資料
+ *
+ * 輸入型別是 \c ObjBase \c const*
+ * 事實上這個method就只是幫忙轉型然後呼叫原本的\c copyFrom
+ *
+ * @param [in] b 資料來源
+ * @return this
+ */
+ ObjBase* copyFrom(ObjBase const* b) {
+ return &(copyFrom(*(Eye*)b));
+ }
+
+ /*! @brief 回傳class的type
+ *
+ * @return \c char \c const\c * 形式的typename
+ */
+ char const* ctype() const{
+ return typeid(*this).name();
+ }
+
+ /*! @brief 回傳class的type
+ *
+ * @return \c std::string 形式的typename
+ */
+ std::string type() const {
+ return std::string(ctype());
+ }
+};
+
+} // meow
+
+#endif // Eye_H__
diff --git a/meowpp/gra/FeaturePoint.h b/meowpp/gra/FeaturePoint.h
index 4b80a3d..c3ab8f3 100644
--- a/meowpp/gra/FeaturePoint.h
+++ b/meowpp/gra/FeaturePoint.h
@@ -75,6 +75,13 @@ public:
}
/*!
+ * @brief 回傳position (non-const reference)
+ */
+ Vector<Scalar>& positionGet() {
+ return pos_;
+ }
+
+ /*!
* @brief 回傳description
*/
Vector<Description> const& description() const {
@@ -82,6 +89,13 @@ public:
}
/*!
+ * @brief 回傳description (non-const reference)
+ */
+ Vector<Description>& descriptionGet() {
+ return des_;
+ }
+
+ /*!
* @brief 修改position
*/
Vector<Scalar> const& position(Vector<Scalar> const& p) const {
@@ -128,20 +142,6 @@ public:
}
/*!
- * @brief 取得position
- */
- Vector<Scalar>& positionGet() {
- return pos_;
- }
-
- /*!
- * @brief 取得description
- */
- Vector<Description>& descriptionGet() {
- return des_;
- }
-
- /*!
* @brief same as copyFrom(fp)
*/
FeaturePoint& operator=(FeaturePoint const& fp) {
@@ -163,11 +163,53 @@ public:
}
bool write(FILE* f, bool bin, unsigned int fg) const {
- return false;
+ if (bin) {
+ double tmp;
+ for (size_t i = 0, I = position().dimension(); i < I; ++i) {
+ if (fwrite(&(tmp = position(i)), sizeof(tmp), 1, f) < 1) return false;
+ }
+ for (size_t i = 0, I = description().dimension(); i < I; ++i) {
+ if (fwrite(&(tmp = description(i)), sizeof(tmp), 1, f) < 1)
+ return false;
+ }
+ }
+ else {
+ for (size_t i = 0, I = position().dimension(); i < I; ++i) {
+ if (fprintf(f, "%f ", (double)position(i)) < 1) return false;
+ }
+ fprintf(f, "\n");
+ for (size_t i = 0, I = description().dimension(); i < I; ++i) {
+ if (fprintf(f, "%f ", (double)description(i)) < 1) return false;
+ }
+ fprintf(f, "\n");
+ }
+ return true;
}
bool read (FILE* f, bool bin, unsigned int fg) {
- return false;
+ if (bin) {
+ double tmp;
+ for (size_t i = 0, I = position().dimension(); i < I; ++i) {
+ if (fread(&tmp, sizeof(tmp), 1, f) < 1) return false;
+ position(i, tmp);
+ }
+ for (size_t i = 0, I = description().dimension(); i < I; ++i) {
+ if (fread(&tmp, sizeof(tmp), 1, f) < 1) return false;
+ description(i, tmp);
+ }
+ }
+ else {
+ double tmp;
+ for (size_t i = 0, I = position().dimension(); i < I; ++i) {
+ if (fscanf(f, "%lf", &tmp) < 1) return false;
+ position(i, tmp);
+ }
+ for (size_t i = 0, I = description().dimension(); i < I; ++i) {
+ if (fscanf(f, "%lf", &tmp) < 1) return false;
+ description(i, tmp);
+ }
+ }
+ return true;
}
ObjBase* create() const {
@@ -179,8 +221,7 @@ public:
}
char const* ctype() const {
- static char const* ptr = typeid(*this).name();
- return ptr;
+ return typeid(*this).name();
}
std::string type() const {
@@ -188,6 +229,6 @@ public:
}
};
-}
+} // meow
#endif // gra_FeaturePoint_H__
diff --git a/meowpp/gra/FeaturePointsDetector.h b/meowpp/gra/FeaturePointsDetector.h
index 415419a..858c66a 100644
--- a/meowpp/gra/FeaturePointsDetector.h
+++ b/meowpp/gra/FeaturePointsDetector.h
@@ -18,9 +18,9 @@ public:
virtual ~FeaturePointsDetector() { }
virtual std::vector<FeaturePoint<double, double> >
- detect(Bitmap<Pixel> const& __bitmap) const = 0;
+ detect(Bitmap<Pixel> const& bitmap) const = 0;
};
-}
+} // meow
#endif // gra_FeaturePointsDetector_H__
diff --git a/meowpp/gra/FeaturePointsDetector_Harris.h b/meowpp/gra/FeaturePointsDetector_Harris.h
index 25a46b2..11529f0 100644
--- a/meowpp/gra/FeaturePointsDetector_Harris.h
+++ b/meowpp/gra/FeaturePointsDetector_Harris.h
@@ -13,7 +13,6 @@
#include <vector>
-
namespace meow {
/*!
@@ -33,27 +32,26 @@ private:
double lightL_;
double featureG_;
size_t boundB_;
-
- Myself() {
- ratioK_ = 0.03;
- thresholdR_ = 0.001;
- sizeW_ = 2.0;
- noiseN_ = 3.0;
- lightL_ = 30.0;
- featureG_ = 3.0;
- boundB_ = 10u;
+
+ Myself():
+ ratioK_(0.03),
+ thresholdR_(0.001),
+ sizeW_(2.0),
+ noiseN_(3.0),
+ lightL_(30.0),
+ featureG_(3.0),
+ boundB_(10u) {
}
- ~Myself() {
+ Myself(Myself const& m):
+ ratioK_(m.ratioK_),
+ thresholdR_(m.thresholdR_),
+ sizeW_(m.sizeW_),
+ noiseN_(m.noiseN_),
+ lightL_(m.lightL_),
+ featureG_(m.featureG_),
+ boundB_(m.boundB_){
}
- Myself& copyFrom(Myself const& b) {
- ratioK_ = b.ratioK_ ;
- thresholdR_ = b.thresholdR_ ;
- sizeW_ = b.sizeW_ ;
- noiseN_ = b.noiseN_ ;
- lightL_ = b.lightL_ ;
- featureG_ = b.featureG_ ;
- boundB_ = b.boundB_ ;
- return *this;
+ ~Myself() {
}
};
@@ -62,19 +60,11 @@ public:
typedef FeaturePoint<double, double> MyFeaturePoint;
typedef std::vector<MyFeaturePoint> MyFeaturePoints;
//! @brief constructor 使用預設參數
- FPD_Harris(): self(true) {
- self()->ratioK_ = 0.03;
- self()->thresholdR_ = 0.001;
- self()->sizeW_ = 2.0;
- self()->noiseN_ = 3.0;
- self()->lightL_ = 30.0;
- self()->featureG_ = 3.0;
- self()->boundB_ = 10u;
+ FPD_Harris(): self() {
}
//! @brief constructor 參數複製自另一個 FeaturePointsDetector_Harris
- FPD_Harris(FPD_Harris const& fps): self(false) {
- self().copyFrom(fps.self);
+ FPD_Harris(FPD_Harris const& fps): self(fps.self, Self<Myself>::COPY_FROM) {
}
//! @brief 解構子
@@ -178,9 +168,11 @@ public:
MyFeaturePoints detect(Bitmap<Pixel> const& bmp) const {
Bitmap<Pixel> input = bmp;
+ // gradiance
Bitmap<Pixel> input_gx(input.gradianceX(0, self->noiseN_));
Bitmap<Pixel> input_gy(input.gradianceY(self->noiseN_, 0));
+ // get Matrix I for each pixel
Bitmap<double> Ixx(input.height(), input.width(), 0.0);
Bitmap<double> Iyy(input.height(), input.width(), 0.0);
Bitmap<double> Ixy(input.height(), input.width(), 0.0);
@@ -194,10 +186,12 @@ public:
}
}
+ // blur
Ixx.gaussianed(self->sizeW_, self->sizeW_);
Iyy.gaussianed(self->sizeW_, self->sizeW_);
Ixy.gaussianed(self->sizeW_, self->sizeW_);
+ // filter too flat or on edge
Bitmap<double> R(input.height(), input.width(), 0.0);
Bitmap<bool> good(input.height(), input.width(), false);
ssize_t b = self->boundB_;
@@ -211,6 +205,7 @@ public:
}
}
+ // find union neighbor
DisjointSet dsj(input.size());
ssize_t dy[2] = {0, 1};
ssize_t dx[2] = {1, 0};
@@ -227,6 +222,7 @@ public:
}
}
+ // find local maximum
std::vector<size_t> max_i(input.size());
for (size_t i = 0, I = input.size(); i < I; i++) {
max_i[i] = i;
@@ -239,6 +235,7 @@ public:
}
}
+ // blur before get description
input.gaussianed(self->featureG_, self->featureG_);
MyFeaturePoints ret;
@@ -253,7 +250,7 @@ public:
}
ssize_t dx[4] = {1, 0, -1, 0};
ssize_t dy[4] = {0, 1, 0, -1};
- std::vector<double> desc;
+ std::vector<double> desc; // description
for (ssize_t d = 1; d <= (ssize_t)self->boundB_; d++) {
std::vector<double> light;
size_t max_id = 0;
diff --git a/meowpp/gra/FeaturePointsMatch.h b/meowpp/gra/FeaturePointsMatch.h
index 8b05632..ffdbe53 100644
--- a/meowpp/gra/FeaturePointsMatch.h
+++ b/meowpp/gra/FeaturePointsMatch.h
@@ -3,32 +3,15 @@
#include "FeaturePoint.h"
+#include "../utility.h"
#include "../oo/ObjBase.h"
-#include <utility>
#include <cstdlib>
namespace meow {
-struct FeaturePointIndexPair {
- std::pair<size_t, size_t> from;
- std::pair<size_t, size_t> to;
-
- FeaturePointIndexPair() {
- }
- FeaturePointIndexPair(size_t ff, size_t fs,
- size_t tf, size_t ts) {
- from.first = ff;
- from.second = fs;
- to.first = tf;
- to.second = ts;
- }
- bool operator==(FeaturePointIndexPair const& p) const {
- return (from == p.from && to == p.to);
- }
-};
-
-typedef std::vector<FeaturePointIndexPair> FeaturePointIndexPairs;
+typedef PairToPair<size_t, size_t, size_t, size_t> FeaturePointIndexPair ;
+typedef std::vector<FeaturePointIndexPair> FeaturePointIndexPairs;
template<class Scalar, class Description>
class FeaturePointsMatch: public ObjBase {
@@ -58,6 +41,6 @@ public:
FeaturePointss const& fpss) const = 0;
};
-}
+} // meow
#endif // gra_FeaturePointsMatch_H__
diff --git a/meowpp/gra/FeaturePointsMatch_K_Match.h b/meowpp/gra/FeaturePointsMatch_K_Match.h
index ca47d27..f1fff12 100644
--- a/meowpp/gra/FeaturePointsMatch_K_Match.h
+++ b/meowpp/gra/FeaturePointsMatch_K_Match.h
@@ -1,13 +1,10 @@
#ifndef gra_FeaturePointsMatch_K_Match_H__
#define gra_FeaturePointsMatch_K_Match_H__
-#include "../dsa/VP_Tree.h"
-
#include "FeaturePointsMatch.h"
#include "../Self.h"
-
-
+#include "../dsa/VP_Tree.h"
#include "../oo/ObjBase.h"
#include <cstdlib>
@@ -19,20 +16,20 @@ class FeaturePointsMatch_K_Match:
public FeaturePointsMatch<Scalar, Description> {
# define FPMKM FeaturePointsMatch_K_Match
public:
- typedef std::vector<FeaturePoint<Scalar, Description> > FeaturePoints;
+ typedef std::vector<FeaturePoint<Scalar, Description> > FeaturePoints ;
typedef std::vector<FeaturePoints > FeaturePointss;
private:
struct Node {
- size_t id_;
- size_t index_;
- FeaturePointss const* ptr_;
+ size_t id_;
+ size_t index_;
+ FeaturePointss const* ptr_;
Node() {
}
Node(Node const& nd) {
- id_ = nd.id_;
+ id_ = nd. id_;
index_ = nd.index_;
- ptr_ = nd.ptr_;
+ ptr_ = nd. ptr_;
}
Node(size_t id, size_t index, FeaturePointss const* ptr) {
id_ = id;
@@ -48,30 +45,30 @@ private:
return (*ptr_)[id_][index_][id];
}
};
+
struct Myself {
size_t k_;
Myself() {
k_ = 1;
}
- ~Myself() {
+ Myself(size_t k): k_(k) {
}
- Myself& copyFrom(Myself const& m) {
- k_ = m.k_;
- return *this;
+ Myself(Myself const& m): k_(m.k_) {
+ }
+ ~Myself() {
}
};
Self<Myself> const self;
public:
- FPMKM(): self(true) {
+ FPMKM(): self() {
}
- FPMKM(FPMKM const& m): self(false) {
+ FPMKM(FPMKM const& m): self(m.self, Self<Myself>::COPY_FROM) {
self().copyFrom(m.self);
}
- FPMKM(size_t k): self(true) {
- self()->k_ = k;
+ FPMKM(size_t k): self(Myself(k)) {
}
~FPMKM() {
@@ -175,8 +172,7 @@ public:
}
char const* ctype() const {
- static char const* ptr = typeid(*this).name();
- return ptr;
+ return typeid(*this).name();
}
std::string type() const {
@@ -185,6 +181,6 @@ public:
# undef FPMKM
};
-}
+} // meow
#endif // gra_FeaturePointsMatch_K_Match_H__
diff --git a/meowpp/gra/IdentityPoints.h b/meowpp/gra/IdentityPoints.h
index c33eb55..1646bf7 100644
--- a/meowpp/gra/IdentityPoints.h
+++ b/meowpp/gra/IdentityPoints.h
@@ -2,12 +2,11 @@
#define gra_IdentityPoints_H__
#include "../Self.h"
-
#include "../math/Vector.h"
-
#include "../oo/ObjBase.h"
#include <map>
+#include <set>
#include <cstdlib>
@@ -24,45 +23,42 @@ public:
typedef typename std::map<ID, Vector<Scalar> > IdentityPointsMap;
typedef typename IdentityPointsMap:: iterator IdentityPointsMapIter;
typedef typename IdentityPointsMap::const_iterator IdentityPointsMapIterK;
-
+
private:
struct Myself {
IdentityPointsMap points_;
size_t dimension_;
-
+
Myself() {
dimension_ = 1;
}
- ~Myself() {
+ Myself(Myself const& m): points_(m.points_), dimension_(m.dimension_) {
}
- Myself& copyFrom(Myself const& b) {
- points_ = b.points_;
- dimension_ = b.dimension_;
- return *this;
+ ~Myself() {
}
};
-
+
Self<Myself> const self;
public:
/*!
* @brief constructor
*/
- IdentityPoints(): self(true) {
+ IdentityPoints(): self() {
}
-
+
/*!
* @brief constructor, 並且複製資料
*/
- IdentityPoints(IdentityPoints const& b): self(false) {
- copyFrom(b);
+ IdentityPoints(IdentityPoints const& b):
+ self(b.self, Self<Myself>::COPY_FROM) {
}
-
+
/*!
* @brief destructor
*/
~IdentityPoints() {
}
-
+
/*!
* @brief 複製資料
*/
@@ -70,7 +66,7 @@ public:
self().copyFrom(b.self);
return *this;
}
-
+
/*!
* @brief 參照
*/
@@ -78,42 +74,42 @@ public:
self().referenceFrom(b.self);
return *this;
}
-
+
/*!
* @brief 清除一切identity points
*/
void clear() {
self()->points_.clear();
}
-
+
/*!
* @brief 回傳有幾個identity points
*/
size_t size() const {
return self->points_.size();
}
-
+
/*!
* @brief 回傳是否沒有identity points
*/
bool empty() const {
return (size() == 0u);
}
-
+
/*!
* @brief 檢查某id是否有使用
*/
bool exist(ID const& id) const {
return (self->points_.find(id) != self->points_.end());
}
-
+
/*!
* @brief 回傳dimension
*/
size_t dimension() const {
return self->dimension_;
}
-
+
/*!
* @brief 設定dimension, 並且清空資料
*/
@@ -122,7 +118,7 @@ public:
clear();
return dimension();
}
-
+
/*!
* @brief 設定dimension, 並且針對每個identity point指定重設dimension
*/
@@ -134,14 +130,14 @@ public:
}
return dimension();
}
-
+
/*!
* @brief 取得所有identity points
*/
IdentityPointsMap const& identityPoints() const {
return self->points_;
}
-
+
/*!
* @brief 設定所有identity points
*/
@@ -149,7 +145,7 @@ public:
clear();
return identityPointsAdd(points);
}
-
+
/*!
* @brief 加入identity Points
*/
@@ -159,7 +155,7 @@ public:
}
return identityPoints();
}
-
+
/*!
* @brief 移除identity Points
*/
@@ -170,14 +166,14 @@ public:
}
return identityPoints();
}
-
+
/*!
* @brief 取得一個identity point
*/
Vector<Scalar> identityPoint(ID const& id) const {
return (exist(id) ? self->points_.find(id)->second : Vector<Scalar>());
}
-
+
/*!
* @brief 修改一個identity point
*/
@@ -187,7 +183,7 @@ public:
}
return identityPoint(id);
}
-
+
/*!
* @brief 新增一個identity point
*/
@@ -197,42 +193,99 @@ public:
}
return identityPoint(id);
}
-
+
/*!
* @brief 刪除一個identity point
*/
void identityPointDel(ID const& id) {
self()->points_.erase(id);
}
-
+
/*!
* @brief 取得一個identity point, non-constant reference
*/
Vector<Scalar>& identityPointGet(ID const& id) {
return self()->points_[id];
}
-
+
/*!
* @brief same as \c copyFrom(b)
*/
IdentityPoints& operator=(IdentityPoints const& b) {
return copyFrom(b);
}
-
+
/*! @brief 將資料寫入檔案
*
* @note 未完成
*/
bool write(FILE* f, bool bin, unsigned int fg) const {
- return false;
+ if (bin) {
+ long dim, ct;
+ if (fwrite(&(dim = dimension()), sizeof(dim), 1, f) < 1) return false;
+ if (fwrite(&(ct = size()), sizeof(ct), 1, f) < 1) return false;
+ for (IdentityPointsMapIterK
+ it = identityPoints().begin(), ed = identityPoints().end();
+ it != ed; ++it) {
+ double tmp;
+ if (fwrite(&(tmp = it->first), sizeof(tmp), 1, f) < 1) return false;
+ for (long i = 0; i < dim; ++i) {
+ if (fwrite(&(tmp = it->second(i)), sizeof(tmp), 1, f) < 1)
+ return false;
+ }
+ }
+ }
+ else {
+ if (fprintf(f, "%ld %lu\n", dimension(), size()) < 1) return false;
+ for (IdentityPointsMapIterK
+ it = identityPoints().begin(), ed = identityPoints().end();
+ it != ed; ++it) {
+ if (fprintf(f, "%f ", (double)it->first) < 1) return false;
+ for (long i = 0, I = dimension(); i < I; ++i) {
+ if (fprintf(f, "%f ", (double)it->second(i)) < 1) return false;
+ }
+ fprintf(f, "\n");
+ }
+ }
+ return true;
}
-
+
/*! @brief 將資料讀入
*
* @note 未完成
*/
bool read(FILE* f, bool bin, unsigned int fg) {
- return false;
+ long dim, ct;
+ if (bin) {
+ if (fread(&dim, sizeof(dim), 1, f) < 1) return false;
+ dimension(dim);
+ if (fread(&ct, sizeof(ct), 1, f) < 1) return false;
+ double id, tt;
+ Vector<Scalar> tmp(dim, 0);
+ for (int i = 0; i < ct; ++i) {
+ if (fread(&id, sizeof(id), 1, f) < 1) return false;
+ for (size_t j = 0, J = dim; j < J; ++j) {
+ if (fread(&tt, sizeof(tt), 1, f) < 1) return false;
+ tmp.entry(j, tt);
+ }
+ identityPointAdd((ID)id, tmp);
+ }
+ }
+ else {
+ if (fscanf(f, "%ld %ld", &dim, &ct) < 2) return false;
+ dimension(dim);
+ double id, tt;
+ Vector<Scalar> tmp(dim, 0);
+ for (int i = 0; i < ct; ++i) {
+ if (fscanf(f, "%lf", &id) < 1) return false;
+ for (int j = 0, J = dim; j < J; ++j) {
+ if (fscanf(f, "%lf", &tt) < 1) return false;
+ tmp.entry(j, tt);
+ }
+ identityPointAdd((ID)id, tmp);
+ }
+ }
+ return true;
}
/*! @brief new一個自己
@@ -242,7 +295,7 @@ public:
ObjBase* create() const {
return new IdentityPoints();
}
-
+
/*! @brief 複製資料
*
* 輸入型別是 \c ObjBase \c const*
@@ -255,16 +308,15 @@ public:
ObjBase* copyFrom(ObjBase const* b) {
return &(copyFrom(*(IdentityPoints*)b));
}
-
+
/*! @brief 回傳class的type
*
* @return \c char \c const\c * 形式的typename
*/
- char const* ctype() const{
- static char const* ptr = typeid(*this).name();
- return ptr;
+ char const* ctype() const {
+ return typeid(*this).name();
}
-
+
/*! @brief 回傳class的type
*
* @return \c std::string 形式的typename
diff --git a/meowpp/gra/Photo.h b/meowpp/gra/Photo.h
index 15768aa..1837727 100644
--- a/meowpp/gra/Photo.h
+++ b/meowpp/gra/Photo.h
@@ -1,8 +1,11 @@
#ifndef gra_Photo_H__
#define gra_Photo_H__
+#include "Bitmap.h"
+
#include "../Self.h"
+#include "../geo/Vectors.h"
#include "../math/utility.h"
#include "../math/Matrix.h"
#include "../math/Transformations.h"
@@ -20,7 +23,7 @@ namespace meow {
/*!
* @brief 底片
*
- * 基本上就是一個 \c Photo 加上 \c focal
+ * 基本上就是一個 \c Bitmap 加上 \c focal
*
* @author cat_leopard
*/
@@ -33,13 +36,9 @@ private:
PhotoProjection<double> proj_;
Myself(): proj_(3) {
}
- ~Myself() {
+ Myself(Myself const& b): bmp_(b.bmp_), c_(b.c_), proj_(b.proj_) {
}
- Myself& copyFrom(Myself const& b) {
- bmp_ .copyFrom(b. bmp_);
- c_ .copyFrom(b. c_);
- proj_.copyFrom(b.proj_);
- return *this;
+ ~Myself() {
}
};
@@ -57,7 +56,7 @@ public:
*
* focal 預設為 1
*/
- Photo(): self(true) {
+ Photo(): self() {
self()->proj_.focal(1.0);
}
@@ -68,8 +67,7 @@ public:
*
* @param [in] b 資料來源
*/
- Photo(Photo const& b): self(false) {
- copyFrom(b);
+ Photo(Photo const& b): self(b.self, Self<Myself>::COPY_FROM) {
}
/*!
@@ -79,7 +77,7 @@ public:
*
* @param [in] bmp 給定的圖片
*/
- Photo(Bitmap<Pixel> const& bmp): self(true) {
+ Photo(Bitmap<Pixel> const& bmp): self() {
reset(bmp);
}
@@ -91,7 +89,7 @@ public:
* @param [in] bmp 給定的圖片
* @param [in] f 給定的焦距
*/
- Photo(Bitmap<Pixel> const& bmp, double f): self(true) {
+ Photo(Bitmap<Pixel> const& bmp, double f): self() {
reset(bmp, f);
}
@@ -104,8 +102,7 @@ public:
* @param [in] f 給定的焦距
* @param [in] c 中心點作標
*/
- Photo(Bitmap<Pixel> const& bmp, double f, Vector2D<double> const& c):
- self(true) {
+ Photo(Bitmap<Pixel> const& bmp, double f, Vector2D<double> const& c): self() {
reset(bmp, f, c);
}
@@ -196,7 +193,7 @@ public:
* @return 新的 \c bitmap
*/
Bitmap<Pixel> const& bitmap(Bitmap<Pixel> const& bmp) {
- self()->bmp_ = bmp;
+ self()->bmp_.copyFrom(bmp);
return bitmap();
}
@@ -219,6 +216,23 @@ public:
}
/*!
+ * @brief 回傳相應的 photo projection
+ */
+ PhotoProjection<double> projection() const {
+ return self->proj_;
+ }
+
+ /*!
+ * @brief 設定 photo projection
+ */
+ PhotoProjection<double> projection(PhotoProjection<double> const& p) {
+ if (p.dimension() == 3) {
+ self()->proj_ = p;
+ }
+ return projection();
+ }
+
+ /*!
* @brief 取得照片中心點底片座標
*
* @return 一個二維vector
@@ -299,6 +313,7 @@ public:
* @return \c true/false
*/
bool inside(Vector3D<double> const& p) const {
+ if (p.z() > 0) return false;
return inside(Vector2D<double>(self->proj_.transformate(p.matrix())));
}
@@ -352,7 +367,18 @@ public:
* @note 未完成
*/
bool write(FILE* f, bool bin, unsigned int fg) const {
- return false;
+ if (bitmap().write(f, bin, fg) == false) return false;
+ if (bin) {
+ double tmp;
+ if (fwrite(&(tmp = center().x()), sizeof(tmp), 1, f) < 1) return false;
+ if (fwrite(&(tmp = center().y()), sizeof(tmp), 1, f) < 1) return false;
+ if (fwrite(&(tmp = focal()), sizeof(tmp), 1, f) < 1) return false;
+ }
+ else {
+ if (fprintf(f, "%f %f\n", center().x(), center().y()) < 2) return false;
+ if (fprintf(f, "%f\n", focal()) < 1) return false;
+ }
+ return true;
}
/*! @brief 將資料讀入
@@ -360,12 +386,23 @@ public:
* @note 未完成
*/
bool read(FILE* f, bool bin, unsigned int fg) {
- return false;
+ if (bitmapGet().read(f, bin, fg) == false) return false;
+ double tmp[3];
+ if (bin) {
+ if (fread(tmp, sizeof(double), 3, f) < 3) return false;
+ }
+ else {
+ if (fscanf(f, "%lf %lf %lf", tmp + 0, tmp + 1, tmp + 2) < 3) return false;
+ }
+ centerGet().x(tmp[0]);
+ centerGet().y(tmp[1]);
+ focal(tmp[2]);
+ return true;
}
/*! @brief new一個自己
*
- * @return 一個new出來的Bitmap<Pixel>
+ * @return 一個new出來的Photo<Pixel>
*/
ObjBase* create() const {
return new Photo();
@@ -389,8 +426,7 @@ public:
* @return \c char \c const\c * 形式的typename
*/
char const* ctype() const{
- static char const* ptr = typeid(*this).name();
- return ptr;
+ return typeid(*this).name();
}
/*! @brief 回傳class的type
@@ -402,6 +438,6 @@ public:
}
};
-}
+} // meow
#endif // gra_Photo_H__
diff --git a/meowpp/gra/WatchBall.h b/meowpp/gra/WatchBall.h
index c72e2a5..f3d2044 100644
--- a/meowpp/gra/WatchBall.h
+++ b/meowpp/gra/WatchBall.h
@@ -43,14 +43,13 @@ public:
/*!
* @brief constructor
*/
- WatchBall(): self(true) {
+ WatchBall(): self() {
}
/*!
* @brief copy constructor
*/
- WatchBall(WatchBall const& b): self(false) {
- copyFrom(b);
+ WatchBall(WatchBall const& b): self(b.self, Self<Myself>::COPY_FROM) {
}
/*!
@@ -176,12 +175,12 @@ public:
Bitmap<Pixel> ret(height, width, Pixel(0));
for (size_t i = 0; i < height; ++i) {
for (size_t j = 0; j < width; ++j) {
- double theta = (1.0 * j / width - 0.5) * 2 * PI;
+ double theta = (1.0 * j / width - 0.5) * 2 * PI;
double phi = asin(-(1.0 * i / height - 0.5) * 2.0);
ret.pixel(i, j, color(Vector3D<double>(
- sin(-theta) * cos(phi),
+ sin(theta) * cos(phi),
sin(phi),
- cos(-theta) * cos(phi)
+ -cos(theta) * cos(phi)
)));
}
}
diff --git a/meowpp/math/LinearTransformation.h b/meowpp/math/LinearTransformation.h
index 86724b7..f51630e 100644
--- a/meowpp/math/LinearTransformation.h
+++ b/meowpp/math/LinearTransformation.h
@@ -71,15 +71,13 @@ protected:
}
/*!
- * @brief Setup the matrix
- *
- * @param [in] m matrix
- * @return new matrix
+ * @brief setup the matrix
*/
- Matrix<Scalar> const& matrix(Matrix<Scalar> const& m) {
+ virtual Matrix<Scalar> const& matrix(Matrix<Scalar> const& m) {
matrix_.copyFrom(m);
- return matrix_;
+ return matrix();
}
+
public:
/*!
* Destructor
@@ -106,6 +104,7 @@ public:
}
};
-}
+
+} // meow
#endif // math_LinearTransformation_H__
diff --git a/meowpp/math/LinearTransformations.h b/meowpp/math/LinearTransformations.h
index c7295ab..e882a6c 100644
--- a/meowpp/math/LinearTransformations.h
+++ b/meowpp/math/LinearTransformations.h
@@ -23,37 +23,41 @@ private:
Vector3D<Scalar> theta_;
bool need_;
- Myself() {
+ Myself(): theta_(0, 0, 0), need_(true) {
}
- ~Myself() {
+
+ Myself(Myself const& b): theta_(b.theta_), need_(b.need_) {
}
- Myself& copyFrom(Myself const& b) {
- theta_ = b.theta_;
- need_ = b.need_;
- return *this;
+
+ ~Myself() {
}
};
- Self<Myself> const& self;
+ Self<Myself> const self;
void calcMatrix() const {
if (self->need_) {
- Vector3D<double> axis (self->theta_.normalize());
- double angle(self->theta_.length());
- double cs(cos(angle / 2.0));
- double sn(sin(angle / 2.0));
+ Matrix<Scalar> tmp(3, 3, 0.0);
+ if (noEPS(self->theta_.length2()) == 0) {
+ tmp.identitied();
+ }
+ else {
+ Vector3D<double> axis (self->theta_.normalize());
+ double angle(self->theta_.length());
+ double cs(cos(angle / 2.0));
+ double sn(sin(angle / 2.0));
- Matrix<Scalar> tmp(3, 3, Scalar(0.0));
- tmp.entry(0, 0, 2*(squ(axis.x())-1.0)*squ(sn) + 1);
- tmp.entry(1, 1, 2*(squ(axis.y())-1.0)*squ(sn) + 1);
- tmp.entry(2, 2, 2*(squ(axis.z())-1.0)*squ(sn) + 1);
- tmp.entry(0, 1, 2*axis.x()*axis.y()*squ(sn) - 2*axis.z()*cs*sn);
- tmp.entry(1, 0, 2*axis.y()*axis.x()*squ(sn) + 2*axis.z()*cs*sn);
- tmp.entry(0, 2, 2*axis.x()*axis.z()*squ(sn) + 2*axis.y()*cs*sn);
- tmp.entry(2, 0, 2*axis.z()*axis.x()*squ(sn) - 2*axis.y()*cs*sn);
- tmp.entry(1, 2, 2*axis.y()*axis.z()*squ(sn) - 2*axis.x()*cs*sn);
- tmp.entry(2, 1, 2*axis.z()*axis.y()*squ(sn) + 2*axis.x()*cs*sn);
- ((Rotation3D*)this)->matrix(tmp);
+ tmp.entry(0, 0, 2*(squ(axis.x())-1.0)*squ(sn) + 1);
+ tmp.entry(1, 1, 2*(squ(axis.y())-1.0)*squ(sn) + 1);
+ tmp.entry(2, 2, 2*(squ(axis.z())-1.0)*squ(sn) + 1);
+ tmp.entry(0, 1, 2*axis.x()*axis.y()*squ(sn) - 2*axis.z()*cs*sn);
+ tmp.entry(1, 0, 2*axis.y()*axis.x()*squ(sn) + 2*axis.z()*cs*sn);
+ tmp.entry(0, 2, 2*axis.x()*axis.z()*squ(sn) + 2*axis.y()*cs*sn);
+ tmp.entry(2, 0, 2*axis.z()*axis.x()*squ(sn) - 2*axis.y()*cs*sn);
+ tmp.entry(1, 2, 2*axis.y()*axis.z()*squ(sn) - 2*axis.x()*cs*sn);
+ tmp.entry(2, 1, 2*axis.z()*axis.y()*squ(sn) + 2*axis.x()*cs*sn);
+ }
+ ((Rotation3D*)this)->LinearTransformation<Scalar>::matrix(tmp);
self()->need_ = false;
}
}
@@ -62,21 +66,14 @@ public:
/*!
* Constructor with no rotation
*/
- Rotation3D(): LinearTransformation<Scalar>(3u, 3u, 3u),
- self(true) {
- self()->theta_.x(Scalar(0));
- self()->theta_.y(Scalar(0));
- self()->theta_.z(Scalar(0));
- self()->need_ = true;
- calcMatrix();
+ Rotation3D(): LinearTransformation<Scalar>(3u, 3u, 3u), self() {
}
/*!
* Constructor and copy data
*/
Rotation3D(Rotation3D const& b): LinearTransformation<Scalar>(b),
- self(false) {
- copyFrom(b);
+ self(b.self, Self<Myself>::COPY_FROM) {
}
/*!
@@ -214,7 +211,7 @@ public:
* @return the output matrix
*/
Matrix<Scalar> transformate(Matrix<Scalar> const& x) const {
- if (self->need_) calcMatrix();
+ calcMatrix();
return LinearTransformation<Scalar>::matrix() * x;
}
@@ -244,7 +241,7 @@ public:
* @return a matrix
*/
Matrix<Scalar> jacobian(Matrix<Scalar> const& x) const {
- if (self->need_) calcMatrix();
+ calcMatrix();
return LinearTransformation<Scalar>::matrix();
}
@@ -321,7 +318,7 @@ public:
* @return a matrix
*/
Matrix<Scalar> jacobian(Matrix<Scalar> const& x, size_t i) const {
- if (self->need_) calcMatrix();
+ calcMatrix();
Matrix<Scalar> mid(3u, 3u, Scalar(0.0));
if (i == 0) {
mid.entry(1, 2, Scalar(-1.0));
@@ -345,8 +342,7 @@ public:
* @return the output vector
*/
Matrix<Scalar> transformateInv(Matrix<Scalar> const& x) const {
- if (self->need_) calcMatrix();
- return LinearTransformation<Scalar>::matrix().transpose() * x;
+ return matrixInv() * x;
}
/*!
@@ -356,8 +352,7 @@ public:
* @return a matrix
*/
Matrix<Scalar> jacobianInv(Matrix<Scalar> const& x) const {
- if (self->need_) calcMatrix();
- return LinearTransformation<Scalar>::matrix().transpose();
+ return matrixInv();
}
/*!
@@ -368,7 +363,7 @@ public:
* @return a matrix
*/
Matrix<Scalar> jacobianInv(Matrix<Scalar> const& x, size_t i) const {
- if (self->need_) calcMatrix();
+ calcMatrix();
Matrix<Scalar> mid(3u, 3u, Scalar(0.0));
if (i == 0) {
mid.entry(1, 2, Scalar(-1.0));
@@ -382,7 +377,8 @@ public:
mid.entry(0, 1, Scalar(-1.0));
mid.entry(1, 0, Scalar( 1.0));
}
- return mid.transpose() * matrixInv() * x;
+ return matrixInv() * mid.transpose() * x;
+ return (-mid) * matrixInv() * x;
}
/*!
@@ -393,7 +389,7 @@ public:
* @return a matrix
*/
Matrix<Scalar> matrixInv() const {
- if (self->need_) calcMatrix();
+ calcMatrix();
return LinearTransformation<Scalar>::matrix().transpose();
}
diff --git a/meowpp/math/Matrix.h b/meowpp/math/Matrix.h
index b4b4853..09832d8 100644
--- a/meowpp/math/Matrix.h
+++ b/meowpp/math/Matrix.h
@@ -1,8 +1,6 @@
#ifndef math_Matrix_H__
#define math_Matrix_H__
-#include "utility.h"
-
#include "../Self.h"
#include <vector>
@@ -18,25 +16,32 @@ namespace meow {
*/
template<class Entry>
class Matrix {
+public:
+ typedef typename std::vector<Entry>::reference EntryRef ;
+ typedef typename std::vector<Entry>::const_reference EntryRefK;
private:
struct Myself {
size_t rows_;
size_t cols_;
std::vector<Entry> entries_;
- Myself(): rows_(0), cols_(0), entries_(0) {
+
+ Myself():
+ rows_(0), cols_(0), entries_(0) {
+ }
+ Myself(Myself const& b):
+ rows_(b.rows_), cols_(b.cols_), entries_(b.entries_) {
+ }
+ Myself(size_t r, size_t c, Entry const& e):
+ rows_(r), cols_(c), entries_(r * c, e) {
}
~Myself() {
}
+
size_t index(size_t r, size_t c) const {
return r * cols_ + c;
}
- Myself& copyFrom(Myself const& m) {
- rows_ = m. rows_;
- cols_ = m. cols_;
- entries_ = m.entries_;
- return *this;
- }
};
+
Self<Myself> const self;
public:
/*!
@@ -45,7 +50,7 @@ public:
* Create an empty matrix with size \b 0x0.
* In other world, create an \b invalid matrix
*/
- Matrix(): self(true) { }
+ Matrix(): self() { }
/*!
* @brief constructor
@@ -54,7 +59,8 @@ public:
*
* @param [in] m another matrix
*/
- Matrix(Matrix const& m): self(false) { self().copyFrom(m.self); }
+ Matrix(Matrix const& m): self(m.self, Self<Myself>::COPY_FROM) {
+ }
/*!
* @brief constructor
@@ -65,7 +71,8 @@ public:
* @param [in] c number of columns
* @param [in] e inital entry
*/
- Matrix(size_t r, size_t c, Entry const& e): self(true) { reset(r, c, e); }
+ Matrix(size_t r, size_t c, Entry const& e): self(Myself(r, c, e)) {
+ }
//! @brief destructor
~Matrix() { }
@@ -152,8 +159,7 @@ public:
*/
size_t cols(size_t c, Entry const& e) {
if (c != cols()) {
- Self<Myself> const old(false);
- old().copyFrom(self);
+ Self<Myself> const old(self, Self<Myself>::COPY_FROM);
self()->entries_.resize(rows() * c);
self()->cols_ = c;
for (size_t i = 0, I = rows(); i < I; i++) {
@@ -169,7 +175,7 @@ public:
/*!
* @brief resize
- *
+ *
* Resize to \a r x \a c, with new created entry be \a e
*
* @param [in] r number of rows
@@ -193,14 +199,19 @@ public:
self()->entries_[self->index(r, c)] = e;
return entry(r, c);
}
+
+ //! @brief Get the entry at \a r x \a c
+ EntryRef entryGet(size_t r, size_t c) {
+ return self()->entries_[self->index(r, c)];
+ }
/*!
* @brief Change the entries from \a rFirst x \a cFirst to \a rLast x \a cLast
- *
- * @param [in] rFirst
- * @param [in] rLast
+ *
+ * @param [in] rFirst
+ * @param [in] rLast
* @param [in] cFirst
- * @param [in] cLast
+ * @param [in] cLast
* @param [in] e value
* @return void
*/
@@ -218,7 +229,7 @@ public:
* @brief Return a \a rLast-rFirst+1 x \a cLast-cFirst+1 matrix
*
* With value be the entries from \a rFirst x \a cFirst to \a rLast x \a cLast
- *
+ *
* @param [in] rFirst
* @param [in] rLast
* @param [in] cFirst
@@ -228,7 +239,7 @@ public:
Matrix subMatrix(size_t rFirst, size_t rLast,
size_t cFirst, size_t cLast) const {
if (rFirst > rLast || cFirst > cLast) return Matrix();
- if (rFirst == 0 || cFirst == 0) {
+ if (rFirst == 0 && cFirst == 0) {
Matrix ret(*this);
ret.size(rLast + 1, cLast + 1, Entry(0));
return ret;
@@ -340,6 +351,28 @@ public:
entry(r, c, (r == c ? Entry(1) : Entry(0)));
return *this;
}
+
+ /*!
+ * @brief Let itself be an diagonal form of original itself
+ */
+ Matrix& diagonaled() {
+ triangulared();
+ for (size_t i = 0, I = rows(); i < I; ++i) {
+ for (size_t j = i + 1, J = cols(); j < J; ++j) {
+ entry(i, j, Entry(0));
+ }
+ }
+ return *this;
+ }
+
+ /*!
+ * @brief Return a matrix which is a diangonal form of me
+ */
+ Matrix diagonal() const {
+ Matrix ret(*this);
+ ret.diagonaled();
+ return ret;
+ }
/*!
* @brief Return a matrix which is an inverse matrix of \a (*this)
@@ -372,7 +405,7 @@ public:
tmp.size(cols(), rows(), Entry(0));
return tmp;
}
-
+
//! @brief let itself become itself's inverse matrix
Matrix& inversed() {
copyFrom(inverse());
@@ -380,14 +413,14 @@ public:
}
//! @brief return itself's transpose matrix
- Matrix transpose () const {
+ Matrix transpose() const {
Matrix ret(cols(), rows(), Entry(0));
for (size_t r = 0, R = cols(); r < R; r++)
for (size_t c = 0, C = rows(); c < C; c++)
ret.entry(r, c, entry(c, r));
return ret;
}
-
+
//! @brief Let itself become itself's transpose matrix
Matrix& transposed() {
copyFrom(transpose());
@@ -400,7 +433,7 @@ public:
ret.triangulared();
return ret;
}
-
+
//! @brief triangluar itself
Matrix& triangulared() {
for (size_t r = 0, c = 0, R = rows(), C = cols(); r < R && c < C; r++) {
@@ -432,53 +465,53 @@ public:
Matrix& operator=(Matrix const& m) {
return copyFrom(m);
}
-
+
//! @brief same as \a entry(r,c)
Entry operator()(size_t r, size_t c) const {
return entry(r, c);
}
-
+
//! @brief same as \a entry(r,c,e)
Entry operator()(size_t r, size_t c, Entry const& e) {
return entry(r, c, e);
}
-
+
//! @brief same as \a positive()
Matrix operator+() const {
return positive();
}
-
+
//! @brief same as \a negative()
Matrix operator-() const {
return negative();
}
-
+
//! @brief same as \a add(m)
Matrix operator+(Matrix const& m) const {
return add(m);
}
-
+
//! @brief same as \a sub(m)
Matrix operator-(Matrix const& m) const {
return sub(m);
}
-
+
//! @brief same as \a mul(m)
Matrix operator*(Matrix const& m) const {
return mul(m);
}
-
+
//! @brief same as \a mul(m)
Matrix operator*(Entry const& s) const {
return mul(s);
}
-
+
//! @brief same as \a div(s)
Matrix operator/(Entry const& s) const {
return div(s);
}
};
-}
+} // meow
#endif // math_Matrix_H__
diff --git a/meowpp/math/Transformation.h b/meowpp/math/Transformation.h
index 0d9ee05..011db8c 100644
--- a/meowpp/math/Transformation.h
+++ b/meowpp/math/Transformation.h
@@ -4,6 +4,7 @@
#include "Matrix.h"
#include "../Self.h"
+#include <list>
#include <cstdlib>
namespace meow {
@@ -13,7 +14,7 @@ namespace meow {
*
* We define that the input and output form of our transformations all be
* \b matrix . Some advance methods such as calculating jacobian matrix
- * will order that the input form must be a vector.
+ * will require that the input form must be a vector.
* @author cat_leopard
*/
template<class Scalar>
@@ -25,17 +26,22 @@ private:
size_t outputRows_;
size_t outputCols_;
size_t psize_;
-
- Myself& copyFrom(Myself const& b) {
- inputRows_ = b. inputRows_;
- inputCols_ = b. inputCols_;
- outputRows_ = b.outputRows_;
- outputCols_ = b.outputCols_;
- psize_ = b.psize_;
- return *this;
+
+ Myself() {
+ }
+ Myself(Myself const& b):
+ inputRows_(b.inputRows_), inputCols_(b.inputCols_),
+ outputRows_(b.outputRows_), outputCols_(b.outputCols_),
+ psize_(b.psize_) {
+ }
+ Myself(size_t ir, size_t ic, size_t or_, size_t oc, size_t ps):
+ inputRows_(ir), inputCols_(ic), outputRows_(or_), outputCols_(oc),
+ psize_(ps) {
+ }
+ ~Myself() {
}
};
-
+
Self<Myself> const self;
protected:
/*!
@@ -48,22 +54,18 @@ protected:
*/
Transformation(size_t inputRows, size_t inputCols,
size_t outputRows, size_t outputCols,
- size_t psize): self(true) {
- self()-> inputRows_ = inputRows;
- self()-> inputCols_ = inputCols;
- self()->outputRows_ = outputRows;
- self()->outputCols_ = outputCols;
- self()->psize_ = psize;
+ size_t psize):
+ self(Myself(inputRows, inputCols, outputRows, outputCols, psize)) {
}
-
+
/*!
* Construct and copy setings from another transformation class.
* @param [in] b Specify where to copy the informations.
*/
- Transformation(Transformation const& b): self(false) {
- copyFrom(b);
+ Transformation(Transformation const& b):
+ self(b.self, Self<Myself>::COPY_FROM) {
}
-
+
/*!
* @brief Copy from the specified one
*
@@ -74,9 +76,9 @@ protected:
self().copyFrom(b.self);
return *this;
}
-
+
/*!
- * @brief Ceference from the specified one
+ * @brief reference from the specified one
*
* @param [in] b The specified one
* @return \c *this
@@ -127,7 +129,7 @@ public:
size_t outputCols() const {
return self->outputCols_;
}
-
+
/*!
* @brief Return the number of parameters.
*
@@ -230,6 +232,6 @@ public:
}
};
-}
+} // meow
#endif // math_Transformation_H__
diff --git a/meowpp/math/Transformations.h b/meowpp/math/Transformations.h
index b712558..b9583f9 100644
--- a/meowpp/math/Transformations.h
+++ b/meowpp/math/Transformations.h
@@ -50,17 +50,14 @@ template<class Scalar>
class BallProjection: public Transformation<Scalar> {
private:
struct Myself {
- Scalar radius_;
size_t dimension_;
+ Scalar radius_;
- Myself() {
+ Myself(size_t d): dimension_(1), radius_(1) {
}
- ~Myself() {
+ Myself(size_t d, Scalar const& r): dimension_(d), radius_(r) {
}
- Myself& copyFrom(Myself const& b) {
- radius_ = b.radius_;
- dimension_ = b.dimension_;
- return *this;
+ Myself(Myself const& m): dimension_(m.dimension_), radius_(m.radius_) {
}
};
@@ -70,18 +67,16 @@ public:
* Constructor, copy settings from given BallProjection
* @param [in] b another ball projection class
*/
- BallProjection(BallProjection const& b):
- Transformation<Scalar>(b), self(false) {
- copyFrom(b);
+ BallProjection(BallProjection const& b): Transformation<Scalar>(b),
+ self(b.self, Self<Myself>::COPY_FROM) {
}
/*!
* Constructor and setup, radius = 1
* @param [in] d Dimension of the input/output vector
*/
- BallProjection(size_t d): self(true),
- Transformation<Scalar>(d, 1, d, 1, 1) {
- self()->dimension_ = d;
+ BallProjection(size_t d): Transformation<Scalar>(d, 1, d, 1, 1),
+ self(Myself(d)) {
radius(1);
}
@@ -90,9 +85,8 @@ public:
* @param [in] d Dimension of the input/output vector
* @param [in] r Radius of the hyper-sphere
*/
- BallProjection(size_t d, Scalar const& r):
- Transformation<Scalar>(d, 1, d, 1, 1), self(true) {
- self()->dimension_ = d;
+ BallProjection(size_t d, Scalar const& r): Transformation<Scalar>(d,1,d,1,1),
+ self(Myself(d, r)) {
radius(r);
}
@@ -334,41 +328,40 @@ private:
Myself() {
}
- ~Myself() {
+
+ Myself(size_t d, Scalar f): focal_(f), dimension_(d) {
}
- Myself& copyFrom(Myself const& b) {
- focal_ = b.focal_;
- dimension_ = b.dimension_;
- return *this;
+
+ Myself(Myself const& b): focal_(b.focal_), dimension_(b.dimension_) {
+ }
+
+ ~Myself() {
}
};
- Self<Myself> const& self;
+ Self<Myself> const self;
public:
/*!
* Constructor, focal = 1
*/
PhotoProjection(size_t dimension):
- Transformation<Scalar>(dimension, 1, dimension, 1, 1), self(true) {
- self()->dimension_ = dimension;
- focal(1);
+ Transformation<Scalar>(dimension, 1, dimension, 1, 1),
+ self(Myself(dimension, 1)) {
}
/*!
* Constructor
*/
PhotoProjection(size_t dimension, Scalar const& f):
- Transformation<Scalar>(dimension, 1, dimension, 1, 1), self(true) {
- self()->dimension_ = dimension;
- focal(f);
+ Transformation<Scalar>(dimension, 1, dimension, 1, 1),
+ self(Myself(dimension, f)) {
}
/*!
* Constructor, copy settings from another PhotoProjection.
*/
- PhotoProjection(PhotoProjection const& p):
- Transformation<Scalar>(p), self(false) {
- self().copyFrom(p.self);
+ PhotoProjection(PhotoProjection const& p): Transformation<Scalar>(p),
+ self(p.self, Self<Myself>::COPY_FROM) {
}
/*!
@@ -510,7 +503,6 @@ public:
* .
* Then the jacobian matrix is like below: \n
* \f[
- * f \times
* \left[
* \begin{array}{c}
* \frac{-x_1}{x_N} \\
diff --git a/meowpp/math/Vector.h b/meowpp/math/Vector.h
index d387c2b..caa64fd 100644
--- a/meowpp/math/Vector.h
+++ b/meowpp/math/Vector.h
@@ -3,7 +3,6 @@
#include "../Self.h"
#include "Matrix.h"
-#include "utility.h"
#include <vector>
@@ -18,6 +17,9 @@ namespace meow {
*/
template<class Scalar>
class Vector {
+public:
+ typedef typename Matrix<Scalar>::EntryRefK ScalarRefK;
+ typedef typename Matrix<Scalar>::EntryRef ScalarRef ;
private:
Matrix<Scalar> matrix_;
public:
@@ -26,9 +28,9 @@ public:
*
* With \b dimension=0, which means \b invalid.
*/
- Vector(){
+ Vector() {
}
-
+
/*!
* @brief constructor
*
@@ -36,10 +38,9 @@ public:
*
* @param [in] v another vector
*/
- Vector(Vector const& v) {
- matrix_.copyFrom(v.matrix_);
+ Vector(Vector const& v): matrix_(v.matrix_) {
}
-
+
/*!
* @brief constructor
*
@@ -47,22 +48,9 @@ public:
*
* @param [in] m matrix
*/
- Vector(Matrix<Scalar> const& m) {
- matrix_.copyFrom(m.col(0));
- }
-
- /*!
- * @brief constructor
- *
- * From matrix's \a i-th column
- *
- * @param [in] m matrix
- * @param [in] i i-th
- */
- Vector(Matrix<Scalar> const& m, size_t i) {
- matrix_.copyFrom(m.col(i));
+ Vector(Matrix<Scalar> const& m): matrix_(m.col(0)) {
}
-
+
/*!
* @brief constructor
*
@@ -70,27 +58,25 @@ public:
*
* @param [in] v vector
*/
- Vector(std::vector<Scalar> const& v) {
- matrix_.size(v.size(), 1, Scalar(0));
+ Vector(std::vector<Scalar> const& v): matrix_(v.size(), 1, Scalar(0)) {
for (size_t i = 0, I = v.size(); i < I; i++) {
matrix_.entry(i, 0, v[i]);
}
}
-
+
/*!
* @brief constructor
- *
+ *
* setup dimension and inital value
*
* @param [in] d dimension
* @param [in] e inital value
*/
- Vector(size_t d, Scalar const& e) {
- matrix_.reset(d, 1, e);
+ Vector(size_t d, Scalar const& e): matrix_(d, 1, e) {
}
//! @brief destructor
- ~Vector(){
+ ~Vector() {
}
//! @brief copy from ...
@@ -114,7 +100,7 @@ public:
size_t dimension() const {
return matrix_.rows();
}
-
+
/*!
* @brief resize the dimension
*
@@ -126,7 +112,7 @@ public:
matrix_.rows(d, s);
return dimension();
}
-
+
/*!
* @brief Return whether \c dimension>0 is true or not
* @return \c true/false
@@ -134,12 +120,12 @@ public:
bool valid() const {
return (dimension() > 0);
}
-
+
//! @brief return \a i -th entry
Scalar entry(size_t i) const {
return matrix_.entry(i, 0);
}
-
+
/*!
* @brief change \a i -th entry
*
@@ -151,6 +137,11 @@ public:
return entry(i);
}
+ //! @brief return \a i -th entry with non-constant type
+ ScalarRef entryGet(size_t i) {
+ return matrix_.entryGet(i);
+ }
+
/*!
* @brief change \a i -th to \a j -th entries
*
@@ -159,11 +150,11 @@ public:
* @param [in] s new value
*/
void entries(size_t i, size_t j, Scalar const& s) {
- for (size_t it = i; it <= j; it++) {
+ for (size_t it = i; it <= j; ++it) {
matrix_.entry(it, 0, s);
}
}
-
+
//! @brief subvector form i-th to j-th
Vector subVector(size_t i, size_t j) {
return Vector(matrix_.subMatrix(i, 0, j, 0));
@@ -173,7 +164,7 @@ public:
Vector positive() const {
return *this;
}
-
+
//! @brief return -\a (*this)
Vector negative() const {
return Vector(matrix_.negative());
@@ -183,7 +174,7 @@ public:
Vector add(Vector const& v) const {
return Vector(matrix_.add(v.matrix_));
}
-
+
//! @brief return \a (*this)-v
Vector sub(Vector const& v) const {
return Vector(matrix_.sub(v.matrix_));
@@ -193,7 +184,7 @@ public:
Vector mul(Scalar const& s) const {
return Vector(matrix_.mul(s));
}
-
+
//! @brief return \a (*this)/s , where s is a scalar
Vector div(Scalar const& s) const {
return Vector(matrix_.div(s));
@@ -208,17 +199,17 @@ public:
Scalar length() const {
return Scalar(sqrt((double)length2()));
}
-
+
//! @brief same as \a (*this).dot(*this)
Scalar length2() const {
return dot(*this);
}
-
+
//! @brief return a normalize form of itself
Vector normalize() const {
return div(length());
}
-
+
//! @brief Let itself be normalize form
Vector& normalized() {
copyFrom(normalize());
@@ -229,48 +220,48 @@ public:
Vector& operator=(Vector const& v) {
return copyFrom(v);
}
-
+
//! @brief same as entry(i)
Scalar operator()(size_t i) const {
return entry(i);
}
-
+
//! @brief same as positive()
Vector operator+() const {
return positive();
}
-
+
//! @brief same as negative()
Vector operator-() const {
return negative();
}
-
+
//! @brief same as add(v)
Vector operator+(Vector const& v) const {
return add(v);
}
-
+
//! @brief same as sub(v)
Vector operator-(Vector const& v) const {
return sub(v);
}
-
+
//! @brief same as dot(v)
Scalar operator*(Vector const& v) const {
return dot(v);
}
-
+
//! @brief same as mul(s)
Vector operator*(Scalar const& s) const {
return mul(s);
}
-
+
//! @brief same as div(s)
Vector operator/(Scalar const& s) const {
return div(s);
}
};
-}
+} // meow
#endif // math_Vector_H__
diff --git a/meowpp/math/methods.h b/meowpp/math/methods.h
index 4a47d33..5b67594 100644
--- a/meowpp/math/methods.h
+++ b/meowpp/math/methods.h
@@ -92,7 +92,7 @@ inline std::vector<Data> ransac(std::vector<Data> const& data,
}
-/*!
+/*
* @brief Run the \b Levenberg-Marquardt method to solve a non-linear
* least squares problem.
*
@@ -159,23 +159,72 @@ inline std::vector<Data> ransac(std::vector<Data> const& data,
*
* @author cat_leopard
*/
-template<class Scalar, class F, class J, class I, class Stop>
-inline Vector<Scalar> levenbergMarquardt(F const& func,
- J const& jaco,
- I const& iden,
+template<class Scalar, class Function>
+inline Vector<Scalar> levenbergMarquardt(Function const& f,
Vector<Scalar> const& init,
- Stop const& stop,
- int counter = -1) {
- Vector<Scalar> ans(init);
- for(Vector<Scalar> rv;
- !stop((rv = func(ans)).length2()) && counter != 0; counter--) {
- Matrix<Scalar> j(jaco(ans)), jt(j.transpose());
- Matrix<Scalar> i(iden(ans));
- ans = ans - Vector<Scalar>((jt * j + i).inverse() * jt * rv.matrix());
+ int counter = -1) {
+ Vector<Scalar> ans(init), residure_v;
+ for ( ; counter != 0 && !f.accept(residure_v = f.residure(ans)); --counter) {
+ Matrix<Scalar> m_j (f.jacobian(ans));
+ Matrix<Scalar> m_jt(m_j.transpose());
+ Matrix<Scalar> m(m_j * m_jt), M;
+ for (int i = 1; M.valid() == false; i++) {
+ M = (m + f.diagonal(ans, i)).inverse();
+ }
+ ans = ans - M * m_jt * residure_v;
}
return ans;
}
+// residure
+// jacobian
+// identity
+template<class Scalar, class Function>
+inline Vector<Scalar> levenbergMarquardtTraining(Function & f,
+ Vector<Scalar> const& init,
+ Scalar const& init_mu,
+ Scalar const& mu_pow,
+ Scalar const& er_max,
+ int retry_number,
+ int counter) {
+ if (retry_number == 0) retry_number = 1;
+ Vector<Scalar> ans_now(init), rv_now(f.residure(ans_now));
+ Vector<Scalar> ans_nxt , rv_nxt;
+ Scalar er_now(rv_now.length2());
+ Scalar er_nxt;
+ Vector<Scalar> ans_best(ans_now);
+ Scalar er_best ( er_now);
+ Matrix<Scalar> m_ja, m_jt, m, iden(f.identity());
+ Scalar mu(init_mu);
+ for ( ; counter != 0 && er_now > er_max; --counter) {
+ m_ja = f.jacobian();
+ m_jt = m_ja.transpose();
+ m = m_jt * m_ja;
+ bool good = false;
+ for (int i = 0; i != retry_number; ++i, mu = mu * mu_pow) {
+ ans_nxt = ans_now + (m + iden * mu).inverse() * m_jt * rv_now.matrix();
+ rv_nxt = f.residure(ans_nxt);
+ er_nxt = rv_nxt.length2();
+ if (er_nxt <= er_now) {
+ good = true;
+ break;
+ }
+ }
+ if (good) {
+ mu = mu / mu_pow;
+ }
+ mu = inRange(0.0000001, 100.0, mu);
+ ans_now = ans_nxt;
+ rv_now = rv_nxt;
+ er_now = er_nxt;
+ if (er_now < er_best) {
+ ans_best = ans_now;
+ er_best = er_now;
+ }
+ }
+ return ans_best;
}
+} // meow
+
#endif // math_methods_H__
diff --git a/meowpp/math/utility.h b/meowpp/math/utility.h
index 43b4785..d153b68 100644
--- a/meowpp/math/utility.h
+++ b/meowpp/math/utility.h
@@ -6,7 +6,7 @@
#include <algorithm>
#include <cmath>
-namespace meow{
+namespace meow {
//! 圓周率...
static const double PI = 3.14159265358979323846264338327950288;
@@ -15,7 +15,7 @@ static const double PI = 3.14159265358979323846264338327950288;
* @brief 如果abs(輸入的數值) < eps, 則回傳0, 否則回傳輸入的數值
*/
template<class T>
-inline T noEPS(T value, T eps = 1e-9){
+inline T noEPS(T value, T eps = 1e-9) {
T epsp((eps < T(0)) ? -eps : eps);
return ((value < -epsp || value > epsp) ? value : T(0));
}
@@ -24,7 +24,7 @@ inline T noEPS(T value, T eps = 1e-9){
* @brief \c (value-lower)/(upper-lower)
*/
template<class T>
-inline T normalize(T lower, T upper, T value){
+inline T normalize(T lower, T upper, T value) {
return (value - lower) / (upper - lower);
}
@@ -32,7 +32,7 @@ inline T normalize(T lower, T upper, T value){
* @brief \c (lower+_ratio*(upper-lower))
*/
template<class T>
-inline T denormalize(T lower, T upper, T _ratio){
+inline T denormalize(T lower, T upper, T _ratio) {
return lower + _ratio * (upper - lower);
}
@@ -40,7 +40,7 @@ inline T denormalize(T lower, T upper, T _ratio){
* @brief \c denormalize(l2,u2,normalize(l1,u1,m1))
*/
template<class T>
-inline T ratioMapping(T l1, T u1, T m1, T l2, T u2){
+inline T ratioMapping(T l1, T u1, T m1, T l2, T u2) {
return denormalize(l2, u2, normalize(l1, u1, m1));
}
@@ -48,15 +48,23 @@ inline T ratioMapping(T l1, T u1, T m1, T l2, T u2){
* @brief \c std::min(mx,std::max(mn,v))
*/
template<class T>
-inline T inRange(T const& mn, T const& mx, T const& v){
+inline T inRange(T const& mn, T const& mx, T const& v) {
return std::min(mx, std::max(mn, v));
}
/*!
+ * @brief (mn <= x && x <= mx)
+ */
+template<class T>
+inline T isInRange(T const& mn, T const& mx, T const& x) {
+ return (mn <= x && x <= mx);
+}
+
+/*!
* @brief \c x*x
*/
template<class T>
-inline T squ(T const& x){
+inline T squ(T const& x) {
return x * x;
}
@@ -64,7 +72,7 @@ inline T squ(T const& x){
* @brief \c x*x*x
*/
template<class T>
-inline T cub(T const& x){
+inline T cub(T const& x) {
return x * x * x;
}
@@ -72,22 +80,22 @@ inline T cub(T const& x){
* @brief 只將 \c sigs 個標準差以內的數據拿來取平均
*/
template<class T>
-inline double average(T const& beg, T const& end, double sigs){
+inline double average(T const& beg, T const& end, double sigs) {
int N = 0;
double av = 0;
- for(T it = beg; it != end; it++, N++){
+ for (T it = beg; it != end; ++it, ++N) {
av += *it;
}
av /= N;
double sig = 0;
- for(T it = beg; it != end; it++){
+ for (T it = beg; it != end; ++it) {
sig += (*it - av) * (*it - av);
}
sig = sqrt(sig / N);
double lower = av - sig * sigs, upper = av + sig * sigs;
double ret = 0, retn = 0;
- for(T it = beg; it != end; it++){
- if(lower <= *it && *it <= upper){
+ for (T it = beg; it != end; ++it) {
+ if (lower <= *it && *it <= upper) {
ret += *it;
retn++;
}
@@ -99,30 +107,30 @@ inline double average(T const& beg, T const& end, double sigs){
* @brief 只將 \c sigs 個標準差以內的數據拿來取平均, 不過這次用 \c p 來加權平均
*/
template<class T>
-inline double average(T const& beg, T const& end, T const& p, double sigs){
+inline double average(T const& beg, T const& end, T const& p, double sigs) {
int N = 0;
double ps = 0;
- for(T it = beg, ip = p; it != end; it++, N++, ip++){
+ for (T it = beg, ip = p; it != end; ++it, ++N, ++ip) {
ps += *ip;
}
double av = 0;
- for(T it = beg, ip = p; it != end; it++, ip++){
+ for (T it = beg, ip = p; it != end; ++it, ++ip) {
av += *it * *ip / ps;
}
double sig = 0;
- for(T it = beg, ip = p; it != end; it++, ip++){
+ for (T it = beg, ip = p; it != end; ++it, ++ip) {
sig += *ip / ps * (*it - av) * (*it - av);
}
sig = sqrt(sig);
double lower = av - sig * sigs, upper = av + sig * sigs;
double ret = 0, retn = 0;
- for(T it = beg, ip = p; it != end; it++, ip++){
- if(lower <= *it && *it <= upper){
+ for (T it = beg, ip = p; it != end; ++it, ++ip) {
+ if (lower <= *it && *it <= upper) {
ret += *it * *ip;
retn += *ip;
}
}
- if(retn <= 1e-10) return av;
+ if (retn <= 1e-10) return av;
return ret / retn;
}
@@ -130,10 +138,10 @@ inline double average(T const& beg, T const& end, T const& p, double sigs){
* @brief 就只是個取絕對值
*/
template<class T>
-inline T tAbs(T const& t){
+inline T tAbs(T const& t) {
return (t < 0 ? -t : t);
}
-}
+} // meow
#endif // math_utility_H__
diff --git a/meowpp/oo/ObjArray.h b/meowpp/oo/ObjArray.h
index 4417524..b58b89c 100644
--- a/meowpp/oo/ObjArray.h
+++ b/meowpp/oo/ObjArray.h
@@ -37,19 +37,19 @@ private:
public:
ObjArray(): self(true) {
}
-
+
ObjArray(ObjArray const& a): self(false) {
self().copyFrom(a.self);
}
-
+
ObjArray(std::vector<T> const& a): self(true) {
self()->array_ = a;
}
-
+
ObjArray(size_t sz, T const& e): self(true) {
self()->array_.resize(sz, e);
}
-
+
~ObjArray() {
}
@@ -79,7 +79,7 @@ public:
self()->array_.resize(res);
return size();
}
-
+
void clear() {
self()->array_.clear();
}
@@ -96,7 +96,7 @@ public:
self()->array_.push_back(e);
return entry(size() - 1);
}
-
+
bool popBack() {
if (empty()) return false;
self()->array_.pop_back();
@@ -106,11 +106,11 @@ public:
ObjArray& operator=(ObjArray const& a) {
return copyFrom(a);
}
-
+
T const& operator[](size_t i) const {
return self->array_[i];
}
-
+
T& operator[](size_t i) {
return self()->array_[i];
}
@@ -128,7 +128,7 @@ public:
}
return true;
}
-
+
bool read(FILE* f, bool bin, unsigned int fg) {
size_t sz;
if (bin) {
@@ -143,19 +143,19 @@ public:
}
return true;
}
-
+
ObjBase* create() const {
return new ObjArray();
}
-
+
ObjBase* copyFrom(ObjBase const* b) {
return &(copyFrom(*b));
}
-
+
char const* ctype() const {
return typeid(*this).name();
}
-
+
std::string type() const {
return std::string(ctype());
}
diff --git a/meowpp/oo/ObjBase.h b/meowpp/oo/ObjBase.h
index 974fdf1..0ae9427 100644
--- a/meowpp/oo/ObjBase.h
+++ b/meowpp/oo/ObjBase.h
@@ -2,11 +2,10 @@
#define oo_ObjBase_H__
#include <cstdio>
-
#include <typeinfo>
#include <string>
-namespace meow{
+namespace meow {
/*!
* @brief 一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能
@@ -18,26 +17,80 @@ protected:
ObjBase(){ }
public:
virtual ~ObjBase(){ }
- //
- virtual bool write(FILE* f,bool bin,unsigned int fg) const { return false; }
- virtual bool read(FILE* f,bool bin,unsigned int fg) { return false; }
- //
- virtual ObjBase* create() const { return NULL; }
- virtual ObjBase* copyFrom(ObjBase const* b) { (*this) = (*b); return this; }
- //
- virtual char const* ctype() const{
- static char const* ptr = typeid(*this).name();
- return ptr;
- }
- virtual std::string type() const{ return std::string(ctype()); }
- //
- static char const* ctypeBase(){
- static char const* ptr = typeid(ObjBase).name();
- return ptr;
- }
- static std::string typeBase(){ return std::string(ctypeBase()); }
+
+ /*!
+ * @brief 將物件寫入檔案, 預設implement為直接回傳 \c false
+ *
+ * @param [in] f 檔案
+ * @param [in] bin 是否為binary模式
+ * @param [in] fg 使用者自訂的argument
+ * @return 成功或失敗
+ */
+ virtual bool write(FILE* f, bool bin, unsigned int fg) const {
+ return false;
+ }
+
+ /*!
+ * @brief 將物件從檔案讀出, 預設implement為直接回傳 \c false
+ *
+ * @param [in] f 檔案
+ * @param [in] bin 是否為binary模式
+ * @param [in] fg 使用者自訂的argument
+ * @return 成功或失敗
+ */
+ virtual bool read(FILE* f, bool bin, unsigned int fg) {
+ return false;
+ }
+
+ /*!
+ * @brief 回傳一個new出來的物件, 預設implement為直接回傳 \c NULL
+ */
+ virtual ObjBase* create() const {
+ return NULL;
+ }
+
+ /*!
+ * @brief 複製, 預設使用operator=
+ *
+ * @param [in] b 資料來源
+ * @return \c this
+ */
+ virtual ObjBase* copyFrom(ObjBase const* b) {
+ (*this) = (*b);
+ return this;
+ }
+
+ /*!
+ * @brief 用C-style string回傳這個class的type name
+ */
+ virtual char const* ctype() const {
+ return typeid(*this).name();
+ }
+
+ /*!
+ * @brief 用std::string回傳這個class的type name
+ */
+ virtual std::string type() const {
+ static std::string s(ctype());
+ return s;
+ }
+
+ /*!
+ * @brief 用C-style string回傳base的type name
+ */
+ static char const* ctypeBase() {
+ return typeid(ObjBase).name();
+ }
+
+ /*!
+ * @brief 用std::string回傳base的type name
+ */
+ static std::string typeBase() {
+ static std::string s(ctypeBase());
+ return s;
+ }
};
-}
+} // meow
#endif // oo_ObjBase_H__
diff --git a/meowpp/oo/ObjSelector.h b/meowpp/oo/ObjSelector.h
index 7664a11..58d86a0 100644
--- a/meowpp/oo/ObjSelector.h
+++ b/meowpp/oo/ObjSelector.h
@@ -11,7 +11,7 @@
#include <cstdlib>
#include <cstdio>
-namespace meow{
+namespace meow {
/*!
* @brief 利用register的概念, 達到runtime用string選擇要new的class
@@ -186,7 +186,7 @@ public:
* @brief 從檔案中讀取一個物件(該物件必須要有註冊過)
*/
static ObjBase* read(FILE* f, bool binary) {
- char name[2048];
+ static char name[2048];
size_t len;
unsigned int fg;
if (binary) {
diff --git a/meowpp/oo/ObjTypes.h b/meowpp/oo/ObjTypes.h
index 4092d63..48a4a07 100644
--- a/meowpp/oo/ObjTypes.h
+++ b/meowpp/oo/ObjTypes.h
@@ -21,6 +21,8 @@ private:
Type data_;
Myself() {
}
+ Myself(Type const& t): data_(t) {
+ }
~Myself() {
}
Myself copyFrom(Myself const& b) {
@@ -30,17 +32,15 @@ private:
Self<data_> const self;
public:
//! @brief constructor
- ObjType(): self(true) {
+ ObjType(): self() {
}
- //! @brief constructor, 並且copy資料
- ObjType(ObjType const& a): self(false) {
- self().copyFrom(a.self);
+ //! @brief constructor, 並且給值
+ ObyType(Type const& t): self(Myself(t)) {
}
- //! @brief constructor, 並且給值
- ObyType(Type const& t): self(true) {
- self().data_ = t;
+ //! @brief constructor, 並且copy資料
+ ObjType(ObjType const& a): self(a.self, COPY_FROM) {
}
~ObjType() {
@@ -93,8 +93,7 @@ public:
}
char const* ctype() const {
- static char const* ptr = typeid(*this).name();
- return ptr;
+ return typeid(*this).name();
}
std::string type() const {
@@ -197,6 +196,6 @@ typedef ObjType<size_t , ReaderWriter_size_t> ObjSizeT;
typedef ObjType<double , ReaderWriter_double> ObjDouble;
typedef ObjType<std::string, ReaderWriter_string> ObjString;
-}
+} // meow
#endif // oo_ObjType_H__
diff --git a/meowpp/utility.h b/meowpp/utility.h
index b430dd8..83c7554 100644
--- a/meowpp/utility.h
+++ b/meowpp/utility.h
@@ -11,13 +11,35 @@
namespace meow {
/*!
+ * @brief 有.from.first, .from.second, .to.first, .to.second
+ *
+ * @author cathook
+ */
+template<class F1, class F2 = F1, class T1 = F1, class T2 = T1>
+struct PairToPair {
+ std::pair<F1, F2> from;
+ std::pair<T1, T2> to;
+
+ PairToPair() {
+ }
+ PairToPair(PairToPair const& pp): from(pp.from), to(pp.to) {
+ }
+ PairToPair(F1 const& f1, F2 const& f2, T1 const& t1, T2 const& t2):
+ from(f1, f2), to(t1, t2) {
+ }
+ bool operator==(PairToPair const& p) const {
+ return (from == p.from && to == p.to);
+ }
+};
+
+/*!
* @brief 類似C的printf, 不過是將格式化的字串丟到 \c std::string 裡回傳
- *
+ *
* @param [in] fmt,... 同printf
* @return 一個 \c std::string
* @warning 目前格式化字串最長只支援8191個字元
*/
-inline std::string stringPrintf(char const * fmt, ...){
+inline std::string stringPrintf(char const * fmt, ...) {
char str[8192];
va_list args;
va_start(args, fmt);
@@ -28,7 +50,7 @@ inline std::string stringPrintf(char const * fmt, ...){
/*!
* @brief 將輸入字串中的某個pattern取代成另一個pattern
- *
+ *
* @param [in] str 輸入的字串
* @param [in] from 要被取代的pattern
* @param [in] to 將要取代的pattern
@@ -37,10 +59,10 @@ inline std::string stringPrintf(char const * fmt, ...){
*/
inline std::string stringReplace(std::string str,
std::string const& from,
- std::string const& to){
+ std::string const& to) {
std::string out = str;
int len = from.length();
- for(size_t pos; (pos = out.find(from)) != std::string::npos; ){
+ for (size_t pos; (pos = out.find(from)) != std::string::npos; ) {
out.replace(pos, len, to);
}
return out;
@@ -56,14 +78,14 @@ inline std::string stringReplace(std::string str,
* @note 參數中所有的字串都是用\c cstring 來傳遞,
* 也就是 \c char \c const* 型態
*/
-inline bool cstringEndWith(char const* str, int n, ...){
+inline bool cstringEndWith(char const* str, int n, ...) {
int len = strlen(str);
va_list args;
va_start(args, n);
- for(int i = 0; i < n; i++){
+ for (int i = 0; i < n; i++) {
char const* arg = va_arg(args, char const*);
int arglen = strlen(arg);
- if(arglen <= len && strcmp(str + len - arglen, arg) == 0){
+ if (arglen <= len && strcmp(str + len - arglen, arg) == 0) {
return true;
}
}
@@ -87,7 +109,7 @@ debugPrintf_(\
inline void debugPrintf_(char const* file,
char const* func,
size_t line,
- char const* msg){
+ char const* msg) {
#ifdef DEBUG
fprintf(stderr, "%s[%d] %s >> %s", file, line, func, msg);
#endif // DEBUG
@@ -96,7 +118,7 @@ inline void debugPrintf_(char const* file,
/*!
* @brief 階層式輸出
*
- * 像是printf, 但多了一個 \b 巢狀 的概念, 例如:
+ * 像是printf, 但多了一個 \b 巢狀 的概念, 例如:
*
* @code
* message1(level = 0)
@@ -120,7 +142,7 @@ inline void debugPrintf_(char const* file,
* @param [in] fmt, ... 跟printf一樣
* @return 無
*/
-inline void messagePrintf(int level_change, char const* fmt, ...){
+inline void messagePrintf(int level_change, char const* fmt, ...) {
static int level = 0;
static int last_level = -5;
char str[8192];
@@ -128,14 +150,15 @@ inline void messagePrintf(int level_change, char const* fmt, ...){
va_start(args, fmt);
vsnprintf(str, 8192, fmt, args);
va_end(args);
- if(last_level == 1 && level_change == -1){
+ if (last_level == 1 && level_change == -1) {
printf(" ...%s\n", str);
- }else{
- if(last_level == 1) printf("\n");
+ }
+ else {
+ if (last_level == 1) printf("\n");
int level2 = level + (level_change == -1 ? -1 : 0);
- for(int i = 0; i < level2; i++) printf("| ");
+ for (int i = 0; i < level2; i++) printf("| ");
printf("%s%s", (level_change == -1 ? "..." : ""), str);
- if(level_change != 1) printf("\n");
+ if (level_change != 1) printf("\n");
}
level += level_change;
last_level = level_change;
@@ -145,32 +168,31 @@ inline void messagePrintf(int level_change, char const* fmt, ...){
/*!
* @brief 將兩個字串用人類習慣的檔名排序方式排序
*
- * 例如 a1 \< a2 \< a3 \< a10 \< a12 \< a20,
+ * 例如 a1 \< a2 \< a3 \< a10 \< a12 \< a20,
* 而不是 a1 \< a10 \< a12 \< a2 \< a20 \< a3
*
* @param [in] f1 第一個字串
* @param [in] f2 第二個字串
* @return \c true/false 表 \b f1是否該排在f2前面
*/
-inline bool filenameCompare(std::string const& f1, std::string const& f2){
+inline bool filenameCompare(std::string const& f1, std::string const& f2) {
char const* s1 = f1.c_str();
char const* s2 = f2.c_str();
int l1 = f1.length();
int l2 = f2.length();
int i1, i2;
- for(i1 = i2 = 0; i1 < l1 || i2 < l2; i1++, i2++){
- if(isdigit(s1[i1]) && isdigit(s2[i2])){
+ for (i1 = i2 = 0; i1 < l1 || i2 < l2; i1++, i2++) {
+ if (isdigit(s1[i1]) && isdigit(s2[i2])) {
int n1 = atoi(s1 + i1);
int n2 = atoi(s2 + i2);
- if(n1 != n2){
+ if (n1 != n2)
return (n1 < n2);
- }
while(i1 + 1 < l1 && isdigit(s1[i1 + 1])) i1++;
while(i2 + 1 < l2 && isdigit(s2[i2 + 1])) i2++;
- }else{
- if(s1[i1] != s2[i2]){
+ }
+ else {
+ if(s1[i1] != s2[i2])
return s1[i1] < s2[i2];
- }
}
}
return false;