// // PropertyFlags.cs - indicates the attributes for properties in an Unreal Engine package file // // Author: // Michael Becker // // Copyright (c) 2011-2020 Mike Becker's Software // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . using System; namespace UniversalEditor.ObjectModels.UnrealEngine { /// /// Indicates the attributes for properties in an Unreal Engine package file. /// [Flags()] public enum PropertyFlags { None = 0x00000000, /// /// Property is user-settable in the editor. /// Editable = 0x00000001, /// /// Actor's property always matches class's default actor property. /// Constant = 0x00000002, /// /// Variable is writable by the input system. /// InputWritable = 0x00000004, /// /// Object can be exported with actor. /// Exportable = 0x00000008, /// /// Optional parameter (if CPF_Param is set). /// OptionalParameter = 0x00000010, /// /// Property is relevant to network replication (not specified in source code) /// NetworkReplication = 0x00000020, /// /// Reference to a constant object. /// ConstantReference = 0x00000040, /// /// Function/When call parameter /// Parameter = 0x00000080, /// /// Value is copied out after function call. /// OutParameter = 0x00000100, /// /// Property is a short-circuitable evaluation function parm. /// SkipParameter = 0x00000200, /// /// Return value. /// ReturnParameter = 0x00000400, /// /// Coerce args into this function parameter /// CoerceParameter = 0x00000800, /// /// Property is native: C++ code is responsible for serializing it. /// Native = 0x00001000, /// /// Property is transient: shouldn't be saved, zero-filled at load time. /// Transient = 0x00002000, /// /// Property should be loaded/saved as permanent profile. /// Configuration = 0x00004000, /// /// Property should be loaded as localizable text /// Localized = 0x00008000, /// /// Property travels across levels/servers. /// Travel = 0x00010000, /// /// Property is uneditable in the editor /// PreventEdit = 0x00020000, /// /// Load config from base class, not subclass. /// GlobalConfiguration = 0x00040000, /// /// Object or dynamic array loaded on demand only. /// Demand = 0x00100000, /// /// Automatically create inner object /// AutoCreate = 0x00200000, /// /// Fields need construction/destruction (not specified in source code) /// ConstructionRequired = 0x00400000 } }