#ifndef SET_UP_DRIFT_PARAMETERS_8_23_2007 #define SET_UP_DRIFT_PARAMETERS_8_23_2007 /** @file SetUpDriftParam.h @author Brian Magill @date 8/23/2007 $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 Contains parameters for setting up drift calculations for each channel */ #include #include "SigEarthLocParam.h" class SetUpDriftParam { private: std::vector ChannelTimePoints; std::vector ChannelAltPoints; double startBalance; // Start of SOFIE's balance maneuver double endBalance; // End of SOFIE's balance maneuver // Changed by GJP on 10/01/2010 to make use of independent time // intervals for each channel //double timeInverval; std::vector IntervalArray; public: SetUpDriftParam( ):ChannelTimePoints(0), ChannelAltPoints(0), // Modified by GJP on 10/01/2010 IntervalArray(0), startBalance(0), endBalance(0) { } SetUpDriftParam(std::vector const &tp, std::vector const &zp, double start, double end, // Modified by GJP on 10/01/2010 std::vector const &ti): ChannelTimePoints(tp), ChannelAltPoints(zp), startBalance(start), endBalance(end), // Modified by GJP on 10/01/2010 IntervalArray(ti) { } SetUpDriftParam(SetUpDriftParam const &rhs): ChannelTimePoints(rhs.ChannelTimePoints), ChannelAltPoints(rhs.ChannelAltPoints), startBalance(rhs.startBalance), endBalance(rhs.endBalance), // Modified by GJP on 10/01/2010 IntervalArray(rhs.IntervalArray) { } SetUpDriftParam const & operator = (SetUpDriftParam const &rhs) { if (this == &rhs) return *this; ChannelTimePoints = rhs.ChannelTimePoints; ChannelAltPoints = rhs.ChannelAltPoints; startBalance = rhs.startBalance; endBalance = rhs.endBalance; // Modified by GJP on 10/01/2010 IntervalArray = rhs.IntervalArray; return *this; } ~SetUpDriftParam() { } double getTimePoint(int indx) const {return ChannelTimePoints.at(indx); } double getAltitudePoint(int indx) const {return ChannelAltPoints.at(indx); } double getStartBalance() const {return startBalance; } double getEndBalance() const {return endBalance; } // Modified by GJP on 10/01/2010 double getInterval(int indx) const {return IntervalArray.at(indx); } unsigned long size() const {return ChannelTimePoints.size(); } }; #endif