00001 #ifndef __J2K__REPEAT_HPP__
00002 #define __J2K__REPEAT_HPP__
00003
00004
00005
00006
00007 #define REPEAT_2(x) x x
00008 #define REPEAT_3(x) x x x
00009 #define REPEAT_4(x) x x x x
00010 #define REPEAT_5(x) x x x x x
00011 #define REPEAT_6(x) x x x x x x
00012 #define REPEAT_7(x) x x x x x x x
00013 #define REPEAT_8(x) x x x x x x x x
00014 #define REPEAT_9(x) x x x x x x x x x
00015 #define REPEAT_10(x) x x x x x x x x x x
00016 #define REPEAT_11(x) x x x x x x x x x x x
00017 #define REPEAT_12(x) x x x x x x x x x x x x
00018 #define REPEAT_13(x) x x x x x x x x x x x x x
00019 #define REPEAT_14(x) x x x x x x x x x x x x x x
00020 #define REPEAT_15(x) x x x x x x x x x x x x x x x
00021 #define REPEAT_16(x) x x x x x x x x x x x x x x x x
00022 #define REPEAT_17(x) x x x x x x x x x x x x x x x x x
00023 #define REPEAT_18(x) x x x x x x x x x x x x x x x x x x
00024 #define REPEAT_19(x) x x x x x x x x x x x x x x x x x x x
00025 #define REPEAT_20(x) x x x x x x x x x x x x x x x x x x x x
00026 #define REPEAT_21(x) x x x x x x x x x x x x x x x x x x x x x
00027 #define REPEAT_22(x) x x x x x x x x x x x x x x x x x x x x x x
00028 #define REPEAT_23(x) x x x x x x x x x x x x x x x x x x x x x x x
00029 #define REPEAT_24(x) x x x x x x x x x x x x x x x x x x x x x x x x
00030 #define REPEAT_25(x) x x x x x x x x x x x x x x x x x x x x x x x x x
00031 #define REPEAT_26(x) x x x x x x x x x x x x x x x x x x x x x x x x x x
00032 #define REPEAT_27(x) x x x x x x x x x x x x x x x x x x x x x x x x x x x
00033 #define REPEAT_28(x) x x x x x x x x x x x x x x x x x x x x x x x x x x x x
00034 #define REPEAT_29(x) x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
00035 #define REPEAT_30(x) x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
00036
00037
00038 #define REPEAT_31(x) REPEAT_20 (x) REPEAT_11 (x)
00039 #define REPEAT_32(x) REPEAT_20 (x) REPEAT_12 (x)
00040 #define REPEAT_33(x) REPEAT_20 (x) REPEAT_13 (x)
00041 #define REPEAT_34(x) REPEAT_20 (x) REPEAT_14 (x)
00042 #define REPEAT_35(x) REPEAT_20 (x) REPEAT_15 (x)
00043 #define REPEAT_36(x) REPEAT_20 (x) REPEAT_16 (x)
00044 #define REPEAT_37(x) REPEAT_20 (x) REPEAT_17 (x)
00045 #define REPEAT_38(x) REPEAT_20 (x) REPEAT_18 (x)
00046 #define REPEAT_39(x) REPEAT_20 (x) REPEAT_19 (x)
00047 #define REPEAT_40(x) REPEAT_20 (x) REPEAT_20 (x)
00048 #define REPEAT_41(x) REPEAT_20 (x) REPEAT_21 (x)
00049 #define REPEAT_42(x) REPEAT_20 (x) REPEAT_22 (x)
00050 #define REPEAT_43(x) REPEAT_20 (x) REPEAT_23 (x)
00051 #define REPEAT_44(x) REPEAT_20 (x) REPEAT_24 (x)
00052 #define REPEAT_45(x) REPEAT_20 (x) REPEAT_25 (x)
00053 #define REPEAT_46(x) REPEAT_20 (x) REPEAT_26 (x)
00054 #define REPEAT_47(x) REPEAT_20 (x) REPEAT_27 (x)
00055
00056 #define REPEAT_48(x) REPEAT_36 (x) REPEAT_12 (x)
00057 #define REPEAT_49(x) REPEAT_36 (x) REPEAT_13 (x)
00058 #define REPEAT_50(x) REPEAT_36 (x) REPEAT_14 (x)
00059 #define REPEAT_51(x) REPEAT_36 (x) REPEAT_15 (x)
00060 #define REPEAT_52(x) REPEAT_36 (x) REPEAT_16 (x)
00061 #define REPEAT_53(x) REPEAT_36 (x) REPEAT_17 (x)
00062 #define REPEAT_54(x) REPEAT_36 (x) REPEAT_18 (x)
00063 #define REPEAT_55(x) REPEAT_36 (x) REPEAT_19 (x)
00064 #define REPEAT_56(x) REPEAT_36 (x) REPEAT_20 (x)
00065 #define REPEAT_57(x) REPEAT_36 (x) REPEAT_21 (x)
00066 #define REPEAT_58(x) REPEAT_36 (x) REPEAT_22 (x)
00067 #define REPEAT_59(x) REPEAT_36 (x) REPEAT_23 (x)
00068 #define REPEAT_60(x) REPEAT_36 (x) REPEAT_24 (x)
00069 #define REPEAT_61(x) REPEAT_36 (x) REPEAT_25 (x)
00070
00071 #define REPEAT_62(x) REPEAT_52 (x) REPEAT_10 (x)
00072 #define REPEAT_63(x) REPEAT_52 (x) REPEAT_11 (x)
00073 #define REPEAT_64(x) REPEAT_52 (x) REPEAT_12 (x)
00074 #define REPEAT_65(x) REPEAT_52 (x) REPEAT_13 (x)
00075 #define REPEAT_66(x) REPEAT_52 (x) REPEAT_14 (x)
00076 #define REPEAT_67(x) REPEAT_52 (x) REPEAT_15 (x)
00077 #define REPEAT_68(x) REPEAT_52 (x) REPEAT_16 (x)
00078 #define REPEAT_69(x) REPEAT_52 (x) REPEAT_17 (x)
00079 #define REPEAT_70(x) REPEAT_52 (x) REPEAT_18 (x)
00080 #define REPEAT_71(x) REPEAT_52 (x) REPEAT_19 (x)
00081 #define REPEAT_72(x) REPEAT_52 (x) REPEAT_20 (x)
00082 #define REPEAT_73(x) REPEAT_52 (x) REPEAT_21 (x)
00083 #define REPEAT_74(x) REPEAT_52 (x) REPEAT_22 (x)
00084 #define REPEAT_75(x) REPEAT_52 (x) REPEAT_23 (x)
00085 #define REPEAT_76(x) REPEAT_52 (x) REPEAT_24 (x)
00086 #define REPEAT_77(x) REPEAT_52 (x) REPEAT_25 (x)
00087 #define REPEAT_78(x) REPEAT_52 (x) REPEAT_26 (x)
00088 #define REPEAT_79(x) REPEAT_52 (x) REPEAT_27 (x)
00089
00090 #define REPEAT_80(x) REPEAT_68 (x) REPEAT_12 (x)
00091 #define REPEAT_81(x) REPEAT_68 (x) REPEAT_13 (x)
00092 #define REPEAT_82(x) REPEAT_68 (x) REPEAT_14 (x)
00093 #define REPEAT_83(x) REPEAT_68 (x) REPEAT_15 (x)
00094 #define REPEAT_84(x) REPEAT_68 (x) REPEAT_16 (x)
00095 #define REPEAT_85(x) REPEAT_68 (x) REPEAT_17 (x)
00096 #define REPEAT_86(x) REPEAT_68 (x) REPEAT_18 (x)
00097 #define REPEAT_87(x) REPEAT_68 (x) REPEAT_19 (x)
00098 #define REPEAT_88(x) REPEAT_68 (x) REPEAT_20 (x)
00099 #define REPEAT_89(x) REPEAT_68 (x) REPEAT_21 (x)
00100 #define REPEAT_90(x) REPEAT_68 (x) REPEAT_22 (x)
00101 #define REPEAT_91(x) REPEAT_68 (x) REPEAT_23 (x)
00102 #define REPEAT_92(x) REPEAT_68 (x) REPEAT_24 (x)
00103 #define REPEAT_93(x) REPEAT_68 (x) REPEAT_25 (x)
00104 #define REPEAT_94(x) REPEAT_68 (x) REPEAT_26 (x)
00105 #define REPEAT_95(x) REPEAT_68 (x) REPEAT_27 (x)
00106
00107 #define REPEAT_96(x) REPEAT_84 (x) REPEAT_12 (x)
00108 #define REPEAT_97(x) REPEAT_84 (x) REPEAT_13 (x)
00109 #define REPEAT_98(x) REPEAT_84 (x) REPEAT_14 (x)
00110 #define REPEAT_99(x) REPEAT_84 (x) REPEAT_15 (x)
00111 #define REPEAT_100(x) REPEAT_84 (x) REPEAT_16 (x)
00112 #define REPEAT_101(x) REPEAT_84 (x) REPEAT_17 (x)
00113 #define REPEAT_102(x) REPEAT_84 (x) REPEAT_18 (x)
00114 #define REPEAT_103(x) REPEAT_84 (x) REPEAT_19 (x)
00115 #define REPEAT_104(x) REPEAT_84 (x) REPEAT_20 (x)
00116 #define REPEAT_105(x) REPEAT_84 (x) REPEAT_21 (x)
00117 #define REPEAT_106(x) REPEAT_84 (x) REPEAT_22 (x)
00118 #define REPEAT_107(x) REPEAT_84 (x) REPEAT_23 (x)
00119 #define REPEAT_108(x) REPEAT_84 (x) REPEAT_24 (x)
00120 #define REPEAT_109(x) REPEAT_84 (x) REPEAT_25 (x)
00121
00122 #define REPEAT_110(x) REPEAT_100 (x) REPEAT_10 (x)
00123 #define REPEAT_111(x) REPEAT_100 (x) REPEAT_11 (x)
00124 #define REPEAT_112(x) REPEAT_100 (x) REPEAT_12 (x)
00125 #define REPEAT_113(x) REPEAT_100 (x) REPEAT_13 (x)
00126 #define REPEAT_114(x) REPEAT_100 (x) REPEAT_14 (x)
00127 #define REPEAT_115(x) REPEAT_100 (x) REPEAT_15 (x)
00128 #define REPEAT_116(x) REPEAT_100 (x) REPEAT_16 (x)
00129 #define REPEAT_117(x) REPEAT_100 (x) REPEAT_17 (x)
00130 #define REPEAT_118(x) REPEAT_100 (x) REPEAT_18 (x)
00131 #define REPEAT_119(x) REPEAT_100 (x) REPEAT_19 (x)
00132 #define REPEAT_120(x) REPEAT_100 (x) REPEAT_20 (x)
00133 #define REPEAT_121(x) REPEAT_100 (x) REPEAT_21 (x)
00134 #define REPEAT_122(x) REPEAT_100 (x) REPEAT_22 (x)
00135 #define REPEAT_123(x) REPEAT_100 (x) REPEAT_23 (x)
00136 #define REPEAT_124(x) REPEAT_100 (x) REPEAT_24 (x)
00137 #define REPEAT_125(x) REPEAT_100 (x) REPEAT_25 (x)
00138 #define REPEAT_126(x) REPEAT_100 (x) REPEAT_26 (x)
00139
00140 #define REPEAT_127(x) REPEAT_116 (x) REPEAT_11 (x)
00141 #define REPEAT_128(x) REPEAT_116 (x) REPEAT_12 (x)
00142 #define REPEAT_129(x) REPEAT_116 (x) REPEAT_13 (x)
00143 #define REPEAT_130(x) REPEAT_116 (x) REPEAT_14 (x)
00144 #define REPEAT_131(x) REPEAT_116 (x) REPEAT_15 (x)
00145 #define REPEAT_132(x) REPEAT_116 (x) REPEAT_16 (x)
00146 #define REPEAT_133(x) REPEAT_116 (x) REPEAT_17 (x)
00147 #define REPEAT_134(x) REPEAT_116 (x) REPEAT_18 (x)
00148 #define REPEAT_135(x) REPEAT_116 (x) REPEAT_19 (x)
00149 #define REPEAT_136(x) REPEAT_116 (x) REPEAT_20 (x)
00150 #define REPEAT_137(x) REPEAT_116 (x) REPEAT_21 (x)
00151 #define REPEAT_138(x) REPEAT_116 (x) REPEAT_22 (x)
00152 #define REPEAT_139(x) REPEAT_116 (x) REPEAT_23 (x)
00153 #define REPEAT_140(x) REPEAT_116 (x) REPEAT_24 (x)
00154 #define REPEAT_141(x) REPEAT_116 (x) REPEAT_25 (x)
00155
00156 #define REPEAT_142(x) REPEAT_132 (x) REPEAT_10 (x)
00157 #define REPEAT_143(x) REPEAT_132 (x) REPEAT_11 (x)
00158 #define REPEAT_144(x) REPEAT_132 (x) REPEAT_12 (x)
00159 #define REPEAT_145(x) REPEAT_132 (x) REPEAT_13 (x)
00160 #define REPEAT_146(x) REPEAT_132 (x) REPEAT_14 (x)
00161 #define REPEAT_147(x) REPEAT_132 (x) REPEAT_15 (x)
00162 #define REPEAT_148(x) REPEAT_132 (x) REPEAT_16 (x)
00163 #define REPEAT_149(x) REPEAT_132 (x) REPEAT_17 (x)
00164 #define REPEAT_150(x) REPEAT_132 (x) REPEAT_18 (x)
00165 #define REPEAT_151(x) REPEAT_132 (x) REPEAT_19 (x)
00166 #define REPEAT_152(x) REPEAT_132 (x) REPEAT_20 (x)
00167 #define REPEAT_153(x) REPEAT_132 (x) REPEAT_21 (x)
00168 #define REPEAT_154(x) REPEAT_132 (x) REPEAT_22 (x)
00169 #define REPEAT_155(x) REPEAT_132 (x) REPEAT_23 (x)
00170 #define REPEAT_156(x) REPEAT_132 (x) REPEAT_24 (x)
00171 #define REPEAT_157(x) REPEAT_132 (x) REPEAT_25 (x)
00172 #define REPEAT_158(x) REPEAT_132 (x) REPEAT_26 (x)
00173 #define REPEAT_159(x) REPEAT_132 (x) REPEAT_27 (x)
00174 #define REPEAT_160(x) REPEAT_132 (x) REPEAT_28 (x)
00175
00176
00177
00178 #define REPEAT_256(x) REPEAT_128 (x) REPEAT_128 (x)
00179 #define REPEAT_512(x) REPEAT_256 (x) REPEAT_256 (x)
00180 #define REPEAT_1024(x) REPEAT_512 (x) REPEAT_512 (x)
00181 #define REPEAT_2048(x) REPEAT_1024 (x) REPEAT_1024 (x)
00182 #define REPEAT_4096(x) REPEAT_2048 (x) REPEAT_2048 (x)
00183 #define REPEAT_8192(x) REPEAT_4096 (x) REPEAT_4096 (x)
00184
00185
00186 #define REPEAT(count, what) REPEAT_##count (what)
00187
00188 #endif