#ifndef __SOFIE_ALTITUDE_TEMPERATURE_PROFILE_2006_08_15__ #define __SOFIE_ALTITUDE_TEMPERATURE_PROFILE_2006_08_15__ /** @file ZT_Profile.h @author Brian Magill @creationdate 8/15/2006 $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 a temperature profile */ #include #include class ZT_Profile { private: std::vector altitude; std::vector temperature; bool hasData; public: ZT_Profile() {hasData = false;}; ZT_Profile(std::valarray const &z, std::valarray const &tem); ZT_Profile(std::valarray const &z, std::valarray const &tem); ZT_Profile(std::vector const &z, std::vector const &tem); ZT_Profile(std::vector const &z, std::vector const &tem); ZT_Profile(ZT_Profile const &rhs) { // altitude.resize(rhs.altitude.size() ); // temperature.resize(rhs.temperature.size() ); altitude = rhs.altitude; temperature = rhs.temperature; hasData = rhs.hasData; } ZT_Profile& operator = (ZT_Profile const &rhs) { if(&rhs == this) return *this; // altitude.resize(rhs.altitude.size() ); // temperature.resize(rhs.temperature.size() ); altitude = rhs.altitude; temperature = rhs.temperature; hasData = rhs.hasData; return *this; } ~ZT_Profile() {}; bool HasData() { return hasData; }; double MinAlt(); double MaxAlt(); double operator()(double z); }; #endif