/*************************************************************************** * Copyright (C) 2006 by pamelaprod * * pamelaprod@P1.pamela * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ #ifndef FIRST_H #define FIRST_H #include #include #include "TROOT.h" #include "YMcmd.h" //#include "OrbitalInfoStruct.h" /** @author pamelaprod */ class Quaternions: public InclinationInfoItem { public: Quaternions(); ~Quaternions(); //Int_t CodeErrQua; }; class InclinationInfo: public TObject { //private: //Double_t k1; //Double_t k2; //void coefplane(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2); //Double_t AngBetAxes(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2); //Double_t ValueT(Double_t x1,Double_t y1, Double_t z1, Double_t n1, Double_t n2); //Double_t AngBetPlan(Double_t x1,Double_t y1, Double_t z1, Double_t n1, Double_t n2); public: InclinationInfo(); ~InclinationInfo(); // Nico's variables // //Int_t nicos1; //Int_t nicos2; //Int_t nicos3; //Int_t nicos4; // End nico's // // Our variables // float_t A11; float_t A12; float_t A13; // float_t A21; // float_t A22; // float_t A23; // Angles RCS of OCS // float_t AXrXo; // float_t AXrYo; // float_t AXrZo; // float_t AYrXo; // float_t AYrYo; // float_t AYrZo; // float_t AZrXo; // float_t AZrYo; // float_t AZrZo; // float_t AXrZXo; // float_t AXrXYo; // float_t AXrYZo; // float_t AYrZXo; // float_t AYrXYo; // float_t AYrYZo; // float_t AZrZXo; // float_t AZrXYo; // float_t AZrYZo; // float_t ApXrZXoZ; // float_t ApXrXYoZ; // float_t ApXrYZoZ; // float_t ApYrZXoZ; // float_t ApYrXYoZ; // float_t ApYrYZoZ; // float_t ApZrZXoZ; // float_t ApZrXYoZ; // float_t ApZrYZoZ; // float_t AXrZXo_2m; // float_t AXrXYo_2m; // float_t AXrYZo_2m; // float_t AYrZXo_2m; // float_t AYrXYo_2m; // float_t AYrYZo_2m; // float_t AZrZXo_2m; // float_t AZrXYo_2m; // float_t AZrYZo_2m; // float_t ApXrZXoZ_2m; // float_t ApXrXYoZ_2m; // float_t ApXrYZoZ_2m; // float_t ApYrZXoZ_2m; // float_t ApYrXYoZ_2m; // float_t ApYrYZoZ_2m; // float_t ApZrZXoZ_2m; // float_t ApZrXYoZ_2m; // float_t ApZrYZoZ_2m; Double_t XXRCS; Double_t YXRCS; Double_t ZXRCS; Double_t XYRCS; Double_t YYRCS; Double_t ZYRCS; Double_t XZRCS; Double_t YZRCS; Double_t ZZRCS; Double_t Tangazh; Double_t Ryskanie; Double_t Kren; bool mode; Float_t dircutoff; short int Sign_1(double_t a, short int b){ if (a>0){b=1;}; if (a<0){b=-1;} else {b=0;}; return b;}; void QuaternionstoAngle(Quaternions); void TransAngle(Double_t x,Double_t y,Double_t z,Double_t Vx0,Double_t Vy0, Double_t Vz0, Double_t gamar, Double_t ksir, Double_t tetar, Double_t q0, Double_t q1, Double_t q2, Double_t q3); // float_t procRegidity(double_t L, double_t B, double_t R); // UInt_t absTime; // UInt_t OBT; // UInt_t pkt_num; void Clear(); }; #endif