size_t MSG_GeometricQualityStatus::read_from( unsigned const char_1 *buff )
{
  QualityNominal = get_ui1(buff);
  NominalAbsolute = get_ui1(buff+1);
  NominalRelativeToPreviousImage = get_ui1(buff+2);
  NominalForREL500 = get_ui1(buff+3);
  NominalForREL16 = get_ui1(buff+4);
  NominalForResMisreg = get_ui1(buff+5);
  return 6;
}
size_t MSG_L15ImageValidity::read_from( unsigned const char_1 *buff )
{
  NominalImage = get_ui1(buff);
  NonNominalBecauseIncomplete = get_ui1(buff+1);
  NonNominalRadiometricQuality = get_ui1(buff+2);
  NonNominalGeometricQuality = get_ui1(buff+3);
  NonNominalTimeliness = get_ui1(buff+4);
  IncompleteL15 = get_ui1(buff+5);
  return 6;
}