/usr/include/root/TFormLeafInfoReference.h is in libroot-tree-treeplayer-dev 5.34.19+dfsg-1.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | // @(#)root/treeplayer:$Id$
// Author: Markus Frank 01/02/2006
/*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers and al. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
#ifndef ROOT_TFormLeafInfoReference
#define ROOT_TFormLeafInfoReference
#ifndef ROOT_TFormLeafInfo
#include "TFormLeafInfo.h"
#endif
#include <string>
// Forward declarations
class TVirtualRefProxy;
//////////////////////////////////////////////////////////////////////////
// //
// TFormLeafInfoReference //
// //
// TFormLeafInfoReference is a small helper class to implement the //
// following of reference objects stored in a TTree //
// //
//////////////////////////////////////////////////////////////////////////
class TFormLeafInfoReference : public TFormLeafInfo {
typedef TVirtualRefProxy Proxy;
public:
Proxy* fProxy; //! Cached pointer to reference proxy
TBranch* fBranch; //! Cached pointer to branch object
public:
// Initializing constructor
TFormLeafInfoReference(TClass* classptr, TStreamerElement* element, int off);
// Copy constructor
TFormLeafInfoReference(const TFormLeafInfoReference& orig);
// Default destructor
virtual ~TFormLeafInfoReference();
// Exception safe swap.
void Swap(TFormLeafInfoReference &other);
// Exception safe assignment operator.
TFormLeafInfoReference &operator=(const TFormLeafInfoReference &orig);
// Virtual copy constructor
virtual TFormLeafInfo* DeepCopy() const;
// Access to the info's proxy
Proxy* GetProxy() const { return fProxy; }
// Access to the info's connected branch
TBranch* GetBranch() const { return fBranch; }
// Access to the info's connected branch
void SetBranch(TBranch* branch)
{ fBranch = branch; if ( fNext ) fNext->SetBranch(branch); }
// Access to the offset of the data
virtual Int_t GetOffset() const { return fOffset; }
// Return true only if the underlying data is an integral value
virtual Bool_t IsInteger() const { return kFALSE; }
// Return true only if the underlying data is a string
virtual Bool_t IsString() const { return kFALSE; }
// Return true only if the underlying data is a reference
virtual Bool_t IsReference() const { return kTRUE; }
// Access to target class pointer (if available)
virtual TClass* GetClass() const;
// Access to the value class of the reference proxy
virtual TClass* GetValueClass(TLeaf* from);
// Access to the value class from the object pointer
virtual TClass* GetValueClass(void* from);
// Return the address of the local value
virtual void *GetLocalValuePointer( TLeaf *from, Int_t instance = 0);
// Return the address of the local value
virtual void *GetLocalValuePointer(char *from, Int_t instance = 0);
// Return true if any of underlying data has a array size counter
virtual Bool_t HasCounter() const;
// Return the size of the underlying array for the current entry in the TTree.
virtual Int_t ReadCounterValue(char *where);
// Return the current size of the array container
virtual Int_t GetCounterValue(TLeaf* leaf);
// Access value of referenced object (macro from TFormLeafInfo.g)
DECLARE_GETVAL;
// Read value of referenced object
DECLARE_READVAL;
// TFormLeafInfo overload: Update (and propagate) cached information
virtual Bool_t Update();
};
#endif /* ROOT_TFormLeafInfoReference */
|