OSSIA
Open Scenario System for Interactive Application
texture_parameter.hpp
1 #pragma once
2 #include <ossia/gfx/port_index.hpp>
3 #include <ossia/network/base/parameter.hpp>
4 
5 namespace ossia::gfx
6 {
7 class OSSIA_EXPORT texture_parameter : public ossia::net::parameter_base
8 {
9 public:
10  explicit texture_parameter(ossia::net::node_base& n)
11  : parameter_base{n}
12  {
13  m_type = parameter_type::TEXTURE;
14  }
15 
16  virtual ~texture_parameter();
17 
18  // For input
19  virtual void pull_texture(ossia::gfx::port_index idx);
20 
21  void pull_value() override;
25  ossia::value value() const override;
26  ossia::value set_value(const ossia::value&) override;
27  ossia::value set_value(ossia::value&&) override;
28  ossia::val_type get_value_type() const noexcept override;
29  ossia::net::parameter_base& set_value_type(ossia::val_type) override;
30  ossia::access_mode get_access() const noexcept override;
31  ossia::net::parameter_base& set_access(ossia::access_mode) override;
32  const ossia::domain& get_domain() const noexcept override;
33  ossia::net::parameter_base& set_domain(const ossia::domain&) override;
34  ossia::bounding_mode get_bounding() const noexcept override;
35  ossia::net::parameter_base& set_bounding(ossia::bounding_mode) override;
36 };
37 }
The node_base class.
Definition: network/base/node.hpp:48
The parameter_base class.
Definition: ossia/network/base/parameter.hpp:48
The value class.
Definition: value.hpp:173
Definition: git_info.h:7
val_type
Enum to represent the types that a value can take.
Definition: parameter_properties.hpp:16
bounding_mode
Address behaviors at crossing domain boundaries.
Definition: parameter_properties.hpp:56
access_mode
Address behaviors at crossing domain boundaries time.
Definition: parameter_properties.hpp:46
OSSIA_EXPORT void push_value(const ossia::destination &addr, const ossia::value_with_unit &)
Send a value to a given destination.
Definition: ossia/network/base/parameter.cpp:151