LCOV - code coverage report
Current view: top level - Tools - WhiteNoiseGeneratorFilter.cpp (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 WhiteNoiseGeneratorFilter.cpp
       3             :  */
       4             : 
       5             : #include "WhiteNoiseGeneratorFilter.h"
       6             : 
       7             : #include <boost/math/constants/constants.hpp>
       8             : 
       9             : namespace ATK
      10             : {
      11             :   template<typename DataType_>
      12           4 :   WhiteNoiseGeneratorFilter<DataType_>::WhiteNoiseGeneratorFilter()
      13           4 :   :Parent(0, 1)
      14             :   {
      15           4 :   }
      16             :   
      17             :   template<typename DataType_>
      18           1 :   void WhiteNoiseGeneratorFilter<DataType_>::set_volume(DataType_ volume)
      19             :   {
      20           1 :     this->volume = volume;
      21           1 :     dist.param(typename boost::random::uniform_real_distribution<DataType_>::param_type(static_cast<DataType>(offset - volume), static_cast<DataType>(offset + volume)));
      22           1 :   }
      23             :   
      24             :   template<typename DataType_>
      25           1 :   DataType_ WhiteNoiseGeneratorFilter<DataType_>::get_volume() const
      26             :   {
      27           1 :     return volume;
      28             :   }
      29             :   
      30             :   template<typename DataType_>
      31           1 :   void WhiteNoiseGeneratorFilter<DataType_>::set_offset(DataType_ offset)
      32             :   {
      33           1 :     this->offset = offset;
      34           1 :     dist.param(typename boost::random::uniform_real_distribution<DataType_>::param_type(static_cast<DataType>(offset - volume), static_cast<DataType>(offset + volume)));
      35           1 :   }
      36             :   
      37             :   template<typename DataType_>
      38           1 :   DataType_ WhiteNoiseGeneratorFilter<DataType_>::get_offset() const
      39             :   {
      40           1 :     return offset;
      41             :   }
      42             : 
      43             :   template<typename DataType_>
      44           2 :   void WhiteNoiseGeneratorFilter<DataType_>::process_impl(gsl::index size) const
      45             :   {
      46           2 :     DataType* ATK_RESTRICT output = outputs[0];
      47     8388610 :     for(gsl::index i = 0; i < size; ++i)
      48             :     {
      49     8388610 :       output[i] = dist(gen);
      50             :     }
      51           2 :   }
      52             :   
      53             : #if ATK_ENABLE_INSTANTIATION
      54             :   template class WhiteNoiseGeneratorFilter<float>;
      55             : #endif
      56             :   template class WhiteNoiseGeneratorFilter<double>;
      57             : }

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