Пример #1
0
template <class T> bool array_resize(T *ptr, size_t N, size_t size,byte_t byte,View &view, size_t &output_size) { 
    if(size > N) {
      return false;
    } else {
      std::fill(ptr+size,ptr+N,byte);
      view.refresh(view.data(),size);
      output_size = size;
      return true;
    }
}
Пример #2
0
static bool
check_elem_view (const View &view, const Elem &e)
{
  if (view.empty ())
    return false;
  if (view.size () != 1)
    return false;
  if (view.data () != &e)
    return false;
  if (&view[0] != &e)
    return false;
  if (view[0] != e)
    return false;
  return true;
}
Пример #3
0
static bool
check_container_view (const View &view, const Container &c)
{
  if (view.empty ())
    return false;
  if (view.size () != c.size ())
    return false;
  if (view.data () != c.data ())
    return false;
  for (size_t i = 0; i < c.size (); i++)
    {
      if (&view[i] != &c[i])
	return false;
      if (view[i] != c[i])
	return false;
    }
  return true;
}
Пример #4
0
bool View::operator==(const View& view) const
{
    return m_name == view.name() and m_type == view.type()
	and m_output == view.output()
	and m_timestep == view.timestep() and m_data == view.data();
}
Пример #5
0
 ConstView(const View &v) : data_(v.data()),size_(v.size()){}
Teuchos::ArrayView<typename View::const_value_type> toArray( View const &v )
{
    return Teuchos::ArrayView<typename View::const_value_type>( v.data(),
                                                                v.size() );
}