1 /** 2 3 4 Copyright: 5 Copyright (c) 2007-2018 Juan Linietsky, Ariel Manzur. 6 Copyright (c) 2014-2018 Godot Engine contributors (cf. AUTHORS.md) 7 Copyright (c) 2017-2018 Godot-D contributors 8 9 License: $(LINK2 https://opensource.org/licenses/MIT, MIT License) 10 11 12 */ 13 module godot.clippedcamera; 14 import std.meta : AliasSeq, staticIndexOf; 15 import std.traits : Unqual; 16 import godot.d.meta; 17 import godot.core; 18 import godot.c; 19 import godot.d.bind; 20 import godot.d.reference; 21 import godot.object; 22 import godot.classdb; 23 import godot.camera; 24 import godot.spatial; 25 import godot.node; 26 /** 27 28 */ 29 @GodotBaseClass struct ClippedCamera 30 { 31 enum string _GODOT_internal_name = "ClippedCamera"; 32 public: 33 @nogc nothrow: 34 union { godot_object _godot_object; Camera _GODOT_base; } 35 alias _GODOT_base this; 36 alias BaseClasses = AliasSeq!(typeof(_GODOT_base), typeof(_GODOT_base).BaseClasses); 37 package(godot) __gshared bool _classBindingInitialized = false; 38 package(godot) static struct _classBinding 39 { 40 __gshared: 41 @GodotName("set_margin") GodotMethod!(void, double) setMargin; 42 @GodotName("get_margin") GodotMethod!(double) getMargin; 43 @GodotName("set_process_mode") GodotMethod!(void, long) setProcessMode; 44 @GodotName("get_process_mode") GodotMethod!(ClippedCamera.ProcessMode) getProcessMode; 45 @GodotName("set_collision_mask") GodotMethod!(void, long) setCollisionMask; 46 @GodotName("get_collision_mask") GodotMethod!(long) getCollisionMask; 47 @GodotName("set_collision_mask_bit") GodotMethod!(void, long, bool) setCollisionMaskBit; 48 @GodotName("get_collision_mask_bit") GodotMethod!(bool, long) getCollisionMaskBit; 49 @GodotName("add_exception_rid") GodotMethod!(void, RID) addExceptionRid; 50 @GodotName("add_exception") GodotMethod!(void, GodotObject) addException; 51 @GodotName("remove_exception_rid") GodotMethod!(void, RID) removeExceptionRid; 52 @GodotName("remove_exception") GodotMethod!(void, GodotObject) removeException; 53 @GodotName("set_clip_to_areas") GodotMethod!(void, bool) setClipToAreas; 54 @GodotName("is_clip_to_areas_enabled") GodotMethod!(bool) isClipToAreasEnabled; 55 @GodotName("set_clip_to_bodies") GodotMethod!(void, bool) setClipToBodies; 56 @GodotName("is_clip_to_bodies_enabled") GodotMethod!(bool) isClipToBodiesEnabled; 57 @GodotName("clear_exceptions") GodotMethod!(void) clearExceptions; 58 } 59 bool opEquals(in ClippedCamera other) const { return _godot_object.ptr is other._godot_object.ptr; } 60 ClippedCamera opAssign(T : typeof(null))(T n) { _godot_object.ptr = null; } 61 bool opEquals(typeof(null) n) const { return _godot_object.ptr is null; } 62 mixin baseCasts; 63 static ClippedCamera _new() 64 { 65 static godot_class_constructor constructor; 66 if(constructor is null) constructor = _godot_api.godot_get_class_constructor("ClippedCamera"); 67 if(constructor is null) return typeof(this).init; 68 return cast(ClippedCamera)(constructor()); 69 } 70 @disable new(size_t s); 71 /// 72 enum ProcessMode : int 73 { 74 /** 75 76 */ 77 clipProcessPhysics = 0, 78 /** 79 80 */ 81 clipProcessIdle = 1, 82 } 83 /// 84 enum Constants : int 85 { 86 clipProcessPhysics = 0, 87 clipProcessIdle = 1, 88 } 89 /** 90 91 */ 92 void setMargin(in double margin) 93 { 94 checkClassBinding!(typeof(this))(); 95 ptrcall!(void)(_classBinding.setMargin, _godot_object, margin); 96 } 97 /** 98 99 */ 100 double getMargin() const 101 { 102 checkClassBinding!(typeof(this))(); 103 return ptrcall!(double)(_classBinding.getMargin, _godot_object); 104 } 105 /** 106 107 */ 108 void setProcessMode(in long process_mode) 109 { 110 checkClassBinding!(typeof(this))(); 111 ptrcall!(void)(_classBinding.setProcessMode, _godot_object, process_mode); 112 } 113 /** 114 115 */ 116 ClippedCamera.ProcessMode getProcessMode() const 117 { 118 checkClassBinding!(typeof(this))(); 119 return ptrcall!(ClippedCamera.ProcessMode)(_classBinding.getProcessMode, _godot_object); 120 } 121 /** 122 123 */ 124 void setCollisionMask(in long mask) 125 { 126 checkClassBinding!(typeof(this))(); 127 ptrcall!(void)(_classBinding.setCollisionMask, _godot_object, mask); 128 } 129 /** 130 131 */ 132 long getCollisionMask() const 133 { 134 checkClassBinding!(typeof(this))(); 135 return ptrcall!(long)(_classBinding.getCollisionMask, _godot_object); 136 } 137 /** 138 139 */ 140 void setCollisionMaskBit(in long bit, in bool value) 141 { 142 checkClassBinding!(typeof(this))(); 143 ptrcall!(void)(_classBinding.setCollisionMaskBit, _godot_object, bit, value); 144 } 145 /** 146 147 */ 148 bool getCollisionMaskBit(in long bit) const 149 { 150 checkClassBinding!(typeof(this))(); 151 return ptrcall!(bool)(_classBinding.getCollisionMaskBit, _godot_object, bit); 152 } 153 /** 154 155 */ 156 void addExceptionRid(in RID rid) 157 { 158 checkClassBinding!(typeof(this))(); 159 ptrcall!(void)(_classBinding.addExceptionRid, _godot_object, rid); 160 } 161 /** 162 163 */ 164 void addException(GodotObject node) 165 { 166 checkClassBinding!(typeof(this))(); 167 ptrcall!(void)(_classBinding.addException, _godot_object, node); 168 } 169 /** 170 171 */ 172 void removeExceptionRid(in RID rid) 173 { 174 checkClassBinding!(typeof(this))(); 175 ptrcall!(void)(_classBinding.removeExceptionRid, _godot_object, rid); 176 } 177 /** 178 179 */ 180 void removeException(GodotObject node) 181 { 182 checkClassBinding!(typeof(this))(); 183 ptrcall!(void)(_classBinding.removeException, _godot_object, node); 184 } 185 /** 186 187 */ 188 void setClipToAreas(in bool enable) 189 { 190 checkClassBinding!(typeof(this))(); 191 ptrcall!(void)(_classBinding.setClipToAreas, _godot_object, enable); 192 } 193 /** 194 195 */ 196 bool isClipToAreasEnabled() const 197 { 198 checkClassBinding!(typeof(this))(); 199 return ptrcall!(bool)(_classBinding.isClipToAreasEnabled, _godot_object); 200 } 201 /** 202 203 */ 204 void setClipToBodies(in bool enable) 205 { 206 checkClassBinding!(typeof(this))(); 207 ptrcall!(void)(_classBinding.setClipToBodies, _godot_object, enable); 208 } 209 /** 210 211 */ 212 bool isClipToBodiesEnabled() const 213 { 214 checkClassBinding!(typeof(this))(); 215 return ptrcall!(bool)(_classBinding.isClipToBodiesEnabled, _godot_object); 216 } 217 /** 218 219 */ 220 void clearExceptions() 221 { 222 checkClassBinding!(typeof(this))(); 223 ptrcall!(void)(_classBinding.clearExceptions, _godot_object); 224 } 225 /** 226 227 */ 228 @property double margin() 229 { 230 return getMargin(); 231 } 232 /// ditto 233 @property void margin(double v) 234 { 235 setMargin(v); 236 } 237 /** 238 239 */ 240 @property ClippedCamera.ProcessMode processMode() 241 { 242 return getProcessMode(); 243 } 244 /// ditto 245 @property void processMode(long v) 246 { 247 setProcessMode(v); 248 } 249 /** 250 251 */ 252 @property long collisionMask() 253 { 254 return getCollisionMask(); 255 } 256 /// ditto 257 @property void collisionMask(long v) 258 { 259 setCollisionMask(v); 260 } 261 /** 262 263 */ 264 @property bool clipToAreas() 265 { 266 return isClipToAreasEnabled(); 267 } 268 /// ditto 269 @property void clipToAreas(bool v) 270 { 271 setClipToAreas(v); 272 } 273 /** 274 275 */ 276 @property bool clipToBodies() 277 { 278 return isClipToBodiesEnabled(); 279 } 280 /// ditto 281 @property void clipToBodies(bool v) 282 { 283 setClipToBodies(v); 284 } 285 }