![]() |
ATLAS Offline Software
|
a base class that manages a set of files belonging to a particular data set and the associated meta-data. More...
#include <Sample.h>
Public Member Functions | |
| void | testInvariant () const |
| test the invariant of this object More... | |
| virtual | ~Sample () |
| standard destructor More... | |
| const std::string & | name () const |
| the name of the sample we are using More... | |
| void | name (std::string val_name) |
| set the value of name More... | |
| std::size_t | numFiles () const |
| the number of files in the sample More... | |
| std::string | fileName (std::size_t index) const |
| the name of the file with the given index More... | |
| SamplePtr | makeLocal () const |
| Make this a local sample, i.e. More... | |
| const TagList & | tags () const |
| the tag list we are using More... | |
| void | tags (const TagList &tags) |
| set the content of tags() More... | |
| void | addTag (const std::string &tag) |
| add a tag to the content of tags() More... | |
| void | updateLocation (const std::string &from, const std::string &to) |
| update all file references starting with from to to More... | |
| MetaObject * | meta () |
| the meta-information for this sample More... | |
| const MetaObject * | meta () const |
| the meta-information for this sample More... | |
| std::vector< std::string > | makeFileList () const |
| make a list of all files, prestaging them if necessary More... | |
| TChain * | makeTChain () const |
| create a TChain object, containing all these files More... | |
| TObject * | readHist (const std::string &name) const |
| read an object from a histogram file More... | |
| bool | contains (const std::string &name) const |
| whether this sample contains a sample of the given name More... | |
| void | addSamples (SampleHandler &result) |
| add all samples this sample corresponds to to the given sample handler More... | |
| void | print () const |
| print the debugging output to the screen More... | |
| void | printContent () const |
| print the debugging output to the screen More... | |
| Long64_t | getNumEntries () const |
| get the number of entries More... | |
| TCollection * | metaDataList () |
| get the meta-data list More... | |
| const TCollection * | metaDataList () const |
| get the meta-data list More... | |
| void | removeMeta (const std::string &name) |
| remove all meta-information with the given name More... | |
| void | addReplaceMeta (TNamed *meta_swallow) |
| add a meta-data object and remove any existing meta-data with the same name More... | |
| TObject * | getMeta (const std::string &name) |
| the meta-data object with the given name More... | |
| const TObject * | getMeta (const std::string &name) const |
| the meta-data object with the given name More... | |
| double | getMetaDouble (const std::string &name, double def_val=0) const |
| the meta-data double with the given name More... | |
| std::string | getMetaString (const std::string &name, const std::string &def_val="") const |
| the meta-data string with the given name More... | |
| void | setMetaDouble (const std::string &name, double value) |
| set the meta-data double with the given name More... | |
| void | setMetaString (const std::string &name, const std::string &value) |
| set the meta-data string with the given name More... | |
| void | fetchMeta (const Sample &source) |
| fetch the meta-data from the given sample. More... | |
Protected Member Functions | |
| Sample (const std::string &name) | |
| standard constructor More... | |
| virtual std::size_t | getNumFiles () const =0 |
| the number of files in the sample More... | |
| virtual std::string | getFileName (std::size_t index) const =0 |
| the name of the file with the given index More... | |
| virtual SamplePtr | doMakeLocal () const =0 |
| Make this a local sample, i.e. More... | |
| virtual std::vector< std::string > | doMakeFileList () const =0 |
| make a list of all files, prestaging them if necessary More... | |
| virtual void | doUpdateLocation (const std::string &from, const std::string &to) |
| update all file references starting with from to to More... | |
| virtual TObject * | doReadHist (const std::string &name) const |
| read an object from a histogram file More... | |
| virtual bool | getContains (const std::string &name) const |
| whether this sample contains a sample of the given name More... | |
| virtual void | doAddSamples (SampleHandler &result) |
| add all samples this sample corresponds to to the given sample handler More... | |
Private Member Functions | |
| void | alloc () const |
| increase the reference count by one More... | |
| void | release () const |
| decrease the reference count by one More... | |
| Sample (const Sample &that) | |
| Sample & | operator= (const Sample &that) |
| ClassDef (Sample, 2) | |
Private Attributes | |
| std::string | m_name |
| the name of the sample we are using More... | |
| TagList | m_tags |
| the tag list we are using More... | |
| MetaObject * | m_meta |
| the meta-information for this sample More... | |
| std::atomic< unsigned > | m_references |
| the reference count More... | |
Friends | |
| class | SamplePtr |
Related Functions | |
(Note that these are not member functions.) | |
| std::string | dbg (const Sample &obj, unsigned verbosity=0) |
| the debugging info of this object More... | |
a base class that manages a set of files belonging to a particular data set and the associated meta-data.
While for most people this is essentially just a fancy file list, it hides a lot of flexibility. Besides a simple file list, this could also be a sample on the grid, or on tape storage that first needs to be pre-staged before it can be used.
|
virtual |
standard destructor
|
protected |
standard constructor
| void SH::Sample::addReplaceMeta | ( | TNamed * | meta_swallow | ) |
add a meta-data object and remove any existing meta-data with the same name
| meta_swallow | the meta-object to add |
| void SH::Sample::addSamples | ( | SampleHandler & | result | ) |
add all samples this sample corresponds to to the given sample handler
| void SH::Sample::addTag | ( | const std::string & | tag | ) |
|
private |
increase the reference count by one
|
private |
| bool SH::Sample::contains | ( | const std::string & | name | ) | const |
whether this sample contains a sample of the given name
|
protectedvirtual |
add all samples this sample corresponds to to the given sample handler
Reimplemented in SH::SampleComposite.
|
protectedpure virtual |
make a list of all files, prestaging them if necessary
Implemented in SH::SampleLocal, SH::SampleGrid, SH::SampleComposite, SH::SampleHist, and SH::SampleMeta.
|
protectedpure virtual |
Make this a local sample, i.e.
one which can be directly opened with TFile::Open
Implemented in SH::SampleLocal, SH::SampleGrid, SH::SampleComposite, SH::SampleHist, and SH::SampleMeta.
|
protectedvirtual |
read an object from a histogram file
Reimplemented in SH::SampleHist.
|
protectedvirtual |
update all file references starting with from to to
| from | the original path to the data area |
| to | the new path to the data area |
Reimplemented in SH::SampleLocal, SH::SampleComposite, and SH::SampleHist.
fetch the meta-data from the given sample.
fields that have a name that starts with "nc_" are not copied.
| std::string SH::Sample::fileName | ( | std::size_t | index | ) | const |
the name of the file with the given index
| index | the index of the file |
|
protectedvirtual |
whether this sample contains a sample of the given name
Reimplemented in SH::SampleComposite.
|
protectedpure virtual |
the name of the file with the given index
| index | the index of the file |
Implemented in SH::SampleLocal, SH::SampleGrid, SH::SampleComposite, SH::SampleHist, and SH::SampleMeta.
| TObject* SH::Sample::getMeta | ( | const std::string & | name | ) |
the meta-data object with the given name
| name | the name of the meta-data object |
the meta-data object with the given name
| name | the name of the meta-data object |
| double SH::Sample::getMetaDouble | ( | const std::string & | name, |
| double | def_val = 0 |
||
| ) | const |
the meta-data double with the given name
| name | the name of the meta-data object |
| dev_val | the value to return if no meta-data object of the given name exists, or if it does not have the right type |
| std::string SH::Sample::getMetaString | ( | const std::string & | name, |
| const std::string & | def_val = "" |
||
| ) | const |
the meta-data string with the given name
| name | the name of the meta-data object |
| dev_val | the value to return if no meta-data object of the given name exists, or if it does not have the right type |
| Long64_t SH::Sample::getNumEntries | ( | ) | const |
get the number of entries
|
protectedpure virtual |
the number of files in the sample
Implemented in SH::SampleLocal, SH::SampleGrid, SH::SampleComposite, SH::SampleHist, and SH::SampleMeta.
| std::vector<std::string> SH::Sample::makeFileList | ( | ) | const |
make a list of all files, prestaging them if necessary
| SamplePtr SH::Sample::makeLocal | ( | ) | const |
Make this a local sample, i.e.
one which can be directly opened with TFile::Open
| TChain* SH::Sample::makeTChain | ( | ) | const |
create a TChain object, containing all these files
| MetaObject* SH::Sample::meta | ( | ) |
the meta-information for this sample
| const MetaObject* SH::Sample::meta | ( | ) | const |
the meta-information for this sample
| TCollection* SH::Sample::metaDataList | ( | ) |
get the meta-data list
| const TCollection* SH::Sample::metaDataList | ( | ) | const |
get the meta-data list
| const std::string& SH::Sample::name | ( | ) | const |
the name of the sample we are using
| void SH::Sample::name | ( | std::string | val_name | ) |
set the value of name
| std::size_t SH::Sample::numFiles | ( | ) | const |
the number of files in the sample
| void SH::Sample::print | ( | ) | const |
print the debugging output to the screen
| void SH::Sample::printContent | ( | ) | const |
print the debugging output to the screen
| TObject* SH::Sample::readHist | ( | const std::string & | name | ) | const |
read an object from a histogram file
|
private |
decrease the reference count by one
| void SH::Sample::removeMeta | ( | const std::string & | name | ) |
remove all meta-information with the given name
| name | the meta-data name to remove |
| void SH::Sample::setMetaDouble | ( | const std::string & | name, |
| double | value | ||
| ) |
set the meta-data double with the given name
| name | the name of the meta-data |
| value | the value to which it is set |
set the meta-data string with the given name
| name | the name of the meta-data |
| value | the value to which it is set |
| void SH::Sample::testInvariant | ( | ) | const |
test the invariant of this object
update all file references starting with from to to
| from | the original path to the data area |
| to | the new path to the data area |
the debugging info of this object
| obj | the object to be presented |
| verbosity | the level of verbosity (higher number -> more information) |
|
private |
|
private |
|
mutableprivate |
|
private |
1.8.18