ATLAS Offline Software
Loading...
Searching...
No Matches
IIteration.h
Go to the documentation of this file.
1// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
3/*
4 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7// $Id$
14
15#ifndef D3PDMAKERINTERFACES_IITERATION_H
16#define D3PDMAKERINTERFACES_IITERATION_H
17
18
19namespace D3PD {
20
21
41{
42public:
44 virtual ~IIteration() {}
45
46
52 virtual const std::type_info& elementTypeinfo() const = 0;
53
54
60 virtual const void* nextUntyped() = 0;
61
62
72 virtual void releaseElementUntyped (const void* p);
73};
74
75
76} // namespace D3PD
77
78
80
81
82#endif // not D3PDMAKERINTERFACES_IITERATION_H
Abstract interface for iterating over a set of things.
Definition IIteration.h:41
virtual const void * nextUntyped()=0
Return a pointer to the next element in the iteration.
virtual void releaseElementUntyped(const void *p)
Release an object retrieved from the getter.
virtual const std::type_info & elementTypeinfo() const =0
Return the element type of the collection.
virtual ~IIteration()
This is a polymorphic class.
Definition IIteration.h:44
Block filler tool for noisy FEB information.