Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-21 10:00:31

0001 /***********************************************************************************\
0002 * (c) Copyright 1998-2019 CERN for the benefit of the LHCb and ATLAS collaborations *
0003 *                                                                                   *
0004 * This software is distributed under the terms of the Apache version 2 licence,     *
0005 * copied verbatim in the file "LICENSE".                                            *
0006 *                                                                                   *
0007 * In applying this licence, CERN does not waive the privileges and immunities       *
0008 * granted to it by virtue of its status as an Intergovernmental Organization        *
0009 * or submit itself to any jurisdiction.                                             *
0010 \***********************************************************************************/
0011 ///////////////////////// -*- C++ -*- /////////////////////////////
0012 // IIoComponent.h
0013 // Header file for class IIoComponent
0014 // Author: S.Binet<binet@cern.ch>
0015 ///////////////////////////////////////////////////////////////////
0016 #ifndef GAUDIKERNEL_IIOCOMPONENT_H
0017 #define GAUDIKERNEL_IIOCOMPONENT_H 1
0018 
0019 /** @class IIoComponent
0020  */
0021 
0022 // GaudiKernel includes
0023 #include "GaudiKernel/INamedInterface.h"
0024 #include "GaudiKernel/StatusCode.h"
0025 
0026 class GAUDI_API IIoComponent : virtual public INamedInterface {
0027 
0028 public:
0029   DeclareInterfaceID( IIoComponent, 1, 0 );
0030 
0031   ///////////////////////////////////////////////////////////////////
0032   // Non-const methods:
0033   ///////////////////////////////////////////////////////////////////
0034 
0035   /** @brief callback method to reinitialize the internal state of
0036    *         the component for I/O purposes (e.g. upon @c fork(2))
0037    */
0038   virtual StatusCode io_reinit() = 0;
0039 
0040   virtual StatusCode io_finalize() { return StatusCode::SUCCESS; }
0041 };
0042 
0043 #endif //> !GAUDIKERNEL_IIOCOMPONENT_H