Пример #1
0
int read_su3_field(QIO_Reader *infile, int count, 
		    suN_matrix *field_in[], char *myname)
{
  QIO_String *xml_record_in;
  QIO_RecordInfo rec_info;
  int status;
  
  /* Create the record XML */
  xml_record_in = QIO_string_create();

  /* Read the field record */
  status = QIO_read(infile, &rec_info, xml_record_in, 
		    vput_M, sizeof(suN_matrix)*count, sizeof(float), field_in);
  printf("%s(%d): QIO_read_record_data returns status %d\n",
	 myname,this_node,status);
  if(status != QIO_SUCCESS)return 1;
  return 0;
}
Пример #2
0
/* Read random number state */
int read_S_to_site(QIO_Reader *infile,  QIO_String *xml_record_in,
		   field_offset dest)
{
  QIO_RecordInfo rec_info;
  int status;
  int count = 1;
  int datum_size = sizeof(double_prn);
  int word_size = sizeof(float);
  
  /* Read the field record */
  status = QIO_read(infile, &rec_info, xml_record_in, 
		    vput_S_to_site, datum_size*count, word_size, (void *)&dest);
  node0_printf("Record info \n\"%s\"\n",QIO_string_ptr(xml_record_in));
  if(status != QIO_SUCCESS)return 1;

  node0_printf("Checksums %x %x\n",
	       QIO_get_reader_last_checksuma(infile),
	       QIO_get_reader_last_checksumb(infile));

  return 0;
}
Пример #3
0
int read_real_global(QIO_Reader *infile, int count, 
		    float array_in[], char *myname)
{
  QIO_String *xml_record_in;
  QIO_RecordInfo rec_info;
  int status;

  /* Create the record XML */
  xml_record_in = QIO_string_create();

  /* Read the global array record */
  status = QIO_read(infile, &rec_info, xml_record_in, 
		    vput_r, sizeof(float)*count, sizeof(float), array_in);
  printf("%s(%d): QIO_read returns status %d\n",
	 myname,this_node,status);
  if(status != QIO_SUCCESS)return 1;
  printf("%s(%d): User record info is \"%s\"\n",myname,this_node,
	 QIO_string_ptr(xml_record_in));

  QIO_string_destroy(xml_record_in);
  return 0;
}