Exemplo n.º 1
0
// Print dataset in externalElement
void AH5_print_eet_dataset (const AH5_eet_dataset_t *eet_dataset, int space)
{
    hsize_t i;

    printf("%*sInstance: %s\n", space, "", AH5_get_name_from_path(eet_dataset->path));
    for (i = 0; i < eet_dataset->nb_eed_items; i++)
    {
        printf("%*sId %lu:\n", space + 3, "", (long unsigned) i);
        printf("%*s-internal: %s\n", space + 6, "", eet_dataset->eed_items[AH5_EE_INTERNAL_NAME(i)]);
        printf("%*s-external: %s:%s\n", space + 6, "", eet_dataset->eed_items[AH5_EE_EXTERNAL_FILE_NAME(i)], eet_dataset->eed_items[AH5_EE_EXTERNAL_NAME(i)]);
        printf("%*s-file_id:  %i\n\n", space + 6, "",eet_dataset->file_id[i]);
    }
}
Exemplo n.º 2
0
char AH5_is_external_element(
    const AH5_external_element_t* externals, const char* path,
    hid_t* file_id, char const** external_path) {
  char is_external = AH5_FALSE;
  AH5_eet_dataset_t* element = externals->datasets;
  char const* internal_path = NULL;
  hsize_t iext = 0;

  for (; element != externals->datasets + externals->nb_datasets && is_external == AH5_FALSE; ++element)
  {
    for (iext = 0; iext < element->nb_eed_items; ++iext)
    {
      internal_path = element->eed_items[AH5_EE_INTERNAL_NAME(iext)];
      if (AH5_strcmp(path, internal_path) == 0)
      {
        *file_id = element->file_id[iext];
        *external_path = element->eed_items[AH5_EE_EXTERNAL_NAME(iext)];
        is_external = AH5_TRUE;
        break;
      }
    }
  }
  return is_external;
}