Karma Engine
Loading...
Searching...
No Matches
Karma::ULevel Class Reference

#include <Level.h>

Inheritance diagram for Karma::ULevel:
Collaboration diagram for Karma::ULevel:

Public Member Functions

void Initialize (const FURL &InURL)
 
void SetWorldSettings (AWorldSettings *NewWorldSettings)
 
virtual UWorldGetWorld () const override final
 Returns what UWorld this object is contained within.
 
- Public Member Functions inherited from Karma::UObject
 UObject ()
 
virtual void FinishDestroy ()
 
virtual const std::string & GetDesc ()
 Return a one line description of an object for viewing in the thumbnail view of the generic browser.
 
bool IsValidChecked (const UObject *Test)
 
virtual void BeginDestroy ()
 Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.
 
FORCEINLINE bool Modify (bool bAlwaysMarkDirty=true)
 
bool IsSelected () const
 Test the selection state of a UObject.
 
- Public Member Functions inherited from Karma::UObjectBase
 UObjectBase (UClass *inClass, EObjectFlags inFlags, EInternalObjectFlags inInternalFlags, UObject *inOuter, const std::string &inName)
 
UPackageGetPackage () const
 
UPackageGetExternalPackage () const
 
bool IsUnreachable () const
 
FORCEINLINE void SetInternalIndex (uint32_t StoreIndex)
 
FORCEINLINE uint32_t GetInterIndex () const
 
void MarkAsGarbage ()
 
void ClearGarbage ()
 
FORCEINLINE const std::string & GetName () const
 
FORCEINLINE void SetObjectName (const std::string &aName)
 
FORCEINLINE UObjectGetOuter () const
 
UObjectGetTypedOuter (UClass *Target) const
 
template<typename T >
T * GetTypedOuter () const
 
bool IsValidLowLevel () const
 
template<typename OtherClassType >
FORCEINLINE bool IsA (OtherClassType SomeBase) const
 
FORCEINLINE UClassGetClass () const
 
FORCEINLINE EObjectFlags GetFlags () const
 
FORCEINLINE void SetFlags (EObjectFlags NewFlags)
 
FORCEINLINE void ClearFlags (EObjectFlags NewFlags)
 
FORCEINLINE bool HasAnyFlags (EObjectFlags FlagsToCheck) const
 
FORCEINLINE bool HasAnyInternalFlags (EInternalObjectFlags FlagsToCheck) const
 
FORCEINLINE void SetInternalFlags (EInternalObjectFlags FlagsToSet) const
 
FORCEINLINE void AddToRoot ()
 

Public Attributes

FURL m_URL
 
KarmaVector< AActor * > m_Actors
 
std::vector< AActor * > m_ActorsForGC
 
UWorldm_OwningWorld
 

Additional Inherited Members

- Static Public Member Functions inherited from Karma::UObject
static const char * StaticConfigName ()
 
- Static Public Member Functions inherited from Karma::UObjectBase
static FORCEINLINE EInternalObjectFlags FixGarbageOrPendingKillInternalObjectFlags (const EInternalObjectFlags InFlags)
 
- Protected Member Functions inherited from Karma::UObjectBase
FORCEINLINE void SetFlagsTo (EObjectFlags NewFlags)
 

Detailed Description

A Level is a collection of Actors (lights, volumes, mesh instances etc.). Multiple Levels can be loaded and unloaded into the World to create a streaming experience.

See also
https://docs.unrealengine.com/latest/INT/Engine/Levels

Member Function Documentation

◆ GetWorld()

UWorld * Karma::ULevel::GetWorld ( ) const
finaloverridevirtual

Returns what UWorld this object is contained within.

By default this will follow its Outer chain, but it should be overridden if that will not work.

Since
Karma 1.0.0

Reimplemented from Karma::UObject.

◆ SetWorldSettings()

void Karma::ULevel::SetWorldSettings ( AWorldSettings * NewWorldSettings)

Set level's world settings Caution: not completely functional yet

Member Data Documentation

◆ m_Actors

KarmaVector<AActor*> Karma::ULevel::m_Actors

Array of all actors in this level, used by FActorIteratorBase and derived classes

◆ m_ActorsForGC

std::vector<AActor*> Karma::ULevel::m_ActorsForGC

Array of actors to be exposed to GC in this level. All other actors will be referenced through ULevelActorContainer

◆ m_OwningWorld

UWorld* Karma::ULevel::m_OwningWorld

The World that has this level in its Levels array. This is not the same as GetOuter(), because GetOuter() for a streaming level is a vestigial world that is not used. It should not be accessed during BeginDestroy(), just like any other UObject references, since GC may occur in any order.

◆ m_URL

FURL Karma::ULevel::m_URL

URL associated with this level.


The documentation for this class was generated from the following files: