OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
FieldLayoutUser.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /***************************************************************************
3  *
4  * The IPPL Framework
5  *
6  ***************************************************************************/
7 
8 #ifndef FIELD_LAYOUT_USER_H
9 #define FIELD_LAYOUT_USER_H
10 
11 /***********************************************************************
12  *
13  * FieldLayoutUser is a base class for all classes which need to use
14  * a FieldLayout - it is derived from User, which provides a virtual
15  * function 'notifyUserOfDelete' which is called when the FieldLayout
16  * is deleted, and the virtual function 'Repartition' which is called
17  * when a Field needs to be redistributed between processors.
18  *
19  ***********************************************************************/
20 
21 // include files
22 #include "Utility/User.h"
23 #include "Utility/UserList.h"
24 
25 
26 // class definition
27 class FieldLayoutUser : public User {
28 
29 public:
30  // constructor - the base class selects a unique ID value
32 
33  // destructor, nothing to do here
34  virtual ~FieldLayoutUser() {};
35 
36  //
37  // virtual functions for FieldLayoutUser's
38  //
39 
40  // Repartition onto a new layout
41  virtual void Repartition(UserList *) = 0;
42 };
43 
44 #endif // FIELD_LAYOUT_USER_H
virtual ~FieldLayoutUser()
virtual void Repartition(UserList *)=0
Definition: User.h:31