LCOV - code coverage report
Current view: top level - Tools - OffsetVolumeFilter.hxx (source / functions) Hit Total Coverage
Test: coverage.info.cleaned Lines: 20 20 100.0 %
Date: 2021-02-18 20:07:22 Functions: 6 6 100.0 %

          Line data    Source code
       1             : /**
       2             :  * \file OffsetVolumeFilter.hxx
       3             :  */
       4             : 
       5             : #include "OffsetVolumeFilter.h"
       6             : 
       7             : namespace ATK
       8             : {
       9             :   template<typename DataType_>
      10           8 :   OffsetVolumeFilter<DataType_>::OffsetVolumeFilter(gsl::index nb_channels)
      11           8 :   :Parent(nb_channels, nb_channels)
      12             :   {
      13           8 :   }
      14             :   
      15             :   template<typename DataType_>
      16           5 :   void OffsetVolumeFilter<DataType_>::set_volume(DataType_ volume)
      17             :   {
      18           5 :     this->volume = volume;
      19           5 :   }
      20             : 
      21             :   template<typename DataType_>
      22           1 :   DataType_ OffsetVolumeFilter<DataType_>::get_volume() const
      23             :   {
      24           1 :     return volume;
      25             :   }
      26             :     
      27             :   template<typename DataType_>
      28           3 :   void OffsetVolumeFilter<DataType_>::set_offset(DataType_ offset)
      29             :   {
      30           3 :     this->offset = offset;
      31           3 :   }
      32             : 
      33             :   template<typename DataType_>
      34           1 :   DataType_ OffsetVolumeFilter<DataType_>::get_offset() const
      35             :   {
      36           1 :     return offset;
      37             :   }
      38             : 
      39             :   template<typename DataType_>
      40           8 :   void OffsetVolumeFilter<DataType_>::process_impl(gsl::index size) const
      41             :   {
      42          16 :     for(gsl::index channel = 0; channel < nb_input_ports; ++channel)
      43             :     {
      44           8 :       const DataType* ATK_RESTRICT input = converted_inputs[channel];
      45           8 :       DataType* ATK_RESTRICT output = outputs[channel];
      46        4150 :       for(gsl::index i = 0; i < size; ++i)
      47             :       {
      48        4142 :         output[i] = offset + volume * input[i];
      49             :       }
      50             :     }
      51           8 :   }
      52             : }

Generated by: LCOV version TK-3.3.0-4-gdba42eea