9 #ifndef DuneDPhase3x1x1NoiseRemovalService_H 10 #define DuneDPhase3x1x1NoiseRemovalService_H 12 #include "TFFTRealComplex.h" 13 #include "TFFTComplexReal.h" 20 namespace geo {
class Geometry; }
21 namespace util {
class LArFFT; }
23 using GroupChannelMap = std::unordered_map<unsigned int, std::vector<unsigned int> >;
33 std::ostream& print(std::ostream& out = std::cout,
std::string prefix =
"")
const;
37 std::vector<float> getMeanCorrection(
38 const std::vector<unsigned int> &
channels,
41 std::vector<float> getMedianCorrection(
42 const std::vector<unsigned int> & channels,
45 void fftFltInPlace(std::vector< float > &
adc,
const std::vector< float > & coeffs)
const;
46 std::vector< float > fftFlt(
const std::vector< float > & adc,
const std::vector< float > & coeffs)
const;
56 GroupChannelMap makeDaqGroups(
size_t gsize,
const std::vector< size_t > & gidx)
const;
58 GroupChannelMap makeGroups(
size_t gsize,
const std::vector< size_t > & gidx)
const;
60 bool has(
const std::vector<size_t> & v,
size_t idx)
const 62 for (
auto c : v)
if (
c == idx)
return true;
67 static size_t get311Chan(
size_t LAr_chan);
69 std::vector<double> GaussJordanSolv(
std::vector< std::vector<long double> > matrix)
const;
std::string m_ROIBuilderToolFinal
AdcChannelToolPtr m_pROIBuilderToolCNR
Namespace for general, non-LArSoft-specific utilities.
DECLARE_ART_SERVICE_INTERFACE_IMPL(MySharedService, art::test::MyServiceInterface, SHARED) DEFINE_ART_SERVICE_INTERFACE_IMPL(MySharedService
std::vector< size_t > fCoherent16Groups
AdcChannelToolPtr m_pROIBuilderToolFlattening
std::unique_ptr< const AdcChannelTool > AdcChannelToolPtr
const geo::Geometry * fGeometry
The geometry of one entire detector, as served by art.
std::unordered_map< unsigned int, std::vector< unsigned int > > GroupChannelMap
static TemplateFilterFactory::AutoRegister< FilterFlatten > fFlatten("flatten")
std::string m_ROIBuilderToolCNR
bool has(const std::vector< size_t > &v, size_t idx) const
std::map< AdcChannel, AdcChannelData > AdcChannelDataMap
std::vector< size_t > fCoherent32Groups
std::string m_ROIBuilderToolFlattening
LArSoft geometry interface.
AdcChannelToolPtr m_pROIBuilderToolFinal
std::vector< float > fLowPassCoeffs
bool fLowPassFltSecondPass