www.mooseframework.org
CacheChangedListsThread.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* DO NOT MODIFY THIS HEADER */
3 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
4 /* */
5 /* (c) 2010 Battelle Energy Alliance, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by Battelle Energy Alliance, LLC */
9 /* Under Contract No. DE-AC07-05ID14517 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* See COPYRIGHT for full restrictions */
13 /****************************************************************/
14 
15 #ifndef CACHECHANGEDLISTSTHREAD_H
16 #define CACHECHANGEDLISTSTHREAD_H
17 
19 
20 #include "libmesh/stored_range.h"
21 
22 class CacheChangedListsThread : public ThreadedElementLoopBase<ConstElemRange>
23 {
24 public:
26  CacheChangedListsThread(CacheChangedListsThread & x, Threads::split split);
27  virtual ~CacheChangedListsThread();
28 
29  virtual void onElement(const Elem * elem) override;
30 
31  void join(const CacheChangedListsThread & y);
32 
34  std::vector<const Elem *> _refined_elements;
35 
37  std::vector<const Elem *> _coarsened_elements;
38 
40  std::map<const Elem *, std::vector<const Elem *>> _coarsened_element_children;
41 };
42 
43 #endif // CACHECHANGEDLISTSTHREAD_H
CacheChangedListsThread(MooseMesh &mesh)
void join(const CacheChangedListsThread &y)
static PetscErrorCode Vec x
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition: MooseMesh.h:74
virtual void onElement(const Elem *elem) override
Assembly of the element (not including surface assembly)
std::map< const Elem *, std::vector< const Elem * > > _coarsened_element_children
Map of Parent elements to children elements for elements that were just coarsened.
std::vector< const Elem * > _refined_elements
The elements that were just refined.
Base class for assembly-like calculations.
std::vector< const Elem * > _coarsened_elements
The elements that were just coarsened.