Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | Related Pages

WlmDataSourceFileSystem Class Reference

This class encapsulates data structures and operations for connecting to a file-based data source in the framework of the DICOM basic worklist management service. More...

Inheritance diagram for WlmDataSourceFileSystem:

WlmDataSource List of all members.

Public Member Functions

 WlmDataSourceFileSystem ()
 default constructor.
 ~WlmDataSourceFileSystem ()
 destructor
OFCondition ConnectToDataSource ()
 Connects to the data source.
OFCondition DisconnectFromDataSource ()
 Disconnects from the data source.
void SetDfPath (const char *value)
 Set value in member variable.
OFBool IsCalledApplicationEntityTitleSupported ()
 Checks if the called application entity title is supported.
WlmDataSourceStatusType StartFindRequest (DcmDataset &findRequestIdentifiers)
 Based on the search mask which was passed, this function determines all the records in the worklist database files which match the values of matching key attributes in the search mask.
DcmDatasetNextFindResponse (WlmDataSourceStatusType &rStatus)
 This function will return the next dataset that matches the given search mask, if there is one more resulting dataset to return.

Protected Member Functions

OFBool SetReadlock ()
 This function sets a read lock on the LOCKFILE in the directory that is specified through dfPath and calledApplicationEntityTitle.
OFBool ReleaseReadlock ()
 This function releases a read lock on the LOCKFILE in the given directory.
void HandleNonSequenceElementInResultDataset (DcmElement *element, unsigned long idx)
 This function takes care of handling a certain non-sequence element whithin the structure of a certain result dataset.
void HandleSequenceElementInResultDataset (DcmElement *element, unsigned long idx)
 This function takes care of handling a certain sequence element within the structure of a certain result dataset.
 WlmDataSourceFileSystem (const WlmDataSourceFileSystem &Src)
 Protected undefined copy-constructor.
WlmDataSourceFileSystemoperator= (const WlmDataSourceFileSystem &Src)
 Protected undefined operator=.

Protected Attributes

WlmFileSystemInteractionManagerfileSystemInteractionManager
 manager for file system interaction
char * dfPath
 path to database files
int handleToReadLockFile
 handle to the read lock file

Detailed Description

This class encapsulates data structures and operations for connecting to a file-based data source in the framework of the DICOM basic worklist management service.

Definition at line 48 of file wldsfs.h.


Constructor & Destructor Documentation

WlmDataSourceFileSystem::WlmDataSourceFileSystem const WlmDataSourceFileSystem Src  )  [protected]
 

Protected undefined copy-constructor.

Shall never be called.

Parameters:
Src Source object.


Member Function Documentation

OFCondition WlmDataSourceFileSystem::ConnectToDataSource  )  [virtual]
 

Connects to the data source.

Returns:
Indicates if the connection was established succesfully.

Implements WlmDataSource.

OFCondition WlmDataSourceFileSystem::DisconnectFromDataSource  )  [virtual]
 

Disconnects from the data source.

Returns:
Indicates if the disconnection was completed succesfully.

Implements WlmDataSource.

void WlmDataSourceFileSystem::HandleNonSequenceElementInResultDataset DcmElement element,
unsigned long  idx
[protected]
 

This function takes care of handling a certain non-sequence element whithin the structure of a certain result dataset.

This function assumes that all elements in the result dataset are supported. In detail, a value for the current element with regard to the currently processed matching record will be requested from the fileSystemInteractionManager, and this value will be set in the element.

Parameters:
element Pointer to the currently processed element.
idx Index of the matching record (identifies this record).

void WlmDataSourceFileSystem::HandleSequenceElementInResultDataset DcmElement element,
unsigned long  idx
[protected]
 

This function takes care of handling a certain sequence element within the structure of a certain result dataset.

On the basis of the matching record from the data source, this function will add items and values for all elements in these items to the current sequence element in the result dataset. This function assumes that all elements in the result dataset are supported. In case the current sequence element contains no items or more than one item, this element will be left unchanged.

Parameters:
element Pointer to the currently processed element.
idx Index of the matching record (identifies this record).

OFBool WlmDataSourceFileSystem::IsCalledApplicationEntityTitleSupported  )  [virtual]
 

Checks if the called application entity title is supported.

This function expects that the called application entity title was made available for this instance through WlmDataSource::SetCalledApplicationEntityTitle(). If this is not the case, OFFalse will be returned.

Returns:
OFTrue, if the called application entity title is supported; OFFalse, if the called application entity title is not supported or it is not given.

Implements WlmDataSource.

DcmDataset* WlmDataSourceFileSystem::NextFindResponse WlmDataSourceStatusType &  rStatus  )  [virtual]
 

This function will return the next dataset that matches the given search mask, if there is one more resulting dataset to return.

In such a case, rstatus will be set to WLM_PENDING or WLM_PENDING_WARNING, depending on if an unsupported key attribute was encountered in the search mask or not. If there are no more datasets that match the search mask, this function will return an empty dataset and WLM_SUCCESS in rstatus.

Parameters:
rStatus A value of type WlmDataSourceStatusType that can be used to decide if there are still elements that have to be returned.
Returns:
The next dataset that matches the given search mask, or an empty dataset if there are no more matching datasets in the worklist database files.

Implements WlmDataSource.

WlmDataSourceFileSystem& WlmDataSourceFileSystem::operator= const WlmDataSourceFileSystem Src  )  [protected]
 

Protected undefined operator=.

Shall never be called.

Parameters:
Src Source object.
Returns:
Reference to this.

OFBool WlmDataSourceFileSystem::ReleaseReadlock  )  [protected]
 

This function releases a read lock on the LOCKFILE in the given directory.

Returns:
true in case the read lock has been released successfully, false otherwise.

void WlmDataSourceFileSystem::SetDfPath const char *  value  )  [virtual]
 

Set value in member variable.

Parameters:
value The value to set.

Reimplemented from WlmDataSource.

OFBool WlmDataSourceFileSystem::SetReadlock  )  [protected]
 

This function sets a read lock on the LOCKFILE in the directory that is specified through dfPath and calledApplicationEntityTitle.

Returns:
true in case the read lock has been set successfully, false otherwise.

WlmDataSourceStatusType WlmDataSourceFileSystem::StartFindRequest DcmDataset findRequestIdentifiers  )  [virtual]
 

Based on the search mask which was passed, this function determines all the records in the worklist database files which match the values of matching key attributes in the search mask.

For each matching record, a DcmDataset structure is generated which will later be returned to the SCU as a result of query. The DcmDataset structures for all matching records will be stored in the protected member variable matchingDatasets.

Parameters:
findRequestIdentifiers Contains the search mask.
Returns:
A WlmDataSourceStatusType value denoting the following: WLM_SUCCESS: No matching records found; WLM_PENDING: Matching records found, all return keys supported by this application; WLM_PENDING_WARNING: Matching records found, not all return keys supported by this application; WLM_FAILED_IDENTIFIER_DOES_NOT_MATCH_SOP_CLASS: Error in the search mask encountered.

Implements WlmDataSource.


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


Generated on 29 Apr 2005 for OFFIS DCMTK Version 3.5.3 by Doxygen 1.4.2