Unravel Engine C++ Reference
Loading...
Searching...
No Matches
unravel::script_component Class Reference

Class that contains core data for audio listeners. There can only be one instance of it per scene. More...

#include <script_component.h>

Inheritance diagram for unravel::script_component:
unravel::component_crtp< script_component, owned_component > unravel::owned_component unravel::basic_component

Classes

struct  script_object
 
struct  script_object_state
 

Public Types

using script_components_t = std::vector<script_object>
 
- Public Types inherited from unravel::component_crtp< script_component, owned_component >
using base
 

Public Member Functions

void process_pending_deletions ()
 
void process_pending_creates ()
 
void process_pending_starts ()
 
void process_pending_actions ()
 
void process_pending_actions (script_object script_obj)
 
void process_pending_actions_create (script_object script_obj)
 
auto add_script_component (const dotnet::type &type) -> script_object
 
auto add_script_component (const dotnet::object &obj) -> script_object
 
auto add_script_component (const script_object &obj, bool process_callbacks=true) -> script_object
 
void add_script_components (const script_components_t &comps)
 
void add_missing_script_components (const script_components_t &comps)
 
auto add_native_component (const dotnet::type &type) -> script_object
 
auto remove_script_component (const dotnet::object &obj) -> bool
 
auto remove_script_component (const dotnet::type &type) -> bool
 
auto remove_native_component (const dotnet::object &obj) -> bool
 
auto remove_native_component (const dotnet::type &type) -> bool
 
auto get_script_components (const dotnet::type &type) -> std::vector< dotnet::object >
 
auto get_script_component (const dotnet::type &type) -> script_object
 
auto get_native_component (const dotnet::type &type) -> script_object
 
auto get_script_components () const -> const script_components_t &
 
auto has_script_components () const -> bool
 
auto has_script_components (const std::string &type_name) const -> bool
 
auto get_script_source_location (const script_object &obj) const -> std::string
 
void create ()
 
void start ()
 
void destroy ()
 
void enable ()
 
void disable ()
 
void on_sensor_enter (entt::handle other, const std::vector< manifold_point > &manifolds)
 
void on_sensor_exit (entt::handle other, const std::vector< manifold_point > &manifolds)
 
void on_collision_enter (entt::handle other, const std::vector< manifold_point > &manifolds, bool use_b)
 
void on_collision_exit (entt::handle other, const std::vector< manifold_point > &manifolds, bool use_b)
 
- Public Member Functions inherited from unravel::owned_component
auto operator= (const owned_component &other) -> owned_component &=default
 
void set_owner (entt::handle owner)
 Sets the owner of the component.
 
auto get_owner () const noexcept -> entt::const_handle
 Gets the owner of the component.
 
auto get_owner () noexcept -> entt::handle
 Gets the owner of the component.
 
- Public Member Functions inherited from unravel::basic_component
void touch ()
 Marks the component as 'touched'.
 

Static Public Member Functions

static void on_create_component (entt::registry &r, entt::entity e)
 Called when the component is created.
 
static void on_destroy_component (entt::registry &r, entt::entity e)
 Called when the component is destroyed.
 
- Static Public Member Functions inherited from unravel::owned_component
template<typename T >
static void on_create_component (entt::registry &r, entt::entity e)
 
template<typename T >
static void on_destroy_component (entt::registry &r, entt::entity e)
 

Additional Inherited Members

- Public Attributes inherited from unravel::basic_component
bool eto {}
 Disable empty type optimizations.
 
- Static Public Attributes inherited from unravel::component_crtp< script_component, owned_component >
static constexpr bool in_place_delete
 Indicates if the component can be deleted in place.
 

Detailed Description

Class that contains core data for audio listeners. There can only be one instance of it per scene.

Definition at line 21 of file script_component.h.

Member Typedef Documentation

◆ script_components_t

Definition at line 101 of file script_component.h.

Member Function Documentation

◆ add_missing_script_components()

void unravel::script_component::add_missing_script_components ( const script_components_t & comps)

Definition at line 507 of file script_component.cpp.

◆ add_native_component()

auto unravel::script_component::add_native_component ( const dotnet::type & type) -> script_object

Definition at line 525 of file script_component.cpp.

◆ add_script_component() [1/3]

auto unravel::script_component::add_script_component ( const dotnet::object & obj) -> script_object

Definition at line 472 of file script_component.cpp.

◆ add_script_component() [2/3]

auto unravel::script_component::add_script_component ( const dotnet::type & type) -> script_object

Definition at line 466 of file script_component.cpp.

◆ add_script_component() [3/3]

auto unravel::script_component::add_script_component ( const script_object & obj,
bool process_callbacks = true ) -> script_object

Definition at line 478 of file script_component.cpp.

◆ add_script_components()

void unravel::script_component::add_script_components ( const script_components_t & comps)

Definition at line 496 of file script_component.cpp.

◆ create()

void unravel::script_component::create ( )

Definition at line 66 of file script_component.cpp.

◆ destroy()

void unravel::script_component::destroy ( )

Definition at line 77 of file script_component.cpp.

◆ disable()

void unravel::script_component::disable ( )

Definition at line 102 of file script_component.cpp.

◆ enable()

void unravel::script_component::enable ( )

Definition at line 92 of file script_component.cpp.

◆ get_native_component()

auto unravel::script_component::get_native_component ( const dotnet::type & type) -> script_object

Definition at line 576 of file script_component.cpp.

◆ get_script_component()

auto unravel::script_component::get_script_component ( const dotnet::type & type) -> script_object

Definition at line 557 of file script_component.cpp.

◆ get_script_components() [1/2]

auto unravel::script_component::get_script_components ( ) const -> const script_components_t&

Definition at line 714 of file script_component.cpp.

◆ get_script_components() [2/2]

auto unravel::script_component::get_script_components ( const dotnet::type & type) -> std::vector<dotnet::object>

Definition at line 535 of file script_component.cpp.

◆ get_script_source_location()

auto unravel::script_component::get_script_source_location ( const script_object & obj) const -> std::string

Definition at line 732 of file script_component.cpp.

◆ has_script_components() [1/2]

auto unravel::script_component::has_script_components ( ) const -> bool

Definition at line 719 of file script_component.cpp.

◆ has_script_components() [2/2]

auto unravel::script_component::has_script_components ( const std::string & type_name) const -> bool

Definition at line 724 of file script_component.cpp.

◆ on_collision_enter()

void unravel::script_component::on_collision_enter ( entt::handle other,
const std::vector< manifold_point > & manifolds,
bool use_b )

Definition at line 134 of file script_component.cpp.

◆ on_collision_exit()

void unravel::script_component::on_collision_exit ( entt::handle other,
const std::vector< manifold_point > & manifolds,
bool use_b )

Definition at line 145 of file script_component.cpp.

◆ on_create_component()

void unravel::script_component::on_create_component ( entt::registry & r,
entt::entity e )
static

Called when the component is created.

Parameters
rThe registry containing the component.
eThe entity associated with the component.

Definition at line 54 of file script_component.cpp.

◆ on_destroy_component()

void unravel::script_component::on_destroy_component ( entt::registry & r,
entt::entity e )
static

Called when the component is destroyed.

Parameters
rThe registry containing the component.
eThe entity associated with the component.

Definition at line 62 of file script_component.cpp.

◆ on_sensor_enter()

void unravel::script_component::on_sensor_enter ( entt::handle other,
const std::vector< manifold_point > & manifolds )

Definition at line 112 of file script_component.cpp.

◆ on_sensor_exit()

void unravel::script_component::on_sensor_exit ( entt::handle other,
const std::vector< manifold_point > & manifolds )

Definition at line 123 of file script_component.cpp.

◆ process_pending_actions() [1/2]

void unravel::script_component::process_pending_actions ( )

◆ process_pending_actions() [2/2]

void unravel::script_component::process_pending_actions ( script_object script_obj)

Definition at line 439 of file script_component.cpp.

◆ process_pending_actions_create()

void unravel::script_component::process_pending_actions_create ( script_object script_obj)

Definition at line 444 of file script_component.cpp.

◆ process_pending_creates()

void unravel::script_component::process_pending_creates ( )

Definition at line 405 of file script_component.cpp.

◆ process_pending_deletions()

void unravel::script_component::process_pending_deletions ( )

Definition at line 374 of file script_component.cpp.

◆ process_pending_starts()

void unravel::script_component::process_pending_starts ( )

Definition at line 422 of file script_component.cpp.

◆ remove_native_component() [1/2]

auto unravel::script_component::remove_native_component ( const dotnet::object & obj) -> bool

Definition at line 669 of file script_component.cpp.

◆ remove_native_component() [2/2]

auto unravel::script_component::remove_native_component ( const dotnet::type & type) -> bool

Definition at line 691 of file script_component.cpp.

◆ remove_script_component() [1/2]

auto unravel::script_component::remove_script_component ( const dotnet::object & obj) -> bool

Definition at line 595 of file script_component.cpp.

◆ remove_script_component() [2/2]

auto unravel::script_component::remove_script_component ( const dotnet::type & type) -> bool

Definition at line 631 of file script_component.cpp.

◆ start()

void unravel::script_component::start ( )

Definition at line 70 of file script_component.cpp.


The documentation for this class was generated from the following files: