⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 msg_data_impfconfiguration.~cpp

📁 HRIT读取,用于在LINUX下显示高束数据图像
💻 ~CPP
📖 第 1 页 / 共 2 页
字号:
std::ostream& operator<< (std::ostream& os, MSG_SUConfiguration &g){  os << "SW VERSION" << std::endl;  os << g.SWVersion;  os << "INFO BASE VERSION" << std::endl;  for (int i = 0; i < 10; i ++)    os << g.InfoBaseVersion[i];  return os;}size_t MSG_SUDetail::read_from( unsigned const char_1 *buff ){  SoftwareUnitId = get_ui4(buff);  SUIdInstance = (t_enum_MSG_SU_instance) *(buff+4);  SUMode = (t_enum_MSG_SUMode) *(buff+5);  SUState = (t_enum_MSG_SUState) *(buff+6);  return (7 + SUConfiguration.read_from(buff+7));}std::ostream& operator<< ( std::ostream& os, MSG_SUDetail &d ){  os << "Software Unit ID    : " << d.SoftwareUnitId << " ("     << MSG_SU_ID(d.SoftwareUnitId) << ")" << std::endl     << "Software Unit Inst. : " << MSG_SU_Instance(d.SUIdInstance)     << std::endl     << "Software Unit Mode  : " << MSG_SUMode(d.SUMode) << std::endl     << "Software Unit State : " << MSG_SUState(d.SUState) << std::endl     << d.SUConfiguration;  return os;}size_t MSG_EqualisationParms::read_from( unsigned const char_1 *buff ){  ConstCoef = get_r4(buff);  LinearCoef = get_r4(buff+4);  QuadraticCoef = get_r4(buff+8);  return 12;}std::ostream& operator<< ( std::ostream& os, MSG_EqualisationParms &e ){  os << "Constant Coefficient: " << e.ConstCoef << std::endl     << "Linear Coefficient  : " << e.LinearCoef << std::endl     << "Quadratic Coeff.    : " << e.QuadraticCoef << std::endl;  return os;}size_t MSG_BlackBodyDataWarmStart::read_from( unsigned const char_1 *buff ){  size_t position = 0;  for (int i = 0; i < 12; i ++)    GTotalForMethod1[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    GTotalForMethod2[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    GTotalForMethod3[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    GBackForMethod1[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    GBackForMethod2[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    GBackForMethod3[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    RatioGTotalToGBack[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    GainInFrontOpticsCont[i] = get_r8(buff+position+i*8);  position += 96;  for (int i = 0; i < 12; i ++)    CalibrationConstants[i] = get_r4(buff+position+i*8);  position += 48;  TimeOfColdObsSeconds = get_r8(buff+position);  position += 8;  TimeOfColdObsNanoSecs = get_r8(buff+position);  position += 8;  for (int i = 0; i < 12; i ++)    IncidentRadiance[i] = get_r8(buff+position+i*8);  position += 96;  TempCal = get_r8(buff+position);  position += 8;  TempM1 = get_r8(buff+position);  position += 8;  TempScan = get_r8(buff+position);  position += 8;  TempM1Baf = get_r8(buff+position);  position += 8;  TempCalSurround = get_r8(buff+position);  position += 8;  position += MirrorParameters.read_from(buff+position);  LastSpinPeriod = get_r8(buff+position);  position += 8;  position += HKTMParameters.read_from(buff+position);  return position;}std::ostream& operator<< ( std::ostream& os, MSG_BlackBodyDataWarmStart &b ){  os << "Gain for Method 1   : " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.GTotalForMethod1[i] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod1[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod1[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod1[i+3]       << std::endl;  os << "Gain for Method 2   : " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.GTotalForMethod2[i] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod2[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod2[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod2[i+3]       << std::endl;  os << "Gain for Method 3   : " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.GTotalForMethod3[i] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod3[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod3[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.GTotalForMethod3[i+3]       << std::endl;  os << "Gain BB for Method 1: " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.GBackForMethod1[i] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod1[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod1[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod1[i+3]       << std::endl;  os << "Gain BB for Method 2: " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.GBackForMethod2[i] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod2[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod2[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod2[i+3]       << std::endl;  os << "Gain BB for Method 3: " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.GBackForMethod3[i] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod3[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod3[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.GBackForMethod3[i+3]       << std::endl;  os << "Gain Ratio          : " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.RatioGTotalToGBack[i] << " "       << std::setw(12) << std::setfill(' ') << b.RatioGTotalToGBack[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.RatioGTotalToGBack[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.RatioGTotalToGBack[i+3]       << std::endl;  os << "Gain Front Optics   : " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.GainInFrontOpticsCont[i]       << " "       << std::setw(12) << std::setfill(' ') << b.GainInFrontOpticsCont[i+1]       << " "       << std::setw(12) << std::setfill(' ') << b.GainInFrontOpticsCont[i+2]       << " "       << std::setw(12) << std::setfill(' ') << b.GainInFrontOpticsCont[i+3]       << std::endl;  os << "Calibration Const.  : " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.CalibrationConstants[i]       << " "       << std::setw(12) << std::setfill(' ') << b.CalibrationConstants[i+1]       << " "       << std::setw(12) << std::setfill(' ') << b.CalibrationConstants[i+2]       << " "       << std::setw(12) << std::setfill(' ') << b.CalibrationConstants[i+3]       << std::endl;  os << "Time Cold Obs Secs  : " << b.TimeOfColdObsSeconds << std::endl     << "Time Cold Obs NanoS.: " << b.TimeOfColdObsNanoSecs << std::endl;  os << "Incident Radiance   : " << std::endl;  for (int i = 0; i < 12; i += 4)    os << std::setw(12) << std::setfill(' ') << b.IncidentRadiance[i] << " "       << std::setw(12) << std::setfill(' ') << b.IncidentRadiance[i+1] << " "       << std::setw(12) << std::setfill(' ') << b.IncidentRadiance[i+2] << " "       << std::setw(12) << std::setfill(' ') << b.IncidentRadiance[i+3]       << std::endl;  os << "Temp. BB cold read. : " << b.TempCal << std::endl     << "Temp. M1 cold read. : " << b.TempM1 << std::endl     << "Temp. SC cold read. : " << b.TempScan << std::endl     << "Temp. BF cold read. : " << b.TempM1Baf << std::endl     << "Temp. Surround      : " << b.TempCalSurround << std::endl     << b.MirrorParameters     << "Last Spin Period    : " << b.LastSpinPeriod << std::endl     << b.HKTMParameters;  return os;}size_t MSG_WarmStartParms::read_from( unsigned const char_1 *buff ){  size_t position = 0;  for (int i = 0; i < 1527; i ++)    ScanningLaw[i] = get_r8(buff+position+i*8);  position += 1527*8;  for (int i = 0; i < 3; i ++)    RadFramesAlignment[i] = get_r8(buff+position+i*8);  position += 24;  ScanningLawVariation[0] = get_r4(buff+position);  ScanningLawVariation[1] = get_r4(buff+position+4);  position += 8;  for (int i = 0; i < 42; i ++)    position += EqualisationParms[i].read_from(buff+position);  position += BlackBodyDataWarmStart.read_from(buff+position);  return position;}std::ostream& operator<< ( std::ostream& os, MSG_WarmStartParms &w ){  os << "Scanning Law        : " << std::endl;  for (int i = 0; i < 1527; i += 3)    os << std::setw(12) << std::setfill(' ') << w.ScanningLaw[i] << " "       << std::setw(12) << std::setfill(' ') << w.ScanningLaw[i+1] << " "       << std::setw(12) << std::setfill(' ') << w.ScanningLaw[i+2]       << std::endl;  os << "Rad. Frames Align.  : " << std::endl;  os << std::setw(12) << std::setfill(' ') << w.RadFramesAlignment[0] << " "     << std::setw(12) << std::setfill(' ') << w.RadFramesAlignment[1] << " "     << std::setw(12) << std::setfill(' ') << w.RadFramesAlignment[2]     << std::endl;  os << "Scanning Law Variat.: " << std::endl;  os << std::setw(12) << std::setfill(' ') << w.ScanningLawVariation[0] << " "     << std::setw(12) << std::setfill(' ') << w.ScanningLawVariation[1]     << std::endl;  os << "Equalisation Params.: " << std::endl;  for (int i = 0; i < 42; i ++)    os << w.EqualisationParms[i];  os << w.BlackBodyDataWarmStart;  return os;}MSG_data_IMPFConfiguration::MSG_data_IMPFConfiguration( ) { }MSG_data_IMPFConfiguration::MSG_data_IMPFConfiguration(                    unsigned const char_1 *buff){  this->read_from(buff);}MSG_data_IMPFConfiguration::~MSG_data_IMPFConfiguration( ) { }size_t MSG_data_IMPFConfiguration::read_from( unsigned const char_1 *buff ){  size_t position = 0;  position += GPConfigItemVersion.read_from(buff+position);  for (int i = 0; i < 50; i ++)    position += SuDetails[i].read_from(buff+position);  position += WarmStartParms.read_from(buff+position);  return position;}std::ostream& operator<< ( std::ostream& os, MSG_data_IMPFConfiguration &t ){  os << "------------------------------------------------------" << std::endl     << "-           MSG IMPF CONFIGURATION RECORD            -" << std::endl     << "------------------------------------------------------" << std::endl;  os << t.GPConfigItemVersion;  for (int i = 0; i < 50; i ++)    os << t.SuDetails[i];  os << t.WarmStartParms;  return os;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -