Mantid
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Functions | Variables
Mantid::Nexus Namespace Reference

Header for a base Nexus::Exception. More...

Namespaces

namespace  H5Util
 Operations for help with narrowing casts.
 
namespace  IOHelper
 

Classes

struct  AttrInfo
 Information about an attribute. More...
 
class  Exception
 Class that provides for a standard Nexus exception. More...
 
class  Hdf5ID
 A very simple wrapper that holds an HDF5 object through its hid_t. More...
 
struct  Info
 This structure holds the type and dimensions of a primative field/array. More...
 
class  NexusAddress
 This simple class encapsulates some methods for working with paths inside a Nexus file. More...
 
class  NexusDescriptor
 
class  NexusDescriptorLazy
 
class  NexusFileIO
 Utility methods for saving Mantid Workspaces in NeXus format. More...
 
class  NXAttributes
 Nexus attributes. More...
 
class  NXClass
 The base class for a Nexus class (group). More...
 
struct  NXClassInfo
 Information about a Nexus class. More...
 
class  NXData
 Implements NXdata Nexus class. More...
 
class  NXDataSet
 Abstract base class for a Nexus data set. More...
 
class  NXDataSetTyped
 Templated class implementation of NXDataSet. More...
 
class  NXDetector
 Implements NXdetector Nexus class. More...
 
class  NXEntry
 Implements NXentry Nexus class. More...
 
struct  NXInfo
 Structure for keeping information about a Nexus data set, such as the dimensions and the type. More...
 
class  NXInstrument
 Implements NXinstrument Nexus class. More...
 
class  NXObject
 The base abstract class for Nexus classes and data sets. More...
 
class  NXRoot
 Implements NXroot Nexus class. More...
 
class  SharedID
 A wrapper class for managing HDF5 object handles (hid_t) that can be shared. More...
 
class  UniqueID
 A wrapper class for managing HDF5 object handles (hid_t). More...
 

Typedefs

template<typename T >
using container_T = std::conditional_t< std::is_same< T, bool >{}, boost::container::vector< bool >, std::vector< T > >
 
typedef hsize_t dimsize_t
 
typedef std::vector< dimsize_tDimVector
 
typedef std::map< std::string, std::string > Entries
 
typedef std::pair< std::string, std::string > Entry
 
using NexusFileIO_sptr = std::shared_ptr< NexusFileIO >
 Helper typedef for a shared pointer of a NexusFileIO.
 
using NXChar = NXDataSetTyped< char >
 The char dataset type.
 
typedef std::array< dimsize_t, 4 > NXDimArray
 C++ implementation of Nexus classes.
 
using NXDouble = NXDataSetTyped< double >
 The double dataset type.
 
using NXFloat = NXDataSetTyped< float >
 The float dataset type.
 
using NXInt = NXDataSetTyped< int32_t >
 The integer dataset type.
 
using NXInt64 = NXDataSetTyped< int64_t >
 The integer dataset type.
 
using NXUInt32 = NXDataSetTyped< int32_t >
 The integer dataset type.
 
using NXUInt64 = NXDataSetTyped< uint64_t >
 The integer dataset type.
 

Functions

std::string const GROUP_CLASS_SPEC ("NX_class")
 
static NXDimArray nxdimArray (const DimVector &xd)
 
MANTID_NEXUS_DLL std::ostream & operator<< (std::ostream &os, const Exception &err)
 
std::string const SCIENTIFIC_DATA_SET ("SDS")
 
std::string const UNKNOWN_GROUP_SPEC ("NX_UNKNOWN_GROUP")
 

Variables

const int g_processed_blocksize = 8
 Default block size for reading and writing processed files.
 
constexpr hid_t INVALID_HID {-1}
 an ID that HDF5 will always consider invalid
 
template class MANTID_NEXUS_DLL SharedID<&H5Fclose >
 
template class MANTID_NEXUS_DLL UniqueID<&H5Aclose >
 
template class MANTID_NEXUS_DLL UniqueID<&H5Dclose >
 
template class MANTID_NEXUS_DLL UniqueID<&H5Fclose >
 
template class MANTID_NEXUS_DLL UniqueID<&H5Gclose >
 
template class MANTID_NEXUS_DLL UniqueID<&H5Pclose >
 
template class MANTID_NEXUS_DLL UniqueID<&H5Sclose >
 
template class MANTID_NEXUS_DLL UniqueID<&H5Tclose >
 

Detailed Description

Header for a base Nexus::Exception.

The implementation of the Nexus::Exception class.

Typedef Documentation

◆ container_T

template<typename T >
using Mantid::Nexus::container_T = typedef std::conditional_t<std::is_same<T, bool>{}, boost::container::vector<bool>, std::vector<T> >

Definition at line 191 of file NexusClasses.h.

◆ dimsize_t

Definition at line 127 of file NexusFile_fwd.h.

◆ DimVector

typedef std::vector<dimsize_t> Mantid::Nexus::DimVector

Definition at line 128 of file NexusFile_fwd.h.

◆ Entries

typedef std::map<std::string, std::string> Mantid::Nexus::Entries

Definition at line 131 of file NexusFile_fwd.h.

◆ Entry

typedef std::pair<std::string, std::string> Mantid::Nexus::Entry

Definition at line 130 of file NexusFile_fwd.h.

◆ NexusFileIO_sptr

using Mantid::Nexus::NexusFileIO_sptr = typedef std::shared_ptr<NexusFileIO>

Helper typedef for a shared pointer of a NexusFileIO.

Definition at line 146 of file SaveNexusProcessedHelper.h.

◆ NXChar

using Mantid::Nexus::NXChar = typedef NXDataSetTyped<char>

The char dataset type.

Definition at line 436 of file NexusClasses.h.

◆ NXDimArray

typedef std::array<dimsize_t, 4> Mantid::Nexus::NXDimArray

C++ implementation of Nexus classes.

Author
Roman Tolchenov, Tessella plc
Date
28/05/2009

Definition at line 31 of file NexusClasses.h.

◆ NXDouble

The double dataset type.

Definition at line 434 of file NexusClasses.h.

◆ NXFloat

The float dataset type.

Definition at line 432 of file NexusClasses.h.

◆ NXInt

The integer dataset type.

Definition at line 424 of file NexusClasses.h.

◆ NXInt64

using Mantid::Nexus::NXInt64 = typedef NXDataSetTyped<int64_t>

The integer dataset type.

Definition at line 426 of file NexusClasses.h.

◆ NXUInt32

using Mantid::Nexus::NXUInt32 = typedef NXDataSetTyped<int32_t>

The integer dataset type.

Definition at line 428 of file NexusClasses.h.

◆ NXUInt64

using Mantid::Nexus::NXUInt64 = typedef NXDataSetTyped<uint64_t>

The integer dataset type.

Definition at line 430 of file NexusClasses.h.

Function Documentation

◆ GROUP_CLASS_SPEC()

std::string const Mantid::Nexus::GROUP_CLASS_SPEC ( "NX_class"  )
inline

◆ nxdimArray()

static NXDimArray Mantid::Nexus::nxdimArray ( const DimVector xd)
static

Definition at line 15 of file NexusClasses.cpp.

◆ operator<<()

std::ostream & Mantid::Nexus::operator<< ( std::ostream &  os,
const Exception err 
)

◆ SCIENTIFIC_DATA_SET()

std::string const Mantid::Nexus::SCIENTIFIC_DATA_SET ( "SDS"  )
inline

◆ UNKNOWN_GROUP_SPEC()

std::string const Mantid::Nexus::UNKNOWN_GROUP_SPEC ( "NX_UNKNOWN_GROUP"  )
inline

Variable Documentation

◆ g_processed_blocksize

const int Mantid::Nexus::g_processed_blocksize = 8

Default block size for reading and writing processed files.

Definition at line 63 of file NexusClasses.h.

◆ INVALID_HID

constexpr hid_t Mantid::Nexus::INVALID_HID {-1}
constexpr

◆ SharedID<&H5Fclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::SharedID<&H5Fclose >

Definition at line 19 of file UniqueID.cpp.

◆ UniqueID<&H5Aclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::UniqueID<&H5Aclose >

Definition at line 16 of file UniqueID.cpp.

◆ UniqueID<&H5Dclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::UniqueID<&H5Dclose >

Definition at line 13 of file UniqueID.cpp.

◆ UniqueID<&H5Fclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::UniqueID<&H5Fclose >

Definition at line 11 of file UniqueID.cpp.

◆ UniqueID<&H5Gclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::UniqueID<&H5Gclose >

Definition at line 12 of file UniqueID.cpp.

◆ UniqueID<&H5Pclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::UniqueID<&H5Pclose >

Definition at line 17 of file UniqueID.cpp.

◆ UniqueID<&H5Sclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::UniqueID<&H5Sclose >

Definition at line 15 of file UniqueID.cpp.

◆ UniqueID<&H5Tclose >

template class MANTID_NEXUS_DLL Mantid::Nexus::UniqueID<&H5Tclose >

Definition at line 14 of file UniqueID.cpp.