VDSF
Menu

vdsFolder Class Reference

List of all members.

Public Member Functions

 vdsFolder (vdsSession &session)
virtual ~vdsFolder ()
void Close ()
 Close a folder.
int GetFirst (vdsFolderEntry *pEntry)
 Iterate through the folder - no data items are removed from the folder by this function.
int GetNext (vdsFolderEntry *pEntry)
 Iterate through the folder.
void Open (const std::string &folderName)
 Open an existing folder (see vdsSession::CreateObject to create a new folder).
void Open (const char *folderName, size_t nameLengthInBytes)
 Open an existing folder (see vdsSession::CreateObject to create a new folder).
void Status (vdsObjStatus *pStatus)
 Return the status of the folder.

Private Attributes

VDS_HANDLE m_objectHandle
 Pointer to the vdsaFolder struct.
VDS_HANDLE & m_sessionHandle
 Reference to the vdsaSession struct (we belong to).

Constructor & Destructor Documentation

vdsFolder::vdsFolder ( vdsSession session  ) 

virtual vdsFolder::~vdsFolder (  )  [virtual]


Member Function Documentation

void vdsFolder::Close (  ) 

Close a folder.

This function terminates the current access to the folder in shared memory (the folder itself is untouched).

Exceptions:
vdsException An abnormal error occured.

int vdsFolder::GetFirst ( vdsFolderEntry *  pEntry  ) 

Iterate through the folder - no data items are removed from the folder by this function.

Data items which were added by another session and are not yet committed will not be seen by the iterator. Likewise, destroyed data items (even if not yet committed) are invisible.

Parameters:
[out] pEntry The data structure provided by the user to hold the content of each item in the folder. Memory allocation for this buffer is the responsability of the caller.
Returns:
0 on success or VDS_IS_EMPTY if the folder is empty.
Exceptions:
vdsException An abnormal error occured.

int vdsFolder::GetNext ( vdsFolderEntry *  pEntry  ) 

Iterate through the folder.

Data items which were added by another session and are not yet committed will not be seen by the iterator. Likewise, destroyed data items (even if not yet committed) are invisible.

Evidently, you must call vdsFolder::GetFirst to initialize the iterator.

Parameters:
[out] pEntry The data structure provided by the user to hold the content of each item in the folder. Memory allocation for this buffer is the responsability of the caller.
Returns:
0 on success or VDS_REACHED_THE_END when the iteration reaches the end of the folder.
Exceptions:
vdsException An abnormal error occured.

void vdsFolder::Open ( const char *  folderName,
size_t  nameLengthInBytes 
)

Open an existing folder (see vdsSession::CreateObject to create a new folder).

Parameters:
[in] folderName The fully qualified name of the folder.
[in] nameLengthInBytes The length of folderName (in bytes) not counting the null terminator.
Exceptions:
vdsException An abnormal error occured.

void vdsFolder::Open ( const std::string &  folderName  ) 

Open an existing folder (see vdsSession::CreateObject to create a new folder).

Parameters:
[in] folderName The fully qualified name of the folder.
Exceptions:
vdsException An abnormal error occured.

void vdsFolder::Status ( vdsObjStatus *  pStatus  ) 

Return the status of the folder.

Parameters:
[out] pStatus A pointer to the status structure.
Exceptions:
vdsException An abnormal error occured.


Member Data Documentation

VDS_HANDLE vdsFolder::m_objectHandle [private]

Pointer to the vdsaFolder struct.

VDS_HANDLE& vdsFolder::m_sessionHandle [private]

Reference to the vdsaSession struct (we belong to).


The documentation for this class was generated from the following file:

Last updated on March 23, 2008.