OPAL (Object Oriented Parallel Accelerator Library) 2022.1
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
27class FieldLayoutUser : public User {
28
29public:
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