| [2] | 1 | //#---------------------------------------------------------------------------
 | 
|---|
| [890] | 2 | //# Templates.cc: explicit templates for aips++
 | 
|---|
| [2] | 3 | //#---------------------------------------------------------------------------
 | 
|---|
 | 4 | //# Copyright (C) 2004
 | 
|---|
| [125] | 5 | //# ATNF
 | 
|---|
| [2] | 6 | //#
 | 
|---|
 | 7 | //# This program is free software; you can redistribute it and/or modify it
 | 
|---|
 | 8 | //# under the terms of the GNU General Public License as published by the Free
 | 
|---|
 | 9 | //# Software Foundation; either version 2 of the License, or (at your option)
 | 
|---|
 | 10 | //# any later version.
 | 
|---|
 | 11 | //#
 | 
|---|
 | 12 | //# This program is distributed in the hope that it will be useful, but
 | 
|---|
 | 13 | //# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
|---|
 | 14 | //# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General
 | 
|---|
 | 15 | //# Public License for more details.
 | 
|---|
 | 16 | //#
 | 
|---|
 | 17 | //# You should have received a copy of the GNU General Public License along
 | 
|---|
 | 18 | //# with this program; if not, write to the Free Software Foundation, Inc.,
 | 
|---|
 | 19 | //# 675 Massachusetts Ave, Cambridge, MA 02139, USA.
 | 
|---|
 | 20 | //#
 | 
|---|
 | 21 | //# Correspondence concerning this software should be addressed as follows:
 | 
|---|
 | 22 | //#        Internet email: Malte.Marquarding@csiro.au
 | 
|---|
 | 23 | //#        Postal address: Malte Marquarding,
 | 
|---|
 | 24 | //#                        Australia Telescope National Facility,
 | 
|---|
 | 25 | //#                        P.O. Box 76,
 | 
|---|
 | 26 | //#                        Epping, NSW, 2121,
 | 
|---|
 | 27 | //#                        AUSTRALIA
 | 
|---|
 | 28 | //#
 | 
|---|
| [1091] | 29 | //# $Id: Templates.cpp 1091 2006-07-28 03:25:32Z mar637 $
 | 
|---|
| [2] | 30 | //#---------------------------------------------------------------------------
 | 
|---|
| [815] | 31 | #include "Scantable.h"
 | 
|---|
| [125] | 32 | 
 | 
|---|
 | 33 | #include <casa/aips.h>
 | 
|---|
 | 34 | #include <casa/namespace.h>
 | 
|---|
| [81] | 35 | #include <casa/Exceptions/Error.cc>
 | 
|---|
 | 36 | #include <casa/Utilities/CountedPtr.cc>
 | 
|---|
| [2] | 37 | 
 | 
|---|
| [1091] | 38 | template class casa::CountedConstPtr<asap::Scantable>;
 | 
|---|
 | 39 | template class casa::CountedPtr<asap::Scantable>;
 | 
|---|
 | 40 | template class casa::PtrRep<asap::Scantable>;
 | 
|---|
 | 41 | template class casa::SimpleCountedConstPtr<asap::Scantable>;
 | 
|---|
 | 42 | template class casa::SimpleCountedPtr<asap::Scantable>;
 | 
|---|
| [2] | 43 | 
 | 
|---|
| [81] | 44 | #include <casa/Arrays/ArrayLogical.cc>
 | 
|---|
 | 45 | #include <casa/Arrays/ArrayMath.cc>
 | 
|---|
 | 46 | #include <casa/Arrays/MaskArrMath.cc>
 | 
|---|
| [454] | 47 | #include <casa/Arrays/MaskedArray.cc>
 | 
|---|
| [81] | 48 | #include <casa/Arrays/Array.h>
 | 
|---|
| [454] | 49 | #include <casa/Arrays/Array.cc>
 | 
|---|
| [261] | 50 | #include <casa/Arrays/Vector.h>
 | 
|---|
 | 51 | #include <casa/Utilities/BinarySearch.cc>
 | 
|---|
| [310] | 52 | #include <coordinates/Coordinates/FrequencyAligner.cc>
 | 
|---|
| [261] | 53 | #include <lattices/Lattices/Lattice.h>
 | 
|---|
 | 54 | #include <lattices/Lattices/LatticeUtilities.cc>
 | 
|---|
 | 55 | #include <scimath/Mathematics/InterpolateArray1D.cc>
 | 
|---|
| [422] | 56 | #include <tables/Tables/BaseMappedArrayEngine.cc>
 | 
|---|
| [815] | 57 | #include <tables/Tables/TableVector.h>
 | 
|---|
 | 58 | #include <tables/Tables/TVec.cc>
 | 
|---|
 | 59 | #include <tables/Tables/TableVector.cc>
 | 
|---|
 | 60 | #include <tables/Tables/TVecScaCol.cc>
 | 
|---|
 | 61 | #include <tables/Tables/TVecTemp.cc>
 | 
|---|
| [934] | 62 | //#include <tables/Tables/TVecMath.h>
 | 
|---|
| [2] | 63 | 
 | 
|---|
| [815] | 64 | template class ROTableVector<uInt>;
 | 
|---|
| [851] | 65 | template class TableVector<uInt>;
 | 
|---|
| [815] | 66 | template class TabVecScaCol<uInt>;
 | 
|---|
 | 67 | template class TabVecTemp<uInt>;
 | 
|---|
 | 68 | template class TabVecRep<uInt>;
 | 
|---|
 | 69 | 
 | 
|---|
 | 70 | template class ROTableVector<Float>;
 | 
|---|
 | 71 | template class TabVecScaCol<Float>;
 | 
|---|
 | 72 | template class TabVecTemp<Float>;
 | 
|---|
 | 73 | template class TabVecRep<Float>;
 | 
|---|
 | 74 | 
 | 
|---|
| [896] | 75 | template class ROTableVector<uChar>;
 | 
|---|
 | 76 | template class TableVector<uChar>;
 | 
|---|
 | 77 | template class TabVecScaCol<uChar>;
 | 
|---|
 | 78 | template class TabVecTemp<uChar>;
 | 
|---|
 | 79 | template class TabVecRep<uChar>;
 | 
|---|
 | 80 | 
 | 
|---|
| [125] | 81 | template void convertArray<Bool, uChar>(Array<Bool> &, Array<uChar> const &);
 | 
|---|
 | 82 | template void convertArray<uChar, Bool>(Array<uChar> &, Array<Bool> const &);
 | 
|---|
| [794] | 83 | 
 | 
|---|
| [125] | 84 | template Array<Float>& operator/=<Float>(Array<Float>&, MaskedArray<Float> const&);
 | 
|---|
 | 85 | template MaskedArray<Float> const& operator*=<Float>(MaskedArray<Float> const&, Float const&);
 | 
|---|
| [701] | 86 | template MaskedArray<Float> const& operator*=<Float>(MaskedArray<Float> const&, Array<Float> const&);
 | 
|---|
 | 87 | template MaskedArray<Float> const& operator/=<Float>(MaskedArray<Float> const&, Float const&);
 | 
|---|
| [239] | 88 | template MaskedArray<Float> operator+<Float>(MaskedArray<Float> const&, MaskedArray<Float> const&);
 | 
|---|
| [125] | 89 | template MaskedArray<Float> operator-<Float>(MaskedArray<Float> const&, MaskedArray<Float> const&);
 | 
|---|
| [701] | 90 | template MaskedArray<Float> operator-<Float>(MaskedArray<Float> const&, Array<Float> const&);
 | 
|---|
 | 91 | 
 | 
|---|
 | 92 | template MaskedArray<Float> operator/<Float>(MaskedArray<Float> const&, MaskedArray<Float> const&);
 | 
|---|
 | 93 | 
 | 
|---|
| [239] | 94 | template MaskedArray<Float> operator*<Float>(MaskedArray<Float> const&, MaskedArray<Float> const&);
 | 
|---|
| [701] | 95 | template MaskedArray<Float> operator*<Float>(MaskedArray<Float> const&, Array<Float> const&);
 | 
|---|
| [243] | 96 | template MaskedArray<Float> operator*<Float>(Array<Float> const&, MaskedArray<Float> const&);
 | 
|---|
| [815] | 97 | template MaskedArray<Float> operator*<Float>(Float const&, MaskedArray<Float> const&);
 | 
|---|
| [125] | 98 | template Float stddev<Float>(MaskedArray<Float> const&);
 | 
|---|
| [617] | 99 | template Float median<Float>(MaskedArray<Float> const&, Bool, Bool);
 | 
|---|
| [132] | 100 | template Float sumsquares<Float>(MaskedArray<Float> const&);
 | 
|---|
 | 101 | template Float avdev<Float>(MaskedArray<Float> const&);
 | 
|---|
| [454] | 102 | 
 | 
|---|
| [132] | 103 | template void LatticeUtilities::bin(MaskedArray<float>&, MaskedArray<float> const&, uInt, uInt);
 | 
|---|
| [794] | 104 | 
 | 
|---|
| [310] | 105 | template class FrequencyAligner<Float>;
 | 
|---|
| [794] | 106 | 
 | 
|---|
| [422] | 107 | template class BaseMappedArrayEngine<Float, Float>;
 | 
|---|
 | 108 | 
 | 
|---|
| [986] | 109 | #include "MathUtils2.cpp"
 | 
|---|
| [125] | 110 | namespace mathutil {
 | 
|---|
 | 111 |   template void hanning(Vector<Float>&, Vector<Bool>&,
 | 
|---|
| [815] | 112 |                         const Vector<Float>&,
 | 
|---|
 | 113 |                         const Vector<Bool>&,
 | 
|---|
| [125] | 114 |                         Bool, Bool);
 | 
|---|
 | 115 | }
 | 
|---|
| [461] | 116 | 
 | 
|---|