51 #ifndef ITER_QUANITY_ACCESS_CONTIGUOUS_DECL_H
52 #define ITER_QUANITY_ACCESS_CONTIGUOUS_DECL_H
60 namespace IterationPack {
85 template<
class T_info>
116 ,
const std::string&
name
142 void resize(
int num_quantities );
163 const char*
name()
const;
187 T_info&
get_k(
int offset);
189 const T_info&
get_k(
int offset)
const;
191 T_info&
set_k(
int offset);
193 T_info&
set_k(
int set_offset,
int get_offset);
205 typedef std::vector<typename abstract_factory_ptr_t::element_type::obj_ptr_t>
store_t;
256 template <
class T_info>
260 return num_quantities_;
265 #endif // ITER_QUANITY_ACCESS_CONTIGUOUS_DECL_H
void lazy_initialization()
void resize(int num_quantities)
Resize the number of contiguous storage locations.
IterQuantityAccessContiguous()
Interface to typed iteration quantities.
int num_quantities() const
Return the number of continous storage locations.
T_info & set_k(int offset)
std::vector< typename abstract_factory_ptr_t::element_type::obj_ptr_t > store_t
void set_factory(const abstract_factory_ptr_t &abstract_factory)
Set the abstract factory to use to allocate storate.
bool will_loose_mem(int offset, int set_offset) const
std::vector< T_info * > quantities_t
void set_all_not_updated()
bool updated_k(int offset) const
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
void set_not_updated_k(int offset)
Iterface for information about Iteration Quantities.
bool is_initialized() const
bool has_storage_k(int offset) const
void print_concrete_type(std::ostream &out) const
Iteration Quanities subclass for contiguous iterations.
const char * name() const
~IterQuantityAccessContiguous()
IterQuantity * clone() const
Teuchos::AbstractFactoryStd< T_info, T_info > abstract_factory_std_t
T_info & get_k(int offset)
IterQuantityAccess< T_info > base_t
Teuchos::RCP< const Teuchos::AbstractFactory< T_info > > abstract_factory_ptr_t
IterQuantityAccessContiguous & operator=(const IterQuantityAccessContiguous &)
std::vector< bool > updated_t
abstract_factory_ptr_t abstract_factory_