NexusCPP  3.5.0
Classes | Typedefs | Enumerations | Functions | Variables
nxcpp Namespace Reference

Classes

class  AxisDatasetWriter
 
class  DatasetWriter
 
class  DataStreamer
 
class  GenericDatasetWriter
 
class  IExceptionHandler
 Exception handling interface. More...
 
class  IMessageHandler
 Message handling interface. More...
 
class  MMetadata
 Mix-in that add metadata capabilitie to objects. More...
 
class  NexusAttr
 
class  NexusAttrInfo
 
class  NexusDataSet
 
class  NexusDataSetInfo
 
class  NexusDataStreamerFinalizer
 NexusDataStreamerFinalizer. More...
 
class  NexusException
 
class  NexusFile
 
class  NexusFileWriter
 
class  NexusGlobalLock
 
class  NexusItemID
 
class  NexusItemInfo
 
class  OverwriteError
 
class  SignalDatasetWriter
 
struct  WriteNotification
 Write notification. More...
 

Typedefs

typedef std::vector< std::size_t > shape_t
 
typedef std::map< FilterOption, int > FilterConfig
 Filter options to be passed with CreateCompressedDataSet method. More...
 
typedef yat::SharedPtr< NexusItemInfoNexusItemInfoPtr
 Smart pointer definition helper. More...
 
typedef std::list< NexusItemInfoPtrNexusItemInfoList
 ItemInfo smart pointers list definition helper. More...
 
typedef std::list< NexusAttrNeXusAttrList
 definition of a attribute collection More...
 
typedef yat::SharedPtr< NexusDataSet, yat::Mutex > NexusDataSetPtr
 
typedef yat::SharedPtr< NexusAttr, yat::Mutex > NexusAttrPtr
 
typedef yat::MemBuf DatasetBuf
 
typedef yat::SharedPtr< NexusFileWriter, yat::Mutex > NexusFileWriterPtr
 Referenced pointer definition. More...
 
typedef std::vector< std::size_t > DataShape
 Data shape type. More...
 
typedef yat::SharedPtr< DatasetWriter, yat::Mutex > DatasetWriterPtr
 Shared pointer definition. More...
 

Enumerations

enum  DataItemCategory { NX_GENERIC = 1, NX_AXIS = 2, NX_DATA_SIGNAL = 3, NX_DATA = 4 }
 
enum  FilterOption { compression_level, bitshuffle_compression, bitshuffle_block_size }
 id list of all filters options More...
 
enum  CompressionFilter {
  CompressNone, CompressZLIB, CompressLZ4, CompressBsLZ4,
  CompressZstd, CompressBlosc2, CompressBzip2
}
 List of known compression filters. More...
 
enum  NexusDataType {
  NX_NONE = 0, NX_CHAR = 4, NX_FLOAT32 = 5, NX_FLOAT64 = 6,
  NX_INT8 = 20, NX_UINT8 = 21, NX_INT16 = 22, NX_UINT16 = 23,
  NX_INT32 = 24, NX_UINT32 = 25, NX_INT64 = 26, NX_UINT64 = 27,
  NX_BINARY = 21, ISO8601 = 100, NX_INT = 102, NX_FLOAT = 103
}
 
enum  NexusRC { NX_OK = 1, NX_EOD = -1, NX_ITEM_NOT_FOUND = -2 }
 NeXus return codes. More...
 
enum  ENexusCreateMode { NX_HDF4 = 0, NX_HDF5, NX_XML }
 

Functions

 YAT_DEFINE_CALLBACK (WriteNotificationCallback, WriteNotification)
 Write notification callback. More...
 
NEXUSCPP_DECL bool IsCompressFilterAvailable (CompressionFilter filter_id)
 
NEXUSCPP_DECL std::set< CompressionFilterAvailableCompressFilters ()
 Return the available compress filters. More...
 
NEXUSCPP_DECL const char * get_version ()
 Free function: provide project version & name. More...
 
NEXUSCPP_DECL const char * get_name ()
 
void message_to_console (yat::ELogLevel lvl, const yat::String &msg)
 
void exception_to_console (const yat::Exception &e)
 

Variables

const int MAX_NAME_LENGTH = 256
 
const int MAX_DATASET_NDIMS = 256
 
const char DATASET_CLASS [] = "SDS"
 
const std::string g_strNoDataSet = "(no data set)"
 
const int MAX_RANK = 32
 Max datasets rank. More...
 
const std::size_t kDEFAULT_PULSER_PERIOD = 3000
 
const DataShape g_empty_shape
 

Detailed Description

Synchrotron SOLEIL

NeXus C++ API over NAPI

Creation : 2010/07/18 Author : Stephane Poirier

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Synchrotron SOLEIL

NeXus C++ API

Creation : 16/02/2005 Authors : Stephane Poirier, Clement Rodriguez, Nicolas Leclerc, Julien Berthaud

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Typedef Documentation

◆ DatasetBuf

typedef yat::MemBuf nxcpp::DatasetBuf

◆ DatasetWriterPtr

typedef yat::SharedPtr<DatasetWriter, yat::Mutex> nxcpp::DatasetWriterPtr

Shared pointer definition.

◆ DataShape

typedef std::vector<std::size_t> nxcpp::DataShape

Data shape type.

◆ FilterConfig

typedef std::map<FilterOption, int> nxcpp::FilterConfig

Filter options to be passed with CreateCompressedDataSet method.

◆ NeXusAttrList

typedef std::list<NexusAttr> nxcpp::NeXusAttrList

definition of a attribute collection

◆ NexusAttrPtr

typedef yat::SharedPtr<NexusAttr, yat::Mutex> nxcpp::NexusAttrPtr

◆ NexusDataSetPtr

typedef yat::SharedPtr<NexusDataSet, yat::Mutex> nxcpp::NexusDataSetPtr

◆ NexusFileWriterPtr

typedef yat::SharedPtr<NexusFileWriter, yat::Mutex> nxcpp::NexusFileWriterPtr

Referenced pointer definition.

◆ NexusItemInfoList

ItemInfo smart pointers list definition helper.

◆ NexusItemInfoPtr

typedef yat::SharedPtr<NexusItemInfo> nxcpp::NexusItemInfoPtr

Smart pointer definition helper.

◆ shape_t

typedef std::vector<std::size_t> nxcpp::shape_t

Enumeration Type Documentation

◆ CompressionFilter

List of known compression filters.

This enumerate all known filter but all filters are not necesseraly implemented. Check filter availability using the free functions IsCompressFilterAvailable & AvailableCompressFilters

See also
IsCompressFilterAvailable
AvailableCompressFilters
Enumerator
CompressNone 
CompressZLIB 
CompressLZ4 
CompressBsLZ4 
CompressZstd 
CompressBlosc2 
CompressBzip2 

◆ DataItemCategory

DataItemCategory

Enumerator
NX_GENERIC 
NX_AXIS 

GenericDataSet.

NX_DATA_SIGNAL 

AxisDataSet.

NX_DATA 

DataSet (signal)

◆ ENexusCreateMode

Enumerator
NX_HDF4 
NX_HDF5 
NX_XML 

◆ FilterOption

id list of all filters options

Enumerator
compression_level 

Apply on ZLIB filter.

bitshuffle_compression 

BitShuffle filter.

bitshuffle_block_size 

◆ NexusDataType

Enumerator
NX_NONE 
NX_CHAR 

Value not defined in the NeXus API.

NX_FLOAT32 
NX_FLOAT64 
NX_INT8 
NX_UINT8 
NX_INT16 
NX_UINT16 
NX_INT32 
NX_UINT32 
NX_INT64 
NX_UINT64 
NX_BINARY 
ISO8601 
NX_INT 

(NX_CHAR)

NX_FLOAT 

generic integer type

◆ NexusRC

NeXus return codes.

Enumerator
NX_OK 
NX_EOD 
NX_ITEM_NOT_FOUND 

Function Documentation

◆ AvailableCompressFilters()

NEXUSCPP_DECL std::set<CompressionFilter> nxcpp::AvailableCompressFilters ( )

Return the available compress filters.

◆ exception_to_console()

void nxcpp::exception_to_console ( const yat::Exception &  e)

◆ get_name()

NEXUSCPP_DECL const char* nxcpp::get_name ( )
Here is the caller graph for this function:

◆ get_version()

NEXUSCPP_DECL const char* nxcpp::get_version ( )

Free function: provide project version & name.

Here is the caller graph for this function:

◆ IsCompressFilterAvailable()

NEXUSCPP_DECL bool nxcpp::IsCompressFilterAvailable ( CompressionFilter  filter_id)

Return 'true' if the given compression filter is currently available

Parameters
filter_idfilter identifier

◆ message_to_console()

void nxcpp::message_to_console ( yat::ELogLevel  lvl,
const yat::String &  msg 
)

◆ YAT_DEFINE_CALLBACK()

nxcpp::YAT_DEFINE_CALLBACK ( WriteNotificationCallback  ,
WriteNotification   
)

Write notification callback.

Variable Documentation

◆ DATASET_CLASS

const char nxcpp::DATASET_CLASS[] = "SDS"

◆ g_empty_shape

const DataShape nxcpp::g_empty_shape

◆ g_strNoDataSet

const std::string nxcpp::g_strNoDataSet = "(no data set)"

◆ kDEFAULT_PULSER_PERIOD

const std::size_t nxcpp::kDEFAULT_PULSER_PERIOD = 3000

◆ MAX_DATASET_NDIMS

const int nxcpp::MAX_DATASET_NDIMS = 256

◆ MAX_NAME_LENGTH

const int nxcpp::MAX_NAME_LENGTH = 256

◆ MAX_RANK

const int nxcpp::MAX_RANK = 32

Max datasets rank.