Tatooine
Public Types | Public Member Functions | Public Attributes | List of all members
tatooine::flowexplorer::nodes::vectorfield_to_gpu Struct Reference

#include <vectorfield_to_gpu.h>

Inheritance diagram for tatooine::flowexplorer::nodes::vectorfield_to_gpu:
[legend]
Collaboration diagram for tatooine::flowexplorer::nodes::vectorfield_to_gpu:
[legend]

Public Types

using vectorfield_t = polymorphic::vectorfield< double, 2 >
 
using bb_t = flowexplorer::nodes::axis_aligned_bounding_box< 2 >
 
using tex_t = gl::tex2rg32f
 
- Public Types inherited from tatooine::flowexplorer::ui::node< vectorfield_to_gpu >
using serializer_t = node_serializer< vectorfield_to_gpu >
 
- Public Types inherited from tatooine::gl::texture< NumDimensions, ValueType, Components >
using value_type = ValueType
 
using components_type = Components
 

Public Member Functions

auto bounding_box () const
 
auto resolution () const -> auto const &
 
auto resolution () -> auto &
 
auto time () const
 
auto time () -> auto &
 
 vectorfield_to_gpu (flowexplorer::scene &s)
 
virtual ~vectorfield_to_gpu ()=default
 
auto upload ()
 
void on_pin_connected (ui::input_pin &this_pin, ui::output_pin &other_pin) override
 
auto on_property_changed () -> void override
 
- Public Member Functions inherited from tatooine::flowexplorer::ui::node< vectorfield_to_gpu >
auto serialize () const -> toml::table override final
 
auto deserialize (toml::table const &serialized_node) -> void override
 
auto draw_properties () -> bool override
 
auto type_name () const -> std::string_view override final
 
- Public Member Functions inherited from tatooine::flowexplorer::ui::base::node
 node (flowexplorer::scene &s)
 
 node (std::string const &title, flowexplorer::scene &s)
 
template<typename T >
 node (flowexplorer::scene &s, T &ref)
 
template<typename T >
 node (std::string const &title, flowexplorer::scene &s, T &ref)
 
virtual ~node ()=default
 
template<typename... Ts>
auto insert_input_pin (std::string const &title, icon_type const t=icon_type::flow) -> auto &
 
template<typename Prop >
auto insert_input_pin_property_link (input_pin &pin, Prop &prop) -> auto &
 
template<typename T >
auto insert_output_pin (std::string const &title, T &ref, icon_type const t=icon_type::flow) -> auto &
 
auto title () const -> auto const &
 
auto title () -> auto &
 
auto scene () const -> auto const &
 
auto scene () -> auto &
 
auto set_title (std::string const &title)
 
auto has_self_pin () const -> bool
 
auto self_pin () const -> auto const &
 
auto self_pin () -> auto &
 
auto input_pins () const -> auto const &
 
auto input_pins () -> auto &
 
auto output_pins () const -> auto const &
 
auto output_pins () -> auto &
 
auto draw_node () -> void
 
auto node_position () const -> ImVec2
 
auto notify_property_changed (bool const notify_self=true) -> void
 
auto update_property_links () -> void
 
virtual auto draw_properties () -> bool=0
 
virtual auto on_property_changed () -> void
 
virtual auto on_title_changed (std::string const &) -> void
 
virtual auto on_pin_connected (input_pin &, output_pin &) -> void
 
virtual auto on_pin_connected (output_pin &, input_pin &) -> void
 
virtual auto on_pin_disconnected (input_pin &) -> void
 
virtual auto on_pin_disconnected (output_pin &) -> void
 
virtual auto type_name () const -> std::string_view=0
 
virtual auto update (std::chrono::duration< double > const &) -> void
 
virtual auto on_path_selected (std::string const &) -> void
 
- Public Member Functions inherited from tatooine::flowexplorer::uuid_holder< ax::NodeEditor::NodeId >
 uuid_holder (size_t const id)
 
 uuid_holder (ax::NodeEditor::NodeId const &id)
 
 uuid_holder ()
 
auto get_id () const -> const auto &
 
auto get_id () -> auto &
 
auto get_id_number () const
 
auto set_id (size_t const new_id)
 
constexpr auto operator== (uuid_holder< ax::NodeEditor::NodeId > const &other) const -> bool
 
constexpr auto operator== (ax::NodeEditor::NodeId const &id) const -> bool
 
constexpr auto operator== (size_t const id) const -> bool
 
constexpr auto equals ()
 
virtual auto serialize () const -> toml::table=0
 
virtual void deserialize (toml::table const &)=0
 
- Public Member Functions inherited from tatooine::flowexplorer::toggleable
constexpr toggleable (bool active=true)
 
constexpr toggleable (toggleable const &)=default
 
constexpr toggleable (toggleable &&)=default
 
constexpr auto operator= (toggleable const &) -> toggleable &=default
 
constexpr auto operator= (toggleable &&) -> toggleable &=default
 
 ~toggleable ()=default
 
virtual constexpr auto set_active (bool active=true) -> void
 
constexpr auto activate () -> void
 
constexpr auto deactivate () -> void
 
constexpr auto toggle () -> void
 
constexpr auto is_active () const -> bool const &
 
constexpr auto is_active () -> bool &
 
- Public Member Functions inherited from tatooine::flowexplorer::ui::node_serializer< T >
auto serialize (T const &t) const -> toml::table
 
auto deserialize (T &t, toml::table const &serialized_node) -> void
 
auto draw_properties (T &t) -> bool
 
constexpr auto type_name () const -> std::string_view
 
- Public Member Functions inherited from tatooine::gl::texture< NumDimensions, ValueType, Components >
 texture ()
 
template<std::size_t... Is>
 texture (std::index_sequence< Is... >)
 
 texture (texture const &other)
 TODO: copy wrap and interpolation modes. More...
 
 texture (texture &&other)
 
auto & operator= (texture const &other)
 
auto & operator= (texture &&other)
 
 ~texture ()
 
 texture (integral auto const ... sizes)
 
template<convertible_to< value_type > OtherType>
requires (sizeof...(sizes) == NumDimensions)
 texture (OtherType const *const data, integral auto const ... sizes)
 
 texture (ValueType const *const data, integral auto const ... sizes)
 
template<convertible_to< value_type > OtherType>
requires (sizeof...(sizes) == NumDimensions) && (num_components() == 1)
 texture (std::vector< OtherType > const &data, integral auto const ... sizes)
 
template<convertible_to< value_type > OtherType>
requires (sizeof...(sizes) == NumDimensions) && (num_components() > 1)
 texture (std::vector< vec< OtherType, num_components()> > const &data, integral auto const ... sizes)
 
template<convertible_to< value_type > OtherType>
requires (num_components() == 1)
 texture (dynamic_multidim_array< OtherType > const &data)
 
template<convertible_to< value_type > OtherType>
requires (num_components() > 1)
 texture (dynamic_multidim_array< vec< OtherType, num_components()> > const &data)
 
template<std::size_t... Is>
 texture (interpolation_mode interp_mode, wrap_mode wrap_mode, std::index_sequence< Is... >)
 
 texture (interpolation_mode interp_mode, wrap_mode wrap_mode)
 
template<integral... Sizes>
requires (sizeof...(Sizes) == NumDimensions)
 texture (interpolation_mode interp_mode, wrap_mode wrap_mode, Sizes const ... sizes)
 
template<convertible_to< value_type > OtherType, integral... Sizes>
requires (sizeof...(Sizes) == NumDimensions)
 texture (interpolation_mode interp_mode, wrap_mode wrap_mode, std::vector< OtherType > const &data, Sizes const ... sizes)
 
auto bind (GLuint unit=0) const
 
void bind_image_texture (GLuint unit) const
 
void bind_image_texture (GLuint unit)
 
void bind_image_texture_read_write (GLuint unit)
 
void bind_image_texture_write (GLuint unit)
 
void unbind_image_texture (GLuint unit)
 
void bind_image_texture_layer (GLuint unit, GLint layer) const
 
void bind_image_texture_layer (GLuint unit, GLint layer)
 
template<std::size_t... Is>
auto num_texels (std::index_sequence< Is... >) const -> GLsizei
 
auto num_texels () const -> GLsizei
 
auto copy_data (texture const &other) -> void
 
template<integral Size>
auto resize (std::array< Size, NumDimensions > const &size) -> void
 
template<integral... Sizes>
requires (sizeof...(Sizes) == NumDimensions)
auto resize (Sizes const ... sizes) -> void
 
template<integral... Indices>
requires (sizeof...(Indices) == NumDimensions)
auto operator() (Indices const ... indices) const
 
auto width () const
 
auto height () const
 
auto depth () const
 
auto set_wrap_mode (wrap_mode mode) -> void
 setting all wrapmodes to same mode More...
 
template<std::size_t... Is>
auto set_wrap_mode (std::index_sequence< Is... >, same_as< wrap_mode > auto const ... modes) -> void requires(sizeof...(modes)==NumDimensions)
 setting all wrapmodes individual modes More...
 
auto set_wrap_mode (same_as< wrap_mode > auto const ... modes) -> void
 setting all wrapmodes individual modes More...
 
auto set_wrap_mode (std::size_t const i, wrap_mode const mode) -> void
 setting wrapmode with index i to modes More...
 
auto set_repeat () -> void
 setting all wrapmodes to repeat More...
 
auto set_wrap_mode_s (wrap_mode const mode) -> void
 
auto set_wrap_mode_t (wrap_mode const mode) -> void requires(NumDimensions > 1)
 
auto set_wrap_mode_r (wrap_mode const mode) -> void requires(NumDimensions > 2)
 
auto set_interpolation_mode (interpolation_mode const mode) -> void
 
auto set_interpolation_mode_min (interpolation_mode const mode) -> void
 
auto set_interpolation_mode_mag (interpolation_mode const mode) -> void
 
auto set_compare_func (compare_func const f) -> void
 
auto set_compare_mode (compare_mode const m) -> void
 
auto clear (arithmetic auto const ... comps)
 
auto clear (std::array< value_type, num_components()> const &col)
 
auto set_data (pixelunpackbuffer< value_type > const &pbo)
 
auto download_data () const
 
auto download_data (std::vector< value_type > &data) const -> void
 
auto download_data (std::vector< vec< value_type, num_components()> > &data) const -> void requires(num_components() > 1)
 
auto download_data (value_type *data) const -> void
 
auto & download_sub_data (GLint xoffset, GLsizei width, std::vector< ValueType > &data, GLint level=0) const
 
auto & download_sub_data (GLint xoffset, GLsizei width, std::vector< vec< ValueType, num_components()> > &data, GLint level=0) const
 
auto download_sub_data (GLint xoffset, GLsizei width, GLint level=0) const
 
auto & download_sub_data (GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, std::vector< ValueType > &data, GLint level=0) const
 
auto & download_sub_data (GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, std::vector< vec< ValueType, num_components()> > &data, GLint level=0) const
 
auto download_sub_data (GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLint level=0) const
 
auto & download_sub_data (GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, std::vector< ValueType > &data, GLint level=0) const
 
auto & download_sub_data (GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, std::vector< vec< ValueType, num_components()> > &data, GLint level=0) const
 
auto download_sub_data (GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLint level=0) const
 
template<integral... Sizes>
requires (sizeof...(Sizes) == NumDimensions)
auto upload_data (value_type const *const data, Sizes const ... sizes)
 
template<integral... Sizes>
requires (sizeof...(Sizes) == NumDimensions) && (num_components() > 1)
auto upload_data (vec< value_type, num_components()> const *const data, Sizes const ... sizes)
 
auto upload_data (dynamic_multidim_array< value_type > const &data)
 
auto upload_data (dynamic_multidim_array< vec< value_type, num_components()> > const &data)
 
template<convertible_to< value_type > OtherType>
requires (num_components() == GLsizei(1))
auto upload_data (dynamic_multidim_array< OtherType > const &data)
 
template<convertible_to< value_type > OtherType>
requires (num_components() > 1)
auto upload_data (dynamic_multidim_array< vec< OtherType, num_components()> > const &data)
 
template<integral... Sizes>
requires (num_components() == 1) && (sizeof...(Sizes) == NumDimensions)
auto upload_data (std::vector< value_type > const &data, Sizes const ... sizes)
 
template<integral... Sizes>
requires (num_components() > 1) && (sizeof...(Sizes) == NumDimensions)
auto upload_data (std::vector< vec< value_type, num_components()> > const &data, Sizes const ... sizes)
 
template<convertible_to< value_type > OtherType, integral... Sizes>
requires (num_components() == 1) && (sizeof...(Sizes) == NumDimensions)
auto upload_data (std::vector< OtherType > const &data, Sizes const ... sizes)
 
template<convertible_to< value_type > OtherType, integral... Sizes>
requires (num_components() > 1) && (sizeof...(Sizes) == NumDimensions)
auto upload_data (std::vector< vec< OtherType, num_components()> > const &data, Sizes const ... sizes)
 
- Public Member Functions inherited from tatooine::gl::id_holder< GLuint >
 id_holder ()
 
 id_holder (GLuint _id)
 
 id_holder (id_holder const &other)=delete
 
 id_holder (id_holder &&other) noexcept
 
auto operator= (id_holder const &other) -> id_holder &=delete
 
auto operator= (id_holder &&other) noexcept -> id_holder &
 
 ~id_holder ()=default
 
auto id () const
 
void swap (id_holder &other)
 

Public Attributes

vectorfield_tm_v = nullptr
 
bb_tm_bb = nullptr
 
vec< int, 2 > m_res
 
real_type m_t
 

Additional Inherited Members

- Static Public Member Functions inherited from tatooine::gl::texture< NumDimensions, ValueType, Components >
static constexpr auto num_components () -> GLsizei
 
static constexpr std::size_t num_dimensions ()
 
static void unbind (GLuint unit=0)
 
static void unbind_image_texture_layer (GLuint unit, GLint layer)
 
- Static Public Attributes inherited from tatooine::gl::texture< NumDimensions, ValueType, Components >
static constexpr auto target = tex::target<NumDimensions>
 
static constexpr auto binding = tex::binding<NumDimensions>
 
static constexpr auto default_interpolation = interpolation_mode::linear
 
static constexpr auto default_wrap_mode = wrap_mode::repeat
 
static constexpr auto gl_internal_format
 
static constexpr auto gl_format
 
static constexpr auto gl_type = tex::settings<ValueType, Components>::type
 
static constexpr std::array< GLenum, 3 > wrapmode_indices
 
- Static Public Attributes inherited from tatooine::gl::id_holder< GLuint >
static constexpr auto default_val
 
- Protected Member Functions inherited from tatooine::gl::id_holder< GLuint >
void set_id (GLuint id)
 
auto id_ptr ()
 
auto id_ref () -> auto &
 
- Protected Attributes inherited from tatooine::gl::texture< NumDimensions, ValueType, Components >
std::array< GLsizei, NumDimensions > m_size
 

Member Typedef Documentation

◆ bb_t

◆ tex_t

◆ vectorfield_t

Constructor & Destructor Documentation

◆ vectorfield_to_gpu()

◆ ~vectorfield_to_gpu()

virtual tatooine::flowexplorer::nodes::vectorfield_to_gpu::~vectorfield_to_gpu ( )
virtualdefault

Member Function Documentation

◆ bounding_box()

auto tatooine::flowexplorer::nodes::vectorfield_to_gpu::bounding_box ( ) const
inline

◆ on_pin_connected()

void tatooine::flowexplorer::nodes::vectorfield_to_gpu::on_pin_connected ( ui::input_pin this_pin,
ui::output_pin other_pin 
)
inlineoverridevirtual

◆ on_property_changed()

auto tatooine::flowexplorer::nodes::vectorfield_to_gpu::on_property_changed ( ) -> void
inlineoverridevirtual

◆ resolution() [1/2]

auto tatooine::flowexplorer::nodes::vectorfield_to_gpu::resolution ( ) -> auto&
inline

◆ resolution() [2/2]

auto tatooine::flowexplorer::nodes::vectorfield_to_gpu::resolution ( ) const -> auto const&
inline

◆ time() [1/2]

auto tatooine::flowexplorer::nodes::vectorfield_to_gpu::time ( ) -> auto&
inline

◆ time() [2/2]

auto tatooine::flowexplorer::nodes::vectorfield_to_gpu::time ( ) const
inline

◆ upload()

auto tatooine::flowexplorer::nodes::vectorfield_to_gpu::upload ( )
inline

Member Data Documentation

◆ m_bb

bb_t* tatooine::flowexplorer::nodes::vectorfield_to_gpu::m_bb = nullptr

◆ m_res

vec<int, 2> tatooine::flowexplorer::nodes::vectorfield_to_gpu::m_res

◆ m_t

real_type tatooine::flowexplorer::nodes::vectorfield_to_gpu::m_t

◆ m_v

vectorfield_t* tatooine::flowexplorer::nodes::vectorfield_to_gpu::m_v = nullptr

The documentation for this struct was generated from the following file: