3 #ifndef DUNE_PDELAB_BACKEND_COMMON_UNCACHEDVECTORVIEW_HH
4 #define DUNE_PDELAB_BACKEND_COMMON_UNCACHEDVECTORVIEW_HH
6 #include <dune/common/typetraits.hh>
7 #include <dune/common/deprecated.hh>
14 template<
typename V,
typename LFSC>
47 void bind(
const LFSCache& lfs_cache)
58 return cache().size();
62 void read(LC& local_container)
const
64 for (size_type i = 0; i <
size(); ++i)
70 template<
typename ChildLFS,
typename LC>
71 void read(
const ChildLFS& child_lfs, LC& local_container)
const
73 for (size_type i = 0; i < child_lfs.size(); ++i)
75 const size_type local_index = child_lfs.localIndex(i);
80 template<
typename ChildLFS,
typename LC>
83 for (size_type i = 0; i < child_lfs.size(); ++i)
85 const size_type local_index = child_lfs.localIndex(i);
103 const ElementType&
operator[](
const ContainerIndex& ci)
const
127 template<
typename V,
typename LFSC>
157 template<
typename LC>
158 void write(
const LC& local_container)
160 for (size_type i = 0; i <
size(); ++i)
166 template<
typename LC>
167 void add(
const LC& local_container)
169 for (size_type i = 0; i <
size(); ++i)
177 template<
typename ChildLFS,
typename LC>
178 void write(
const ChildLFS& child_lfs,
const LC& local_container)
180 for (size_type i = 0; i < child_lfs.size(); ++i)
182 const size_type local_index = child_lfs.localIndex(i);
187 template<
typename ChildLFS,
typename LC>
188 void add(
const ChildLFS& child_lfs,
const LC& local_container)
190 for (size_type i = 0; i < child_lfs.size(); ++i)
192 const size_type local_index = child_lfs.localIndex(i);
200 template<
typename ChildLFS,
typename LC>
203 for (size_type i = 0; i < child_lfs.size(); ++i)
205 const size_type local_index = child_lfs.localIndex(i);
210 template<
typename ChildLFS,
typename LC>
213 for (size_type i = 0; i < child_lfs.size(); ++i)
215 const size_type local_index = child_lfs.localIndex(i);
254 #endif // DUNE_PDELAB_BACKEND_COMMON_UNCACHEDVECTORVIEW_HH
size_type size() const
Definition: uncachedvectorview.hh:56
void write_sub_container(const ChildLFS &child_lfs, const LC &local_container)
Definition: uncachedvectorview.hh:201
void add_sub_container(const ChildLFS &child_lfs, const LC &local_container)
Definition: uncachedvectorview.hh:211
Container::size_type size_type
Definition: uncachedvectorview.hh:22
void bind(const LFSCache &lfs_cache)
Definition: uncachedvectorview.hh:47
C & accessBaseContainer(C &c)
Definition: localvector.hh:296
Container::ElementType ElementType
Definition: uncachedvectorview.hh:136
void attach(V &container)
Definition: uncachedvectorview.hh:37
const ElementType & operator[](const ContainerIndex &ci) const
Definition: uncachedvectorview.hh:103
Definition: uncachedvectorview.hh:15
void read_sub_container(const ChildLFS &child_lfs, LC &local_container) const
Definition: uncachedvectorview.hh:81
LFSC LFSCache
Definition: uncachedvectorview.hh:139
const ElementType & operator[](size_type i) const
Definition: uncachedvectorview.hh:91
const ElementType & operator[](const DOFIndex &di) const
Definition: uncachedvectorview.hh:97
ElementType & operator[](size_type i)
Definition: uncachedvectorview.hh:225
Definition: adaptivity.hh:26
LFSCache::DOFIndex DOFIndex
Definition: uncachedvectorview.hh:140
Definition: uncachedvectorview.hh:128
void unbind()
Definition: uncachedvectorview.hh:52
UncachedVectorView()
Definition: uncachedvectorview.hh:150
void write(const LC &local_container)
Definition: uncachedvectorview.hh:158
void commit()
Definition: uncachedvectorview.hh:220
void write(const ChildLFS &child_lfs, const LC &local_container)
Definition: uncachedvectorview.hh:178
ConstUncachedVectorView()
Definition: uncachedvectorview.hh:27
const LFSCache * _lfs_cache
Definition: uncachedvectorview.hh:122
LFSCache::ContainerIndex ContainerIndex
Definition: uncachedvectorview.hh:141
void add(const LC &local_container)
Definition: uncachedvectorview.hh:167
void read(const ChildLFS &child_lfs, LC &local_container) const
Definition: uncachedvectorview.hh:71
Container::size_type size_type
Definition: uncachedvectorview.hh:137
LFSC LFSCache
Definition: uncachedvectorview.hh:19
remove_const< V >::type Container
Definition: uncachedvectorview.hh:18
ElementType & operator[](const ContainerIndex &ci)
Definition: uncachedvectorview.hh:237
LFSCache::DOFIndex DOFIndex
Definition: uncachedvectorview.hh:23
LFSCache::ContainerIndex ContainerIndex
Definition: uncachedvectorview.hh:24
void add(const ChildLFS &child_lfs, const LC &local_container)
Definition: uncachedvectorview.hh:188
ConstUncachedVectorView(V &container)
Definition: uncachedvectorview.hh:32
void read(LC &local_container) const
Definition: uncachedvectorview.hh:62
const Container & container() const
Definition: uncachedvectorview.hh:109
V * _container
Definition: uncachedvectorview.hh:121
UncachedVectorView(Container &container)
Definition: uncachedvectorview.hh:153
Container::E ElementType
Definition: uncachedvectorview.hh:21
Container & container()
Definition: uncachedvectorview.hh:243
const LFSCache & cache() const
Definition: uncachedvectorview.hh:114
ElementType & operator[](const DOFIndex &di)
Definition: uncachedvectorview.hh:231
V Container
Definition: uncachedvectorview.hh:135
void detach()
Definition: uncachedvectorview.hh:42