OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
MakeDataSource.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /***************************************************************************
3  *
4  * The IPPL Framework
5  *
6  *
7  * Visit http://people.web.psi.ch/adelmann/ for more details
8  *
9  ***************************************************************************/
10 
11 #ifndef MAKE_DATA_SOURCE_H
12 #define MAKE_DATA_SOURCE_H
13 
14 /***********************************************************************
15  *
16  * make_DataSourceObject is essentially a factory function
17  * for producing different specific types of DataSourceObjects.
18  * It asks the IpplInfo object which type of data source to
19  * use, and then makes the appropriate DataSourceObject subclass.
20  *
21  ***********************************************************************/
22 
23 // forward declarations
24 template<class T, unsigned Dim, class M, class C> class Field;
25 template<class T> class ParticleAttrib;
26 template<class PLayout> class IpplParticleBase;
27 template<class T> class ScalarDataSource;
28 template<class T> class StringDataSource;
29 class DataSourceObject;
30 class DataConnect;
31 
32 
33 // a version of make_DataSourceObject for Field's.
34 // arguments: name, connection type, transfer metohd, Field
35 template<class T, unsigned Dim, class M, class C>
37 make_DataSourceObject(const char *, DataConnect *, int, Field<T,Dim,M,C>&);
38 
39 
40 // a version of make_DataSourceObject for ParticleAttrib's.
41 // arguments: name, connection type, transfer method, ParticleAttrib
42 template<class T>
45 
46 
47 // a version of make_DataSourceObject for ParticleAttrib's.
48 // arguments: name, connection type, transfer method, IpplParticleBase
49 template<class PLayout>
52 
53 // a version of make_DataSourceObject for Scalar's.
54 // arguments: name, connection type, transfer method, ScalarDataSource
55 template<class T>
58 
59 
60 // a version of make_DataSourceObject for String's.
61 // arguments: name, connection type, transfer method, StringDataSource
62 template<class T>
65 
67 
68 #endif // MAKE_DATA_SOURCE_H
69 
70 /***************************************************************************
71  * $RCSfile: MakeDataSource.h,v $ $Author: adelmann $
72  * $Revision: 1.1.1.1 $ $Date: 2003/01/23 07:40:25 $
73  * IPPL_VERSION_ID: $Id: MakeDataSource.h,v 1.1.1.1 2003/01/23 07:40:25 adelmann Exp $
74  ***************************************************************************/
DataSourceObject * make_DataSourceObject(const char *, DataConnect *, int, Field< T, Dim, M, C > &)