ГОСТ Р ИСО/ТС 10303-26—2015
//_________________________________________________________________
// Define Line:
/ /
// In addition to simple type encoding, this functions exemplifies
// how to encode references to entity instances.
// Moreover it is exemplified how select types , also being defined
// as Compound types, are embedded.
//_________________________________________________________________
herr_t define_compound_line(hid_t group_id, hid_t col_tid,
hid_t 4ll_tid)
{
herr_t rstat;
hidt l_tid;
*ll_tid - 1;
/ /
// Create named compound type for LINE
/ /
l_tid - H5Tcreate <H5T_C0MP0L’ND, sizeof (llinet));
if(rstat - H5Tinsert(l_tid, "set_unset_bitmap", HOFFSET(lline_t,
set_unset_bitmap), H5T_NATlVt_LGNG)) goto err;
if(rstat - HSTinsert(l_tid, "Entity_lnstance_Identifier",
HOFFSET(Hine_t, id), H5T_NAT1VE_L0NG)) goto err;
if(rstat - H5Tinsert(l_tid, "startp”, HOFFSET(llinet, startp),
instance_referer.ce_tid )) goto err;
if(rstat - H5Tinsert(l_tid, "er.dp", HOFFSET(11ine_t, en.dp),
instance_reference_tid )) goto err;
if(rstat - H5Tinsert(l_tid, "colour", HOFFSET(lline_t, colour),
col_tid )> goto err;
if(rstat - H5Tcommit2(group_id, "Line", i_tid,H5P_DEFAULT,
H5P_DEFAULT,H5PDEFAULT)) goto err;
*11 tid - 1 tid;
err:
return(rstat);
}
Следующий фрагмент кода используется для наполнения файла HDF5 в соответствии с полной контекст
ной схемой.
#include <stdlib.h>
^include <string.h>
#include
#include
"hdf5.h"
"examples.h"
#define NO OF LLINES 4
(
1
(
/ /
/ /
Create Lines:
/ /
//
Lines are created by letting the 3tartp and endp
/ /
attributes (fields) refer to Points in the dataset
/ /
/Geometry_population/Point_objects/Poir.t_instances
//
/ /
000
,
1
00
).................(
00
,
1
00
)
/ /
/ /
//
I f
П
0 0 0
,
0 0 0
)
(000,100)
35