Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:11:39

0001 // @(#)root/io:$Id$
0002 // Author: Markus Frank  28/10/04
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 #ifndef ROOT_TEmulatedMapProxy
0012 #define ROOT_TEmulatedMapProxy
0013 
0014 #include "TEmulatedCollectionProxy.h"
0015 
0016 class TEmulatedMapProxy : public TEmulatedCollectionProxy  {
0017 
0018 protected:
0019    // Map input streamer
0020    void ReadMap(UInt_t nElements, TBuffer &b);
0021 
0022    // Map output streamer
0023    void WriteMap(UInt_t nElements, TBuffer &b);
0024 private:
0025    TEmulatedMapProxy &operator=(const TEmulatedMapProxy &rhs); // Not implemented.
0026 
0027 public:
0028    // Virtual copy constructor
0029    TVirtualCollectionProxy* Generate() const override;
0030 
0031    // Copy constructor
0032    TEmulatedMapProxy(const TEmulatedMapProxy& copy);
0033 
0034    // Initializing constructor
0035    TEmulatedMapProxy(const char* cl_name, Bool_t silent);
0036 
0037    // Standard destructor
0038    ~TEmulatedMapProxy() override;
0039 
0040    // Return the address of the value at index 'idx'
0041    void *At(UInt_t idx) override;
0042 
0043    // Return the current size of the container
0044    UInt_t Size() const override;
0045 
0046    // Read portion of the streamer
0047    void ReadBuffer(TBuffer &buff, void *pObj) override;
0048    void ReadBuffer(TBuffer &buff, void *pObj, const TClass *onfile) override;
0049 
0050    // Streamer for I/O handling
0051    void Streamer(TBuffer &refBuffer) override;
0052 
0053    // Streamer I/O overload
0054    void Streamer(TBuffer &buff, void *pObj, int siz) override
0055    {
0056       TEmulatedCollectionProxy::Streamer(buff,pObj,siz);
0057    }
0058 };
0059 
0060 #endif