1
0
mirror of https://github.com/godotengine/godot.git synced 2025-12-31 18:41:20 +00:00

Add activate_feed and deactivate_feed virtual bind to CameraFeed

This commit is contained in:
Jason Kuo
2024-09-28 13:02:09 +08:00
parent 4364ed6ccd
commit 3720de4b6f
3 changed files with 22 additions and 3 deletions

View File

@@ -10,6 +10,18 @@
<tutorials>
</tutorials>
<methods>
<method name="_activate_feed" qualifiers="virtual">
<return type="bool" />
<description>
Called when the camera feed is activated.
</description>
</method>
<method name="_deactivate_feed" qualifiers="virtual">
<return type="void" />
<description>
Called when the camera feed is deactivated.
</description>
</method>
<method name="get_datatype" qualifiers="const">
<return type="int" enum="CameraFeed.FeedDataType" />
<description>

View File

@@ -58,6 +58,9 @@ void CameraFeed::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_formats"), &CameraFeed::get_formats);
ClassDB::bind_method(D_METHOD("set_format", "index", "parameters"), &CameraFeed::set_format);
GDVIRTUAL_BIND(_activate_feed);
GDVIRTUAL_BIND(_deactivate_feed);
ADD_SIGNAL(MethodInfo("frame_changed"));
ADD_SIGNAL(MethodInfo("format_changed"));
@@ -273,12 +276,13 @@ void CameraFeed::set_external(int p_width, int p_height) {
}
bool CameraFeed::activate_feed() {
// nothing to do here
return true;
bool ret = true;
GDVIRTUAL_CALL(_activate_feed, ret);
return ret;
}
void CameraFeed::deactivate_feed() {
// nothing to do here
GDVIRTUAL_CALL(_deactivate_feed);
}
bool CameraFeed::set_format(int p_index, const Dictionary &p_parameters) {

View File

@@ -123,6 +123,9 @@ public:
virtual bool activate_feed();
virtual void deactivate_feed();
GDVIRTUAL0R(bool, _activate_feed)
GDVIRTUAL0(_deactivate_feed)
};
VARIANT_ENUM_CAST(CameraFeed::FeedDataType);