IH5Operations Class Reference

This is meant to be a superclass that encapsulates certain HDF5 open/close operations. The idea is to instantiate a class each time you need to do an open/close operation, then put the class on a stack. At the end of a series of operations, you can 'pop' each class from the stack and then call 'close' and the HDF5 object will be closed, thus saving resource leaks. The thinking was to combine this with the boost::shared_ptr and create a std::stack<boost::shared_ptr<IH5Operations*> >. That way you can just 'pop' each pointer from the stack and the destructor would be called on the object. More...

Inherited by H5DOperations, H5SOperations, and H5TOperations.

Inheritance diagram for IH5Operations:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 IH5Operations ()
virtual ~IH5Operations ()
virtual bool isIdValid ()
virtual hid_t getObjectId ()
virtual herr_t open (hid_t locId, const std::string &datasetPath)=0
virtual herr_t close ()=0
herr_t getCloseError ()
herr_t getOpenError ()

Protected Attributes

hid_t _id
herr_t _closeErr
herr_t _openErr

Detailed Description

This is meant to be a superclass that encapsulates certain HDF5 open/close operations. The idea is to instantiate a class each time you need to do an open/close operation, then put the class on a stack. At the end of a series of operations, you can 'pop' each class from the stack and then call 'close' and the HDF5 object will be closed, thus saving resource leaks. The thinking was to combine this with the boost::shared_ptr and create a std::stack<boost::shared_ptr<IH5Operations*> >. That way you can just 'pop' each pointer from the stack and the destructor would be called on the object.

Version:
Revision
1.1


Constructor & Destructor Documentation

IH5Operations::IH5Operations (  )  [inline]

virtual IH5Operations::~IH5Operations (  )  [inline, virtual]


Member Function Documentation

virtual bool IH5Operations::isIdValid (  )  [inline, virtual]

virtual hid_t IH5Operations::getObjectId (  )  [inline, virtual]

virtual herr_t IH5Operations::open ( hid_t  locId,
const std::string &  datasetPath 
) [pure virtual]

Implemented in H5TOperations, H5DOperations, and H5SOperations.

virtual herr_t IH5Operations::close (  )  [pure virtual]

Implemented in H5TOperations, H5DOperations, and H5SOperations.

herr_t IH5Operations::getCloseError (  )  [inline]

herr_t IH5Operations::getOpenError (  )  [inline]


Member Data Documentation

hid_t IH5Operations::_id [protected]

herr_t IH5Operations::_closeErr [protected]

herr_t IH5Operations::_openErr [protected]


The documentation for this class was generated from the following file:
Generated on Tue Nov 17 18:43:14 2009 for MXADataModel by  doxygen 1.5.2