Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:10:46

0001 /// \file ROOT/RNTupleReadOptions.hxx
0002 /// \ingroup NTuple ROOT7
0003 /// \author Jakob Blomer <jblomer@cern.ch>
0004 /// \date 2024-02-22
0005 /// \warning This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback
0006 /// is welcome!
0007 
0008 /*************************************************************************
0009  * Copyright (C) 1995-2024, Rene Brun and Fons Rademakers.               *
0010  * All rights reserved.                                                  *
0011  *                                                                       *
0012  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0013  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0014  *************************************************************************/
0015 
0016 #ifndef ROOT7_RNTupleReadOptions
0017 #define ROOT7_RNTupleReadOptions
0018 
0019 namespace ROOT {
0020 namespace Experimental {
0021 
0022 // clang-format off
0023 /**
0024 \class ROOT::Experimental::RNTupleReadOptions
0025 \ingroup NTuple
0026 \brief Common user-tunable settings for reading ntuples
0027 
0028 All page source classes need to support the common options.
0029 */
0030 // clang-format on
0031 class RNTupleReadOptions {
0032 public:
0033    enum class EClusterCache {
0034       kOff,
0035       kOn,
0036       kDefault = kOn,
0037    };
0038    enum class EImplicitMT {
0039       kOff,
0040       kDefault,
0041    };
0042 
0043 private:
0044    EClusterCache fClusterCache = EClusterCache::kDefault;
0045    unsigned int fClusterBunchSize = 1;
0046    EImplicitMT fUseImplicitMT = EImplicitMT::kDefault;
0047 
0048 public:
0049    EClusterCache GetClusterCache() const { return fClusterCache; }
0050    void SetClusterCache(EClusterCache val) { fClusterCache = val; }
0051    unsigned int GetClusterBunchSize() const { return fClusterBunchSize; }
0052    void SetClusterBunchSize(unsigned int val) { fClusterBunchSize = val; }
0053    EImplicitMT GetUseImplicitMT() const { return fUseImplicitMT; }
0054    void SetUseImplicitMT(EImplicitMT val) { fUseImplicitMT = val; }
0055 };
0056 
0057 } // namespace Experimental
0058 } // namespace ROOT
0059 
0060 #endif