XLE  v0.02.0
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
SceneEngine::PlacementsEditor Class Reference

Classes

class  ITransaction
 
class  ObjIntersectionDef
 
class  ObjTransDef
 
struct  TransactionFlags
 

Public Types

typedef Float3x4 PlacementsTransform
 
using DrawCallPredicate = std::function< bool(const RenderCore::Assets::DelayedDrawCall &)>
 

Public Member Functions

std::shared_ptr< ITransactionTransaction_Begin (const PlacementGUID *placementsBegin, const PlacementGUID *placementsEnd, TransactionFlags::BitField transactionFlags=0)
 
std::vector< PlacementGUID > Find_BoxIntersection (const Float3 &worldSpaceMins, const Float3 &worldSpaceMaxs, const std::function< bool(const ObjIntersectionDef &)> &predicate)
 
std::vector< PlacementGUID > Find_RayIntersection (const Float3 &rayStart, const Float3 &rayEnd, const std::function< bool(const ObjIntersectionDef &)> &predicate)
 
std::vector< PlacementGUID > Find_FrustumIntersection (const Float4x4 &worldToProjection, const std::function< bool(const ObjIntersectionDef &)> &predicate)
 
void RenderFiltered (RenderCore::Metal::DeviceContext *context, RenderCore::Techniques::ParsingContext &parserContext, unsigned techniqueIndex, const PlacementGUID *begin, const PlacementGUID *end, const DrawCallPredicate &predicate=DrawCallPredicate(nullptr))
 
void RegisterCell (const PlacementCell &cell, const Float2 &mins, const Float2 &maxs)
 
uint64 CreateCell (PlacementsManager &manager, const ::Assets::ResChar name[], const Float2 &mins, const Float2 &maxs)
 
bool RemoveCell (PlacementsManager &manager, uint64 id)
 
void PerformGUIDFixup (PlacementGUID *begin, PlacementGUID *end) const
 
std::pair< Float3, Float3 > CalculateCellBoundary (uint64 cellId) const
 
std::string GetMetricsString (uint64 cellId) const
 
void WriteAllCells ()
 
void WriteCell (uint64 cellId, const Assets::ResChar destinationFile[]) const
 
std::pair< Float3, Float3 > GetModelBoundingBox (const Assets::ResChar modelName[]) const
 
 PlacementsEditor (std::shared_ptr< PlacementsCache > placementsCache, std::shared_ptr< RenderCore::Assets::ModelCache > modelCache, std::shared_ptr< PlacementsRenderer > renderer)
 

Static Public Member Functions

static uint64 GenerateObjectGUID ()
 

Protected Attributes

std::unique_ptr< Pimpl > _pimpl
 

Friends

class Transaction
 

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