/usr/include/pbihdf/HDFRefGroupGroup.hpp is in libpbihdf-dev 0~20151014+gitbe5d1bf-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #ifndef HDF_REF_GROUP_H_
#define HDF_REF_GROUP_H_
#include "HDFAtom.hpp"
#include "HDFArray.hpp"
#include "HDFGroup.hpp"
#include "saf/RefGroup.hpp"
class HDFRefGroupGroup {
public:
HDFGroup refGroup;
HDFArray<uint32_t> idArray;
HDFStringArray pathArray;
HDFArray<uint32_t> refInfoIdArray;
~HDFRefGroupGroup() {
refGroup.Close();
}
bool Create(HDFGroup &parent) {
parent.AddGroup("RefGroup");
if (refGroup.Initialize(parent.group, "RefGroup") == 0) {
return 0;
}
idArray.Create(refGroup, "ID");
pathArray.Create(refGroup, "Path");
refInfoIdArray.Create(refGroup, "RefInfoID");
return true;
}
int AddPath(string path, unsigned int refInfoId) {
pathArray.Write(&path, 1);
unsigned int numPath = pathArray.size();
idArray.Write(&numPath, 1);
refInfoIdArray.Write(&refInfoId, 1);
return numPath;
}
int Initialize(HDFGroup &rootGroup) {
refGroup.Initialize(rootGroup.group, "RefGroup");
if (idArray.Initialize(refGroup, "ID") == 0) { return 0; }
if (pathArray.Initialize(refGroup, "Path") == 0) { return 0; }
if (refInfoIdArray.Initialize(refGroup, "RefInfoID") == 0) { return 0; }
return 1;
}
void Read(RefGroup &refGroup) {
int pathArrayNElem = pathArray.arrayLength;
refGroup.path.resize(pathArrayNElem);
pathArray.Read(0, pathArrayNElem, &refGroup.path[0]);
int idArrayNElem = idArray.arrayLength;
refGroup.id.resize(idArrayNElem);
idArray.Read(0, idArrayNElem, &refGroup.id[0]);
int refIDNElem = refInfoIdArray.arrayLength;
refGroup.refInfoId.resize(refIDNElem);
refInfoIdArray.Read(0, refIDNElem, &refGroup.refInfoId[0]);
}
};
#endif
|