Add GDSOFTCLASS to deeper inheritors of Object

This commit is contained in:
Edward Moulsdale 2025-09-24 19:15:46 +01:00
parent 1ce3101fbc
commit e366471fdc
51 changed files with 154 additions and 18 deletions

View file

@ -132,6 +132,8 @@ public:
// Note: Proper code generator is not implemented (any we probably won't ever need it), just a hardcoded bytecode for the limited set of cases.
class CodeSignRequirements : public CodeSignBlob {
GDSOFTCLASS(CodeSignRequirements, CodeSignBlob);
PackedByteArray blob;
static inline size_t PAD(size_t s, size_t a) {
@ -168,6 +170,8 @@ public:
// PList formatted entitlements.
class CodeSignEntitlementsText : public CodeSignBlob {
GDSOFTCLASS(CodeSignEntitlementsText, CodeSignBlob);
PackedByteArray blob;
public:
@ -190,6 +194,8 @@ public:
// ASN.1 serialized entitlements.
class CodeSignEntitlementsBinary : public CodeSignBlob {
GDSOFTCLASS(CodeSignEntitlementsBinary, CodeSignBlob);
PackedByteArray blob;
public:
@ -212,6 +218,8 @@ public:
// Code Directory, runtime options, code segment and special structure hashes.
class CodeSignCodeDirectory : public CodeSignBlob {
GDSOFTCLASS(CodeSignCodeDirectory, CodeSignBlob);
public:
enum Slot {
SLOT_INFO_PLIST = -1,
@ -312,6 +320,8 @@ public:
/*************************************************************************/
class CodeSignSignature : public CodeSignBlob {
GDSOFTCLASS(CodeSignSignature, CodeSignBlob);
PackedByteArray blob;
public:

View file

@ -33,6 +33,8 @@
#include "editor/export/editor_export_plugin.h"
class DedicatedServerExportPlugin : public EditorExportPlugin {
GDSOFTCLASS(DedicatedServerExportPlugin, EditorExportPlugin);
private:
EditorExportPreset::FileExportMode current_export_mode;

View file

@ -34,9 +34,11 @@
#include "editor/export/editor_export.h"
class GDExtensionExportPlugin : public EditorExportPlugin {
GDSOFTCLASS(GDExtensionExportPlugin, EditorExportPlugin);
protected:
virtual void _export_file(const String &p_path, const String &p_type, const HashSet<String> &p_features);
virtual String get_name() const { return "GDExtension"; }
virtual void _export_file(const String &p_path, const String &p_type, const HashSet<String> &p_features) override;
virtual String get_name() const override { return "GDExtension"; }
};
void GDExtensionExportPlugin::_export_file(const String &p_path, const String &p_type, const HashSet<String> &p_features) {

View file

@ -36,6 +36,8 @@
#include "core/object/ref_counted.h"
class LipO : public RefCounted {
GDSOFTCLASS(LipO, RefCounted);
struct FatArch {
uint32_t cputype;
uint32_t cpusubtype;

View file

@ -36,6 +36,8 @@
#include "core/object/ref_counted.h"
class MachO : public RefCounted {
GDSOFTCLASS(MachO, RefCounted);
public:
struct MachHeader {
uint32_t cputype;

View file

@ -44,6 +44,8 @@ public:
};
class ShaderBakerExportPlugin : public EditorExportPlugin {
GDSOFTCLASS(ShaderBakerExportPlugin, EditorExportPlugin);
protected:
struct WorkItem {
String cache_path;