00001 #include "findit.hh" 00002 #include "except.hh" 00003 #include "write.hh" 00004 #include "product.hh" 00005 00006 #define NCORNER 4 00007 00008 typedef struct s_TAPERDATA { 00009 std::string key; 00010 float t[NCORNER]; 00011 } TAPERDATA; 00012 00013 using RVL::Writeable; 00014 using RVL::ROProduct; 00015 00016 class TaperPars: public RVL::Writeable, 00017 public RVL::ROProduct<TAPERDATA> { 00018 00019 private: 00020 00021 std::vector<TAPERDATA *> tdata; 00022 00023 public: 00024 00025 TaperPars(std::string arg); 00026 TaperPars(TaperPars const & t); 00027 ~TaperPars(); 00028 size_t getSize() const { return tdata.size(); } 00029 TAPERDATA const & operator[](size_t i) const; 00030 ostream & write(ostream & str) const; 00031 }; 00032