Boost logo

Boost :

From: Andy Little (andy_at_[hidden])
Date: 2004-01-10 06:31:59


"Andy Little" <andy_at_[hidden]> wrote in message
news:btnh38$qt3$1_at_sea.gmane.org...

> Basically 7 dimensions --> 127 (I think) mask possibilities
> If interested Will try to look out the code.
>
> Results in a big header .... but gives fast compile.

Sample demo attached. VC7.1 only, basically a variable param class template
(Only works on deduced args)
Also have a "lash up" to create a header with all 127 specialisations for
pq.

regards
Andy Little

begin 666 var_params_demo.txt
M(VEN8VQU9&4\:6]S=')E86T^#0H-"FEN="!C;VYS="!/3D4@/2 Q.PT*:6YT
M(&-O;G-T(%173R ](#([#0II;G0_at_8V]N<W0_at_5$A2144@/2 T.PT*:6YT(&-O
M;G-T($9/55(@/2 X.PT*:6YT(&-O;G-T($9)5D4@/2 Q-CL-"FEN="!C;VYS
M="!325@@/2 S,CL-"FEN="!C;VYS="!3159%3B ](#8T.PT*#0HO+R!F;W)W
M87)D(&1E8VP-"B\O=F%R:6%B;&4_at_87)G<U]C86X_at_8F4@<W!E8VEA;&ES960-
M"B\O(&9O<B!A;GD@;G5M8F5R(&]F('!A<F%M<R M+3X-"G1E;7!L871E/ T*
M(" @(&EN="!$:6US0FET36%S:RP-"B @("!T>7!E;F%M92!$=6UM>0T*/@T*
M<W1R=6-T('9A<FEA8FQE7V%R9W,[#0H-"B\O($1U;6UY(')E86QI<V5D#0IT
M96UP;&%T93QI;G0L:6YT+&EN=#X-"G-T<G5C="!D=6UM>3-[?3L-"G1E;7!L
M871E/&EN="QI;G0L:6YT+&EN=#X-"G-T<G5C="!D=6UM>31[?3L-"G1E;7!L
M871E/&EN="QI;G0L:6YT+&EN="QI;G0L:6YT+&EN=#X-"G-T<G5C="!D=6UM
M>3=[?3L-"@T*+R]S<&5S:"!F;W(@=&AR964_at_87)G<PT*=&5M<&QA=&4\:6YT
M($]N92QI;G0_at_5'=O+&EN="!4:')E93X-"G-T<G5C="!V87)I86)L95]A<F=S
M#0H\(" @3TY%('Q45T\@?%1(4D5%+ T*(" @(&1U;6UY,SQ/;F4L5'=O+%1H
M<F5E/@T*/GL-"B @("!S=&%T:6,@:6YT(&-O;G-T(&]N92 ]($]N93L-"B @
M("!S=&%T:6,@:6YT(&-O;G-T('1W;R ](%1W;SL-"B @("!S=&%T:6,@:6YT
M(&-O;G-T('1H<F5E(#T_at_5&AR964[#0I].PT*+R]O=&AE<B!S<&5S:"!F;W(@
M=&AR964_at_87)G<PT*=&5M<&QA=&4\:6YT(%1H<F5E+&EN="!3:7_at_L:6YT(%-E
M=F5N/@T*<W1R=6-T('9A<FEA8FQE7V%R9W,-"CP@("!42%)%12!\4TE8('Q3
M159%3BP-"B @("!D=6UM>3,\5&AR964L4VEX+%-E=F5N/@T*/GL-"B @("!S
M=&%T:6,@:6YT(&-O;G-T('1H<F5E(#T_at_5&AR964[#0H@(" @<W1A=&EC(&EN
M="!C;VYS="!S:7@@/2!3:7@[#0H@(" @<W1A=&EC(&EN="!C;VYS="!S979E
M;B ](%-E=F5N.PT*?3L-"@T*=&5M<&QA=&4\:6YT(%1W;RQI;G0_at_1F]U<BQI
M;G0_at_1FEV92QI;G0_at_4VEX/@T*<W1R=6-T('9A<FEA8FQE7V%R9W,-"CP@("!4
M5T\@?"!&3U52('P_at_1DE612!\(%-)6"P-"B @("!D=6UM>30\5'=O+$9O=7(L
M1FEV92Q3:7@^#0H^>PT*(" @('-T871I8R!I;G0_at_8V]N<W0@='=O(#T_at_5'=O
M.PT*(" @('-T871I8R!I;G0_at_8V]N<W0_at_9F]U<B ]($9O=7([#0H@(" @<W1A
M=&EC(&EN="!C;VYS="!F:79E(#T_at_1FEV93L-"B @("!S=&%T:6,@:6YT(&-O
M;G-T('-I>" ](%-I>#L-"GT[#0H-"G1E;7!L871E/ T*(" @(&EN="!/;F4L
M:6YT(%1W;RQI;G0_at_5&AR964L#0H@(" @:6YT($9O=7(L:6YT($9I=F4L:6YT
M(%-I>"QI;G0_at_4V5V96X-"CX-"G-T<G5C="!V87)I86)L95]A<F=S/" -"B @
M(" Q,C<@+ T*(" @(&1U;6UY-SP-"B @(" @(" @3VYE+%1W;RQ4:')E92Q&
M;W5R+$9I=F4L4VEX+%-E=F5N#0H@(" @/B -"CY[#0H@(" @<W1A=&EC(&EN
M="!C;VYS="!O;F4@/2!/;F4[#0H@(" @<W1A=&EC(&EN="!C;VYS="!T=V\@
M/2!4=V\[#0H@(" @<W1A=&EC(&EN="!C;VYS="!T:')E92 ](%1H<F5E.PT*
M(" @('-T871I8R!I;G0_at_8V]N<W0_at_9F]U<B ]($9O=7([#0H@(" @<W1A=&EC
M(&EN="!C;VYS="!F:79E(#T_at_1FEV93L-"B @("!S=&%T:6,@:6YT(&-O;G-T
M('-I>" ](%-I>#L-"B @("!S=&%T:6,@:6YT(&-O;G-T('-E=F5N(#T_at_4V5V
M96X[#0I].PT*#0HO+V-O;7!I;&5R(&1E9'5C97,@:6YP=70@<&%R86US#0HO
M+R!F;W(@=&AE('-P96-I86QI<V%T:6]N(&]F('9A<FEA8FQE7V%R9W,-"B\O
M(&AE<F4@,PT*='EP961E9B!V87)I86)L95]A<F=S/"!/3D4@?%173R!\5$A2
M144L#0H@(" @(&1U;6UY,SPQ+#(L,R ^( T*/B!A<F=S,3(S.PT*#0HO+R!O
M=&AE<B S#0IT>7!E9&5F('9A<FEA8FQE7V%R9W,\(%1(4D5%?%-)6"!\4T56
M14XL#0H@(" @(&1U;6UY,SPS+#8L-R ^( T*/B!A<F=S,S8W.PT*#0HO+R!H
M97)E(#0-"G1Y<&5D968@=F%R:6%B;&5?87)G<SP@#0I45T\@?$9/55(@?$9)
M5D4@?"!325_at_L(&1U;6UY-#PR+#0L-2PV(#X-"B ^(&%R9W,R-#4V.PT*#0HO
M+R!H97)E(#<-"G1Y<&5D968@=F%R:6%B;&5?87)G<SP-"B!/3D5\5%=/?%1(
M4D5%('Q&3U52('Q&259%('P_at_4TE8('Q3159%3BP-"B @(" @(" @9'5M;7DW
M/#$L,BPS+#0L-2PV+#<@/B -"CYA<F=S,3(S-#4V-SL-"B @(" -"FEN="!M
M86EN*"D-"GL-"B @("!S=&0Z.F-O=70@/#P@='EP96ED*&%R9W,Q,C,I+FYA
M;64H*2 \/"=<;B<[#0H@(" @<W1D.CH_at_8V]U=" @/#P_at_87)G<S$R,SHZ;VYE
M(#P\("=<;B<[#0H@(" @<W1D.CH_at_8V]U=" @/#P_at_87)G<S$R,SHZ='=O(#P\
M("=<;B<[#0H@(" @<W1D.CH_at_8V]U=" @/#P_at_87)G<S$R,SHZ=&AR964@/#P@
M(EQN7&XB.PT*(" @( T*(" @('-T9#HZ8V]U=" \/"!T>7!E:60H87)G<S,V
M-RDN;F%M92_at_I(#P\)UQN)SL-"B @("!S=&0Z.B!C;W5T(" \/"!A<F=S,S8W
M.CIT:')E92 \/" G7&XG.PT*(" @('-T9#HZ(&-O=70@(#P\(&%R9W,S-C<Z
M.G-I>" \/" G7&XG.PT*(" @('-T9#HZ(&-O=70@(#P\(&%R9W,S-C<Z.G-E
M=F5N(#P\(")<;EQN(CL-"B @(" -"B @("!S=&0Z.F-O=70@/#P@='EP96ED
M*&%R9W,R-#4V*2YN86UE*"D@/#PG7&XG.PT*(" @('-T9#HZ8V]U=" \/"!A
M<F=S,C0U-CHZ='=O(#P\)UQN)SL-"B @("!S=&0Z.F-O=70@/#P_at_87)G<S(T
M-38Z.F9O=7(@/#PG7&XG.PT*(" @('-T9#HZ8V]U=" \/"!A<F=S,C0U-CHZ
M9FEV92 \/"=<;B<[#0H@(" @<W1D.CIC;W5T(#P\(&%R9W,R-#4V.CIS:7@@
M/#P@(")<;EQN(CL-"B @(" -"B @("!S=&0Z.F-O=70@/#P@='EP96ED*&%R
M9W,Q,C,T-38W*2YN86UE*"D@/#PG7&XG.PT*(" @('-T9#HZ(&-O=70@/#P@
M87)G<S$R,S0U-C<Z.F]N92 \/" G7&XG.PT*(" @('-T9#HZ(&-O=70@/#P@
M87)G<S$R,S0U-C<Z.G1W;R \/" G7&XG.PT*(" @('-T9#HZ8V]U=" \/"!A
M<F=S,3(S-#4V-SHZ=&AR964@/#PG7&XG.PT*(" @('-T9#HZ8V]U=" \/"!A
M<F=S,3(S-#4V-SHZ9F]U<B \/"=<;B<[#0H@(" @<W1D.CIC;W5T(#P\(&%R
M9W,Q,C,T-38W.CIF:79E(#P\)UQN)SL-"B @("!S=&0Z.F-O=70@/#P_at_87)G
M<S$R,S0U-C<Z.G-I>" \/"=<;B<[#0H@(" @<W1D.CIC;W5T(#P\(&%R9W,Q
M,C,T-38W.CIS979E;B \/"=<;B<[#0H@( T*#0H@(" @<F5T=7)N(# [#0I]
M#0HO*@T*;W5T<'5T#0IS=')U8W0@=F%R:6%B;&5?87)G<SPW+'-T<G5C="!D
M=6UM>3,\,2PR+#,^(#X-"C$-"C(-"C,-"@T*<W1R=6-T('9A<FEA8FQE7V%R
M9W,\,3 P+'-T<G5C="!D=6UM>3,\,RPV+#<^(#X-"C,-"C8-"C<-"@T*<W1R
M=6-T('9A<FEA8FQE7V%R9W,\-3_at_L<W1R=6-T(&1U;6UY-#PR+#0L-2PV/B ^
M#0HR#0HT#0HU#0HV#0H-"G-T<G5C="!V87)I86)L95]A<F=S/#$R-RQS=')U
M8W0_at_9'5M;7DW/#$L,BPS+#0L-2PV+#<^(#X-"C$-"C(-"C,-"C0-"C4-"C8-
&"C<-"BHO
`
end


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk