fix: 装备属性面板避让逻辑 + 多项功能更新

- item_tooltip_view.gd: 新增 avoid_rect 属性,tooltip 与装备窗口重叠时自动推到左侧
- inventory_ui.gd: 悬停装备时传入窗口矩形作为避让区域
- 包含其他累积的功能开发和测试文件
This commit is contained in:
shen
2026-09-21 16:38:59 -07:00
parent 1522a8a1a1
commit c93894313a
5498 changed files with 4558004 additions and 1442 deletions
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,99 @@
/**************************************************************************/
/* a_star2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/variant/packed_int64_array.hpp>
#include <godot_cpp/variant/packed_vector2_array.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AStar2D : public RefCounted {
GDEXTENSION_CLASS(AStar2D, RefCounted)
public:
int64_t get_available_point_id() const;
void add_point(int64_t p_id, const Vector2 &p_position, float p_weight_scale = 1.0);
Vector2 get_point_position(int64_t p_id) const;
void set_point_position(int64_t p_id, const Vector2 &p_position);
float get_point_weight_scale(int64_t p_id) const;
void set_point_weight_scale(int64_t p_id, float p_weight_scale);
void remove_point(int64_t p_id);
bool has_point(int64_t p_id) const;
PackedInt64Array get_point_connections(int64_t p_id);
PackedInt64Array get_point_ids();
void set_neighbor_filter_enabled(bool p_enabled);
bool is_neighbor_filter_enabled() const;
void set_point_disabled(int64_t p_id, bool p_disabled = true);
bool is_point_disabled(int64_t p_id) const;
void connect_points(int64_t p_id, int64_t p_to_id, bool p_bidirectional = true);
void disconnect_points(int64_t p_id, int64_t p_to_id, bool p_bidirectional = true);
bool are_points_connected(int64_t p_id, int64_t p_to_id, bool p_bidirectional = true) const;
int64_t get_point_count() const;
int64_t get_point_capacity() const;
void reserve_space(int64_t p_num_nodes);
void clear();
int64_t get_closest_point(const Vector2 &p_to_position, bool p_include_disabled = false) const;
Vector2 get_closest_position_in_segment(const Vector2 &p_to_position) const;
PackedVector2Array get_point_path(int64_t p_from_id, int64_t p_to_id, bool p_allow_partial_path = false);
PackedInt64Array get_id_path(int64_t p_from_id, int64_t p_to_id, bool p_allow_partial_path = false);
virtual bool _filter_neighbor(int64_t p_from_id, int64_t p_neighbor_id) const;
virtual float _estimate_cost(int64_t p_from_id, int64_t p_end_id) const;
virtual float _compute_cost(int64_t p_from_id, int64_t p_to_id) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_filter_neighbor), decltype(&T::_filter_neighbor)>) {
BIND_VIRTUAL_METHOD(T, _filter_neighbor, 2522259332);
}
if constexpr (!std::is_same_v<decltype(&B::_estimate_cost), decltype(&T::_estimate_cost)>) {
BIND_VIRTUAL_METHOD(T, _estimate_cost, 3085491603);
}
if constexpr (!std::is_same_v<decltype(&B::_compute_cost), decltype(&T::_compute_cost)>) {
BIND_VIRTUAL_METHOD(T, _compute_cost, 3085491603);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,99 @@
/**************************************************************************/
/* a_star3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/variant/packed_int64_array.hpp>
#include <godot_cpp/variant/packed_vector3_array.hpp>
#include <godot_cpp/variant/vector3.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AStar3D : public RefCounted {
GDEXTENSION_CLASS(AStar3D, RefCounted)
public:
int64_t get_available_point_id() const;
void add_point(int64_t p_id, const Vector3 &p_position, float p_weight_scale = 1.0);
Vector3 get_point_position(int64_t p_id) const;
void set_point_position(int64_t p_id, const Vector3 &p_position);
float get_point_weight_scale(int64_t p_id) const;
void set_point_weight_scale(int64_t p_id, float p_weight_scale);
void remove_point(int64_t p_id);
bool has_point(int64_t p_id) const;
PackedInt64Array get_point_connections(int64_t p_id);
PackedInt64Array get_point_ids();
void set_point_disabled(int64_t p_id, bool p_disabled = true);
bool is_point_disabled(int64_t p_id) const;
void set_neighbor_filter_enabled(bool p_enabled);
bool is_neighbor_filter_enabled() const;
void connect_points(int64_t p_id, int64_t p_to_id, bool p_bidirectional = true);
void disconnect_points(int64_t p_id, int64_t p_to_id, bool p_bidirectional = true);
bool are_points_connected(int64_t p_id, int64_t p_to_id, bool p_bidirectional = true) const;
int64_t get_point_count() const;
int64_t get_point_capacity() const;
void reserve_space(int64_t p_num_nodes);
void clear();
int64_t get_closest_point(const Vector3 &p_to_position, bool p_include_disabled = false) const;
Vector3 get_closest_position_in_segment(const Vector3 &p_to_position) const;
PackedVector3Array get_point_path(int64_t p_from_id, int64_t p_to_id, bool p_allow_partial_path = false);
PackedInt64Array get_id_path(int64_t p_from_id, int64_t p_to_id, bool p_allow_partial_path = false);
virtual bool _filter_neighbor(int64_t p_from_id, int64_t p_neighbor_id) const;
virtual float _estimate_cost(int64_t p_from_id, int64_t p_end_id) const;
virtual float _compute_cost(int64_t p_from_id, int64_t p_to_id) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_filter_neighbor), decltype(&T::_filter_neighbor)>) {
BIND_VIRTUAL_METHOD(T, _filter_neighbor, 2522259332);
}
if constexpr (!std::is_same_v<decltype(&B::_estimate_cost), decltype(&T::_estimate_cost)>) {
BIND_VIRTUAL_METHOD(T, _estimate_cost, 3085491603);
}
if constexpr (!std::is_same_v<decltype(&B::_compute_cost), decltype(&T::_compute_cost)>) {
BIND_VIRTUAL_METHOD(T, _compute_cost, 3085491603);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,133 @@
/**************************************************************************/
/* a_star_grid2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/variant/dictionary.hpp>
#include <godot_cpp/variant/packed_vector2_array.hpp>
#include <godot_cpp/variant/rect2i.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/variant/vector2i.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AStarGrid2D : public RefCounted {
GDEXTENSION_CLASS(AStarGrid2D, RefCounted)
public:
enum Heuristic {
HEURISTIC_EUCLIDEAN = 0,
HEURISTIC_MANHATTAN = 1,
HEURISTIC_OCTILE = 2,
HEURISTIC_CHEBYSHEV = 3,
HEURISTIC_MAX = 4,
};
enum DiagonalMode {
DIAGONAL_MODE_ALWAYS = 0,
DIAGONAL_MODE_NEVER = 1,
DIAGONAL_MODE_AT_LEAST_ONE_WALKABLE = 2,
DIAGONAL_MODE_ONLY_IF_NO_OBSTACLES = 3,
DIAGONAL_MODE_MAX = 4,
};
enum CellShape {
CELL_SHAPE_SQUARE = 0,
CELL_SHAPE_ISOMETRIC_RIGHT = 1,
CELL_SHAPE_ISOMETRIC_DOWN = 2,
CELL_SHAPE_MAX = 3,
};
void set_region(const Rect2i &p_region);
Rect2i get_region() const;
void set_size(const Vector2i &p_size);
Vector2i get_size() const;
void set_offset(const Vector2 &p_offset);
Vector2 get_offset() const;
void set_cell_size(const Vector2 &p_cell_size);
Vector2 get_cell_size() const;
void set_cell_shape(AStarGrid2D::CellShape p_cell_shape);
AStarGrid2D::CellShape get_cell_shape() const;
bool is_in_bounds(int32_t p_x, int32_t p_y) const;
bool is_in_boundsv(const Vector2i &p_id) const;
bool is_dirty() const;
void update();
void set_jumping_enabled(bool p_enabled);
bool is_jumping_enabled() const;
void set_diagonal_mode(AStarGrid2D::DiagonalMode p_mode);
AStarGrid2D::DiagonalMode get_diagonal_mode() const;
void set_default_compute_heuristic(AStarGrid2D::Heuristic p_heuristic);
AStarGrid2D::Heuristic get_default_compute_heuristic() const;
void set_default_estimate_heuristic(AStarGrid2D::Heuristic p_heuristic);
AStarGrid2D::Heuristic get_default_estimate_heuristic() const;
void set_point_solid(const Vector2i &p_id, bool p_solid = true);
bool is_point_solid(const Vector2i &p_id) const;
void set_point_weight_scale(const Vector2i &p_id, float p_weight_scale);
float get_point_weight_scale(const Vector2i &p_id) const;
void fill_solid_region(const Rect2i &p_region, bool p_solid = true);
void fill_weight_scale_region(const Rect2i &p_region, float p_weight_scale);
void clear();
Vector2 get_point_position(const Vector2i &p_id) const;
TypedArray<Dictionary> get_point_data_in_region(const Rect2i &p_region) const;
PackedVector2Array get_point_path(const Vector2i &p_from_id, const Vector2i &p_to_id, bool p_allow_partial_path = false);
TypedArray<Vector2i> get_id_path(const Vector2i &p_from_id, const Vector2i &p_to_id, bool p_allow_partial_path = false);
virtual float _estimate_cost(const Vector2i &p_from_id, const Vector2i &p_end_id) const;
virtual float _compute_cost(const Vector2i &p_from_id, const Vector2i &p_to_id) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_estimate_cost), decltype(&T::_estimate_cost)>) {
BIND_VIRTUAL_METHOD(T, _estimate_cost, 2153177966);
}
if constexpr (!std::is_same_v<decltype(&B::_compute_cost), decltype(&T::_compute_cost)>) {
BIND_VIRTUAL_METHOD(T, _compute_cost, 2153177966);
}
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AStarGrid2D::Heuristic);
VARIANT_ENUM_CAST(AStarGrid2D::DiagonalMode);
VARIANT_ENUM_CAST(AStarGrid2D::CellShape);
@@ -0,0 +1,79 @@
/**************************************************************************/
/* accept_dialog.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/window.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Button;
class Label;
class LineEdit;
class AcceptDialog : public Window {
GDEXTENSION_CLASS(AcceptDialog, Window)
public:
Button *get_ok_button();
Label *get_label();
void set_hide_on_ok(bool p_enabled);
bool get_hide_on_ok() const;
void set_close_on_escape(bool p_enabled);
bool get_close_on_escape() const;
Button *add_button(const String &p_text, bool p_right = false, const String &p_action = String());
Button *add_cancel_button(const String &p_name);
void remove_button(Button *p_button);
void register_text_enter(LineEdit *p_line_edit);
void set_text(const String &p_text);
String get_text() const;
void set_autowrap(bool p_autowrap);
bool has_autowrap();
void set_ok_button_text(const String &p_text);
String get_ok_button_text() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Window::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,273 @@
/**************************************************************************/
/* accessibility_server.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/global_constants.hpp>
#include <godot_cpp/core/object.hpp>
#include <godot_cpp/variant/color.hpp>
#include <godot_cpp/variant/rid.hpp>
#include <godot_cpp/variant/variant.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Callable;
struct Rect2;
class String;
struct Transform2D;
class AccessibilityServer : public Object {
GDEXTENSION_CLASS(AccessibilityServer, Object)
static AccessibilityServer *singleton;
public:
enum AccessibilityRole {
ROLE_UNKNOWN = 0,
ROLE_DEFAULT_BUTTON = 1,
ROLE_AUDIO = 2,
ROLE_VIDEO = 3,
ROLE_STATIC_TEXT = 4,
ROLE_CONTAINER = 5,
ROLE_PANEL = 6,
ROLE_BUTTON = 7,
ROLE_LINK = 8,
ROLE_CHECK_BOX = 9,
ROLE_RADIO_BUTTON = 10,
ROLE_CHECK_BUTTON = 11,
ROLE_SCROLL_BAR = 12,
ROLE_SCROLL_VIEW = 13,
ROLE_SPLITTER = 14,
ROLE_SLIDER = 15,
ROLE_SPIN_BUTTON = 16,
ROLE_PROGRESS_INDICATOR = 17,
ROLE_TEXT_FIELD = 18,
ROLE_MULTILINE_TEXT_FIELD = 19,
ROLE_COLOR_PICKER = 20,
ROLE_TABLE = 21,
ROLE_CELL = 22,
ROLE_ROW = 23,
ROLE_ROW_GROUP = 24,
ROLE_ROW_HEADER = 25,
ROLE_COLUMN_HEADER = 26,
ROLE_TREE = 27,
ROLE_TREE_ITEM = 28,
ROLE_LIST = 29,
ROLE_LIST_ITEM = 30,
ROLE_LIST_BOX = 31,
ROLE_LIST_BOX_OPTION = 32,
ROLE_TAB_BAR = 33,
ROLE_TAB = 34,
ROLE_TAB_PANEL = 35,
ROLE_MENU_BAR = 36,
ROLE_MENU = 37,
ROLE_MENU_ITEM = 38,
ROLE_MENU_ITEM_CHECK_BOX = 39,
ROLE_MENU_ITEM_RADIO = 40,
ROLE_IMAGE = 41,
ROLE_WINDOW = 42,
ROLE_TITLE_BAR = 43,
ROLE_DIALOG = 44,
ROLE_TOOLTIP = 45,
ROLE_REGION = 46,
ROLE_TEXT_RUN = 47,
};
enum AccessibilityPopupType {
POPUP_MENU = 0,
POPUP_LIST = 1,
POPUP_TREE = 2,
POPUP_DIALOG = 3,
};
enum AccessibilityFlags {
FLAG_HIDDEN = 0,
FLAG_MULTISELECTABLE = 1,
FLAG_REQUIRED = 2,
FLAG_VISITED = 3,
FLAG_BUSY = 4,
FLAG_MODAL = 5,
FLAG_TOUCH_PASSTHROUGH = 6,
FLAG_READONLY = 7,
FLAG_DISABLED = 8,
FLAG_CLIPS_CHILDREN = 9,
};
enum AccessibilityAction {
ACTION_CLICK = 0,
ACTION_FOCUS = 1,
ACTION_BLUR = 2,
ACTION_COLLAPSE = 3,
ACTION_EXPAND = 4,
ACTION_DECREMENT = 5,
ACTION_INCREMENT = 6,
ACTION_HIDE_TOOLTIP = 7,
ACTION_SHOW_TOOLTIP = 8,
ACTION_SET_TEXT_SELECTION = 9,
ACTION_REPLACE_SELECTED_TEXT = 10,
ACTION_SCROLL_BACKWARD = 11,
ACTION_SCROLL_DOWN = 12,
ACTION_SCROLL_FORWARD = 13,
ACTION_SCROLL_LEFT = 14,
ACTION_SCROLL_RIGHT = 15,
ACTION_SCROLL_UP = 16,
ACTION_SCROLL_INTO_VIEW = 17,
ACTION_SCROLL_TO_POINT = 18,
ACTION_SET_SCROLL_OFFSET = 19,
ACTION_SET_VALUE = 20,
ACTION_SHOW_CONTEXT_MENU = 21,
ACTION_CUSTOM = 22,
};
enum AccessibilityLiveMode {
LIVE_OFF = 0,
LIVE_POLITE = 1,
LIVE_ASSERTIVE = 2,
};
enum AccessibilityScrollUnit {
SCROLL_UNIT_ITEM = 0,
SCROLL_UNIT_PAGE = 1,
};
enum AccessibilityScrollHint {
SCROLL_HINT_TOP_LEFT = 0,
SCROLL_HINT_BOTTOM_RIGHT = 1,
SCROLL_HINT_TOP_EDGE = 2,
SCROLL_HINT_BOTTOM_EDGE = 3,
SCROLL_HINT_LEFT_EDGE = 4,
SCROLL_HINT_RIGHT_EDGE = 5,
};
static AccessibilityServer *get_singleton();
bool is_supported() const;
RID create_element(int32_t p_window_id, AccessibilityServer::AccessibilityRole p_role);
RID create_sub_element(const RID &p_parent_rid, AccessibilityServer::AccessibilityRole p_role, int32_t p_insert_pos = -1);
RID create_sub_text_edit_elements(const RID &p_parent_rid, const RID &p_shaped_text, float p_min_height, int32_t p_insert_pos = -1, bool p_is_last_line = false);
bool has_element(const RID &p_id) const;
void free_element(const RID &p_id);
void element_set_meta(const RID &p_id, const Variant &p_meta);
Variant element_get_meta(const RID &p_id) const;
void set_window_rect(int32_t p_window_id, const Rect2 &p_rect_out, const Rect2 &p_rect_in);
void set_window_focused(int32_t p_window_id, bool p_focused);
void update_set_focus(const RID &p_id);
RID get_window_root(int32_t p_window_id) const;
void update_set_role(const RID &p_id, AccessibilityServer::AccessibilityRole p_role);
void update_set_name(const RID &p_id, const String &p_name);
void update_set_braille_label(const RID &p_id, const String &p_name);
void update_set_braille_role_description(const RID &p_id, const String &p_description);
void update_set_extra_info(const RID &p_id, const String &p_name);
void update_set_description(const RID &p_id, const String &p_description);
void update_set_value(const RID &p_id, const String &p_value);
void update_set_tooltip(const RID &p_id, const String &p_tooltip);
void update_set_bounds(const RID &p_id, const Rect2 &p_rect);
void update_set_transform(const RID &p_id, const Transform2D &p_transform);
void update_add_child(const RID &p_id, const RID &p_child_id);
void update_add_related_controls(const RID &p_id, const RID &p_related_id);
void update_add_related_details(const RID &p_id, const RID &p_related_id);
void update_add_related_described_by(const RID &p_id, const RID &p_related_id);
void update_add_related_flow_to(const RID &p_id, const RID &p_related_id);
void update_add_related_labeled_by(const RID &p_id, const RID &p_related_id);
void update_add_related_radio_group(const RID &p_id, const RID &p_related_id);
void update_set_active_descendant(const RID &p_id, const RID &p_other_id);
void update_set_next_on_line(const RID &p_id, const RID &p_other_id);
void update_set_previous_on_line(const RID &p_id, const RID &p_other_id);
void update_set_member_of(const RID &p_id, const RID &p_group_id);
void update_set_in_page_link_target(const RID &p_id, const RID &p_other_id);
void update_set_error_message(const RID &p_id, const RID &p_other_id);
void update_set_live(const RID &p_id, AccessibilityServer::AccessibilityLiveMode p_live);
void update_add_action(const RID &p_id, AccessibilityServer::AccessibilityAction p_action, const Callable &p_callable);
void update_add_custom_action(const RID &p_id, int32_t p_action_id, const String &p_action_description);
void update_set_table_row_count(const RID &p_id, int32_t p_count);
void update_set_table_column_count(const RID &p_id, int32_t p_count);
void update_set_table_row_index(const RID &p_id, int32_t p_index);
void update_set_table_column_index(const RID &p_id, int32_t p_index);
void update_set_table_cell_position(const RID &p_id, int32_t p_row_index, int32_t p_column_index);
void update_set_table_cell_span(const RID &p_id, int32_t p_row_span, int32_t p_column_span);
void update_set_list_item_count(const RID &p_id, int32_t p_size);
void update_set_list_item_index(const RID &p_id, int32_t p_index);
void update_set_list_item_level(const RID &p_id, int32_t p_level);
void update_set_list_item_selected(const RID &p_id, bool p_selected);
void update_set_list_item_expanded(const RID &p_id, bool p_expanded);
void update_set_popup_type(const RID &p_id, AccessibilityServer::AccessibilityPopupType p_popup);
void update_set_checked(const RID &p_id, bool p_checekd);
void update_set_num_value(const RID &p_id, double p_position);
void update_set_num_range(const RID &p_id, double p_min, double p_max);
void update_set_num_step(const RID &p_id, double p_step);
void update_set_num_jump(const RID &p_id, double p_jump);
void update_set_scroll_x(const RID &p_id, double p_position);
void update_set_scroll_x_range(const RID &p_id, double p_min, double p_max);
void update_set_scroll_y(const RID &p_id, double p_position);
void update_set_scroll_y_range(const RID &p_id, double p_min, double p_max);
void update_set_text_decorations(const RID &p_id, bool p_underline, bool p_strikethrough, bool p_overline, const Color &p_color = Color(0, 0, 0, 1));
void update_set_text_align(const RID &p_id, HorizontalAlignment p_align);
void update_set_text_selection(const RID &p_id, const RID &p_text_start_id, int32_t p_start_char, const RID &p_text_end_id, int32_t p_end_char);
void update_set_flag(const RID &p_id, AccessibilityServer::AccessibilityFlags p_flag, bool p_value);
void update_set_classname(const RID &p_id, const String &p_classname);
void update_set_placeholder(const RID &p_id, const String &p_placeholder);
void update_set_language(const RID &p_id, const String &p_language);
void update_set_text_orientation(const RID &p_id, bool p_vertical);
void update_set_list_orientation(const RID &p_id, bool p_vertical);
void update_set_shortcut(const RID &p_id, const String &p_shortcut);
void update_set_url(const RID &p_id, const String &p_url);
void update_set_role_description(const RID &p_id, const String &p_description);
void update_set_state_description(const RID &p_id, const String &p_description);
void update_set_color_value(const RID &p_id, const Color &p_color);
void update_set_background_color(const RID &p_id, const Color &p_color);
void update_set_foreground_color(const RID &p_id, const Color &p_color);
protected:
template <typename T, typename B>
static void register_virtuals() {
Object::register_virtuals<T, B>();
}
~AccessibilityServer();
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AccessibilityServer::AccessibilityRole);
VARIANT_ENUM_CAST(AccessibilityServer::AccessibilityPopupType);
VARIANT_ENUM_CAST(AccessibilityServer::AccessibilityFlags);
VARIANT_ENUM_CAST(AccessibilityServer::AccessibilityAction);
VARIANT_ENUM_CAST(AccessibilityServer::AccessibilityLiveMode);
VARIANT_ENUM_CAST(AccessibilityServer::AccessibilityScrollUnit);
VARIANT_ENUM_CAST(AccessibilityServer::AccessibilityScrollHint);
@@ -0,0 +1,75 @@
/**************************************************************************/
/* aes_context.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/global_constants.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/variant/packed_byte_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AESContext : public RefCounted {
GDEXTENSION_CLASS(AESContext, RefCounted)
public:
enum Mode {
MODE_ECB_ENCRYPT = 0,
MODE_ECB_DECRYPT = 1,
MODE_CBC_ENCRYPT = 2,
MODE_CBC_DECRYPT = 3,
MODE_MAX = 4,
};
Error start(AESContext::Mode p_mode, const PackedByteArray &p_key, const PackedByteArray &p_iv = PackedByteArray());
PackedByteArray update(const PackedByteArray &p_src);
PackedByteArray get_iv_state();
void finish();
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AESContext::Mode);
@@ -0,0 +1,70 @@
/**************************************************************************/
/* aim_modifier3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/bone_constraint3d.hpp>
#include <godot_cpp/classes/skeleton_modifier3d.hpp>
#include <godot_cpp/variant/vector3.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AimModifier3D : public BoneConstraint3D {
GDEXTENSION_CLASS(AimModifier3D, BoneConstraint3D)
public:
void set_forward_axis(int32_t p_index, SkeletonModifier3D::BoneAxis p_axis);
SkeletonModifier3D::BoneAxis get_forward_axis(int32_t p_index) const;
void set_use_euler(int32_t p_index, bool p_enabled);
bool is_using_euler(int32_t p_index) const;
void set_primary_rotation_axis(int32_t p_index, Vector3::Axis p_axis);
Vector3::Axis get_primary_rotation_axis(int32_t p_index) const;
void set_use_secondary_rotation(int32_t p_index, bool p_enabled);
bool is_using_secondary_rotation(int32_t p_index) const;
void set_relative(int32_t p_index, bool p_enabled);
bool is_relative(int32_t p_index) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
BoneConstraint3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,60 @@
/**************************************************************************/
/* animatable_body2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/static_body2d.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimatableBody2D : public StaticBody2D {
GDEXTENSION_CLASS(AnimatableBody2D, StaticBody2D)
public:
void set_sync_to_physics(bool p_enable);
bool is_sync_to_physics_enabled() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
StaticBody2D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,60 @@
/**************************************************************************/
/* animatable_body3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/static_body3d.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimatableBody3D : public StaticBody3D {
GDEXTENSION_CLASS(AnimatableBody3D, StaticBody3D)
public:
void set_sync_to_physics(bool p_enable);
bool is_sync_to_physics_enabled() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
StaticBody3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,91 @@
/**************************************************************************/
/* animated_sprite2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/node2d.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class SpriteFrames;
class AnimatedSprite2D : public Node2D {
GDEXTENSION_CLASS(AnimatedSprite2D, Node2D)
public:
void set_sprite_frames(const Ref<SpriteFrames> &p_sprite_frames);
Ref<SpriteFrames> get_sprite_frames() const;
void set_animation(const StringName &p_name);
StringName get_animation() const;
void set_autoplay(const String &p_name);
String get_autoplay() const;
bool is_playing() const;
void play(const StringName &p_name = StringName(), float p_custom_speed = 1.0, bool p_from_end = false);
void play_backwards(const StringName &p_name = StringName());
void pause();
void stop();
void set_centered(bool p_centered);
bool is_centered() const;
void set_offset(const Vector2 &p_offset);
Vector2 get_offset() const;
void set_flip_h(bool p_flip_h);
bool is_flipped_h() const;
void set_flip_v(bool p_flip_v);
bool is_flipped_v() const;
void set_frame(int32_t p_frame);
int32_t get_frame() const;
void set_frame_progress(float p_progress);
float get_frame_progress() const;
void set_frame_and_progress(int32_t p_frame, float p_progress);
void set_speed_scale(float p_speed_scale);
float get_speed_scale() const;
float get_playing_speed() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Node2D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,82 @@
/**************************************************************************/
/* animated_sprite3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/sprite_base3d.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class SpriteFrames;
class AnimatedSprite3D : public SpriteBase3D {
GDEXTENSION_CLASS(AnimatedSprite3D, SpriteBase3D)
public:
void set_sprite_frames(const Ref<SpriteFrames> &p_sprite_frames);
Ref<SpriteFrames> get_sprite_frames() const;
void set_animation(const StringName &p_name);
StringName get_animation() const;
void set_autoplay(const String &p_name);
String get_autoplay() const;
bool is_playing() const;
void play(const StringName &p_name = StringName(), float p_custom_speed = 1.0, bool p_from_end = false);
void play_backwards(const StringName &p_name = StringName());
void pause();
void stop();
void set_frame(int32_t p_frame);
int32_t get_frame() const;
void set_frame_progress(float p_progress);
float get_frame_progress() const;
void set_frame_and_progress(int32_t p_frame, float p_progress);
void set_speed_scale(float p_speed_scale);
float get_speed_scale() const;
float get_playing_speed() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
SpriteBase3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,75 @@
/**************************************************************************/
/* animated_texture.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/texture2d.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimatedTexture : public Texture2D {
GDEXTENSION_CLASS(AnimatedTexture, Texture2D)
public:
static const int MAX_FRAMES = 256;
void set_frames(int32_t p_frames);
int32_t get_frames() const;
void set_current_frame(int32_t p_frame);
int32_t get_current_frame() const;
void set_pause(bool p_pause);
bool get_pause() const;
void set_one_shot(bool p_one_shot);
bool get_one_shot() const;
void set_speed_scale(float p_scale);
float get_speed_scale() const;
void set_frame_texture(int32_t p_frame, const Ref<Texture2D> &p_texture);
Ref<Texture2D> get_frame_texture(int32_t p_frame) const;
void set_frame_duration(int32_t p_frame, float p_duration);
float get_frame_duration(int32_t p_frame) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Texture2D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,204 @@
/**************************************************************************/
/* animation.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/variant/array.hpp>
#include <godot_cpp/variant/color.hpp>
#include <godot_cpp/variant/node_path.hpp>
#include <godot_cpp/variant/packed_string_array.hpp>
#include <godot_cpp/variant/quaternion.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/variant.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/variant/vector3.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Animation : public Resource {
GDEXTENSION_CLASS(Animation, Resource)
public:
enum TrackType {
TYPE_VALUE = 0,
TYPE_POSITION_3D = 1,
TYPE_ROTATION_3D = 2,
TYPE_SCALE_3D = 3,
TYPE_BLEND_SHAPE = 4,
TYPE_METHOD = 5,
TYPE_BEZIER = 6,
TYPE_AUDIO = 7,
TYPE_ANIMATION = 8,
};
enum InterpolationType {
INTERPOLATION_NEAREST = 0,
INTERPOLATION_LINEAR = 1,
INTERPOLATION_CUBIC = 2,
INTERPOLATION_LINEAR_ANGLE = 3,
INTERPOLATION_CUBIC_ANGLE = 4,
};
enum UpdateMode {
UPDATE_CONTINUOUS = 0,
UPDATE_DISCRETE = 1,
UPDATE_CAPTURE = 2,
};
enum LoopMode {
LOOP_NONE = 0,
LOOP_LINEAR = 1,
LOOP_PINGPONG = 2,
};
enum LoopedFlag {
LOOPED_FLAG_NONE = 0,
LOOPED_FLAG_END = 1,
LOOPED_FLAG_START = 2,
};
enum FindMode {
FIND_MODE_NEAREST = 0,
FIND_MODE_APPROX = 1,
FIND_MODE_EXACT = 2,
};
int32_t add_track(Animation::TrackType p_type, int32_t p_at_position = -1);
void remove_track(int32_t p_track_idx);
int32_t get_track_count() const;
Animation::TrackType track_get_type(int32_t p_track_idx) const;
NodePath track_get_path(int32_t p_track_idx) const;
void track_set_path(int32_t p_track_idx, const NodePath &p_path);
int32_t find_track(const NodePath &p_path, Animation::TrackType p_type) const;
void track_move_up(int32_t p_track_idx);
void track_move_down(int32_t p_track_idx);
void track_move_to(int32_t p_track_idx, int32_t p_to_idx);
void track_swap(int32_t p_track_idx, int32_t p_with_idx);
void track_set_imported(int32_t p_track_idx, bool p_imported);
bool track_is_imported(int32_t p_track_idx) const;
void track_set_enabled(int32_t p_track_idx, bool p_enabled);
bool track_is_enabled(int32_t p_track_idx) const;
int32_t position_track_insert_key(int32_t p_track_idx, double p_time, const Vector3 &p_position);
int32_t rotation_track_insert_key(int32_t p_track_idx, double p_time, const Quaternion &p_rotation);
int32_t scale_track_insert_key(int32_t p_track_idx, double p_time, const Vector3 &p_scale);
int32_t blend_shape_track_insert_key(int32_t p_track_idx, double p_time, float p_amount);
Vector3 position_track_interpolate(int32_t p_track_idx, double p_time_sec, bool p_backward = false) const;
Quaternion rotation_track_interpolate(int32_t p_track_idx, double p_time_sec, bool p_backward = false) const;
Vector3 scale_track_interpolate(int32_t p_track_idx, double p_time_sec, bool p_backward = false) const;
float blend_shape_track_interpolate(int32_t p_track_idx, double p_time_sec, bool p_backward = false) const;
int32_t track_insert_key(int32_t p_track_idx, double p_time, const Variant &p_key, float p_transition = 1);
void track_remove_key(int32_t p_track_idx, int32_t p_key_idx);
void track_remove_key_at_time(int32_t p_track_idx, double p_time);
void track_set_key_value(int32_t p_track_idx, int32_t p_key, const Variant &p_value);
void track_set_key_transition(int32_t p_track_idx, int32_t p_key_idx, float p_transition);
void track_set_key_time(int32_t p_track_idx, int32_t p_key_idx, double p_time);
float track_get_key_transition(int32_t p_track_idx, int32_t p_key_idx) const;
int32_t track_get_key_count(int32_t p_track_idx) const;
Variant track_get_key_value(int32_t p_track_idx, int32_t p_key_idx) const;
double track_get_key_time(int32_t p_track_idx, int32_t p_key_idx) const;
int32_t track_find_key(int32_t p_track_idx, double p_time, Animation::FindMode p_find_mode = (Animation::FindMode)0, bool p_limit = false, bool p_backward = false) const;
void track_set_interpolation_type(int32_t p_track_idx, Animation::InterpolationType p_interpolation);
Animation::InterpolationType track_get_interpolation_type(int32_t p_track_idx) const;
void track_set_interpolation_loop_wrap(int32_t p_track_idx, bool p_interpolation);
bool track_get_interpolation_loop_wrap(int32_t p_track_idx) const;
bool track_is_compressed(int32_t p_track_idx) const;
void value_track_set_update_mode(int32_t p_track_idx, Animation::UpdateMode p_mode);
Animation::UpdateMode value_track_get_update_mode(int32_t p_track_idx) const;
Variant value_track_interpolate(int32_t p_track_idx, double p_time_sec, bool p_backward = false) const;
StringName method_track_get_name(int32_t p_track_idx, int32_t p_key_idx) const;
Array method_track_get_params(int32_t p_track_idx, int32_t p_key_idx) const;
int32_t bezier_track_insert_key(int32_t p_track_idx, double p_time, float p_value, const Vector2 &p_in_handle = Vector2(0, 0), const Vector2 &p_out_handle = Vector2(0, 0));
void bezier_track_set_key_value(int32_t p_track_idx, int32_t p_key_idx, float p_value);
void bezier_track_set_key_in_handle(int32_t p_track_idx, int32_t p_key_idx, const Vector2 &p_in_handle, float p_balanced_value_time_ratio = 1.0);
void bezier_track_set_key_out_handle(int32_t p_track_idx, int32_t p_key_idx, const Vector2 &p_out_handle, float p_balanced_value_time_ratio = 1.0);
float bezier_track_get_key_value(int32_t p_track_idx, int32_t p_key_idx) const;
Vector2 bezier_track_get_key_in_handle(int32_t p_track_idx, int32_t p_key_idx) const;
Vector2 bezier_track_get_key_out_handle(int32_t p_track_idx, int32_t p_key_idx) const;
float bezier_track_interpolate(int32_t p_track_idx, double p_time) const;
int32_t audio_track_insert_key(int32_t p_track_idx, double p_time, const Ref<Resource> &p_stream, float p_start_offset = 0, float p_end_offset = 0);
void audio_track_set_key_stream(int32_t p_track_idx, int32_t p_key_idx, const Ref<Resource> &p_stream);
void audio_track_set_key_start_offset(int32_t p_track_idx, int32_t p_key_idx, float p_offset);
void audio_track_set_key_end_offset(int32_t p_track_idx, int32_t p_key_idx, float p_offset);
Ref<Resource> audio_track_get_key_stream(int32_t p_track_idx, int32_t p_key_idx) const;
float audio_track_get_key_start_offset(int32_t p_track_idx, int32_t p_key_idx) const;
float audio_track_get_key_end_offset(int32_t p_track_idx, int32_t p_key_idx) const;
void audio_track_set_use_blend(int32_t p_track_idx, bool p_enable);
bool audio_track_is_use_blend(int32_t p_track_idx) const;
int32_t animation_track_insert_key(int32_t p_track_idx, double p_time, const StringName &p_animation);
void animation_track_set_key_animation(int32_t p_track_idx, int32_t p_key_idx, const StringName &p_animation);
StringName animation_track_get_key_animation(int32_t p_track_idx, int32_t p_key_idx) const;
void add_marker(const StringName &p_name, double p_time);
void remove_marker(const StringName &p_name);
bool has_marker(const StringName &p_name) const;
StringName get_marker_at_time(double p_time) const;
StringName get_next_marker(double p_time) const;
StringName get_prev_marker(double p_time) const;
double get_marker_time(const StringName &p_name) const;
PackedStringArray get_marker_names() const;
Color get_marker_color(const StringName &p_name) const;
void set_marker_color(const StringName &p_name, const Color &p_color);
void set_length(double p_time_sec);
double get_length() const;
void set_loop_mode(Animation::LoopMode p_loop_mode);
Animation::LoopMode get_loop_mode() const;
void set_step(float p_size_sec);
float get_step() const;
void clear();
void copy_track(int32_t p_track_idx, const Ref<Animation> &p_to_animation);
void optimize(float p_allowed_velocity_err = 0.01, float p_allowed_angular_err = 0.01, int32_t p_precision = 3);
void compress(uint32_t p_page_size = 8192, uint32_t p_fps = 120, float p_split_tolerance = 4.0);
bool is_capture_included() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(Animation::TrackType);
VARIANT_ENUM_CAST(Animation::InterpolationType);
VARIANT_ENUM_CAST(Animation::UpdateMode);
VARIANT_ENUM_CAST(Animation::LoopMode);
VARIANT_ENUM_CAST(Animation::LoopedFlag);
VARIANT_ENUM_CAST(Animation::FindMode);
@@ -0,0 +1,71 @@
/**************************************************************************/
/* animation_library.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/global_constants.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Animation;
class AnimationLibrary : public Resource {
GDEXTENSION_CLASS(AnimationLibrary, Resource)
public:
Error add_animation(const StringName &p_name, const Ref<Animation> &p_animation);
void remove_animation(const StringName &p_name);
void rename_animation(const StringName &p_name, const StringName &p_newname);
bool has_animation(const StringName &p_name) const;
Ref<Animation> get_animation(const StringName &p_name) const;
TypedArray<StringName> get_animation_list() const;
int32_t get_animation_list_size() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,136 @@
/**************************************************************************/
/* animation_mixer.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/global_constants.hpp>
#include <godot_cpp/classes/node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/tween.hpp>
#include <godot_cpp/variant/node_path.hpp>
#include <godot_cpp/variant/packed_string_array.hpp>
#include <godot_cpp/variant/quaternion.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/variant/variant.hpp>
#include <godot_cpp/variant/vector3.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Animation;
class AnimationLibrary;
class AnimationMixer : public Node {
GDEXTENSION_CLASS(AnimationMixer, Node)
public:
enum AnimationCallbackModeProcess {
ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS = 0,
ANIMATION_CALLBACK_MODE_PROCESS_IDLE = 1,
ANIMATION_CALLBACK_MODE_PROCESS_MANUAL = 2,
};
enum AnimationCallbackModeMethod {
ANIMATION_CALLBACK_MODE_METHOD_DEFERRED = 0,
ANIMATION_CALLBACK_MODE_METHOD_IMMEDIATE = 1,
};
enum AnimationCallbackModeDiscrete {
ANIMATION_CALLBACK_MODE_DISCRETE_DOMINANT = 0,
ANIMATION_CALLBACK_MODE_DISCRETE_RECESSIVE = 1,
ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS = 2,
};
Error add_animation_library(const StringName &p_name, const Ref<AnimationLibrary> &p_library);
void remove_animation_library(const StringName &p_name);
void rename_animation_library(const StringName &p_name, const StringName &p_newname);
bool has_animation_library(const StringName &p_name) const;
Ref<AnimationLibrary> get_animation_library(const StringName &p_name) const;
TypedArray<StringName> get_animation_library_list() const;
bool has_animation(const StringName &p_name) const;
Ref<Animation> get_animation(const StringName &p_name) const;
PackedStringArray get_animation_list() const;
void set_active(bool p_active);
bool is_active() const;
void set_deterministic(bool p_deterministic);
bool is_deterministic() const;
void set_root_node(const NodePath &p_path);
NodePath get_root_node() const;
void set_callback_mode_process(AnimationMixer::AnimationCallbackModeProcess p_mode);
AnimationMixer::AnimationCallbackModeProcess get_callback_mode_process() const;
void set_callback_mode_method(AnimationMixer::AnimationCallbackModeMethod p_mode);
AnimationMixer::AnimationCallbackModeMethod get_callback_mode_method() const;
void set_callback_mode_discrete(AnimationMixer::AnimationCallbackModeDiscrete p_mode);
AnimationMixer::AnimationCallbackModeDiscrete get_callback_mode_discrete() const;
void set_audio_max_polyphony(int32_t p_max_polyphony);
int32_t get_audio_max_polyphony() const;
void set_root_motion_track(const NodePath &p_path);
NodePath get_root_motion_track() const;
void set_root_motion_local(bool p_enabled);
bool is_root_motion_local() const;
Vector3 get_root_motion_position() const;
Quaternion get_root_motion_rotation() const;
Vector3 get_root_motion_scale() const;
Vector3 get_root_motion_position_accumulator() const;
Quaternion get_root_motion_rotation_accumulator() const;
Vector3 get_root_motion_scale_accumulator() const;
void clear_caches();
void advance(double p_delta);
void capture(const StringName &p_name, double p_duration, Tween::TransitionType p_trans_type = (Tween::TransitionType)0, Tween::EaseType p_ease_type = (Tween::EaseType)0);
void set_reset_on_save_enabled(bool p_enabled);
bool is_reset_on_save_enabled() const;
StringName find_animation(const Ref<Animation> &p_animation) const;
StringName find_animation_library(const Ref<Animation> &p_animation) const;
virtual Variant _post_process_key_value(const Ref<Animation> &p_animation, int32_t p_track, const Variant &p_value, uint64_t p_object_id, int32_t p_object_sub_idx) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Node::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_post_process_key_value), decltype(&T::_post_process_key_value)>) {
BIND_VIRTUAL_METHOD(T, _post_process_key_value, 2716908335);
}
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationMixer::AnimationCallbackModeProcess);
VARIANT_ENUM_CAST(AnimationMixer::AnimationCallbackModeMethod);
VARIANT_ENUM_CAST(AnimationMixer::AnimationCallbackModeDiscrete);
@@ -0,0 +1,125 @@
/**************************************************************************/
/* animation_node.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/variant/array.hpp>
#include <godot_cpp/variant/dictionary.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/variant.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class NodePath;
class StringName;
class AnimationNode : public Resource {
GDEXTENSION_CLASS(AnimationNode, Resource)
public:
enum FilterAction {
FILTER_IGNORE = 0,
FILTER_PASS = 1,
FILTER_STOP = 2,
FILTER_BLEND = 3,
};
bool add_input(const String &p_name);
void remove_input(int32_t p_index);
bool set_input_name(int32_t p_input, const String &p_name);
String get_input_name(int32_t p_input) const;
int32_t get_input_count() const;
int32_t find_input(const String &p_name) const;
void set_filter_path(const NodePath &p_path, bool p_enable);
bool is_path_filtered(const NodePath &p_path) const;
void set_filter_enabled(bool p_enable);
bool is_filter_enabled() const;
uint64_t get_processing_animation_tree_instance_id() const;
bool is_process_testing() const;
void blend_animation(const StringName &p_animation, double p_time, double p_delta, bool p_seeked, bool p_is_external_seeking, float p_blend, Animation::LoopedFlag p_looped_flag = (Animation::LoopedFlag)0);
double blend_node(const StringName &p_name, const Ref<AnimationNode> &p_node, double p_time, bool p_seek, bool p_is_external_seeking, float p_blend, AnimationNode::FilterAction p_filter = (AnimationNode::FilterAction)0, bool p_sync = true, bool p_test_only = false);
double blend_input(int32_t p_input_index, double p_time, bool p_seek, bool p_is_external_seeking, float p_blend, AnimationNode::FilterAction p_filter = (AnimationNode::FilterAction)0, bool p_sync = true, bool p_test_only = false);
void set_parameter(const StringName &p_name, const Variant &p_value);
Variant get_parameter(const StringName &p_name) const;
virtual Dictionary _get_child_nodes() const;
virtual Array _get_parameter_list() const;
virtual Ref<AnimationNode> _get_child_by_name(const StringName &p_name) const;
virtual Variant _get_parameter_default_value(const StringName &p_parameter) const;
virtual bool _is_parameter_read_only(const StringName &p_parameter) const;
virtual double _process(double p_time, bool p_seek, bool p_is_external_seeking, bool p_test_only);
virtual String _get_caption() const;
virtual bool _has_filter() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_get_child_nodes), decltype(&T::_get_child_nodes)>) {
BIND_VIRTUAL_METHOD(T, _get_child_nodes, 3102165223);
}
if constexpr (!std::is_same_v<decltype(&B::_get_parameter_list), decltype(&T::_get_parameter_list)>) {
BIND_VIRTUAL_METHOD(T, _get_parameter_list, 3995934104);
}
if constexpr (!std::is_same_v<decltype(&B::_get_child_by_name), decltype(&T::_get_child_by_name)>) {
BIND_VIRTUAL_METHOD(T, _get_child_by_name, 625644256);
}
if constexpr (!std::is_same_v<decltype(&B::_get_parameter_default_value), decltype(&T::_get_parameter_default_value)>) {
BIND_VIRTUAL_METHOD(T, _get_parameter_default_value, 2760726917);
}
if constexpr (!std::is_same_v<decltype(&B::_is_parameter_read_only), decltype(&T::_is_parameter_read_only)>) {
BIND_VIRTUAL_METHOD(T, _is_parameter_read_only, 2619796661);
}
if constexpr (!std::is_same_v<decltype(&B::_process), decltype(&T::_process)>) {
BIND_VIRTUAL_METHOD(T, _process, 2139827523);
}
if constexpr (!std::is_same_v<decltype(&B::_get_caption), decltype(&T::_get_caption)>) {
BIND_VIRTUAL_METHOD(T, _get_caption, 201670096);
}
if constexpr (!std::is_same_v<decltype(&B::_has_filter), decltype(&T::_has_filter)>) {
BIND_VIRTUAL_METHOD(T, _has_filter, 36873697);
}
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationNode::FilterAction);
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_node_add2.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node_sync.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeAdd2 : public AnimationNodeSync {
GDEXTENSION_CLASS(AnimationNodeAdd2, AnimationNodeSync)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNodeSync::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_node_add3.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node_sync.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeAdd3 : public AnimationNodeSync {
GDEXTENSION_CLASS(AnimationNodeAdd3, AnimationNodeSync)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNodeSync::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,84 @@
/**************************************************************************/
/* animation_node_animation.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation.hpp>
#include <godot_cpp/classes/animation_root_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeAnimation : public AnimationRootNode {
GDEXTENSION_CLASS(AnimationNodeAnimation, AnimationRootNode)
public:
enum PlayMode {
PLAY_MODE_FORWARD = 0,
PLAY_MODE_BACKWARD = 1,
};
void set_animation(const StringName &p_name);
StringName get_animation() const;
void set_play_mode(AnimationNodeAnimation::PlayMode p_mode);
AnimationNodeAnimation::PlayMode get_play_mode() const;
void set_advance_on_start(bool p_advance_on_start);
bool is_advance_on_start() const;
void set_use_custom_timeline(bool p_use_custom_timeline);
bool is_using_custom_timeline() const;
void set_timeline_length(double p_timeline_length);
double get_timeline_length() const;
void set_stretch_time_scale(bool p_stretch_time_scale);
bool is_stretching_time_scale() const;
void set_start_offset(double p_start_offset);
double get_start_offset() const;
void set_loop_mode(Animation::LoopMode p_loop_mode);
Animation::LoopMode get_loop_mode() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationRootNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationNodeAnimation::PlayMode);
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_node_blend2.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node_sync.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeBlend2 : public AnimationNodeSync {
GDEXTENSION_CLASS(AnimationNodeBlend2, AnimationNodeSync)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNodeSync::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_node_blend3.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node_sync.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeBlend3 : public AnimationNodeSync {
GDEXTENSION_CLASS(AnimationNodeBlend3, AnimationNodeSync)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNodeSync::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,104 @@
/**************************************************************************/
/* animation_node_blend_space1_d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_root_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeBlendSpace1D : public AnimationRootNode {
GDEXTENSION_CLASS(AnimationNodeBlendSpace1D, AnimationRootNode)
public:
enum BlendMode {
BLEND_MODE_INTERPOLATED = 0,
BLEND_MODE_DISCRETE = 1,
BLEND_MODE_DISCRETE_CARRY = 2,
};
enum SyncMode {
SYNC_MODE_NONE = 0,
SYNC_MODE_INDEPENDENT = 1,
SYNC_MODE_CYCLIC_MUTABLE = 2,
SYNC_MODE_CYCLIC_CONSTANT = 3,
};
void add_blend_point(const Ref<AnimationRootNode> &p_node, float p_pos, int32_t p_at_index = -1, const StringName &p_name = StringName());
void set_blend_point_position(int32_t p_point, float p_pos);
float get_blend_point_position(int32_t p_point) const;
void set_blend_point_node(int32_t p_point, const Ref<AnimationRootNode> &p_node);
Ref<AnimationRootNode> get_blend_point_node(int32_t p_point) const;
void set_blend_point_name(int32_t p_point, const StringName &p_name);
StringName get_blend_point_name(int32_t p_point) const;
int32_t find_blend_point_by_name(const StringName &p_name) const;
void remove_blend_point(int32_t p_point);
int32_t get_blend_point_count() const;
void reorder_blend_point(int32_t p_from_index, int32_t p_to_index);
void set_min_space(float p_min_space);
float get_min_space() const;
void set_max_space(float p_max_space);
float get_max_space() const;
void set_snap(float p_snap);
float get_snap() const;
void set_value_label(const String &p_text);
String get_value_label() const;
void set_blend_mode(AnimationNodeBlendSpace1D::BlendMode p_mode);
AnimationNodeBlendSpace1D::BlendMode get_blend_mode() const;
void set_use_sync(bool p_enable);
bool is_using_sync() const;
void set_sync_mode(AnimationNodeBlendSpace1D::SyncMode p_sync_mode);
AnimationNodeBlendSpace1D::SyncMode get_sync_mode() const;
void set_cyclic_length(double p_length);
double get_cyclic_length() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationRootNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationNodeBlendSpace1D::BlendMode);
VARIANT_ENUM_CAST(AnimationNodeBlendSpace1D::SyncMode);
@@ -0,0 +1,113 @@
/**************************************************************************/
/* animation_node_blend_space2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_root_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeBlendSpace2D : public AnimationRootNode {
GDEXTENSION_CLASS(AnimationNodeBlendSpace2D, AnimationRootNode)
public:
enum BlendMode {
BLEND_MODE_INTERPOLATED = 0,
BLEND_MODE_DISCRETE = 1,
BLEND_MODE_DISCRETE_CARRY = 2,
};
enum SyncMode {
SYNC_MODE_NONE = 0,
SYNC_MODE_INDEPENDENT = 1,
SYNC_MODE_CYCLIC_MUTABLE = 2,
SYNC_MODE_CYCLIC_CONSTANT = 3,
};
void add_blend_point(const Ref<AnimationRootNode> &p_node, const Vector2 &p_pos, int32_t p_at_index = -1, const StringName &p_name = StringName());
void set_blend_point_position(int32_t p_point, const Vector2 &p_pos);
Vector2 get_blend_point_position(int32_t p_point) const;
void set_blend_point_node(int32_t p_point, const Ref<AnimationRootNode> &p_node);
Ref<AnimationRootNode> get_blend_point_node(int32_t p_point) const;
void set_blend_point_name(int32_t p_point, const StringName &p_name);
StringName get_blend_point_name(int32_t p_point) const;
int32_t find_blend_point_by_name(const StringName &p_name) const;
void remove_blend_point(int32_t p_point);
int32_t get_blend_point_count() const;
void reorder_blend_point(int32_t p_from_index, int32_t p_to_index);
void add_triangle(int32_t p_x, int32_t p_y, int32_t p_z, int32_t p_at_index = -1);
int32_t get_triangle_point(int32_t p_triangle, int32_t p_point);
void remove_triangle(int32_t p_triangle);
int32_t get_triangle_count() const;
void set_min_space(const Vector2 &p_min_space);
Vector2 get_min_space() const;
void set_max_space(const Vector2 &p_max_space);
Vector2 get_max_space() const;
void set_snap(const Vector2 &p_snap);
Vector2 get_snap() const;
void set_x_label(const String &p_text);
String get_x_label() const;
void set_y_label(const String &p_text);
String get_y_label() const;
void set_auto_triangles(bool p_enable);
bool get_auto_triangles() const;
void set_blend_mode(AnimationNodeBlendSpace2D::BlendMode p_mode);
AnimationNodeBlendSpace2D::BlendMode get_blend_mode() const;
void set_use_sync(bool p_enable);
bool is_using_sync() const;
void set_sync_mode(AnimationNodeBlendSpace2D::SyncMode p_sync_mode);
AnimationNodeBlendSpace2D::SyncMode get_sync_mode() const;
void set_cyclic_length(double p_length);
double get_cyclic_length() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationRootNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationNodeBlendSpace2D::BlendMode);
VARIANT_ENUM_CAST(AnimationNodeBlendSpace2D::SyncMode);
@@ -0,0 +1,83 @@
/**************************************************************************/
/* animation_node_blend_tree.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_root_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNode;
class AnimationNodeBlendTree : public AnimationRootNode {
GDEXTENSION_CLASS(AnimationNodeBlendTree, AnimationRootNode)
public:
static const int CONNECTION_OK = 0;
static const int CONNECTION_ERROR_NO_INPUT = 1;
static const int CONNECTION_ERROR_NO_INPUT_INDEX = 2;
static const int CONNECTION_ERROR_NO_OUTPUT = 3;
static const int CONNECTION_ERROR_SAME_NODE = 4;
static const int CONNECTION_ERROR_CONNECTION_EXISTS = 5;
void add_node(const StringName &p_name, const Ref<AnimationNode> &p_node, const Vector2 &p_position = Vector2(0, 0));
Ref<AnimationNode> get_node(const StringName &p_name) const;
void remove_node(const StringName &p_name);
void rename_node(const StringName &p_name, const StringName &p_new_name);
bool has_node(const StringName &p_name) const;
void connect_node(const StringName &p_input_node, int32_t p_input_index, const StringName &p_output_node);
void disconnect_node(const StringName &p_input_node, int32_t p_input_index);
TypedArray<StringName> get_node_list() const;
void set_node_position(const StringName &p_name, const Vector2 &p_position);
Vector2 get_node_position(const StringName &p_name) const;
void set_graph_offset(const Vector2 &p_offset);
Vector2 get_graph_offset() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationRootNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,68 @@
/**************************************************************************/
/* animation_node_extension.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/packed_float32_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class PackedFloat64Array;
class AnimationNodeExtension : public AnimationNode {
GDEXTENSION_CLASS(AnimationNodeExtension, AnimationNode)
public:
static bool is_looping(const PackedFloat32Array &p_node_info);
static double get_remaining_time(const PackedFloat32Array &p_node_info, bool p_break_loop);
virtual PackedFloat32Array _process_animation_node(const PackedFloat64Array &p_playback_info, bool p_test_only);
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNode::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_process_animation_node), decltype(&T::_process_animation_node)>) {
BIND_VIRTUAL_METHOD(T, _process_animation_node, 912931771);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,96 @@
/**************************************************************************/
/* animation_node_one_shot.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node_sync.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Curve;
class AnimationNodeOneShot : public AnimationNodeSync {
GDEXTENSION_CLASS(AnimationNodeOneShot, AnimationNodeSync)
public:
enum OneShotRequest {
ONE_SHOT_REQUEST_NONE = 0,
ONE_SHOT_REQUEST_FIRE = 1,
ONE_SHOT_REQUEST_ABORT = 2,
ONE_SHOT_REQUEST_FADE_OUT = 3,
};
enum MixMode {
MIX_MODE_BLEND = 0,
MIX_MODE_ADD = 1,
};
void set_fadein_time(double p_time);
double get_fadein_time() const;
void set_fadein_curve(const Ref<Curve> &p_curve);
Ref<Curve> get_fadein_curve() const;
void set_fadeout_time(double p_time);
double get_fadeout_time() const;
void set_fadeout_curve(const Ref<Curve> &p_curve);
Ref<Curve> get_fadeout_curve() const;
void set_break_loop_at_end(bool p_enable);
bool is_loop_broken_at_end() const;
void set_abort_on_reset(bool p_enable);
bool is_aborted_on_reset() const;
void set_autorestart(bool p_active);
bool has_autorestart() const;
void set_autorestart_delay(double p_time);
double get_autorestart_delay() const;
void set_autorestart_random_delay(double p_time);
double get_autorestart_random_delay() const;
void set_mix_mode(AnimationNodeOneShot::MixMode p_mode);
AnimationNodeOneShot::MixMode get_mix_mode() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNodeSync::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationNodeOneShot::OneShotRequest);
VARIANT_ENUM_CAST(AnimationNodeOneShot::MixMode);
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_node_output.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeOutput : public AnimationNode {
GDEXTENSION_CLASS(AnimationNodeOutput, AnimationNode)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,99 @@
/**************************************************************************/
/* animation_node_state_machine.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_root_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNode;
class AnimationNodeStateMachineTransition;
class AnimationNodeStateMachine : public AnimationRootNode {
GDEXTENSION_CLASS(AnimationNodeStateMachine, AnimationRootNode)
public:
enum StateMachineType {
STATE_MACHINE_TYPE_ROOT = 0,
STATE_MACHINE_TYPE_NESTED = 1,
STATE_MACHINE_TYPE_GROUPED = 2,
};
void add_node(const StringName &p_name, const Ref<AnimationNode> &p_node, const Vector2 &p_position = Vector2(0, 0));
void replace_node(const StringName &p_name, const Ref<AnimationNode> &p_node);
Ref<AnimationNode> get_node(const StringName &p_name) const;
void remove_node(const StringName &p_name);
void rename_node(const StringName &p_name, const StringName &p_new_name);
bool has_node(const StringName &p_name) const;
StringName get_node_name(const Ref<AnimationNode> &p_node) const;
TypedArray<StringName> get_node_list() const;
void set_node_position(const StringName &p_name, const Vector2 &p_position);
Vector2 get_node_position(const StringName &p_name) const;
bool has_transition(const StringName &p_from, const StringName &p_to) const;
void add_transition(const StringName &p_from, const StringName &p_to, const Ref<AnimationNodeStateMachineTransition> &p_transition);
Ref<AnimationNodeStateMachineTransition> get_transition(int32_t p_idx) const;
StringName get_transition_from(int32_t p_idx) const;
StringName get_transition_to(int32_t p_idx) const;
int32_t get_transition_count() const;
void remove_transition_by_index(int32_t p_idx);
void remove_transition(const StringName &p_from, const StringName &p_to);
void set_graph_offset(const Vector2 &p_offset);
Vector2 get_graph_offset() const;
void set_state_machine_type(AnimationNodeStateMachine::StateMachineType p_state_machine_type);
AnimationNodeStateMachine::StateMachineType get_state_machine_type() const;
void set_allow_transition_to_self(bool p_enable);
bool is_allow_transition_to_self() const;
void set_reset_ends(bool p_enable);
bool are_ends_reset() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationRootNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationNodeStateMachine::StateMachineType);
@@ -0,0 +1,75 @@
/**************************************************************************/
/* animation_node_state_machine_playback.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeStateMachinePlayback : public Resource {
GDEXTENSION_CLASS(AnimationNodeStateMachinePlayback, Resource)
public:
void travel(const StringName &p_to_node, bool p_reset_on_teleport = true);
void start(const StringName &p_node, bool p_reset = true);
void next();
void stop();
bool is_playing() const;
StringName get_current_node() const;
float get_current_play_position() const;
float get_current_length() const;
StringName get_fading_from_node() const;
float get_fading_from_play_position() const;
float get_fading_from_length() const;
float get_fading_position() const;
float get_fading_length() const;
TypedArray<StringName> get_travel_path() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,96 @@
/**************************************************************************/
/* animation_node_state_machine_transition.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Curve;
class AnimationNodeStateMachineTransition : public Resource {
GDEXTENSION_CLASS(AnimationNodeStateMachineTransition, Resource)
public:
enum SwitchMode {
SWITCH_MODE_IMMEDIATE = 0,
SWITCH_MODE_SYNC = 1,
SWITCH_MODE_AT_END = 2,
};
enum AdvanceMode {
ADVANCE_MODE_DISABLED = 0,
ADVANCE_MODE_ENABLED = 1,
ADVANCE_MODE_AUTO = 2,
};
void set_switch_mode(AnimationNodeStateMachineTransition::SwitchMode p_mode);
AnimationNodeStateMachineTransition::SwitchMode get_switch_mode() const;
void set_advance_mode(AnimationNodeStateMachineTransition::AdvanceMode p_mode);
AnimationNodeStateMachineTransition::AdvanceMode get_advance_mode() const;
void set_advance_condition(const StringName &p_name);
StringName get_advance_condition() const;
void set_xfade_time(float p_secs);
float get_xfade_time() const;
void set_xfade_curve(const Ref<Curve> &p_curve);
Ref<Curve> get_xfade_curve() const;
void set_break_loop_at_end(bool p_enable);
bool is_loop_broken_at_end() const;
void set_reset(bool p_reset);
bool is_reset() const;
void set_priority(int32_t p_priority);
int32_t get_priority() const;
void set_advance_expression(const String &p_text);
String get_advance_expression() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationNodeStateMachineTransition::SwitchMode);
VARIANT_ENUM_CAST(AnimationNodeStateMachineTransition::AdvanceMode);
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_node_sub2.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node_sync.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeSub2 : public AnimationNodeSync {
GDEXTENSION_CLASS(AnimationNodeSub2, AnimationNodeSync)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNodeSync::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,61 @@
/**************************************************************************/
/* animation_node_sync.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeSync : public AnimationNode {
GDEXTENSION_CLASS(AnimationNodeSync, AnimationNode)
public:
void set_use_sync(bool p_enable);
bool is_using_sync() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_node_time_scale.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeTimeScale : public AnimationNode {
GDEXTENSION_CLASS(AnimationNodeTimeScale, AnimationNode)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,61 @@
/**************************************************************************/
/* animation_node_time_seek.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationNodeTimeSeek : public AnimationNode {
GDEXTENSION_CLASS(AnimationNodeTimeSeek, AnimationNode)
public:
void set_explicit_elapse(bool p_enable);
bool is_explicit_elapse() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,74 @@
/**************************************************************************/
/* animation_node_transition.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node_sync.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Curve;
class AnimationNodeTransition : public AnimationNodeSync {
GDEXTENSION_CLASS(AnimationNodeTransition, AnimationNodeSync)
public:
void set_input_count(int32_t p_input_count);
void set_input_as_auto_advance(int32_t p_input, bool p_enable);
bool is_input_set_as_auto_advance(int32_t p_input) const;
void set_input_break_loop_at_end(int32_t p_input, bool p_enable);
bool is_input_loop_broken_at_end(int32_t p_input) const;
void set_input_reset(int32_t p_input, bool p_enable);
bool is_input_reset(int32_t p_input) const;
void set_xfade_time(double p_time);
double get_xfade_time() const;
void set_xfade_curve(const Ref<Curve> &p_curve);
Ref<Curve> get_xfade_curve() const;
void set_allow_transition_to_self(bool p_enable);
bool is_allow_transition_to_self() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNodeSync::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,130 @@
/**************************************************************************/
/* animation_player.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_mixer.hpp>
#include <godot_cpp/classes/tween.hpp>
#include <godot_cpp/variant/node_path.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationPlayer : public AnimationMixer {
GDEXTENSION_CLASS(AnimationPlayer, AnimationMixer)
public:
enum AnimationProcessCallback {
ANIMATION_PROCESS_PHYSICS = 0,
ANIMATION_PROCESS_IDLE = 1,
ANIMATION_PROCESS_MANUAL = 2,
};
enum AnimationMethodCallMode {
ANIMATION_METHOD_CALL_DEFERRED = 0,
ANIMATION_METHOD_CALL_IMMEDIATE = 1,
};
void animation_set_next(const StringName &p_animation_from, const StringName &p_animation_to);
StringName animation_get_next(const StringName &p_animation_from) const;
void set_blend_time(const StringName &p_animation_from, const StringName &p_animation_to, double p_sec);
double get_blend_time(const StringName &p_animation_from, const StringName &p_animation_to) const;
void set_default_blend_time(double p_sec);
double get_default_blend_time() const;
void set_auto_capture(bool p_auto_capture);
bool is_auto_capture() const;
void set_auto_capture_duration(double p_auto_capture_duration);
double get_auto_capture_duration() const;
void set_auto_capture_transition_type(Tween::TransitionType p_auto_capture_transition_type);
Tween::TransitionType get_auto_capture_transition_type() const;
void set_auto_capture_ease_type(Tween::EaseType p_auto_capture_ease_type);
Tween::EaseType get_auto_capture_ease_type() const;
void play(const StringName &p_name = StringName(), double p_custom_blend = -1, float p_custom_speed = 1.0, bool p_from_end = false);
void play_section_with_markers(const StringName &p_name = StringName(), const StringName &p_start_marker = StringName(), const StringName &p_end_marker = StringName(), double p_custom_blend = -1, float p_custom_speed = 1.0, bool p_from_end = false);
void play_section(const StringName &p_name = StringName(), double p_start_time = -1, double p_end_time = -1, double p_custom_blend = -1, float p_custom_speed = 1.0, bool p_from_end = false);
void play_backwards(const StringName &p_name = StringName(), double p_custom_blend = -1);
void play_section_with_markers_backwards(const StringName &p_name = StringName(), const StringName &p_start_marker = StringName(), const StringName &p_end_marker = StringName(), double p_custom_blend = -1);
void play_section_backwards(const StringName &p_name = StringName(), double p_start_time = -1, double p_end_time = -1, double p_custom_blend = -1);
void play_with_capture(const StringName &p_name = StringName(), double p_duration = -1.0, double p_custom_blend = -1, float p_custom_speed = 1.0, bool p_from_end = false, Tween::TransitionType p_trans_type = (Tween::TransitionType)0, Tween::EaseType p_ease_type = (Tween::EaseType)0);
void pause();
void stop(bool p_keep_state = false);
bool is_playing() const;
bool is_animation_active() const;
void set_current_animation(const StringName &p_animation);
StringName get_current_animation() const;
void set_assigned_animation(const StringName &p_animation);
StringName get_assigned_animation() const;
void queue(const StringName &p_name);
TypedArray<StringName> get_queue();
void clear_queue();
void set_speed_scale(float p_speed);
float get_speed_scale() const;
float get_playing_speed() const;
void set_autoplay(const StringName &p_name);
StringName get_autoplay() const;
void set_movie_quit_on_finish_enabled(bool p_enabled);
bool is_movie_quit_on_finish_enabled() const;
double get_current_animation_position() const;
double get_current_animation_length() const;
void set_section_with_markers(const StringName &p_start_marker = StringName(), const StringName &p_end_marker = StringName());
void set_section(double p_start_time = -1, double p_end_time = -1);
void reset_section();
double get_section_start_time() const;
double get_section_end_time() const;
bool has_section() const;
void seek(double p_seconds, bool p_update = false, bool p_update_only = false);
void set_process_callback(AnimationPlayer::AnimationProcessCallback p_mode);
AnimationPlayer::AnimationProcessCallback get_process_callback() const;
void set_method_call_mode(AnimationPlayer::AnimationMethodCallMode p_mode);
AnimationPlayer::AnimationMethodCallMode get_method_call_mode() const;
void set_root(const NodePath &p_path);
NodePath get_root() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationMixer::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationPlayer::AnimationProcessCallback);
VARIANT_ENUM_CAST(AnimationPlayer::AnimationMethodCallMode);
@@ -0,0 +1,58 @@
/**************************************************************************/
/* animation_root_node.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationRootNode : public AnimationNode {
GDEXTENSION_CLASS(AnimationRootNode, AnimationNode)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationNode::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,78 @@
/**************************************************************************/
/* animation_tree.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/animation_mixer.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/node_path.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AnimationRootNode;
class AnimationTree : public AnimationMixer {
GDEXTENSION_CLASS(AnimationTree, AnimationMixer)
public:
enum AnimationProcessCallback {
ANIMATION_PROCESS_PHYSICS = 0,
ANIMATION_PROCESS_IDLE = 1,
ANIMATION_PROCESS_MANUAL = 2,
};
void set_tree_root(const Ref<AnimationRootNode> &p_animation_node);
Ref<AnimationRootNode> get_tree_root() const;
void set_advance_expression_base_node(const NodePath &p_path);
NodePath get_advance_expression_base_node() const;
void set_animation_player(const NodePath &p_path);
NodePath get_animation_player() const;
void set_process_callback(AnimationTree::AnimationProcessCallback p_mode);
AnimationTree::AnimationProcessCallback get_process_callback() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AnimationMixer::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AnimationTree::AnimationProcessCallback);
@@ -0,0 +1,110 @@
/**************************************************************************/
/* area2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/collision_object2d.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Node;
class Node2D;
class Area2D : public CollisionObject2D {
GDEXTENSION_CLASS(Area2D, CollisionObject2D)
public:
enum SpaceOverride {
SPACE_OVERRIDE_DISABLED = 0,
SPACE_OVERRIDE_COMBINE = 1,
SPACE_OVERRIDE_COMBINE_REPLACE = 2,
SPACE_OVERRIDE_REPLACE = 3,
SPACE_OVERRIDE_REPLACE_COMBINE = 4,
};
void set_gravity_space_override_mode(Area2D::SpaceOverride p_space_override_mode);
Area2D::SpaceOverride get_gravity_space_override_mode() const;
void set_gravity_is_point(bool p_enable);
bool is_gravity_a_point() const;
void set_gravity_point_unit_distance(float p_distance_scale);
float get_gravity_point_unit_distance() const;
void set_gravity_point_center(const Vector2 &p_center);
Vector2 get_gravity_point_center() const;
void set_gravity_direction(const Vector2 &p_direction);
Vector2 get_gravity_direction() const;
void set_gravity(float p_gravity);
float get_gravity() const;
void set_linear_damp_space_override_mode(Area2D::SpaceOverride p_space_override_mode);
Area2D::SpaceOverride get_linear_damp_space_override_mode() const;
void set_angular_damp_space_override_mode(Area2D::SpaceOverride p_space_override_mode);
Area2D::SpaceOverride get_angular_damp_space_override_mode() const;
void set_linear_damp(float p_linear_damp);
float get_linear_damp() const;
void set_angular_damp(float p_angular_damp);
float get_angular_damp() const;
void set_priority(int32_t p_priority);
int32_t get_priority() const;
void set_monitoring(bool p_enable);
bool is_monitoring() const;
void set_monitorable(bool p_enable);
bool is_monitorable() const;
TypedArray<Node2D> get_overlapping_bodies() const;
TypedArray<Area2D> get_overlapping_areas() const;
bool has_overlapping_bodies() const;
bool has_overlapping_areas() const;
bool overlaps_body(Node *p_body) const;
bool overlaps_area(Node *p_area) const;
void set_audio_bus_name(const StringName &p_name);
StringName get_audio_bus_name() const;
void set_audio_bus_override(bool p_enable);
bool is_overriding_audio_bus() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
CollisionObject2D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(Area2D::SpaceOverride);
@@ -0,0 +1,125 @@
/**************************************************************************/
/* area3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/collision_object3d.hpp>
#include <godot_cpp/variant/node_path.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/variant/vector3.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Node;
class Node3D;
class Area3D : public CollisionObject3D {
GDEXTENSION_CLASS(Area3D, CollisionObject3D)
public:
enum SpaceOverride {
SPACE_OVERRIDE_DISABLED = 0,
SPACE_OVERRIDE_COMBINE = 1,
SPACE_OVERRIDE_COMBINE_REPLACE = 2,
SPACE_OVERRIDE_REPLACE = 3,
SPACE_OVERRIDE_REPLACE_COMBINE = 4,
};
void set_gravity_space_override_mode(Area3D::SpaceOverride p_space_override_mode);
Area3D::SpaceOverride get_gravity_space_override_mode() const;
void set_gravity_is_point(bool p_enable);
bool is_gravity_a_point() const;
void set_gravity_point_unit_distance(float p_distance_scale);
float get_gravity_point_unit_distance() const;
void set_gravity_point_center(const Vector3 &p_center);
Vector3 get_gravity_point_center() const;
void set_gravity_direction(const Vector3 &p_direction);
Vector3 get_gravity_direction() const;
void set_gravity(float p_gravity);
float get_gravity() const;
void set_linear_damp_space_override_mode(Area3D::SpaceOverride p_space_override_mode);
Area3D::SpaceOverride get_linear_damp_space_override_mode() const;
void set_angular_damp_space_override_mode(Area3D::SpaceOverride p_space_override_mode);
Area3D::SpaceOverride get_angular_damp_space_override_mode() const;
void set_angular_damp(float p_angular_damp);
float get_angular_damp() const;
void set_linear_damp(float p_linear_damp);
float get_linear_damp() const;
void set_priority(int32_t p_priority);
int32_t get_priority() const;
void set_wind_force_magnitude(float p_wind_force_magnitude);
float get_wind_force_magnitude() const;
void set_wind_attenuation_factor(float p_wind_attenuation_factor);
float get_wind_attenuation_factor() const;
void set_wind_source_path(const NodePath &p_wind_source_path);
NodePath get_wind_source_path() const;
void set_monitorable(bool p_enable);
bool is_monitorable() const;
void set_monitoring(bool p_enable);
bool is_monitoring() const;
TypedArray<Node3D> get_overlapping_bodies() const;
TypedArray<Area3D> get_overlapping_areas() const;
bool has_overlapping_bodies() const;
bool has_overlapping_areas() const;
bool overlaps_body(Node *p_body) const;
bool overlaps_area(Node *p_area) const;
void set_audio_bus_override(bool p_enable);
bool is_overriding_audio_bus() const;
void set_audio_bus_name(const StringName &p_name);
StringName get_audio_bus_name() const;
void set_use_reverb_bus(bool p_enable);
bool is_using_reverb_bus() const;
void set_reverb_bus_name(const StringName &p_name);
StringName get_reverb_bus_name() const;
void set_reverb_amount(float p_amount);
float get_reverb_amount() const;
void set_reverb_uniformity(float p_amount);
float get_reverb_uniformity() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
CollisionObject3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(Area3D::SpaceOverride);
@@ -0,0 +1,68 @@
/**************************************************************************/
/* area_light3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/light3d.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class Texture2D;
class AreaLight3D : public Light3D {
GDEXTENSION_CLASS(AreaLight3D, Light3D)
public:
void set_area_texture(const Ref<Texture2D> &p_texture);
Ref<Texture2D> get_area_texture() const;
void set_area_size(const Vector2 &p_area_size);
Vector2 get_area_size() const;
void set_area_normalize_energy(bool p_enable);
bool is_area_normalizing_energy() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Light3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,95 @@
/**************************************************************************/
/* array_mesh.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/global_constants.hpp>
#include <godot_cpp/classes/mesh.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/aabb.hpp>
#include <godot_cpp/variant/array.hpp>
#include <godot_cpp/variant/dictionary.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class PackedByteArray;
struct Transform3D;
class ArrayMesh : public Mesh {
GDEXTENSION_CLASS(ArrayMesh, Mesh)
public:
void add_blend_shape(const StringName &p_name);
int32_t get_blend_shape_count() const;
StringName get_blend_shape_name(int32_t p_index) const;
void set_blend_shape_name(int32_t p_index, const StringName &p_name);
void clear_blend_shapes();
void set_blend_shape_mode(Mesh::BlendShapeMode p_mode);
Mesh::BlendShapeMode get_blend_shape_mode() const;
void add_surface_from_arrays(Mesh::PrimitiveType p_primitive, const Array &p_arrays, const TypedArray<Array> &p_blend_shapes = Array(), const Dictionary &p_lods = Dictionary(), BitField<Mesh::ArrayFormat> p_flags = (BitField<Mesh::ArrayFormat>)0);
void clear_surfaces();
void surface_remove(int32_t p_surf_idx);
void surface_update_vertex_region(int32_t p_surf_idx, int32_t p_offset, const PackedByteArray &p_data);
void surface_update_attribute_region(int32_t p_surf_idx, int32_t p_offset, const PackedByteArray &p_data);
void surface_update_skin_region(int32_t p_surf_idx, int32_t p_offset, const PackedByteArray &p_data);
int32_t surface_get_array_len(int32_t p_surf_idx) const;
int32_t surface_get_array_index_len(int32_t p_surf_idx) const;
BitField<Mesh::ArrayFormat> surface_get_format(int32_t p_surf_idx) const;
Mesh::PrimitiveType surface_get_primitive_type(int32_t p_surf_idx) const;
int32_t surface_find_by_name(const String &p_name) const;
void surface_set_name(int32_t p_surf_idx, const String &p_name);
String surface_get_name(int32_t p_surf_idx) const;
void regen_normal_maps();
Error lightmap_unwrap(const Transform3D &p_transform, float p_texel_size);
void set_custom_aabb(const AABB &p_aabb);
AABB get_custom_aabb() const;
void set_shadow_mesh(const Ref<ArrayMesh> &p_mesh);
Ref<ArrayMesh> get_shadow_mesh() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Mesh::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,65 @@
/**************************************************************************/
/* array_occluder3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/occluder3d.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class PackedInt32Array;
class PackedVector3Array;
class ArrayOccluder3D : public Occluder3D {
GDEXTENSION_CLASS(ArrayOccluder3D, Occluder3D)
public:
void set_arrays(const PackedVector3Array &p_vertices, const PackedInt32Array &p_indices);
void set_vertices(const PackedVector3Array &p_vertices);
void set_indices(const PackedInt32Array &p_indices);
protected:
template <typename T, typename B>
static void register_virtuals() {
Occluder3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,82 @@
/**************************************************************************/
/* aspect_ratio_container.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/container.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AspectRatioContainer : public Container {
GDEXTENSION_CLASS(AspectRatioContainer, Container)
public:
enum StretchMode {
STRETCH_WIDTH_CONTROLS_HEIGHT = 0,
STRETCH_HEIGHT_CONTROLS_WIDTH = 1,
STRETCH_FIT = 2,
STRETCH_COVER = 3,
};
enum AlignmentMode {
ALIGNMENT_BEGIN = 0,
ALIGNMENT_CENTER = 1,
ALIGNMENT_END = 2,
};
void set_ratio(float p_ratio);
float get_ratio() const;
void set_stretch_mode(AspectRatioContainer::StretchMode p_stretch_mode);
AspectRatioContainer::StretchMode get_stretch_mode() const;
void set_alignment_horizontal(AspectRatioContainer::AlignmentMode p_alignment_horizontal);
AspectRatioContainer::AlignmentMode get_alignment_horizontal() const;
void set_alignment_vertical(AspectRatioContainer::AlignmentMode p_alignment_vertical);
AspectRatioContainer::AlignmentMode get_alignment_vertical() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Container::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AspectRatioContainer::StretchMode);
VARIANT_ENUM_CAST(AspectRatioContainer::AlignmentMode);
@@ -0,0 +1,68 @@
/**************************************************************************/
/* atlas_texture.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/texture2d.hpp>
#include <godot_cpp/variant/rect2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AtlasTexture : public Texture2D {
GDEXTENSION_CLASS(AtlasTexture, Texture2D)
public:
void set_atlas(const Ref<Texture2D> &p_atlas);
Ref<Texture2D> get_atlas() const;
void set_region(const Rect2 &p_region);
Rect2 get_region() const;
void set_margin(const Rect2 &p_margin);
Rect2 get_margin() const;
void set_filter_clip(bool p_enable);
bool has_filter_clip() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Texture2D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_bus_layout.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioBusLayout : public Resource {
GDEXTENSION_CLASS(AudioBusLayout, Resource)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,65 @@
/**************************************************************************/
/* audio_effect.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectInstance;
class AudioEffect : public Resource {
GDEXTENSION_CLASS(AudioEffect, Resource)
public:
virtual Ref<AudioEffectInstance> _instantiate();
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_instantiate), decltype(&T::_instantiate)>) {
BIND_VIRTUAL_METHOD(T, _instantiate, 1659796816);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,63 @@
/**************************************************************************/
/* audio_effect_amplify.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectAmplify : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectAmplify, AudioEffect)
public:
void set_volume_db(float p_volume);
float get_volume_db() const;
void set_volume_linear(float p_volume);
float get_volume_linear() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_band_limit_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_filter.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectBandLimitFilter : public AudioEffectFilter {
GDEXTENSION_CLASS(AudioEffectBandLimitFilter, AudioEffectFilter)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectFilter::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_band_pass_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_filter.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectBandPassFilter : public AudioEffectFilter {
GDEXTENSION_CLASS(AudioEffectBandPassFilter, AudioEffectFilter)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectFilter::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,69 @@
/**************************************************************************/
/* audio_effect_capture.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/packed_vector2_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectCapture : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectCapture, AudioEffect)
public:
bool can_get_buffer(int32_t p_frames) const;
PackedVector2Array get_buffer(int32_t p_frames);
void clear_buffer();
void set_buffer_length(float p_buffer_length_seconds);
float get_buffer_length();
int32_t get_frames_available() const;
int64_t get_discarded_frames() const;
int32_t get_buffer_length_frames() const;
int64_t get_pushed_frames() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,77 @@
/**************************************************************************/
/* audio_effect_chorus.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectChorus : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectChorus, AudioEffect)
public:
void set_voice_count(int32_t p_voices);
int32_t get_voice_count() const;
void set_voice_delay_ms(int32_t p_voice_idx, float p_delay_ms);
float get_voice_delay_ms(int32_t p_voice_idx) const;
void set_voice_rate_hz(int32_t p_voice_idx, float p_rate_hz);
float get_voice_rate_hz(int32_t p_voice_idx) const;
void set_voice_depth_ms(int32_t p_voice_idx, float p_depth_ms);
float get_voice_depth_ms(int32_t p_voice_idx) const;
void set_voice_level_db(int32_t p_voice_idx, float p_level_db);
float get_voice_level_db(int32_t p_voice_idx) const;
void set_voice_cutoff_hz(int32_t p_voice_idx, float p_cutoff_hz);
float get_voice_cutoff_hz(int32_t p_voice_idx) const;
void set_voice_pan(int32_t p_voice_idx, float p_pan);
float get_voice_pan(int32_t p_voice_idx) const;
void set_wet(float p_amount);
float get_wet() const;
void set_dry(float p_amount);
float get_dry() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,74 @@
/**************************************************************************/
/* audio_effect_compressor.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectCompressor : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectCompressor, AudioEffect)
public:
void set_threshold(float p_threshold);
float get_threshold() const;
void set_ratio(float p_ratio);
float get_ratio() const;
void set_gain(float p_gain);
float get_gain() const;
void set_attack_us(float p_attack_us);
float get_attack_us() const;
void set_release_ms(float p_release_ms);
float get_release_ms() const;
void set_mix(float p_mix);
float get_mix() const;
void set_sidechain(const StringName &p_sidechain);
StringName get_sidechain() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,85 @@
/**************************************************************************/
/* audio_effect_delay.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectDelay : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectDelay, AudioEffect)
public:
void set_dry(float p_amount);
float get_dry();
void set_tap1_active(bool p_amount);
bool is_tap1_active() const;
void set_tap1_delay_ms(float p_amount);
float get_tap1_delay_ms() const;
void set_tap1_level_db(float p_amount);
float get_tap1_level_db() const;
void set_tap1_pan(float p_amount);
float get_tap1_pan() const;
void set_tap2_active(bool p_amount);
bool is_tap2_active() const;
void set_tap2_delay_ms(float p_amount);
float get_tap2_delay_ms() const;
void set_tap2_level_db(float p_amount);
float get_tap2_level_db() const;
void set_tap2_pan(float p_amount);
float get_tap2_pan() const;
void set_feedback_active(bool p_amount);
bool is_feedback_active() const;
void set_feedback_delay_ms(float p_amount);
float get_feedback_delay_ms() const;
void set_feedback_level_db(float p_amount);
float get_feedback_level_db() const;
void set_feedback_lowpass(float p_amount);
float get_feedback_lowpass() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,79 @@
/**************************************************************************/
/* audio_effect_distortion.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectDistortion : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectDistortion, AudioEffect)
public:
enum Mode {
MODE_CLIP = 0,
MODE_ATAN = 1,
MODE_LOFI = 2,
MODE_OVERDRIVE = 3,
MODE_WAVESHAPE = 4,
};
void set_mode(AudioEffectDistortion::Mode p_mode);
AudioEffectDistortion::Mode get_mode() const;
void set_pre_gain(float p_pre_gain);
float get_pre_gain() const;
void set_keep_hf_hz(float p_keep_hf_hz);
float get_keep_hf_hz() const;
void set_drive(float p_drive);
float get_drive() const;
void set_post_gain(float p_post_gain);
float get_post_gain() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioEffectDistortion::Mode);
@@ -0,0 +1,62 @@
/**************************************************************************/
/* audio_effect_eq.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectEQ : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectEQ, AudioEffect)
public:
void set_band_gain_db(int32_t p_band_idx, float p_volume_db);
float get_band_gain_db(int32_t p_band_idx) const;
int32_t get_band_count() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_eq10.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_eq.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectEQ10 : public AudioEffectEQ {
GDEXTENSION_CLASS(AudioEffectEQ10, AudioEffectEQ)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectEQ::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_eq21.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_eq.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectEQ21 : public AudioEffectEQ {
GDEXTENSION_CLASS(AudioEffectEQ21, AudioEffectEQ)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectEQ::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_eq6.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_eq.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectEQ6 : public AudioEffectEQ {
GDEXTENSION_CLASS(AudioEffectEQ6, AudioEffectEQ)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectEQ::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,76 @@
/**************************************************************************/
/* audio_effect_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectFilter : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectFilter, AudioEffect)
public:
enum FilterDB {
FILTER_6DB = 0,
FILTER_12DB = 1,
FILTER_18DB = 2,
FILTER_24DB = 3,
};
void set_cutoff(float p_freq);
float get_cutoff() const;
void set_resonance(float p_amount);
float get_resonance() const;
void set_gain(float p_amount);
float get_gain() const;
void set_db(AudioEffectFilter::FilterDB p_amount);
AudioEffectFilter::FilterDB get_db() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioEffectFilter::FilterDB);
@@ -0,0 +1,65 @@
/**************************************************************************/
/* audio_effect_hard_limiter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectHardLimiter : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectHardLimiter, AudioEffect)
public:
void set_ceiling_db(float p_ceiling);
float get_ceiling_db() const;
void set_pre_gain_db(float p_pre_gain);
float get_pre_gain_db() const;
void set_release(float p_release);
float get_release() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_high_pass_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_filter.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectHighPassFilter : public AudioEffectFilter {
GDEXTENSION_CLASS(AudioEffectHighPassFilter, AudioEffectFilter)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectFilter::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_high_shelf_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_filter.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectHighShelfFilter : public AudioEffectFilter {
GDEXTENSION_CLASS(AudioEffectHighShelfFilter, AudioEffectFilter)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectFilter::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,68 @@
/**************************************************************************/
/* audio_effect_instance.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_frame.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectInstance : public RefCounted {
GDEXTENSION_CLASS(AudioEffectInstance, RefCounted)
public:
virtual void _process(const void *p_src_buffer, AudioFrame *r_dst_buffer, int32_t p_frame_count);
virtual bool _process_silence() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_process), decltype(&T::_process)>) {
BIND_VIRTUAL_METHOD(T, _process, 1649997291);
}
if constexpr (!std::is_same_v<decltype(&B::_process_silence), decltype(&T::_process_silence)>) {
BIND_VIRTUAL_METHOD(T, _process_silence, 36873697);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,67 @@
/**************************************************************************/
/* audio_effect_limiter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectLimiter : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectLimiter, AudioEffect)
public:
void set_ceiling_db(float p_ceiling);
float get_ceiling_db() const;
void set_threshold_db(float p_threshold);
float get_threshold_db() const;
void set_soft_clip_db(float p_soft_clip);
float get_soft_clip_db() const;
void set_soft_clip_ratio(float p_soft_clip);
float get_soft_clip_ratio() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_low_pass_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_filter.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectLowPassFilter : public AudioEffectFilter {
GDEXTENSION_CLASS(AudioEffectLowPassFilter, AudioEffectFilter)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectFilter::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_low_shelf_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_filter.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectLowShelfFilter : public AudioEffectFilter {
GDEXTENSION_CLASS(AudioEffectLowShelfFilter, AudioEffectFilter)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectFilter::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_effect_notch_filter.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_filter.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectNotchFilter : public AudioEffectFilter {
GDEXTENSION_CLASS(AudioEffectNotchFilter, AudioEffectFilter)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectFilter::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,61 @@
/**************************************************************************/
/* audio_effect_panner.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectPanner : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectPanner, AudioEffect)
public:
void set_pan(float p_cpanume);
float get_pan() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,69 @@
/**************************************************************************/
/* audio_effect_phaser.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectPhaser : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectPhaser, AudioEffect)
public:
void set_range_min_hz(float p_hz);
float get_range_min_hz() const;
void set_range_max_hz(float p_hz);
float get_range_max_hz() const;
void set_rate_hz(float p_hz);
float get_rate_hz() const;
void set_feedback(float p_fbk);
float get_feedback() const;
void set_depth(float p_depth);
float get_depth() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,76 @@
/**************************************************************************/
/* audio_effect_pitch_shift.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectPitchShift : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectPitchShift, AudioEffect)
public:
enum FFTSize {
FFT_SIZE_256 = 0,
FFT_SIZE_512 = 1,
FFT_SIZE_1024 = 2,
FFT_SIZE_2048 = 3,
FFT_SIZE_4096 = 4,
FFT_SIZE_MAX = 5,
};
void set_pitch_scale(float p_rate);
float get_pitch_scale() const;
void set_oversampling(int32_t p_amount);
int32_t get_oversampling() const;
void set_fft_size(AudioEffectPitchShift::FFTSize p_size);
AudioEffectPitchShift::FFTSize get_fft_size() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioEffectPitchShift::FFTSize);
@@ -0,0 +1,65 @@
/**************************************************************************/
/* audio_effect_record.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/audio_stream_wav.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectRecord : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectRecord, AudioEffect)
public:
void set_recording_active(bool p_record);
bool is_recording_active() const;
void set_format(AudioStreamWAV::Format p_format);
AudioStreamWAV::Format get_format() const;
Ref<AudioStreamWAV> get_recording() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,75 @@
/**************************************************************************/
/* audio_effect_reverb.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectReverb : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectReverb, AudioEffect)
public:
void set_predelay_msec(float p_msec);
float get_predelay_msec() const;
void set_predelay_feedback(float p_feedback);
float get_predelay_feedback() const;
void set_room_size(float p_size);
float get_room_size() const;
void set_damping(float p_amount);
float get_damping() const;
void set_spread(float p_amount);
float get_spread() const;
void set_dry(float p_amount);
float get_dry() const;
void set_wet(float p_amount);
float get_wet() const;
void set_hpf(float p_amount);
float get_hpf() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,74 @@
/**************************************************************************/
/* audio_effect_spectrum_analyzer.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectSpectrumAnalyzer : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectSpectrumAnalyzer, AudioEffect)
public:
enum FFTSize {
FFT_SIZE_256 = 0,
FFT_SIZE_512 = 1,
FFT_SIZE_1024 = 2,
FFT_SIZE_2048 = 3,
FFT_SIZE_4096 = 4,
FFT_SIZE_MAX = 5,
};
void set_buffer_length(float p_seconds);
float get_buffer_length() const;
void set_fft_size(AudioEffectSpectrumAnalyzer::FFTSize p_size);
AudioEffectSpectrumAnalyzer::FFTSize get_fft_size() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioEffectSpectrumAnalyzer::FFTSize);
@@ -0,0 +1,68 @@
/**************************************************************************/
/* audio_effect_spectrum_analyzer_instance.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect_instance.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/vector2.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectSpectrumAnalyzerInstance : public AudioEffectInstance {
GDEXTENSION_CLASS(AudioEffectSpectrumAnalyzerInstance, AudioEffectInstance)
public:
enum MagnitudeMode {
MAGNITUDE_AVERAGE = 0,
MAGNITUDE_MAX = 1,
};
Vector2 get_magnitude_for_frequency_range(float p_from_hz, float p_to_hz, AudioEffectSpectrumAnalyzerInstance::MagnitudeMode p_mode = (AudioEffectSpectrumAnalyzerInstance::MagnitudeMode)1) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffectInstance::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioEffectSpectrumAnalyzerInstance::MagnitudeMode);
@@ -0,0 +1,65 @@
/**************************************************************************/
/* audio_effect_stereo_enhance.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_effect.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioEffectStereoEnhance : public AudioEffect {
GDEXTENSION_CLASS(AudioEffectStereoEnhance, AudioEffect)
public:
void set_pan_pullout(float p_amount);
float get_pan_pullout() const;
void set_time_pullout(float p_amount);
float get_time_pullout() const;
void set_surround(float p_amount);
float get_surround() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioEffect::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,46 @@
/**************************************************************************/
/* audio_frame.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/core/method_ptrcall.hpp>
namespace godot {
struct AudioFrame {
float left;
float right;
};
GDVIRTUAL_NATIVE_PTR(AudioFrame);
} // namespace godot
@@ -0,0 +1,61 @@
/**************************************************************************/
/* audio_listener2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/node2d.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioListener2D : public Node2D {
GDEXTENSION_CLASS(AudioListener2D, Node2D)
public:
void make_current();
void clear_current();
bool is_current() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Node2D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,73 @@
/**************************************************************************/
/* audio_listener3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/node3d.hpp>
#include <godot_cpp/variant/transform3d.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioListener3D : public Node3D {
GDEXTENSION_CLASS(AudioListener3D, Node3D)
public:
enum DopplerTracking {
DOPPLER_TRACKING_DISABLED = 0,
DOPPLER_TRACKING_IDLE_STEP = 1,
DOPPLER_TRACKING_PHYSICS_STEP = 2,
};
void make_current();
void clear_current();
bool is_current() const;
Transform3D get_listener_transform() const;
void set_doppler_tracking(AudioListener3D::DopplerTracking p_mode);
AudioListener3D::DopplerTracking get_doppler_tracking() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Node3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioListener3D::DopplerTracking);
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_sample.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioSample : public RefCounted {
GDEXTENSION_CLASS(AudioSample, RefCounted)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_sample_playback.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioSamplePlayback : public RefCounted {
GDEXTENSION_CLASS(AudioSamplePlayback, RefCounted)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,149 @@
/**************************************************************************/
/* audio_server.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/global_constants.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/object.hpp>
#include <godot_cpp/variant/packed_string_array.hpp>
#include <godot_cpp/variant/packed_vector2_array.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioBusLayout;
class AudioEffect;
class AudioEffectInstance;
class AudioStream;
class AudioServer : public Object {
GDEXTENSION_CLASS(AudioServer, Object)
static AudioServer *singleton;
public:
enum SpeakerMode {
SPEAKER_MODE_STEREO = 0,
SPEAKER_SURROUND_31 = 1,
SPEAKER_SURROUND_51 = 2,
SPEAKER_SURROUND_71 = 3,
};
enum PlaybackType {
PLAYBACK_TYPE_DEFAULT = 0,
PLAYBACK_TYPE_STREAM = 1,
PLAYBACK_TYPE_SAMPLE = 2,
PLAYBACK_TYPE_MAX = 3,
};
static AudioServer *get_singleton();
void set_bus_count(int32_t p_amount);
int32_t get_bus_count() const;
void remove_bus(int32_t p_index);
void add_bus(int32_t p_at_position = -1);
void move_bus(int32_t p_index, int32_t p_to_index);
void set_bus_name(int32_t p_bus_idx, const String &p_name);
String get_bus_name(int32_t p_bus_idx) const;
int32_t get_bus_index(const StringName &p_bus_name) const;
int32_t get_bus_channels(int32_t p_bus_idx) const;
void set_bus_volume_db(int32_t p_bus_idx, float p_volume_db);
float get_bus_volume_db(int32_t p_bus_idx) const;
void set_bus_volume_linear(int32_t p_bus_idx, float p_volume_linear);
float get_bus_volume_linear(int32_t p_bus_idx) const;
void set_bus_send(int32_t p_bus_idx, const StringName &p_send);
StringName get_bus_send(int32_t p_bus_idx) const;
void set_bus_solo(int32_t p_bus_idx, bool p_enable);
bool is_bus_solo(int32_t p_bus_idx) const;
void set_bus_mute(int32_t p_bus_idx, bool p_enable);
bool is_bus_mute(int32_t p_bus_idx) const;
void set_bus_bypass_effects(int32_t p_bus_idx, bool p_enable);
bool is_bus_bypassing_effects(int32_t p_bus_idx) const;
void add_bus_effect(int32_t p_bus_idx, const Ref<AudioEffect> &p_effect, int32_t p_at_position = -1);
void remove_bus_effect(int32_t p_bus_idx, int32_t p_effect_idx);
int32_t get_bus_effect_count(int32_t p_bus_idx);
Ref<AudioEffect> get_bus_effect(int32_t p_bus_idx, int32_t p_effect_idx);
Ref<AudioEffectInstance> get_bus_effect_instance(int32_t p_bus_idx, int32_t p_effect_idx, int32_t p_channel = 0);
void swap_bus_effects(int32_t p_bus_idx, int32_t p_effect_idx, int32_t p_by_effect_idx);
void set_bus_effect_enabled(int32_t p_bus_idx, int32_t p_effect_idx, bool p_enabled);
bool is_bus_effect_enabled(int32_t p_bus_idx, int32_t p_effect_idx) const;
float get_bus_peak_volume_left_db(int32_t p_bus_idx, int32_t p_channel) const;
float get_bus_peak_volume_right_db(int32_t p_bus_idx, int32_t p_channel) const;
void set_playback_speed_scale(float p_scale);
float get_playback_speed_scale() const;
void lock();
void unlock();
AudioServer::SpeakerMode get_speaker_mode() const;
float get_mix_rate() const;
float get_input_mix_rate() const;
String get_driver_name() const;
PackedStringArray get_output_device_list();
String get_output_device();
void set_output_device(const String &p_name);
double get_time_to_next_mix() const;
double get_time_since_last_mix() const;
double get_output_latency() const;
PackedStringArray get_input_device_list();
String get_input_device();
void set_input_device(const String &p_name);
Error set_input_device_active(bool p_active);
int32_t get_input_frames_available();
int32_t get_input_buffer_length_frames();
PackedVector2Array get_input_frames(int32_t p_frames);
void set_bus_layout(const Ref<AudioBusLayout> &p_bus_layout);
Ref<AudioBusLayout> generate_bus_layout() const;
void set_enable_tagging_used_audio_streams(bool p_enable);
bool is_stream_registered_as_sample(const Ref<AudioStream> &p_stream);
void register_stream_as_sample(const Ref<AudioStream> &p_stream);
protected:
template <typename T, typename B>
static void register_virtuals() {
Object::register_virtuals<T, B>();
}
~AudioServer();
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioServer::SpeakerMode);
VARIANT_ENUM_CAST(AudioServer::PlaybackType);
@@ -0,0 +1,111 @@
/**************************************************************************/
/* audio_stream.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/variant/dictionary.hpp>
#include <godot_cpp/variant/string.hpp>
#include <godot_cpp/variant/typed_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioSample;
class AudioStreamPlayback;
class AudioStream : public Resource {
GDEXTENSION_CLASS(AudioStream, Resource)
public:
double get_length() const;
bool is_monophonic() const;
Ref<AudioStreamPlayback> instantiate_playback();
bool can_be_sampled() const;
Ref<AudioSample> generate_sample() const;
bool is_meta_stream() const;
virtual Ref<AudioStreamPlayback> _instantiate_playback() const;
virtual String _get_stream_name() const;
virtual double _get_length() const;
virtual bool _is_monophonic() const;
virtual double _get_bpm() const;
virtual int32_t _get_beat_count() const;
virtual Dictionary _get_tags() const;
virtual TypedArray<Dictionary> _get_parameter_list() const;
virtual bool _has_loop() const;
virtual int32_t _get_bar_beats() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Resource::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_instantiate_playback), decltype(&T::_instantiate_playback)>) {
BIND_VIRTUAL_METHOD(T, _instantiate_playback, 3093715447);
}
if constexpr (!std::is_same_v<decltype(&B::_get_stream_name), decltype(&T::_get_stream_name)>) {
BIND_VIRTUAL_METHOD(T, _get_stream_name, 201670096);
}
if constexpr (!std::is_same_v<decltype(&B::_get_length), decltype(&T::_get_length)>) {
BIND_VIRTUAL_METHOD(T, _get_length, 1740695150);
}
if constexpr (!std::is_same_v<decltype(&B::_is_monophonic), decltype(&T::_is_monophonic)>) {
BIND_VIRTUAL_METHOD(T, _is_monophonic, 36873697);
}
if constexpr (!std::is_same_v<decltype(&B::_get_bpm), decltype(&T::_get_bpm)>) {
BIND_VIRTUAL_METHOD(T, _get_bpm, 1740695150);
}
if constexpr (!std::is_same_v<decltype(&B::_get_beat_count), decltype(&T::_get_beat_count)>) {
BIND_VIRTUAL_METHOD(T, _get_beat_count, 3905245786);
}
if constexpr (!std::is_same_v<decltype(&B::_get_tags), decltype(&T::_get_tags)>) {
BIND_VIRTUAL_METHOD(T, _get_tags, 3102165223);
}
if constexpr (!std::is_same_v<decltype(&B::_get_parameter_list), decltype(&T::_get_parameter_list)>) {
BIND_VIRTUAL_METHOD(T, _get_parameter_list, 3995934104);
}
if constexpr (!std::is_same_v<decltype(&B::_has_loop), decltype(&T::_has_loop)>) {
BIND_VIRTUAL_METHOD(T, _has_loop, 36873697);
}
if constexpr (!std::is_same_v<decltype(&B::_get_bar_beats), decltype(&T::_get_bar_beats)>) {
BIND_VIRTUAL_METHOD(T, _get_bar_beats, 3905245786);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,74 @@
/**************************************************************************/
/* audio_stream_generator.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStreamGenerator : public AudioStream {
GDEXTENSION_CLASS(AudioStreamGenerator, AudioStream)
public:
enum AudioStreamGeneratorMixRate {
MIX_RATE_OUTPUT = 0,
MIX_RATE_INPUT = 1,
MIX_RATE_CUSTOM = 2,
MIX_RATE_MAX = 3,
};
void set_mix_rate(float p_hz);
float get_mix_rate() const;
void set_mix_rate_mode(AudioStreamGenerator::AudioStreamGeneratorMixRate p_mode);
AudioStreamGenerator::AudioStreamGeneratorMixRate get_mix_rate_mode() const;
void set_buffer_length(float p_seconds);
float get_buffer_length() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStream::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioStreamGenerator::AudioStreamGeneratorMixRate);
@@ -0,0 +1,68 @@
/**************************************************************************/
/* audio_stream_generator_playback.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream_playback_resampled.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class PackedVector2Array;
struct Vector2;
class AudioStreamGeneratorPlayback : public AudioStreamPlaybackResampled {
GDEXTENSION_CLASS(AudioStreamGeneratorPlayback, AudioStreamPlaybackResampled)
public:
bool push_frame(const Vector2 &p_frame);
bool can_push_buffer(int32_t p_amount) const;
bool push_buffer(const PackedVector2Array &p_frames);
int32_t get_frames_available() const;
int32_t get_skips() const;
void clear_buffer();
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStreamPlaybackResampled::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,118 @@
/**************************************************************************/
/* audio_stream_interactive.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/packed_int32_array.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStreamInteractive : public AudioStream {
GDEXTENSION_CLASS(AudioStreamInteractive, AudioStream)
public:
enum TransitionFromTime {
TRANSITION_FROM_TIME_IMMEDIATE = 0,
TRANSITION_FROM_TIME_NEXT_BEAT = 1,
TRANSITION_FROM_TIME_NEXT_BAR = 2,
TRANSITION_FROM_TIME_END = 3,
};
enum TransitionToTime {
TRANSITION_TO_TIME_SAME_POSITION = 0,
TRANSITION_TO_TIME_START = 1,
TRANSITION_TO_TIME_PREVIOUS_POSITION = 2,
};
enum FadeMode {
FADE_DISABLED = 0,
FADE_IN = 1,
FADE_OUT = 2,
FADE_CROSS = 3,
FADE_AUTOMATIC = 4,
};
enum AutoAdvanceMode {
AUTO_ADVANCE_DISABLED = 0,
AUTO_ADVANCE_ENABLED = 1,
AUTO_ADVANCE_RETURN_TO_HOLD = 2,
};
static const int CLIP_ANY = -1;
void set_clip_count(int32_t p_clip_count);
int32_t get_clip_count() const;
void set_initial_clip(int32_t p_clip_index);
int32_t get_initial_clip() const;
void set_clip_name(int32_t p_clip_index, const StringName &p_name);
StringName get_clip_name(int32_t p_clip_index) const;
void set_clip_stream(int32_t p_clip_index, const Ref<AudioStream> &p_stream);
Ref<AudioStream> get_clip_stream(int32_t p_clip_index) const;
void set_clip_auto_advance(int32_t p_clip_index, AudioStreamInteractive::AutoAdvanceMode p_mode);
AudioStreamInteractive::AutoAdvanceMode get_clip_auto_advance(int32_t p_clip_index) const;
void set_clip_auto_advance_next_clip(int32_t p_clip_index, int32_t p_auto_advance_next_clip);
int32_t get_clip_auto_advance_next_clip(int32_t p_clip_index) const;
void add_transition(int32_t p_from_clip, int32_t p_to_clip, AudioStreamInteractive::TransitionFromTime p_from_time, AudioStreamInteractive::TransitionToTime p_to_time, AudioStreamInteractive::FadeMode p_fade_mode, float p_fade_beats, bool p_use_filler_clip = false, int32_t p_filler_clip = -1, bool p_hold_previous = false);
bool has_transition(int32_t p_from_clip, int32_t p_to_clip) const;
void erase_transition(int32_t p_from_clip, int32_t p_to_clip);
PackedInt32Array get_transition_list() const;
AudioStreamInteractive::TransitionFromTime get_transition_from_time(int32_t p_from_clip, int32_t p_to_clip) const;
AudioStreamInteractive::TransitionToTime get_transition_to_time(int32_t p_from_clip, int32_t p_to_clip) const;
AudioStreamInteractive::FadeMode get_transition_fade_mode(int32_t p_from_clip, int32_t p_to_clip) const;
float get_transition_fade_beats(int32_t p_from_clip, int32_t p_to_clip) const;
bool is_transition_using_filler_clip(int32_t p_from_clip, int32_t p_to_clip) const;
int32_t get_transition_filler_clip(int32_t p_from_clip, int32_t p_to_clip) const;
bool is_transition_holding_previous(int32_t p_from_clip, int32_t p_to_clip) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStream::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioStreamInteractive::TransitionFromTime);
VARIANT_ENUM_CAST(AudioStreamInteractive::TransitionToTime);
VARIANT_ENUM_CAST(AudioStreamInteractive::FadeMode);
VARIANT_ENUM_CAST(AudioStreamInteractive::AutoAdvanceMode);
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_stream_microphone.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStreamMicrophone : public AudioStream {
GDEXTENSION_CLASS(AudioStreamMicrophone, AudioStream)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStream::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,76 @@
/**************************************************************************/
/* audio_stream_mp3.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/packed_byte_array.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class String;
class AudioStreamMP3 : public AudioStream {
GDEXTENSION_CLASS(AudioStreamMP3, AudioStream)
public:
static Ref<AudioStreamMP3> load_from_buffer(const PackedByteArray &p_stream_data);
static Ref<AudioStreamMP3> load_from_file(const String &p_path);
void set_data(const PackedByteArray &p_data);
PackedByteArray get_data() const;
void set_loop(bool p_enable);
bool has_loop() const;
void set_loop_offset(double p_seconds);
double get_loop_offset() const;
void set_bpm(double p_bpm);
double get_bpm() const;
void set_beat_count(int32_t p_count);
int32_t get_beat_count() const;
void set_bar_beats(int32_t p_count);
int32_t get_bar_beats() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStream::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,80 @@
/**************************************************************************/
/* audio_stream_ogg_vorbis.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/dictionary.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class OggPacketSequence;
class PackedByteArray;
class String;
class AudioStreamOggVorbis : public AudioStream {
GDEXTENSION_CLASS(AudioStreamOggVorbis, AudioStream)
public:
static Ref<AudioStreamOggVorbis> load_from_buffer(const PackedByteArray &p_stream_data);
static Ref<AudioStreamOggVorbis> load_from_file(const String &p_path);
void set_packet_sequence(const Ref<OggPacketSequence> &p_packet_sequence);
Ref<OggPacketSequence> get_packet_sequence() const;
void set_loop(bool p_enable);
bool has_loop() const;
void set_loop_offset(double p_seconds);
double get_loop_offset() const;
void set_bpm(double p_bpm);
double get_bpm() const;
void set_beat_count(int32_t p_count);
int32_t get_beat_count() const;
void set_bar_beats(int32_t p_count);
int32_t get_bar_beats() const;
void set_tags(const Dictionary &p_tags);
Dictionary get_tags() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStream::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,114 @@
/**************************************************************************/
/* audio_stream_playback.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_frame.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/variant/packed_vector2_array.hpp>
#include <godot_cpp/variant/variant.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioSamplePlayback;
class StringName;
class AudioStreamPlayback : public RefCounted {
GDEXTENSION_CLASS(AudioStreamPlayback, RefCounted)
public:
void set_sample_playback(const Ref<AudioSamplePlayback> &p_playback_sample);
Ref<AudioSamplePlayback> get_sample_playback() const;
PackedVector2Array mix_audio(float p_rate_scale, int32_t p_frames);
void start(double p_from_pos = 0.0);
void seek(double p_time = 0.0);
void stop();
int32_t get_loop_count() const;
double get_playback_position() const;
bool is_playing() const;
virtual void _start(double p_from_pos);
virtual void _stop();
virtual bool _is_playing() const;
virtual int32_t _get_loop_count() const;
virtual double _get_playback_position() const;
virtual void _seek(double p_position);
virtual int32_t _mix(AudioFrame *p_buffer, float p_rate_scale, int32_t p_frames);
virtual void _tag_used_streams();
virtual void _set_parameter(const StringName &p_name, const Variant &p_value);
virtual Variant _get_parameter(const StringName &p_name) const;
protected:
template <typename T, typename B>
static void register_virtuals() {
RefCounted::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_start), decltype(&T::_start)>) {
BIND_VIRTUAL_METHOD(T, _start, 373806689);
}
if constexpr (!std::is_same_v<decltype(&B::_stop), decltype(&T::_stop)>) {
BIND_VIRTUAL_METHOD(T, _stop, 3218959716);
}
if constexpr (!std::is_same_v<decltype(&B::_is_playing), decltype(&T::_is_playing)>) {
BIND_VIRTUAL_METHOD(T, _is_playing, 36873697);
}
if constexpr (!std::is_same_v<decltype(&B::_get_loop_count), decltype(&T::_get_loop_count)>) {
BIND_VIRTUAL_METHOD(T, _get_loop_count, 3905245786);
}
if constexpr (!std::is_same_v<decltype(&B::_get_playback_position), decltype(&T::_get_playback_position)>) {
BIND_VIRTUAL_METHOD(T, _get_playback_position, 1740695150);
}
if constexpr (!std::is_same_v<decltype(&B::_seek), decltype(&T::_seek)>) {
BIND_VIRTUAL_METHOD(T, _seek, 373806689);
}
if constexpr (!std::is_same_v<decltype(&B::_mix), decltype(&T::_mix)>) {
BIND_VIRTUAL_METHOD(T, _mix, 925936155);
}
if constexpr (!std::is_same_v<decltype(&B::_tag_used_streams), decltype(&T::_tag_used_streams)>) {
BIND_VIRTUAL_METHOD(T, _tag_used_streams, 3218959716);
}
if constexpr (!std::is_same_v<decltype(&B::_set_parameter), decltype(&T::_set_parameter)>) {
BIND_VIRTUAL_METHOD(T, _set_parameter, 3776071444);
}
if constexpr (!std::is_same_v<decltype(&B::_get_parameter), decltype(&T::_get_parameter)>) {
BIND_VIRTUAL_METHOD(T, _get_parameter, 2760726917);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,64 @@
/**************************************************************************/
/* audio_stream_playback_interactive.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream_playback.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class StringName;
class AudioStreamPlaybackInteractive : public AudioStreamPlayback {
GDEXTENSION_CLASS(AudioStreamPlaybackInteractive, AudioStreamPlayback)
public:
void switch_to_clip_by_name(const StringName &p_clip_name);
void switch_to_clip(int32_t p_clip_index);
int32_t get_current_clip_index() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStreamPlayback::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_stream_playback_ogg_vorbis.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream_playback_resampled.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStreamPlaybackOggVorbis : public AudioStreamPlaybackResampled {
GDEXTENSION_CLASS(AudioStreamPlaybackOggVorbis, AudioStreamPlaybackResampled)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStreamPlaybackResampled::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_stream_playback_playlist.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream_playback.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStreamPlaybackPlaylist : public AudioStreamPlayback {
GDEXTENSION_CLASS(AudioStreamPlaybackPlaylist, AudioStreamPlayback)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStreamPlayback::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,70 @@
/**************************************************************************/
/* audio_stream_playback_polyphonic.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_server.hpp>
#include <godot_cpp/classes/audio_stream_playback.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStream;
class AudioStreamPlaybackPolyphonic : public AudioStreamPlayback {
GDEXTENSION_CLASS(AudioStreamPlaybackPolyphonic, AudioStreamPlayback)
public:
static const int INVALID_ID = -1;
int64_t play_stream(const Ref<AudioStream> &p_stream, float p_from_offset = 0, float p_volume_db = 0, float p_pitch_scale = 1.0, AudioServer::PlaybackType p_playback_type = (AudioServer::PlaybackType)0, const StringName &p_bus = "Master");
void set_stream_volume(int64_t p_stream, float p_volume_db);
void set_stream_pitch_scale(int64_t p_stream, float p_pitch_scale);
bool is_stream_playing(int64_t p_stream) const;
void stop_stream(int64_t p_stream);
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStreamPlayback::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,69 @@
/**************************************************************************/
/* audio_stream_playback_resampled.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_frame.hpp>
#include <godot_cpp/classes/audio_stream_playback.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStreamPlaybackResampled : public AudioStreamPlayback {
GDEXTENSION_CLASS(AudioStreamPlaybackResampled, AudioStreamPlayback)
public:
void begin_resample();
virtual int32_t _mix_resampled(AudioFrame *p_dst_buffer, int32_t p_frame_count);
virtual float _get_stream_sampling_rate() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStreamPlayback::register_virtuals<T, B>();
if constexpr (!std::is_same_v<decltype(&B::_mix_resampled), decltype(&T::_mix_resampled)>) {
BIND_VIRTUAL_METHOD(T, _mix_resampled, 50157827);
}
if constexpr (!std::is_same_v<decltype(&B::_get_stream_sampling_rate), decltype(&T::_get_stream_sampling_rate)>) {
BIND_VIRTUAL_METHOD(T, _get_stream_sampling_rate, 1740695150);
}
}
public:
};
} // namespace godot
@@ -0,0 +1,58 @@
/**************************************************************************/
/* audio_stream_playback_synchronized.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_stream_playback.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStreamPlaybackSynchronized : public AudioStreamPlayback {
GDEXTENSION_CLASS(AudioStreamPlaybackSynchronized, AudioStreamPlayback)
public:
protected:
template <typename T, typename B>
static void register_virtuals() {
AudioStreamPlayback::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,100 @@
/**************************************************************************/
/* audio_stream_player.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_server.hpp>
#include <godot_cpp/classes/node.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStream;
class AudioStreamPlayback;
class AudioStreamPlayer : public Node {
GDEXTENSION_CLASS(AudioStreamPlayer, Node)
public:
enum MixTarget {
MIX_TARGET_STEREO = 0,
MIX_TARGET_SURROUND = 1,
MIX_TARGET_CENTER = 2,
};
void set_stream(const Ref<AudioStream> &p_stream);
Ref<AudioStream> get_stream() const;
void set_volume_db(float p_volume_db);
float get_volume_db() const;
void set_volume_linear(float p_volume_linear);
float get_volume_linear() const;
void set_pitch_scale(float p_pitch_scale);
float get_pitch_scale() const;
void play(float p_from_position = 0.0);
void seek(float p_to_position);
void stop();
bool is_playing() const;
float get_playback_position();
void set_bus(const StringName &p_bus);
StringName get_bus() const;
void set_autoplay(bool p_enable);
bool is_autoplay_enabled() const;
void set_mix_target(AudioStreamPlayer::MixTarget p_mix_target);
AudioStreamPlayer::MixTarget get_mix_target() const;
void set_playing(bool p_enable);
void set_stream_paused(bool p_pause);
bool get_stream_paused() const;
void set_max_polyphony(int32_t p_max_polyphony);
int32_t get_max_polyphony() const;
bool has_stream_playback();
Ref<AudioStreamPlayback> get_stream_playback();
void set_playback_type(AudioServer::PlaybackType p_playback_type);
AudioServer::PlaybackType get_playback_type() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Node::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioStreamPlayer::MixTarget);
@@ -0,0 +1,98 @@
/**************************************************************************/
/* audio_stream_player2d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_server.hpp>
#include <godot_cpp/classes/node2d.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStream;
class AudioStreamPlayback;
class AudioStreamPlayer2D : public Node2D {
GDEXTENSION_CLASS(AudioStreamPlayer2D, Node2D)
public:
void set_stream(const Ref<AudioStream> &p_stream);
Ref<AudioStream> get_stream() const;
void set_volume_db(float p_volume_db);
float get_volume_db() const;
void set_volume_linear(float p_volume_linear);
float get_volume_linear() const;
void set_pitch_scale(float p_pitch_scale);
float get_pitch_scale() const;
void play(float p_from_position = 0.0);
void seek(float p_to_position);
void stop();
bool is_playing() const;
float get_playback_position();
void set_bus(const StringName &p_bus);
StringName get_bus() const;
void set_autoplay(bool p_enable);
bool is_autoplay_enabled() const;
void set_playing(bool p_enable);
void set_max_distance(float p_pixels);
float get_max_distance() const;
void set_attenuation(float p_curve);
float get_attenuation() const;
void set_area_mask(uint32_t p_mask);
uint32_t get_area_mask() const;
void set_stream_paused(bool p_pause);
bool get_stream_paused() const;
void set_max_polyphony(int32_t p_max_polyphony);
int32_t get_max_polyphony() const;
void set_panning_strength(float p_panning_strength);
float get_panning_strength() const;
bool has_stream_playback();
Ref<AudioStreamPlayback> get_stream_playback();
void set_playback_type(AudioServer::PlaybackType p_playback_type);
AudioServer::PlaybackType get_playback_type() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Node2D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
@@ -0,0 +1,130 @@
/**************************************************************************/
/* audio_stream_player3d.hpp */
/**************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
/* https://godotengine.org */
/**************************************************************************/
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
/* */
/* Permission is hereby granted, free of charge, to any person obtaining */
/* a copy of this software and associated documentation files (the */
/* "Software"), to deal in the Software without restriction, including */
/* without limitation the rights to use, copy, modify, merge, publish, */
/* distribute, sublicense, and/or sell copies of the Software, and to */
/* permit persons to whom the Software is furnished to do so, subject to */
/* the following conditions: */
/* */
/* The above copyright notice and this permission notice shall be */
/* included in all copies or substantial portions of the Software. */
/* */
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
// THIS FILE IS GENERATED. EDITS WILL BE LOST.
#pragma once
#include <godot_cpp/classes/audio_server.hpp>
#include <godot_cpp/classes/node3d.hpp>
#include <godot_cpp/classes/ref.hpp>
#include <godot_cpp/variant/string_name.hpp>
#include <godot_cpp/core/class_db.hpp>
#include <type_traits>
namespace godot {
class AudioStream;
class AudioStreamPlayback;
class AudioStreamPlayer3D : public Node3D {
GDEXTENSION_CLASS(AudioStreamPlayer3D, Node3D)
public:
enum AttenuationModel {
ATTENUATION_INVERSE_DISTANCE = 0,
ATTENUATION_INVERSE_SQUARE_DISTANCE = 1,
ATTENUATION_LOGARITHMIC = 2,
ATTENUATION_DISABLED = 3,
};
enum DopplerTracking {
DOPPLER_TRACKING_DISABLED = 0,
DOPPLER_TRACKING_IDLE_STEP = 1,
DOPPLER_TRACKING_PHYSICS_STEP = 2,
};
void set_stream(const Ref<AudioStream> &p_stream);
Ref<AudioStream> get_stream() const;
void set_volume_db(float p_volume_db);
float get_volume_db() const;
void set_volume_linear(float p_volume_linear);
float get_volume_linear() const;
void set_unit_size(float p_unit_size);
float get_unit_size() const;
void set_max_db(float p_max_db);
float get_max_db() const;
void set_pitch_scale(float p_pitch_scale);
float get_pitch_scale() const;
void play(float p_from_position = 0.0);
void seek(float p_to_position);
void stop();
bool is_playing() const;
float get_playback_position();
void set_bus(const StringName &p_bus);
StringName get_bus() const;
void set_autoplay(bool p_enable);
bool is_autoplay_enabled() const;
void set_playing(bool p_enable);
void set_max_distance(float p_meters);
float get_max_distance() const;
void set_area_mask(uint32_t p_mask);
uint32_t get_area_mask() const;
void set_emission_angle(float p_degrees);
float get_emission_angle() const;
void set_emission_angle_enabled(bool p_enabled);
bool is_emission_angle_enabled() const;
void set_emission_angle_filter_attenuation_db(float p_db);
float get_emission_angle_filter_attenuation_db() const;
void set_attenuation_filter_cutoff_hz(float p_degrees);
float get_attenuation_filter_cutoff_hz() const;
void set_attenuation_filter_db(float p_db);
float get_attenuation_filter_db() const;
void set_attenuation_model(AudioStreamPlayer3D::AttenuationModel p_model);
AudioStreamPlayer3D::AttenuationModel get_attenuation_model() const;
void set_doppler_tracking(AudioStreamPlayer3D::DopplerTracking p_mode);
AudioStreamPlayer3D::DopplerTracking get_doppler_tracking() const;
void set_stream_paused(bool p_pause);
bool get_stream_paused() const;
void set_max_polyphony(int32_t p_max_polyphony);
int32_t get_max_polyphony() const;
void set_panning_strength(float p_panning_strength);
float get_panning_strength() const;
bool has_stream_playback();
Ref<AudioStreamPlayback> get_stream_playback();
void set_playback_type(AudioServer::PlaybackType p_playback_type);
AudioServer::PlaybackType get_playback_type() const;
protected:
template <typename T, typename B>
static void register_virtuals() {
Node3D::register_virtuals<T, B>();
}
public:
};
} // namespace godot
VARIANT_ENUM_CAST(AudioStreamPlayer3D::AttenuationModel);
VARIANT_ENUM_CAST(AudioStreamPlayer3D::DopplerTracking);

Some files were not shown because too many files have changed in this diff Show More