Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

ShVector.hpp

00001 // WARNING - DO NOT EDIT THIS FILE:
00002 // This file was automatically generated from scripts/ShVector.hpp.py.
00003 // If you wish to change it, edit that file instead.
00004 //
00005 // ---
00006 //
00007 // Sh: A GPU metaprogramming language.
00008 //
00009 // Copyright (c) 2003 University of Waterloo Computer Graphics Laboratory
00010 // Project administrator: Michael D. McCool
00011 // Authors: Zheng Qin, Stefanus Du Toit, Kevin Moule, Tiberiu S. Popa,
00012 //          Michael D. McCool
00013 //
00014 // This software is provided 'as-is', without any express or implied
00015 // warranty. In no event will the authors be held liable for any damages
00016 // arising from the use of this software.
00017 //
00018 // Permission is granted to anyone to use this software for any purpose,
00019 // including commercial applications, and to alter it and redistribute it
00020 // freely, subject to the following restrictions:
00021 //
00022 // 1. The origin of this software must not be misrepresented; you must
00023 // not claim that you wrote the original software. If you use this
00024 // software in a product, an acknowledgment in the product documentation
00025 // would be appreciated but is not required.
00026 //
00027 // 2. Altered source versions must be plainly marked as such, and must
00028 // not be misrepresented as being the original software.
00029 //
00030 // 3. This notice may not be removed or altered from any source
00031 // distribution.
00033 
00034 #ifndef SH_SHVECTOR_HPP
00035 #define SH_SHVECTOR_HPP
00036 
00037 #include "ShAttrib.hpp"
00038 namespace SH {
00039 
00047 template<int N, ShBindingType Binding, typename T=float, bool Swizzled=false>
00048 class ShVector : public ShAttrib<N, Binding, T, Swizzled> {
00049 public:
00050   typedef T storage_type;
00051   typedef typename ShHostType<T>::type host_type; 
00052   typedef typename ShMemType<T>::type mem_type; 
00053   static const ShBindingType binding_type = Binding;
00054   static const ShSemanticType semantic_type = SH_VECTOR;
00055 
00056   typedef ShVector<N, SH_INPUT, T> InputType;
00057   typedef ShVector<N, SH_OUTPUT, T> OutputType;
00058   typedef ShVector<N, SH_INOUT, T> InOutType;
00059   typedef ShVector<N, SH_TEMP, T> TempType;
00060   typedef ShVector<N, SH_CONST, T> ConstType;
00061   ShVector();
00062   
00063   template<typename T2>
00064   ShVector(const ShGeneric<N, T2>& other);
00065   ShVector(const ShVector<N, Binding, T, Swizzled>& other);
00066   
00067   template<typename T2>
00068   ShVector(const ShVector<N, Binding, T2, Swizzled>& other);
00069   ShVector(const ShVariableNodePtr& node, const ShSwizzle& swizzle, bool neg);
00070   explicit ShVector(host_type data[N]);
00071   
00072   ~ShVector();
00073 
00074   
00075   template<typename T2>
00076   ShVector& operator=(const ShGeneric<N, T2>& other);
00077   
00078   template<typename T2>
00079   ShVector& operator=(const ShVector<N, Binding, T2, Swizzled>& other);
00080   ShVector& operator=(const ShVector<N, Binding, T, Swizzled>& other);
00081 
00082   ShVector& operator=(const ShProgram& prg);
00083 
00084   
00085   template<typename T2>
00086   ShVector& operator+=(const ShGeneric<N, T2>& right);
00087   
00088   template<typename T2>
00089   ShVector& operator-=(const ShGeneric<N, T2>& right);
00090   
00091   template<typename T2>
00092   ShVector& operator*=(const ShGeneric<N, T2>& right);
00093   
00094   template<typename T2>
00095   ShVector& operator/=(const ShGeneric<N, T2>& right);
00096   
00097   template<typename T2>
00098   ShVector& operator%=(const ShGeneric<N, T2>& right);
00099   ShVector& operator*=(host_type);
00100   ShVector& operator/=(host_type);
00101   ShVector& operator%=(host_type);
00102   ShVector& operator+=(host_type);
00103   ShVector& operator-=(host_type);
00104   
00105   template<typename T2>
00106   ShVector& operator+=(const ShGeneric<1, T2>&);
00107   
00108   template<typename T2>
00109   ShVector& operator-=(const ShGeneric<1, T2>&);
00110   
00111   template<typename T2>
00112   ShVector& operator*=(const ShGeneric<1, T2>&);
00113   
00114   template<typename T2>
00115   ShVector& operator/=(const ShGeneric<1, T2>&);
00116   
00117   template<typename T2>
00118   ShVector& operator%=(const ShGeneric<1, T2>&);
00119   ShVector<1, Binding, T, true> operator()(int) const;
00120   ShVector<2, Binding, T, true> operator()(int, int) const;
00121   ShVector<3, Binding, T, true> operator()(int, int, int) const;
00122   ShVector<4, Binding, T, true> operator()(int, int, int, int) const;
00123   ShVector<1, Binding, T, true> operator[](int) const;
00124   
00125   template<int N2>
00126   ShVector<N2, Binding, T, true> swiz(int indices[]) const;
00127   
00128   ShVector operator-() const;
00129   private:
00130     typedef ShAttrib<N, Binding, T, Swizzled> ParentType;
00131 };
00132 
00133 template<ShBindingType Binding, typename T, bool Swizzled>
00134 class ShVector<1, Binding, T, Swizzled> : public ShAttrib<1, Binding, T, Swizzled> {
00135 public:
00136   typedef T storage_type;
00137   typedef typename ShHostType<T>::type host_type; 
00138   typedef typename ShMemType<T>::type mem_type; 
00139   static const ShBindingType binding_type = Binding;
00140   static const ShSemanticType semantic_type = SH_VECTOR;
00141 
00142   typedef ShVector<1, SH_INPUT, T> InputType;
00143   typedef ShVector<1, SH_OUTPUT, T> OutputType;
00144   typedef ShVector<1, SH_INOUT, T> InOutType;
00145   typedef ShVector<1, SH_TEMP, T> TempType;
00146   typedef ShVector<1, SH_CONST, T> ConstType;
00147   ShVector();
00148   
00149   template<typename T2>
00150   ShVector(const ShGeneric<1, T2>& other);
00151   ShVector(const ShVector<1, Binding, T, Swizzled>& other);
00152   
00153   template<typename T2>
00154   ShVector(const ShVector<1, Binding, T2, Swizzled>& other);
00155   ShVector(const ShVariableNodePtr& node, const ShSwizzle& swizzle, bool neg);
00156   explicit ShVector(host_type data[1]);
00157   
00158   ShVector(host_type);
00159   
00160   ~ShVector();
00161 
00162   
00163   template<typename T2>
00164   ShVector& operator=(const ShGeneric<1, T2>& other);
00165   
00166   template<typename T2>
00167   ShVector& operator=(const ShVector<1, Binding, T2, Swizzled>& other);
00168   ShVector& operator=(const ShVector<1, Binding, T, Swizzled>& other);
00169 
00170   ShVector& operator=(host_type other);
00171 
00172   ShVector& operator=(const ShProgram& prg);
00173 
00174   
00175   template<typename T2>
00176   ShVector& operator+=(const ShGeneric<1, T2>& right);
00177   
00178   template<typename T2>
00179   ShVector& operator-=(const ShGeneric<1, T2>& right);
00180   
00181   template<typename T2>
00182   ShVector& operator*=(const ShGeneric<1, T2>& right);
00183   
00184   template<typename T2>
00185   ShVector& operator/=(const ShGeneric<1, T2>& right);
00186   
00187   template<typename T2>
00188   ShVector& operator%=(const ShGeneric<1, T2>& right);
00189   ShVector& operator*=(host_type);
00190   ShVector& operator/=(host_type);
00191   ShVector& operator%=(host_type);
00192   ShVector& operator+=(host_type);
00193   ShVector& operator-=(host_type);
00194   ShVector<1, Binding, T, true> operator()(int) const;
00195   ShVector<2, Binding, T, true> operator()(int, int) const;
00196   ShVector<3, Binding, T, true> operator()(int, int, int) const;
00197   ShVector<4, Binding, T, true> operator()(int, int, int, int) const;
00198   ShVector<1, Binding, T, true> operator[](int) const;
00199   
00200   template<int N2>
00201   ShVector<N2, Binding, T, true> swiz(int indices[]) const;
00202   
00203   ShVector operator-() const;
00204   private:
00205     typedef ShAttrib<1, Binding, T, Swizzled> ParentType;
00206 };
00207 
00208 template<ShBindingType Binding, typename T, bool Swizzled>
00209 class ShVector<2, Binding, T, Swizzled> : public ShAttrib<2, Binding, T, Swizzled> {
00210 public:
00211   typedef T storage_type;
00212   typedef typename ShHostType<T>::type host_type; 
00213   typedef typename ShMemType<T>::type mem_type; 
00214   static const ShBindingType binding_type = Binding;
00215   static const ShSemanticType semantic_type = SH_VECTOR;
00216 
00217   typedef ShVector<2, SH_INPUT, T> InputType;
00218   typedef ShVector<2, SH_OUTPUT, T> OutputType;
00219   typedef ShVector<2, SH_INOUT, T> InOutType;
00220   typedef ShVector<2, SH_TEMP, T> TempType;
00221   typedef ShVector<2, SH_CONST, T> ConstType;
00222   ShVector();
00223   
00224   template<typename T2>
00225   ShVector(const ShGeneric<2, T2>& other);
00226   ShVector(const ShVector<2, Binding, T, Swizzled>& other);
00227   
00228   template<typename T2>
00229   ShVector(const ShVector<2, Binding, T2, Swizzled>& other);
00230   ShVector(const ShVariableNodePtr& node, const ShSwizzle& swizzle, bool neg);
00231   explicit ShVector(host_type data[2]);
00232   
00233   ShVector(host_type, host_type);
00234   template<typename T2, typename T3>
00235   ShVector(const ShGeneric<1, T2>&, const ShGeneric<1, T3>&);
00236   
00237   ~ShVector();
00238 
00239   
00240   template<typename T2>
00241   ShVector& operator=(const ShGeneric<2, T2>& other);
00242   
00243   template<typename T2>
00244   ShVector& operator=(const ShVector<2, Binding, T2, Swizzled>& other);
00245   ShVector& operator=(const ShVector<2, Binding, T, Swizzled>& other);
00246 
00247   ShVector& operator=(const ShProgram& prg);
00248 
00249   
00250   template<typename T2>
00251   ShVector& operator+=(const ShGeneric<2, T2>& right);
00252   
00253   template<typename T2>
00254   ShVector& operator-=(const ShGeneric<2, T2>& right);
00255   
00256   template<typename T2>
00257   ShVector& operator*=(const ShGeneric<2, T2>& right);
00258   
00259   template<typename T2>
00260   ShVector& operator/=(const ShGeneric<2, T2>& right);
00261   
00262   template<typename T2>
00263   ShVector& operator%=(const ShGeneric<2, T2>& right);
00264   ShVector& operator*=(host_type);
00265   ShVector& operator/=(host_type);
00266   ShVector& operator%=(host_type);
00267   ShVector& operator+=(host_type);
00268   ShVector& operator-=(host_type);
00269   
00270   template<typename T2>
00271   ShVector& operator+=(const ShGeneric<1, T2>&);
00272   
00273   template<typename T2>
00274   ShVector& operator-=(const ShGeneric<1, T2>&);
00275   
00276   template<typename T2>
00277   ShVector& operator*=(const ShGeneric<1, T2>&);
00278   
00279   template<typename T2>
00280   ShVector& operator/=(const ShGeneric<1, T2>&);
00281   
00282   template<typename T2>
00283   ShVector& operator%=(const ShGeneric<1, T2>&);
00284   ShVector<1, Binding, T, true> operator()(int) const;
00285   ShVector<2, Binding, T, true> operator()(int, int) const;
00286   ShVector<3, Binding, T, true> operator()(int, int, int) const;
00287   ShVector<4, Binding, T, true> operator()(int, int, int, int) const;
00288   ShVector<1, Binding, T, true> operator[](int) const;
00289   
00290   template<int N2>
00291   ShVector<N2, Binding, T, true> swiz(int indices[]) const;
00292   
00293   ShVector operator-() const;
00294   private:
00295     typedef ShAttrib<2, Binding, T, Swizzled> ParentType;
00296 };
00297 
00298 template<ShBindingType Binding, typename T, bool Swizzled>
00299 class ShVector<3, Binding, T, Swizzled> : public ShAttrib<3, Binding, T, Swizzled> {
00300 public:
00301   typedef T storage_type;
00302   typedef typename ShHostType<T>::type host_type; 
00303   typedef typename ShMemType<T>::type mem_type; 
00304   static const ShBindingType binding_type = Binding;
00305   static const ShSemanticType semantic_type = SH_VECTOR;
00306 
00307   typedef ShVector<3, SH_INPUT, T> InputType;
00308   typedef ShVector<3, SH_OUTPUT, T> OutputType;
00309   typedef ShVector<3, SH_INOUT, T> InOutType;
00310   typedef ShVector<3, SH_TEMP, T> TempType;
00311   typedef ShVector<3, SH_CONST, T> ConstType;
00312   ShVector();
00313   
00314   template<typename T2>
00315   ShVector(const ShGeneric<3, T2>& other);
00316   ShVector(const ShVector<3, Binding, T, Swizzled>& other);
00317   
00318   template<typename T2>
00319   ShVector(const ShVector<3, Binding, T2, Swizzled>& other);
00320   ShVector(const ShVariableNodePtr& node, const ShSwizzle& swizzle, bool neg);
00321   explicit ShVector(host_type data[3]);
00322   
00323   ShVector(host_type, host_type, host_type);
00324   template<typename T2, typename T3, typename T4>
00325   ShVector(const ShGeneric<1, T2>&, const ShGeneric<1, T3>&, const ShGeneric<1, T4>&);
00326   
00327   ~ShVector();
00328 
00329   
00330   template<typename T2>
00331   ShVector& operator=(const ShGeneric<3, T2>& other);
00332   
00333   template<typename T2>
00334   ShVector& operator=(const ShVector<3, Binding, T2, Swizzled>& other);
00335   ShVector& operator=(const ShVector<3, Binding, T, Swizzled>& other);
00336 
00337   ShVector& operator=(const ShProgram& prg);
00338 
00339   
00340   template<typename T2>
00341   ShVector& operator+=(const ShGeneric<3, T2>& right);
00342   
00343   template<typename T2>
00344   ShVector& operator-=(const ShGeneric<3, T2>& right);
00345   
00346   template<typename T2>
00347   ShVector& operator*=(const ShGeneric<3, T2>& right);
00348   
00349   template<typename T2>
00350   ShVector& operator/=(const ShGeneric<3, T2>& right);
00351   
00352   template<typename T2>
00353   ShVector& operator%=(const ShGeneric<3, T2>& right);
00354   ShVector& operator*=(host_type);
00355   ShVector& operator/=(host_type);
00356   ShVector& operator%=(host_type);
00357   ShVector& operator+=(host_type);
00358   ShVector& operator-=(host_type);
00359   
00360   template<typename T2>
00361   ShVector& operator+=(const ShGeneric<1, T2>&);
00362   
00363   template<typename T2>
00364   ShVector& operator-=(const ShGeneric<1, T2>&);
00365   
00366   template<typename T2>
00367   ShVector& operator*=(const ShGeneric<1, T2>&);
00368   
00369   template<typename T2>
00370   ShVector& operator/=(const ShGeneric<1, T2>&);
00371   
00372   template<typename T2>
00373   ShVector& operator%=(const ShGeneric<1, T2>&);
00374   ShVector<1, Binding, T, true> operator()(int) const;
00375   ShVector<2, Binding, T, true> operator()(int, int) const;
00376   ShVector<3, Binding, T, true> operator()(int, int, int) const;
00377   ShVector<4, Binding, T, true> operator()(int, int, int, int) const;
00378   ShVector<1, Binding, T, true> operator[](int) const;
00379   
00380   template<int N2>
00381   ShVector<N2, Binding, T, true> swiz(int indices[]) const;
00382   
00383   ShVector operator-() const;
00384   private:
00385     typedef ShAttrib<3, Binding, T, Swizzled> ParentType;
00386 };
00387 
00388 template<ShBindingType Binding, typename T, bool Swizzled>
00389 class ShVector<4, Binding, T, Swizzled> : public ShAttrib<4, Binding, T, Swizzled> {
00390 public:
00391   typedef T storage_type;
00392   typedef typename ShHostType<T>::type host_type; 
00393   typedef typename ShMemType<T>::type mem_type; 
00394   static const ShBindingType binding_type = Binding;
00395   static const ShSemanticType semantic_type = SH_VECTOR;
00396 
00397   typedef ShVector<4, SH_INPUT, T> InputType;
00398   typedef ShVector<4, SH_OUTPUT, T> OutputType;
00399   typedef ShVector<4, SH_INOUT, T> InOutType;
00400   typedef ShVector<4, SH_TEMP, T> TempType;
00401   typedef ShVector<4, SH_CONST, T> ConstType;
00402   ShVector();
00403   
00404   template<typename T2>
00405   ShVector(const ShGeneric<4, T2>& other);
00406   ShVector(const ShVector<4, Binding, T, Swizzled>& other);
00407   
00408   template<typename T2>
00409   ShVector(const ShVector<4, Binding, T2, Swizzled>& other);
00410   ShVector(const ShVariableNodePtr& node, const ShSwizzle& swizzle, bool neg);
00411   explicit ShVector(host_type data[4]);
00412   
00413   ShVector(host_type, host_type, host_type, host_type);
00414   template<typename T2, typename T3, typename T4, typename T5>
00415   ShVector(const ShGeneric<1, T2>&, const ShGeneric<1, T3>&, const ShGeneric<1, T4>&, const ShGeneric<1, T5>&);
00416   
00417   ~ShVector();
00418 
00419   
00420   template<typename T2>
00421   ShVector& operator=(const ShGeneric<4, T2>& other);
00422   
00423   template<typename T2>
00424   ShVector& operator=(const ShVector<4, Binding, T2, Swizzled>& other);
00425   ShVector& operator=(const ShVector<4, Binding, T, Swizzled>& other);
00426 
00427   ShVector& operator=(const ShProgram& prg);
00428 
00429   
00430   template<typename T2>
00431   ShVector& operator+=(const ShGeneric<4, T2>& right);
00432   
00433   template<typename T2>
00434   ShVector& operator-=(const ShGeneric<4, T2>& right);
00435   
00436   template<typename T2>
00437   ShVector& operator*=(const ShGeneric<4, T2>& right);
00438   
00439   template<typename T2>
00440   ShVector& operator/=(const ShGeneric<4, T2>& right);
00441   
00442   template<typename T2>
00443   ShVector& operator%=(const ShGeneric<4, T2>& right);
00444   ShVector& operator*=(host_type);
00445   ShVector& operator/=(host_type);
00446   ShVector& operator%=(host_type);
00447   ShVector& operator+=(host_type);
00448   ShVector& operator-=(host_type);
00449   
00450   template<typename T2>
00451   ShVector& operator+=(const ShGeneric<1, T2>&);
00452   
00453   template<typename T2>
00454   ShVector& operator-=(const ShGeneric<1, T2>&);
00455   
00456   template<typename T2>
00457   ShVector& operator*=(const ShGeneric<1, T2>&);
00458   
00459   template<typename T2>
00460   ShVector& operator/=(const ShGeneric<1, T2>&);
00461   
00462   template<typename T2>
00463   ShVector& operator%=(const ShGeneric<1, T2>&);
00464   ShVector<1, Binding, T, true> operator()(int) const;
00465   ShVector<2, Binding, T, true> operator()(int, int) const;
00466   ShVector<3, Binding, T, true> operator()(int, int, int) const;
00467   ShVector<4, Binding, T, true> operator()(int, int, int, int) const;
00468   ShVector<1, Binding, T, true> operator[](int) const;
00469   
00470   template<int N2>
00471   ShVector<N2, Binding, T, true> swiz(int indices[]) const;
00472   
00473   ShVector operator-() const;
00474   private:
00475     typedef ShAttrib<4, Binding, T, Swizzled> ParentType;
00476 };
00477 
00478 typedef ShVector<1, SH_INPUT, ShInterval<double> > ShInputVector1i_d;
00479 typedef ShVector<1, SH_OUTPUT, ShInterval<double> > ShOutputVector1i_d;
00480 typedef ShVector<1, SH_INOUT, ShInterval<double> > ShInOutVector1i_d;
00481 typedef ShVector<1, SH_TEMP, ShInterval<double> > ShVector1i_d;
00482 typedef ShVector<1, SH_CONST, ShInterval<double> > ShConstVector1i_d;
00483 typedef ShVector<2, SH_INPUT, ShInterval<double> > ShInputVector2i_d;
00484 typedef ShVector<2, SH_OUTPUT, ShInterval<double> > ShOutputVector2i_d;
00485 typedef ShVector<2, SH_INOUT, ShInterval<double> > ShInOutVector2i_d;
00486 typedef ShVector<2, SH_TEMP, ShInterval<double> > ShVector2i_d;
00487 typedef ShVector<2, SH_CONST, ShInterval<double> > ShConstVector2i_d;
00488 typedef ShVector<3, SH_INPUT, ShInterval<double> > ShInputVector3i_d;
00489 typedef ShVector<3, SH_OUTPUT, ShInterval<double> > ShOutputVector3i_d;
00490 typedef ShVector<3, SH_INOUT, ShInterval<double> > ShInOutVector3i_d;
00491 typedef ShVector<3, SH_TEMP, ShInterval<double> > ShVector3i_d;
00492 typedef ShVector<3, SH_CONST, ShInterval<double> > ShConstVector3i_d;
00493 typedef ShVector<4, SH_INPUT, ShInterval<double> > ShInputVector4i_d;
00494 typedef ShVector<4, SH_OUTPUT, ShInterval<double> > ShOutputVector4i_d;
00495 typedef ShVector<4, SH_INOUT, ShInterval<double> > ShInOutVector4i_d;
00496 typedef ShVector<4, SH_TEMP, ShInterval<double> > ShVector4i_d;
00497 typedef ShVector<4, SH_CONST, ShInterval<double> > ShConstVector4i_d;
00498 
00499 
00500 typedef ShVector<1, SH_INPUT, ShFracUShort> ShInputVector1fus;
00501 typedef ShVector<1, SH_OUTPUT, ShFracUShort> ShOutputVector1fus;
00502 typedef ShVector<1, SH_INOUT, ShFracUShort> ShInOutVector1fus;
00503 typedef ShVector<1, SH_TEMP, ShFracUShort> ShVector1fus;
00504 typedef ShVector<1, SH_CONST, ShFracUShort> ShConstVector1fus;
00505 typedef ShVector<2, SH_INPUT, ShFracUShort> ShInputVector2fus;
00506 typedef ShVector<2, SH_OUTPUT, ShFracUShort> ShOutputVector2fus;
00507 typedef ShVector<2, SH_INOUT, ShFracUShort> ShInOutVector2fus;
00508 typedef ShVector<2, SH_TEMP, ShFracUShort> ShVector2fus;
00509 typedef ShVector<2, SH_CONST, ShFracUShort> ShConstVector2fus;
00510 typedef ShVector<3, SH_INPUT, ShFracUShort> ShInputVector3fus;
00511 typedef ShVector<3, SH_OUTPUT, ShFracUShort> ShOutputVector3fus;
00512 typedef ShVector<3, SH_INOUT, ShFracUShort> ShInOutVector3fus;
00513 typedef ShVector<3, SH_TEMP, ShFracUShort> ShVector3fus;
00514 typedef ShVector<3, SH_CONST, ShFracUShort> ShConstVector3fus;
00515 typedef ShVector<4, SH_INPUT, ShFracUShort> ShInputVector4fus;
00516 typedef ShVector<4, SH_OUTPUT, ShFracUShort> ShOutputVector4fus;
00517 typedef ShVector<4, SH_INOUT, ShFracUShort> ShInOutVector4fus;
00518 typedef ShVector<4, SH_TEMP, ShFracUShort> ShVector4fus;
00519 typedef ShVector<4, SH_CONST, ShFracUShort> ShConstVector4fus;
00520 
00521 
00522 typedef ShVector<1, SH_INPUT, short> ShInputVector1s;
00523 typedef ShVector<1, SH_OUTPUT, short> ShOutputVector1s;
00524 typedef ShVector<1, SH_INOUT, short> ShInOutVector1s;
00525 typedef ShVector<1, SH_TEMP, short> ShVector1s;
00526 typedef ShVector<1, SH_CONST, short> ShConstVector1s;
00527 typedef ShVector<2, SH_INPUT, short> ShInputVector2s;
00528 typedef ShVector<2, SH_OUTPUT, short> ShOutputVector2s;
00529 typedef ShVector<2, SH_INOUT, short> ShInOutVector2s;
00530 typedef ShVector<2, SH_TEMP, short> ShVector2s;
00531 typedef ShVector<2, SH_CONST, short> ShConstVector2s;
00532 typedef ShVector<3, SH_INPUT, short> ShInputVector3s;
00533 typedef ShVector<3, SH_OUTPUT, short> ShOutputVector3s;
00534 typedef ShVector<3, SH_INOUT, short> ShInOutVector3s;
00535 typedef ShVector<3, SH_TEMP, short> ShVector3s;
00536 typedef ShVector<3, SH_CONST, short> ShConstVector3s;
00537 typedef ShVector<4, SH_INPUT, short> ShInputVector4s;
00538 typedef ShVector<4, SH_OUTPUT, short> ShOutputVector4s;
00539 typedef ShVector<4, SH_INOUT, short> ShInOutVector4s;
00540 typedef ShVector<4, SH_TEMP, short> ShVector4s;
00541 typedef ShVector<4, SH_CONST, short> ShConstVector4s;
00542 
00543 
00544 typedef ShVector<1, SH_INPUT, ShFracUInt> ShInputVector1fui;
00545 typedef ShVector<1, SH_OUTPUT, ShFracUInt> ShOutputVector1fui;
00546 typedef ShVector<1, SH_INOUT, ShFracUInt> ShInOutVector1fui;
00547 typedef ShVector<1, SH_TEMP, ShFracUInt> ShVector1fui;
00548 typedef ShVector<1, SH_CONST, ShFracUInt> ShConstVector1fui;
00549 typedef ShVector<2, SH_INPUT, ShFracUInt> ShInputVector2fui;
00550 typedef ShVector<2, SH_OUTPUT, ShFracUInt> ShOutputVector2fui;
00551 typedef ShVector<2, SH_INOUT, ShFracUInt> ShInOutVector2fui;
00552 typedef ShVector<2, SH_TEMP, ShFracUInt> ShVector2fui;
00553 typedef ShVector<2, SH_CONST, ShFracUInt> ShConstVector2fui;
00554 typedef ShVector<3, SH_INPUT, ShFracUInt> ShInputVector3fui;
00555 typedef ShVector<3, SH_OUTPUT, ShFracUInt> ShOutputVector3fui;
00556 typedef ShVector<3, SH_INOUT, ShFracUInt> ShInOutVector3fui;
00557 typedef ShVector<3, SH_TEMP, ShFracUInt> ShVector3fui;
00558 typedef ShVector<3, SH_CONST, ShFracUInt> ShConstVector3fui;
00559 typedef ShVector<4, SH_INPUT, ShFracUInt> ShInputVector4fui;
00560 typedef ShVector<4, SH_OUTPUT, ShFracUInt> ShOutputVector4fui;
00561 typedef ShVector<4, SH_INOUT, ShFracUInt> ShInOutVector4fui;
00562 typedef ShVector<4, SH_TEMP, ShFracUInt> ShVector4fui;
00563 typedef ShVector<4, SH_CONST, ShFracUInt> ShConstVector4fui;
00564 
00565 
00566 typedef ShVector<1, SH_INPUT, ShFracByte> ShInputVector1fb;
00567 typedef ShVector<1, SH_OUTPUT, ShFracByte> ShOutputVector1fb;
00568 typedef ShVector<1, SH_INOUT, ShFracByte> ShInOutVector1fb;
00569 typedef ShVector<1, SH_TEMP, ShFracByte> ShVector1fb;
00570 typedef ShVector<1, SH_CONST, ShFracByte> ShConstVector1fb;
00571 typedef ShVector<2, SH_INPUT, ShFracByte> ShInputVector2fb;
00572 typedef ShVector<2, SH_OUTPUT, ShFracByte> ShOutputVector2fb;
00573 typedef ShVector<2, SH_INOUT, ShFracByte> ShInOutVector2fb;
00574 typedef ShVector<2, SH_TEMP, ShFracByte> ShVector2fb;
00575 typedef ShVector<2, SH_CONST, ShFracByte> ShConstVector2fb;
00576 typedef ShVector<3, SH_INPUT, ShFracByte> ShInputVector3fb;
00577 typedef ShVector<3, SH_OUTPUT, ShFracByte> ShOutputVector3fb;
00578 typedef ShVector<3, SH_INOUT, ShFracByte> ShInOutVector3fb;
00579 typedef ShVector<3, SH_TEMP, ShFracByte> ShVector3fb;
00580 typedef ShVector<3, SH_CONST, ShFracByte> ShConstVector3fb;
00581 typedef ShVector<4, SH_INPUT, ShFracByte> ShInputVector4fb;
00582 typedef ShVector<4, SH_OUTPUT, ShFracByte> ShOutputVector4fb;
00583 typedef ShVector<4, SH_INOUT, ShFracByte> ShInOutVector4fb;
00584 typedef ShVector<4, SH_TEMP, ShFracByte> ShVector4fb;
00585 typedef ShVector<4, SH_CONST, ShFracByte> ShConstVector4fb;
00586 
00587 
00588 typedef ShVector<1, SH_INPUT, int> ShInputVector1i;
00589 typedef ShVector<1, SH_OUTPUT, int> ShOutputVector1i;
00590 typedef ShVector<1, SH_INOUT, int> ShInOutVector1i;
00591 typedef ShVector<1, SH_TEMP, int> ShVector1i;
00592 typedef ShVector<1, SH_CONST, int> ShConstVector1i;
00593 typedef ShVector<2, SH_INPUT, int> ShInputVector2i;
00594 typedef ShVector<2, SH_OUTPUT, int> ShOutputVector2i;
00595 typedef ShVector<2, SH_INOUT, int> ShInOutVector2i;
00596 typedef ShVector<2, SH_TEMP, int> ShVector2i;
00597 typedef ShVector<2, SH_CONST, int> ShConstVector2i;
00598 typedef ShVector<3, SH_INPUT, int> ShInputVector3i;
00599 typedef ShVector<3, SH_OUTPUT, int> ShOutputVector3i;
00600 typedef ShVector<3, SH_INOUT, int> ShInOutVector3i;
00601 typedef ShVector<3, SH_TEMP, int> ShVector3i;
00602 typedef ShVector<3, SH_CONST, int> ShConstVector3i;
00603 typedef ShVector<4, SH_INPUT, int> ShInputVector4i;
00604 typedef ShVector<4, SH_OUTPUT, int> ShOutputVector4i;
00605 typedef ShVector<4, SH_INOUT, int> ShInOutVector4i;
00606 typedef ShVector<4, SH_TEMP, int> ShVector4i;
00607 typedef ShVector<4, SH_CONST, int> ShConstVector4i;
00608 
00609 
00610 typedef ShVector<1, SH_INPUT, double> ShInputVector1d;
00611 typedef ShVector<1, SH_OUTPUT, double> ShOutputVector1d;
00612 typedef ShVector<1, SH_INOUT, double> ShInOutVector1d;
00613 typedef ShVector<1, SH_TEMP, double> ShVector1d;
00614 typedef ShVector<1, SH_CONST, double> ShConstVector1d;
00615 typedef ShVector<2, SH_INPUT, double> ShInputVector2d;
00616 typedef ShVector<2, SH_OUTPUT, double> ShOutputVector2d;
00617 typedef ShVector<2, SH_INOUT, double> ShInOutVector2d;
00618 typedef ShVector<2, SH_TEMP, double> ShVector2d;
00619 typedef ShVector<2, SH_CONST, double> ShConstVector2d;
00620 typedef ShVector<3, SH_INPUT, double> ShInputVector3d;
00621 typedef ShVector<3, SH_OUTPUT, double> ShOutputVector3d;
00622 typedef ShVector<3, SH_INOUT, double> ShInOutVector3d;
00623 typedef ShVector<3, SH_TEMP, double> ShVector3d;
00624 typedef ShVector<3, SH_CONST, double> ShConstVector3d;
00625 typedef ShVector<4, SH_INPUT, double> ShInputVector4d;
00626 typedef ShVector<4, SH_OUTPUT, double> ShOutputVector4d;
00627 typedef ShVector<4, SH_INOUT, double> ShInOutVector4d;
00628 typedef ShVector<4, SH_TEMP, double> ShVector4d;
00629 typedef ShVector<4, SH_CONST, double> ShConstVector4d;
00630 
00631 
00632 typedef ShVector<1, SH_INPUT, unsigned char> ShInputVector1ub;
00633 typedef ShVector<1, SH_OUTPUT, unsigned char> ShOutputVector1ub;
00634 typedef ShVector<1, SH_INOUT, unsigned char> ShInOutVector1ub;
00635 typedef ShVector<1, SH_TEMP, unsigned char> ShVector1ub;
00636 typedef ShVector<1, SH_CONST, unsigned char> ShConstVector1ub;
00637 typedef ShVector<2, SH_INPUT, unsigned char> ShInputVector2ub;
00638 typedef ShVector<2, SH_OUTPUT, unsigned char> ShOutputVector2ub;
00639 typedef ShVector<2, SH_INOUT, unsigned char> ShInOutVector2ub;
00640 typedef ShVector<2, SH_TEMP, unsigned char> ShVector2ub;
00641 typedef ShVector<2, SH_CONST, unsigned char> ShConstVector2ub;
00642 typedef ShVector<3, SH_INPUT, unsigned char> ShInputVector3ub;
00643 typedef ShVector<3, SH_OUTPUT, unsigned char> ShOutputVector3ub;
00644 typedef ShVector<3, SH_INOUT, unsigned char> ShInOutVector3ub;
00645 typedef ShVector<3, SH_TEMP, unsigned char> ShVector3ub;
00646 typedef ShVector<3, SH_CONST, unsigned char> ShConstVector3ub;
00647 typedef ShVector<4, SH_INPUT, unsigned char> ShInputVector4ub;
00648 typedef ShVector<4, SH_OUTPUT, unsigned char> ShOutputVector4ub;
00649 typedef ShVector<4, SH_INOUT, unsigned char> ShInOutVector4ub;
00650 typedef ShVector<4, SH_TEMP, unsigned char> ShVector4ub;
00651 typedef ShVector<4, SH_CONST, unsigned char> ShConstVector4ub;
00652 
00653 
00654 typedef ShVector<1, SH_INPUT, float> ShInputVector1f;
00655 typedef ShVector<1, SH_OUTPUT, float> ShOutputVector1f;
00656 typedef ShVector<1, SH_INOUT, float> ShInOutVector1f;
00657 typedef ShVector<1, SH_TEMP, float> ShVector1f;
00658 typedef ShVector<1, SH_CONST, float> ShConstVector1f;
00659 typedef ShVector<2, SH_INPUT, float> ShInputVector2f;
00660 typedef ShVector<2, SH_OUTPUT, float> ShOutputVector2f;
00661 typedef ShVector<2, SH_INOUT, float> ShInOutVector2f;
00662 typedef ShVector<2, SH_TEMP, float> ShVector2f;
00663 typedef ShVector<2, SH_CONST, float> ShConstVector2f;
00664 typedef ShVector<3, SH_INPUT, float> ShInputVector3f;
00665 typedef ShVector<3, SH_OUTPUT, float> ShOutputVector3f;
00666 typedef ShVector<3, SH_INOUT, float> ShInOutVector3f;
00667 typedef ShVector<3, SH_TEMP, float> ShVector3f;
00668 typedef ShVector<3, SH_CONST, float> ShConstVector3f;
00669 typedef ShVector<4, SH_INPUT, float> ShInputVector4f;
00670 typedef ShVector<4, SH_OUTPUT, float> ShOutputVector4f;
00671 typedef ShVector<4, SH_INOUT, float> ShInOutVector4f;
00672 typedef ShVector<4, SH_TEMP, float> ShVector4f;
00673 typedef ShVector<4, SH_CONST, float> ShConstVector4f;
00674 
00675 
00676 typedef ShVector<1, SH_INPUT, char> ShInputVector1b;
00677 typedef ShVector<1, SH_OUTPUT, char> ShOutputVector1b;
00678 typedef ShVector<1, SH_INOUT, char> ShInOutVector1b;
00679 typedef ShVector<1, SH_TEMP, char> ShVector1b;
00680 typedef ShVector<1, SH_CONST, char> ShConstVector1b;
00681 typedef ShVector<2, SH_INPUT, char> ShInputVector2b;
00682 typedef ShVector<2, SH_OUTPUT, char> ShOutputVector2b;
00683 typedef ShVector<2, SH_INOUT, char> ShInOutVector2b;
00684 typedef ShVector<2, SH_TEMP, char> ShVector2b;
00685 typedef ShVector<2, SH_CONST, char> ShConstVector2b;
00686 typedef ShVector<3, SH_INPUT, char> ShInputVector3b;
00687 typedef ShVector<3, SH_OUTPUT, char> ShOutputVector3b;
00688 typedef ShVector<3, SH_INOUT, char> ShInOutVector3b;
00689 typedef ShVector<3, SH_TEMP, char> ShVector3b;
00690 typedef ShVector<3, SH_CONST, char> ShConstVector3b;
00691 typedef ShVector<4, SH_INPUT, char> ShInputVector4b;
00692 typedef ShVector<4, SH_OUTPUT, char> ShOutputVector4b;
00693 typedef ShVector<4, SH_INOUT, char> ShInOutVector4b;
00694 typedef ShVector<4, SH_TEMP, char> ShVector4b;
00695 typedef ShVector<4, SH_CONST, char> ShConstVector4b;
00696 
00697 
00698 typedef ShVector<1, SH_INPUT, unsigned short> ShInputVector1us;
00699 typedef ShVector<1, SH_OUTPUT, unsigned short> ShOutputVector1us;
00700 typedef ShVector<1, SH_INOUT, unsigned short> ShInOutVector1us;
00701 typedef ShVector<1, SH_TEMP, unsigned short> ShVector1us;
00702 typedef ShVector<1, SH_CONST, unsigned short> ShConstVector1us;
00703 typedef ShVector<2, SH_INPUT, unsigned short> ShInputVector2us;
00704 typedef ShVector<2, SH_OUTPUT, unsigned short> ShOutputVector2us;
00705 typedef ShVector<2, SH_INOUT, unsigned short> ShInOutVector2us;
00706 typedef ShVector<2, SH_TEMP, unsigned short> ShVector2us;
00707 typedef ShVector<2, SH_CONST, unsigned short> ShConstVector2us;
00708 typedef ShVector<3, SH_INPUT, unsigned short> ShInputVector3us;
00709 typedef ShVector<3, SH_OUTPUT, unsigned short> ShOutputVector3us;
00710 typedef ShVector<3, SH_INOUT, unsigned short> ShInOutVector3us;
00711 typedef ShVector<3, SH_TEMP, unsigned short> ShVector3us;
00712 typedef ShVector<3, SH_CONST, unsigned short> ShConstVector3us;
00713 typedef ShVector<4, SH_INPUT, unsigned short> ShInputVector4us;
00714 typedef ShVector<4, SH_OUTPUT, unsigned short> ShOutputVector4us;
00715 typedef ShVector<4, SH_INOUT, unsigned short> ShInOutVector4us;
00716 typedef ShVector<4, SH_TEMP, unsigned short> ShVector4us;
00717 typedef ShVector<4, SH_CONST, unsigned short> ShConstVector4us;
00718 
00719 
00720 typedef ShVector<1, SH_INPUT, ShFracUByte> ShInputVector1fub;
00721 typedef ShVector<1, SH_OUTPUT, ShFracUByte> ShOutputVector1fub;
00722 typedef ShVector<1, SH_INOUT, ShFracUByte> ShInOutVector1fub;
00723 typedef ShVector<1, SH_TEMP, ShFracUByte> ShVector1fub;
00724 typedef ShVector<1, SH_CONST, ShFracUByte> ShConstVector1fub;
00725 typedef ShVector<2, SH_INPUT, ShFracUByte> ShInputVector2fub;
00726 typedef ShVector<2, SH_OUTPUT, ShFracUByte> ShOutputVector2fub;
00727 typedef ShVector<2, SH_INOUT, ShFracUByte> ShInOutVector2fub;
00728 typedef ShVector<2, SH_TEMP, ShFracUByte> ShVector2fub;
00729 typedef ShVector<2, SH_CONST, ShFracUByte> ShConstVector2fub;
00730 typedef ShVector<3, SH_INPUT, ShFracUByte> ShInputVector3fub;
00731 typedef ShVector<3, SH_OUTPUT, ShFracUByte> ShOutputVector3fub;
00732 typedef ShVector<3, SH_INOUT, ShFracUByte> ShInOutVector3fub;
00733 typedef ShVector<3, SH_TEMP, ShFracUByte> ShVector3fub;
00734 typedef ShVector<3, SH_CONST, ShFracUByte> ShConstVector3fub;
00735 typedef ShVector<4, SH_INPUT, ShFracUByte> ShInputVector4fub;
00736 typedef ShVector<4, SH_OUTPUT, ShFracUByte> ShOutputVector4fub;
00737 typedef ShVector<4, SH_INOUT, ShFracUByte> ShInOutVector4fub;
00738 typedef ShVector<4, SH_TEMP, ShFracUByte> ShVector4fub;
00739 typedef ShVector<4, SH_CONST, ShFracUByte> ShConstVector4fub;
00740 
00741 
00742 typedef ShVector<1, SH_INPUT, ShHalf> ShInputVector1h;
00743 typedef ShVector<1, SH_OUTPUT, ShHalf> ShOutputVector1h;
00744 typedef ShVector<1, SH_INOUT, ShHalf> ShInOutVector1h;
00745 typedef ShVector<1, SH_TEMP, ShHalf> ShVector1h;
00746 typedef ShVector<1, SH_CONST, ShHalf> ShConstVector1h;
00747 typedef ShVector<2, SH_INPUT, ShHalf> ShInputVector2h;
00748 typedef ShVector<2, SH_OUTPUT, ShHalf> ShOutputVector2h;
00749 typedef ShVector<2, SH_INOUT, ShHalf> ShInOutVector2h;
00750 typedef ShVector<2, SH_TEMP, ShHalf> ShVector2h;
00751 typedef ShVector<2, SH_CONST, ShHalf> ShConstVector2h;
00752 typedef ShVector<3, SH_INPUT, ShHalf> ShInputVector3h;
00753 typedef ShVector<3, SH_OUTPUT, ShHalf> ShOutputVector3h;
00754 typedef ShVector<3, SH_INOUT, ShHalf> ShInOutVector3h;
00755 typedef ShVector<3, SH_TEMP, ShHalf> ShVector3h;
00756 typedef ShVector<3, SH_CONST, ShHalf> ShConstVector3h;
00757 typedef ShVector<4, SH_INPUT, ShHalf> ShInputVector4h;
00758 typedef ShVector<4, SH_OUTPUT, ShHalf> ShOutputVector4h;
00759 typedef ShVector<4, SH_INOUT, ShHalf> ShInOutVector4h;
00760 typedef ShVector<4, SH_TEMP, ShHalf> ShVector4h;
00761 typedef ShVector<4, SH_CONST, ShHalf> ShConstVector4h;
00762 
00763 
00764 typedef ShVector<1, SH_INPUT, ShInterval<float> > ShInputVector1i_f;
00765 typedef ShVector<1, SH_OUTPUT, ShInterval<float> > ShOutputVector1i_f;
00766 typedef ShVector<1, SH_INOUT, ShInterval<float> > ShInOutVector1i_f;
00767 typedef ShVector<1, SH_TEMP, ShInterval<float> > ShVector1i_f;
00768 typedef ShVector<1, SH_CONST, ShInterval<float> > ShConstVector1i_f;
00769 typedef ShVector<2, SH_INPUT, ShInterval<float> > ShInputVector2i_f;
00770 typedef ShVector<2, SH_OUTPUT, ShInterval<float> > ShOutputVector2i_f;
00771 typedef ShVector<2, SH_INOUT, ShInterval<float> > ShInOutVector2i_f;
00772 typedef ShVector<2, SH_TEMP, ShInterval<float> > ShVector2i_f;
00773 typedef ShVector<2, SH_CONST, ShInterval<float> > ShConstVector2i_f;
00774 typedef ShVector<3, SH_INPUT, ShInterval<float> > ShInputVector3i_f;
00775 typedef ShVector<3, SH_OUTPUT, ShInterval<float> > ShOutputVector3i_f;
00776 typedef ShVector<3, SH_INOUT, ShInterval<float> > ShInOutVector3i_f;
00777 typedef ShVector<3, SH_TEMP, ShInterval<float> > ShVector3i_f;
00778 typedef ShVector<3, SH_CONST, ShInterval<float> > ShConstVector3i_f;
00779 typedef ShVector<4, SH_INPUT, ShInterval<float> > ShInputVector4i_f;
00780 typedef ShVector<4, SH_OUTPUT, ShInterval<float> > ShOutputVector4i_f;
00781 typedef ShVector<4, SH_INOUT, ShInterval<float> > ShInOutVector4i_f;
00782 typedef ShVector<4, SH_TEMP, ShInterval<float> > ShVector4i_f;
00783 typedef ShVector<4, SH_CONST, ShInterval<float> > ShConstVector4i_f;
00784 
00785 
00786 typedef ShVector<1, SH_INPUT, ShFracShort> ShInputVector1fs;
00787 typedef ShVector<1, SH_OUTPUT, ShFracShort> ShOutputVector1fs;
00788 typedef ShVector<1, SH_INOUT, ShFracShort> ShInOutVector1fs;
00789 typedef ShVector<1, SH_TEMP, ShFracShort> ShVector1fs;
00790 typedef ShVector<1, SH_CONST, ShFracShort> ShConstVector1fs;
00791 typedef ShVector<2, SH_INPUT, ShFracShort> ShInputVector2fs;
00792 typedef ShVector<2, SH_OUTPUT, ShFracShort> ShOutputVector2fs;
00793 typedef ShVector<2, SH_INOUT, ShFracShort> ShInOutVector2fs;
00794 typedef ShVector<2, SH_TEMP, ShFracShort> ShVector2fs;
00795 typedef ShVector<2, SH_CONST, ShFracShort> ShConstVector2fs;
00796 typedef ShVector<3, SH_INPUT, ShFracShort> ShInputVector3fs;
00797 typedef ShVector<3, SH_OUTPUT, ShFracShort> ShOutputVector3fs;
00798 typedef ShVector<3, SH_INOUT, ShFracShort> ShInOutVector3fs;
00799 typedef ShVector<3, SH_TEMP, ShFracShort> ShVector3fs;
00800 typedef ShVector<3, SH_CONST, ShFracShort> ShConstVector3fs;
00801 typedef ShVector<4, SH_INPUT, ShFracShort> ShInputVector4fs;
00802 typedef ShVector<4, SH_OUTPUT, ShFracShort> ShOutputVector4fs;
00803 typedef ShVector<4, SH_INOUT, ShFracShort> ShInOutVector4fs;
00804 typedef ShVector<4, SH_TEMP, ShFracShort> ShVector4fs;
00805 typedef ShVector<4, SH_CONST, ShFracShort> ShConstVector4fs;
00806 
00807 
00808 typedef ShVector<1, SH_INPUT, ShFracInt> ShInputVector1fi;
00809 typedef ShVector<1, SH_OUTPUT, ShFracInt> ShOutputVector1fi;
00810 typedef ShVector<1, SH_INOUT, ShFracInt> ShInOutVector1fi;
00811 typedef ShVector<1, SH_TEMP, ShFracInt> ShVector1fi;
00812 typedef ShVector<1, SH_CONST, ShFracInt> ShConstVector1fi;
00813 typedef ShVector<2, SH_INPUT, ShFracInt> ShInputVector2fi;
00814 typedef ShVector<2, SH_OUTPUT, ShFracInt> ShOutputVector2fi;
00815 typedef ShVector<2, SH_INOUT, ShFracInt> ShInOutVector2fi;
00816 typedef ShVector<2, SH_TEMP, ShFracInt> ShVector2fi;
00817 typedef ShVector<2, SH_CONST, ShFracInt> ShConstVector2fi;
00818 typedef ShVector<3, SH_INPUT, ShFracInt> ShInputVector3fi;
00819 typedef ShVector<3, SH_OUTPUT, ShFracInt> ShOutputVector3fi;
00820 typedef ShVector<3, SH_INOUT, ShFracInt> ShInOutVector3fi;
00821 typedef ShVector<3, SH_TEMP, ShFracInt> ShVector3fi;
00822 typedef ShVector<3, SH_CONST, ShFracInt> ShConstVector3fi;
00823 typedef ShVector<4, SH_INPUT, ShFracInt> ShInputVector4fi;
00824 typedef ShVector<4, SH_OUTPUT, ShFracInt> ShOutputVector4fi;
00825 typedef ShVector<4, SH_INOUT, ShFracInt> ShInOutVector4fi;
00826 typedef ShVector<4, SH_TEMP, ShFracInt> ShVector4fi;
00827 typedef ShVector<4, SH_CONST, ShFracInt> ShConstVector4fi;
00828 
00829 
00830 typedef ShVector<1, SH_INPUT, unsigned int> ShInputVector1ui;
00831 typedef ShVector<1, SH_OUTPUT, unsigned int> ShOutputVector1ui;
00832 typedef ShVector<1, SH_INOUT, unsigned int> ShInOutVector1ui;
00833 typedef ShVector<1, SH_TEMP, unsigned int> ShVector1ui;
00834 typedef ShVector<1, SH_CONST, unsigned int> ShConstVector1ui;
00835 typedef ShVector<2, SH_INPUT, unsigned int> ShInputVector2ui;
00836 typedef ShVector<2, SH_OUTPUT, unsigned int> ShOutputVector2ui;
00837 typedef ShVector<2, SH_INOUT, unsigned int> ShInOutVector2ui;
00838 typedef ShVector<2, SH_TEMP, unsigned int> ShVector2ui;
00839 typedef ShVector<2, SH_CONST, unsigned int> ShConstVector2ui;
00840 typedef ShVector<3, SH_INPUT, unsigned int> ShInputVector3ui;
00841 typedef ShVector<3, SH_OUTPUT, unsigned int> ShOutputVector3ui;
00842 typedef ShVector<3, SH_INOUT, unsigned int> ShInOutVector3ui;
00843 typedef ShVector<3, SH_TEMP, unsigned int> ShVector3ui;
00844 typedef ShVector<3, SH_CONST, unsigned int> ShConstVector3ui;
00845 typedef ShVector<4, SH_INPUT, unsigned int> ShInputVector4ui;
00846 typedef ShVector<4, SH_OUTPUT, unsigned int> ShOutputVector4ui;
00847 typedef ShVector<4, SH_INOUT, unsigned int> ShInOutVector4ui;
00848 typedef ShVector<4, SH_TEMP, unsigned int> ShVector4ui;
00849 typedef ShVector<4, SH_CONST, unsigned int> ShConstVector4ui;
00850 
00851 
00852 
00853 } // namespace SH
00854 #include "ShVectorImpl.hpp"
00855 
00856 #endif // SH_SHVECTOR_HPP

Generated on Mon Jan 24 18:36:36 2005 for Sh by  doxygen 1.4.1