/usr/include/XdmfValuesBinary.h is in libxdmf-dev 2.1.dfsg.1-13.
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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | /*******************************************************************/
/* XDMF */
/* eXtensible Data Model and Format */
/* */
/* Id : $Id: XdmfValuesBinary.h,v 1.4 2009-08-31 14:46:54 clarke Exp $ */
/* Date : $Date: 2009-08-31 14:46:54 $ */
/* Version : $Revision: 1.4 $ */
/* */
/* Author:Kenji Takizawa (Team for Advanced Flow Simulation and Modeling) */
/* */
/* Copyright @ 2008 US Army Research Laboratory */
/* All Rights Reserved */
/* See Copyright.txt or http://www.arl.hpc.mil/ice for details */
/* */
/* This software is distributed WITHOUT ANY WARRANTY; without */
/* even the implied warranty of MERCHANTABILITY or FITNESS */
/* FOR A PARTICULAR PURPOSE. See the above copyright notice */
/* for more information. */
/* */
/*******************************************************************/
#ifndef __XdmfValuesBinaryL_h
#define __XdmfValuesBinaryL_h
#include "XdmfValues.h"
//! Parent Class for handeling I/O of actual data for an XdmfDataItem
/*!
This is the class for access of values from a raw binary.
A Binary XdmfDataItem Node Looks like :
\verbatim
<DataItem
Dimensions="3 3 3"
Precision="4"
DataType="Float"
Format="Binary"
Seek="2"
Compression="BZip2"
Endian="Little"
>
</DataItem>
\endverbatim
Endian: Little, Big, otherwise Native
Seak: unit is byte
Putting "<" in the CDATA, it may cause an error in the XML parser.
Here's an example of using "<" in the CDATA :
\verbatim
<![CDATA[SELECT X FROM Locations WHERE Time < 0.21]]>
\endverbatim
That is you have ti start the CDATA with "<![CDATA[" and end
it with "]]>".
*/
class XDMF_EXPORT XdmfValuesBinary : public XdmfValues {
public :
XdmfValuesBinary();
virtual ~XdmfValuesBinary();
XdmfConstString GetClassName() { return("XdmfValuesBinary"); } ;
//! Read the Array from the External Representation
XdmfArray *Read(XdmfArray *Array=NULL);
//! Write the Array to the External Representation
XdmfInt32 Write(XdmfArray *Array, XdmfConstString HeavyDataSetName=NULL);
//! Get Endian Name
XdmfGetStringMacro(Endian);
//! Set Endian Name
XdmfSetStringMacro(Endian);
//! Get Seek
XdmfGetStringMacro(Seek);
//! Set Seek
XdmfSetStringMacro(Seek);
//! Get Compression
XdmfGetStringMacro(Compression);
//! Set Compression
XdmfSetStringMacro(Compression);
protected :
bool needByteSwap();
XdmfString Endian;
XdmfString Seek;
XdmfString Compression;
private:
void byteSwap(XdmfArray * RetArray);
size_t getSeek();
enum CompressionType {Raw, Zlib, BZip2};
enum CompressionType getCompressionType();
};
#endif
|