NSCL DDAS  12.1-001
Support for XIA DDAS at FRIB
DataSource.h
Go to the documentation of this file.
1 /*
2  This software is Copyright by the Board of Trustees of Michigan
3  State University (c) Copyright 2017.
4 
5  You may use this software under the terms of the GNU public license
6  (GPL). The terms of this license are described at:
7 
8  http://www.gnu.org/licenses/gpl.txt
9 
10  Authors:
11  Ron Fox
12  Giordano Cerriza
13  Aaron Chester
14  FRIB
15  Michigan State University
16  East Lansing, MI 48824-1321
17 */
18 
19 #ifndef DATASOURCE_H
20 #define DATASOURCE_H
21 
27 namespace ufmt {
28  class CRingItem;
29  class RingItemFactoryBase;
30 }
31 using namespace ufmt;
32 
48 class DataSource {
49 protected:
50  RingItemFactoryBase* m_pFactory;
51 
52 public:
54  DataSource(RingItemFactoryBase* pFactory);
56  virtual ~DataSource();
62  virtual CRingItem* getItem() = 0;
64  void setFactory(RingItemFactoryBase* pFactory);
65 };
66 
67 
68 #endif
Abstract base class for DDAS data sources.
Definition: DataSource.h:48
RingItemFactoryBase * m_pFactory
Pointer to our ring item factory.
Definition: DataSource.h:50
virtual CRingItem * getItem()=0
Pure-virtual method to access a ring item from the data source. Must be implemented in derived classe...
Definition: DataSource.h:27