#ifndef __SOFIE_SOLAR_FLUX_2006_08_14__ #define __SOFIE_SOLAR_FLUX_2006_08_14__ /** @file SolarFlux @author Brian Magill @creationdate 8/14/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 solar flux data for MSIS model */ #include #include const unsigned long KP_ARRAY_SIZE = 32; class SolarFlux { private: std::vector Aplu; long APavg; float flux10_7; float flux_90; bool hasData; public: SolarFlux() {hasData = false;}; SolarFlux(std::vector kp, long apvg, float f10_7, float f_90); SolarFlux(std::valarray kp, long apvg, float f10_7, float f_90); SolarFlux(std::valarray kp, long apvg, float f10_7, float f_90); SolarFlux(SolarFlux const &rhs) { Aplu = rhs.Aplu; APavg = rhs.APavg; flux10_7 = rhs.flux10_7; flux_90 = rhs.flux_90; } SolarFlux& operator = (SolarFlux const &rhs) { if (&rhs == this) return *this; Aplu = rhs.Aplu; APavg = rhs.APavg; flux10_7 = rhs.flux10_7; flux_90 = rhs.flux_90; return *this; } ~SolarFlux() {}; bool HasData() {return hasData;}; float getApAvg() {return APavg;}; float getFlux10_7() {return flux10_7;}; float getFlux90() {return flux_90;}; std::vector getAP(float sec); }; #endif