00001 //---------------------------------------------------------------------- 00002 // @f$Id: number_cache.h 25345 2012-03-31 08:37:04Z bangerth @f$ 00003 // 00004 // Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2007, 2008, 2010, 2011, 2012 by the deal.II authors 00005 // 00006 // This file is subject to QPL and may not be distributed 00007 // without copyright and license information. Please refer 00008 // to the file deal.II/doc/license.html for the text and 00009 // further information on this license. 00010 // 00011 //---------------------------------------------------------------------- 00012 #ifndef __deal2__number_cache_h 00013 #define __deal2__number_cache_h 00014 00015 #include <deal.II/base/config.h> 00016 #include <deal.II/base/index_set.h> 00017 00018 #include <vector> 00019 00020 00021 DEAL_II_NAMESPACE_OPEN 00022 00023 namespace internal 00024 { 00025 namespace DoFHandler 00026 { 00033 struct NumberCache 00034 { 00038 NumberCache (); 00039 00045 std::size_t memory_consumption () const; 00046 00053 unsigned int n_global_dofs; 00054 00062 unsigned int n_locally_owned_dofs; 00063 00073 IndexSet locally_owned_dofs; 00074 00084 std::vector<unsigned int> n_locally_owned_dofs_per_processor; 00085 00095 std::vector<IndexSet> locally_owned_dofs_per_processor; 00096 00101 template <class Archive> 00102 void serialize (Archive & ar, 00103 const unsigned int version); 00104 }; 00105 00106 00107 template <class Archive> 00108 void 00109 NumberCache::serialize (Archive & ar, 00110 const unsigned int /*version*/) 00111 { 00112 ar & n_global_dofs & n_locally_owned_dofs; 00113 ar & locally_owned_dofs; 00114 ar & n_locally_owned_dofs_per_processor; 00115 ar & locally_owned_dofs_per_processor; 00116 } 00117 00118 } 00119 } 00120 00121 00122 DEAL_II_NAMESPACE_CLOSE 00123 00124 #endif // __deal2__dof_iterator_selector_h 00125
documentation generated on Wed May 23 2012 06:07:33 by
doxygen
1.7.3