00001 #include <fstream> 00002 #include <string> 00003 #include <iostream> 00004 #include <sstream> 00005 #include "CalibData/Mdc/MdcAlignData.h" 00006 00007 using namespace std; 00008 namespace CalibData { 00009 00010 StatusCode MdcAlignData::update(CalibBase1& other, MsgStream* log) 00011 { 00012 MdcAlignData& other1 = dynamic_cast<MdcAlignData& >(other); 00013 cout<<"\n"<<"here is the update in the MdcCal Alignment"<<std::endl; 00014 CalibBase1::update(other, log); 00015 for(int i=0;i<16;i++){ 00016 dxEP[i]=other1.dxEP[i]; 00017 dyEP[i]=other1.dyEP[i]; 00018 dzEP[i]=other1.dzEP[i]; 00019 rxEP[i]=other1.rxEP[i]; 00020 ryEP[i]=other1.ryEP[i]; 00021 rzEP[i]=other1.rzEP[i]; 00022 } 00023 for(int i=0;i<6796;i++){ 00024 dxWireEast[i]=other1.dxWireEast[i]; 00025 dyWireEast[i]=other1.dyWireEast[i]; 00026 dzWireEast[i]=other1.dzWireEast[i]; 00027 dxWireWest[i]=other1.dxWireWest[i]; 00028 dyWireWest[i]=other1.dyWireWest[i]; 00029 dzWireWest[i]=other1.dzWireWest[i]; 00030 tension[i]=other1.tension[i]; 00031 } 00032 00033 return StatusCode::SUCCESS; 00034 } 00035 00036 00037 void MdcAlignData::readPar(char* p1, char* p2, char* p3){ 00038 int i; 00039 string strtmp; 00040 00041 istringstream falign; 00042 string aa1 = p1; 00043 falign.str(aa1); 00044 for(i=0; i<7; i++) falign >> strtmp; 00045 for(i=0; i<16; i++){ 00046 falign >> strtmp >> dxEP[i] >> dyEP[i] >> dzEP[i] >> rxEP[i] >> ryEP[i] >> rzEP[i]; 00047 } 00048 00049 istringstream fwpos; 00050 string aa2 = p2; 00051 fwpos.str(aa2); 00052 for(i=0; i<7; i++) fwpos >> strtmp; 00053 for(i=0; i<6796; i++){ 00054 fwpos >> strtmp >> dxWireEast[i] >> dyWireEast[i] >> dzWireEast[i] 00055 >> dxWireWest[i] >> dyWireWest[i] >> dzWireWest[i]; 00056 } 00057 00058 istringstream ften; 00059 string aa3 = p3; 00060 ften.str(p3); 00061 for(i=0; i<6796; i++) ften >> strtmp >> tension[i]; 00062 } 00063 }