Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
larevt
larevt
SpaceChargeServices
SpaceChargeService.h
Go to the documentation of this file.
1
////////////////////////////////////////////////////////////////////////
2
// \file SpaceChargeService.h
3
//
4
// \brief pure virtual service interface for space charge distortions
5
//
6
// \author mrmooney@bnl.gov
7
//
8
////////////////////////////////////////////////////////////////////////
9
#ifndef SPACECHARGESERVICE_H
10
#define SPACECHARGESERVICE_H
11
12
#include "
larevt/SpaceCharge/SpaceCharge.h
"
13
14
#include "
art/Framework/Services/Registry/ServiceDeclarationMacros.h
"
15
16
namespace
spacecharge
{
17
class
SpaceChargeService
{
18
public
:
19
using
provider_type
=
spacecharge::SpaceCharge
;
20
21
virtual
~SpaceChargeService
() =
default
;
22
virtual
const
spacecharge::SpaceCharge
*
provider
()
const
= 0;
23
};
24
}
25
26
DECLARE_ART_SERVICE_INTERFACE
(
spacecharge::SpaceChargeService
, SHARED)
27
28
#endif // SPACECHARGESERVICE_H
SpaceCharge.h
spacecharge::SpaceCharge
Definition:
SpaceCharge.h:18
spacecharge::SpaceChargeService::provider
virtual const spacecharge::SpaceCharge * provider() const =0
ServiceDeclarationMacros.h
spacecharge::SpaceChargeService::~SpaceChargeService
virtual ~SpaceChargeService()=default
spacecharge
Definition:
SpaceCharge3x1x1dphase.h:29
spacecharge::SpaceChargeService
Definition:
SpaceChargeService.h:17
DECLARE_ART_SERVICE_INTERFACE
#define DECLARE_ART_SERVICE_INTERFACE(svc, scope)
Definition:
ServiceDeclarationMacros.h:80
Generated by
1.8.11