UE4 Generator Attributes

Here’s the list of attributes that affect UE4 code generation.

Attribute

Type

Inheritance

Target

Description

Default

enabled

bool

scope

module,
type
Enables code generation for
the module or type

true

igor_path

string

scope

module

Path to the Igor runtime
library

h_file

string

module

Override generated h file name

cpp_file

string

module

Override generated cpp file name

h_path

string

scope

module

Header output folder

cpp_path

string

scope

module

Cpp output folder

namespace

string

scope

module,
type
C++ namespace
Nested namespaces should be
separated with ::

prefix

string

scope

type

Type name project prefix

name

string

module,
type,
record field
enum field

Override generated name.

base_type

string

record,
variant
Ancestor type for the struct
or class

alias

string

type

Provide existing target type.
Do not generate type
definition

typedef

string

alias type

Generate typedef declaration
for the alias type

true

ptr

bool

record

Use TSharedPtr to store
values (e.g. record fields)
of this type.

true

interfaces

bool

scope

module
interface
Generate abstract classes for
interfaces (not compatible
with ustructs)

false

uenum

bool

enum

Define enum as UENUM

false

ustruct

bool

record

Define record as USTRUCT

false

uclass

bool

record

Define record as UCLASS

false

blueprint_type

bool

record
enum
BlueprintType specifier
for USTRUCT, UCLASS or
UENUM.

false

uproperty

bool

scope

record field

Define record field as
UPROPERTY.

false

h_include

string

module

Include an extra header to
a generated h file. Multiple
attribute values can be set.

cpp_include

string

module

Include an extra header to
a generated cpp file. Multiple
attribute values can be set.

log_category

string

scope

module

Log category for UE_LOG macros

"LogTemp"

http.base_url

string

webservice

Default HTTP client base url

http.client.lazy

bool

scope

webservice
webresource
Don’t process HTTP request
immediately but allow a user
to setup request first.

false

http.client.content_setup

args
request

scope

webservice
webresource
How HTTP client request
content is set up by a user.

args

http.client.path_setup

args
request

scope

webservice
webresource
How HTTP client request path
params are set up by a user.

args

http.client.query_setup

args
request

scope

webservice
webresource
How HTTP client request query
params are set up by a user.

args

http.client.header_setup

args
request

scope

webservice
webresource
How HTTP client request
headers are set up by a user.

args

http.client.setup

args
request

web variable

Override how HTTP client
request variable is set up.

args

The following attributes enable generation of UE4 UPROPERTY specifiers. They are supported for record fields and have scope inheritance.

Attribute

Type

UE4 UPROPERTY specifier

blueprint_read_write

bool

BlueprintReadWrite

blueprint_read_only

bool

BlueprintReadOnly

edit_anywhere

bool

EditAnywhere

edit_defaults_only

bool

EditDefaultsOnly

visible_anywhere

bool

VisibleAnywhere

visible_defaults_only

bool

VisibleDefaultsOnly

category

string

Category