You are here

Managing datasets: TDataSetManager

(Page under preparation)

This section describes the use of a class, TDataSetManager, intended to facilitate the handling and management of datasets. Although not abstract, the class describes the interface layer to the concept of dataset. A full implementation using a file system and ROOT files as backend is provided by the derived class TDataSetManagerFile.

Content of this page:

  1. Initializing a dataset manager
  2. Dataset manager API
    1. Browsing existing datasets
    2. Getting the content of a dataset
    3. Registering a dataset
    4. Scanning a dataset
    5. Removing a dataset
    6. Additional functionality


Initializing a dataset manager

The TDataSetManagerFile constructor takes the 'group' and 'user' names and an option field in which the URL for the directory where to store the information can be specified. The directory can also be a remote one: in such a case, depending on the remote permissions, only some functionality (browsing, retrieving) may be available.
On the other end this opens the possibility for centralized dataset information (databases) accessed via HTTP or remote ROOT access protocols.

Dataset manager API

Browsing existing datasets

The first thing one typically does is to check which datasets are available. The ShowDataSets method is available for this purpose.

Getting a dataset

Information about a dataset can be retrieved in the  form of a TFileCollection object.

Registering a dataset

To register a new dataset the method RegisterDataSet is provided ...

This methods require writing privileges on the backend.

Scanning a dataset

To scan a dataset means to verify its content, which in turn means staging and opening the files, and to read their headers. During scan the information relevant for processing in PROOF is cached, so that while processing a verified datasets  the validation phase is significantly faster.

 

Removing a dataset

To remove a dataset the method RemoveDataSet is provided ...

This methods require writing privileges on the backend.

Additional functionality

Other available functionality will be described here.