#ifndef TRUNCATE_REFRACTION_INPUT_01_03_2008 #define TRUNCATE_REFRACTION_INPUT_01_03_2008 /** @file TruncRefracIn.h @author Brian Magill @datecreated 01/03/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: Removes data the is outside the specified range of time */ //---------------------------------------------------------------------- // #include class TruncRefracIn { private: double startTime; double endTime; public: TruncRefracIn(double start = 0., double end = 0.): startTime(start), endTime(end) { } TruncRefracIn(TruncRefracIn const& rhs): startTime(rhs.startTime), endTime(rhs.endTime) { } TruncRefracIn& operator = (TruncRefracIn const& rhs ) { if (this == &rhs) return *this; startTime = rhs.startTime; endTime = rhs.endTime; return *this; }; ~TruncRefracIn() { } double getStartTime() { return startTime; } double getEndTime() { return endTime; } /// /// Removes array elements with missing values /// /// @param startTime - first allowable time /// /// @param endTime - last allowable time /// /// @param RefracTime - time array with "missing value" data removed /// /// @param RefracExtent - solar extent array with "missing value" data removed /// void operator()(std::valarray const &InTime, std::valarray const &InValue, std::valarray &TruncTime, std::valarray &TruncValue) const; }; #endif