"Fossies" - the Fresh Open Source Software Archive

Member "armadillo-9.800.3/include/armadillo_bits/op_relational_bones.hpp" (16 Jun 2016, 3854 Bytes) of package /linux/misc/armadillo-9.800.3.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "op_relational_bones.hpp" see the Fossies "Dox" file reference documentation.

    1 // Copyright 2008-2016 Conrad Sanderson (http://conradsanderson.id.au)
    2 // Copyright 2008-2016 National ICT Australia (NICTA)
    3 // 
    4 // Licensed under the Apache License, Version 2.0 (the "License");
    5 // you may not use this file except in compliance with the License.
    6 // You may obtain a copy of the License at
    7 // http://www.apache.org/licenses/LICENSE-2.0
    8 // 
    9 // Unless required by applicable law or agreed to in writing, software
   10 // distributed under the License is distributed on an "AS IS" BASIS,
   11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   12 // See the License for the specific language governing permissions and
   13 // limitations under the License.
   14 // ------------------------------------------------------------------------
   15 
   16 
   17 //! \addtogroup op_relational
   18 //! @{
   19 
   20 
   21 
   22 class op_rel_lt_pre
   23   : public traits_op_passthru
   24   {
   25   public:
   26   
   27   template<typename T1>
   28   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lt_pre>& X);
   29   
   30   template<typename T1>
   31   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lt_pre>& X);
   32   };
   33 
   34 
   35 
   36 class op_rel_lt_post
   37   : public traits_op_passthru
   38   {
   39   public:
   40   
   41   template<typename T1>
   42   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lt_post>& X);
   43   
   44   template<typename T1>
   45   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lt_post>& X);
   46   };
   47 
   48 
   49 
   50 class op_rel_gt_pre
   51   : public traits_op_passthru
   52   {
   53   public:
   54   
   55   template<typename T1>
   56   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gt_pre>& X);
   57   
   58   template<typename T1>
   59   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gt_pre>& X);
   60   };
   61 
   62 
   63 
   64 class op_rel_gt_post
   65   : public traits_op_passthru
   66   {
   67   public:
   68   
   69   template<typename T1>
   70   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gt_post>& X);
   71   
   72   template<typename T1>
   73   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gt_post>& X);
   74   };
   75 
   76 
   77 
   78 class op_rel_lteq_pre
   79   : public traits_op_passthru
   80   {
   81   public:
   82   
   83   template<typename T1>
   84   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lteq_pre>& X);
   85   
   86   template<typename T1>
   87   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lteq_pre>& X);
   88   };
   89 
   90 
   91 
   92 class op_rel_lteq_post
   93   : public traits_op_passthru
   94   {
   95   public:
   96   
   97   template<typename T1>
   98   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lteq_post>& X);
   99   
  100   template<typename T1>
  101   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lteq_post>& X);
  102   };
  103 
  104 
  105 
  106 class op_rel_gteq_pre
  107   : public traits_op_passthru
  108   {
  109   public:
  110   
  111   template<typename T1>
  112   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gteq_pre>& X);
  113   
  114   template<typename T1>
  115   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gteq_pre>& X);
  116   };
  117 
  118 
  119 
  120 class op_rel_gteq_post
  121   : public traits_op_passthru
  122   {
  123   public:
  124   
  125   template<typename T1>
  126   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gteq_post>& X);
  127   
  128   template<typename T1>
  129   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gteq_post>& X);
  130   };
  131 
  132 
  133 
  134 class op_rel_eq
  135   : public traits_op_passthru
  136   {
  137   public:
  138   
  139   template<typename T1>
  140   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_eq>& X);
  141   
  142   template<typename T1>
  143   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_eq>& X);
  144   };
  145 
  146 
  147 
  148 class op_rel_noteq
  149   : public traits_op_passthru
  150   {
  151   public:
  152   
  153   template<typename T1>
  154   inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_noteq>& X);
  155   
  156   template<typename T1>
  157   inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_noteq>& X);
  158   };
  159 
  160 
  161 
  162 //! @}