casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FlagAgentClipping.h
Go to the documentation of this file.
1 //# FlagAgentClipping.h: This file contains the interface definition of the FlagAgentClipping class.
2 //#
3 //# CASA - Common Astronomy Software Applications (http://casa.nrao.edu/)
4 //# Copyright (C) Associated Universities, Inc. Washington DC, USA 2011, All rights reserved.
5 //# Copyright (C) European Southern Observatory, 2011, All rights reserved.
6 //#
7 //# This library is free software; you can redistribute it and/or
8 //# modify it under the terms of the GNU Lesser General Public
9 //# License as published by the Free software Foundation; either
10 //# version 2.1 of the License, or (at your option) any later version.
11 //#
12 //# This library is distributed in the hope that it will be useful,
13 //# but WITHOUT ANY WARRANTY, without even the implied warranty of
14 //# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 //# Lesser General Public License for more details.
16 //#
17 //# You should have received a copy of the GNU Lesser General Public
18 //# License along with this library; if not, write to the Free Software
19 //# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20 //# MA 02111-1307 USA
21 //# $Id: $
22 
23 #ifndef FlagAgentClipping_H_
24 #define FlagAgentClipping_H_
25 
27 
28 namespace casa { //# NAMESPACE CASA - BEGIN
29 
31 
32 public:
33 
34  FlagAgentClipping(FlagDataHandler *dh, casacore::Record config, casacore::Bool writePrivateFlagCube = false, casacore::Bool flag = true);
36 
37 protected:
38 
39  // Common functionality for each visBuffer (don't repeat at the row level)
40  // jagonzal: With the new WEIGHT/SIGMA convention it is not longer
41  // necessary divide the clipping range between the number of channels
42  // void preProcessBuffer(const vi::VisBuffer2 &visBuffer);
43 
44  // Compute flags afor a given mapped visibility point
45  bool computeInRowFlags(const vi::VisBuffer2 &visBuffer, VisMapper &visibilities,FlagMapper &flags, casacore::uInt row);
46 
47  // Specialization of the different clipping cases
48  bool checkVisForClipOutside(casacore::Float visExpression);
49  bool checkVisForClipInside(casacore::Float visExpression);
52  bool checkVisForNaNs(casacore::Float visExpression);
53  bool checkVisForNaNsAndZeros(casacore::Float visExpression);
54 
55  // Parse configuration parameters
57 
58 private:
59 
69 
70  // Specialization for the clipping case
72 
73 };
74 
75 
76 } //# NAMESPACE CASA - END
77 
78 #endif /* FlagAgentClipping_H_ */
79 
bool checkVisForClipOutside(casacore::Float visExpression)
Specialization of the different clipping cases.
A top level class defining the data handling interface for the flagging module.
casacore::Float original_clipmax_p
bool checkVisForClipOutsideAndZeros(casacore::Float visExpression)
bool checkVisForClipInside(casacore::Float visExpression)
bool(casa::FlagAgentClipping::* checkVis_p)(casacore::Float)
Specialization for the clipping case.
A top level class defining the interface for flagging agents.
A hierarchical collection of named fields of various types.
Definition: Record.h:180
bool Bool
Define the standard types used by Casacore.
Definition: aipstype.h:42
float Float
Definition: aipstype.h:54
bool checkVisForNaNs(casacore::Float visExpression)
bool checkVisForNaNsAndZeros(casacore::Float visExpression)
void setAgentParameters(casacore::Record config)
Parse configuration parameters.
VisBuffer2s encapsulate one chunk of visibility data for processing.
Definition: VisBuffer2.h:141
bool checkVisForClipInsideAndZeros(casacore::Float visExpression)
bool computeInRowFlags(const vi::VisBuffer2 &visBuffer, VisMapper &visibilities, FlagMapper &flags, casacore::uInt row)
Common functionality for each visBuffer (don't repeat at the row level) jagonzal: With the new WEIGHT...
FlagAgentClipping(FlagDataHandler *dh, casacore::Record config, casacore::Bool writePrivateFlagCube=false, casacore::Bool flag=true)
casacore::Bool clipoutside_p
casacore::Bool clipminmax_p
casacore::Input parameters ///
casacore::Float original_clipmin_p
unsigned int uInt
Definition: aipstype.h:51