#ifndef REMOVE_NONLINEARITY_ALGORITHM_4_21_2008 #define REMOVE_NONLINEARITY_ALGORITHM_4_21_2008 /** @file RemoveNonLinAlgo.h @author Brian Magill @date 4/21/2008 $Date:$ $Revision:$ @copyright (©) Copyright 2006 by GATS Inc. 11864 Canon Blvd., Suite 101, Newport News, VA 23606 All Rights Reserved. No part of this software or publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise without the prior written permission of GATS Inc. @brief */ #include #include "ChannelSignals.h" class RemoveNonLinAlgo { private: double labGain; public: RemoveNonLinAlgo(double gain = 0.83):labGain(gain) { } RemoveNonLinAlgo(RemoveNonLinAlgo const &rhs): labGain(rhs.labGain) { } RemoveNonLinAlgo const & operator = (RemoveNonLinAlgo const &rhs) { if (this == &rhs) return *this; labGain = rhs.labGain; return *this; } ~RemoveNonLinAlgo() { } ChannelSignals operator()(std::valarray const &time, ChannelSignals const &in, double strong_coef, double weak_coef) const; }; #endif