Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
CCmpVisibilityScripted Class Reference
Inheritance diagram for CCmpVisibilityScripted:
Collaboration diagram for CCmpVisibilityScripted:

Public Member Functions

 CCmpVisibilityScripted (const ScriptInterface &scriptInterface, JS::HandleValue instance)
 
void Init (const CParamNode &paramNode) override
 
void Deinit () override
 
void HandleMessage (const CMessage &msg, bool global) override
 
void Serialize (ISerializer &serialize) override
 
void Deserialize (const CParamNode &paramNode, IDeserializer &deserialize) override
 
JS::Value GetJSInstance () const override
 
int GetComponentTypeId () const override
 
bool IsActivated () override
 This function is a fallback for some entities whose visibility status cannot be cached by the range manager (especially local entities like previews). More...
 
LosVisibility GetVisibility (player_id_t player, bool isVisible, bool isExplored) override
 
bool GetRetainInFog () override
 
bool GetAlwaysVisible () override
 
virtual bool IsActivated ()=0
 This function is a fallback for some entities whose visibility status cannot be cached by the range manager (especially local entities like previews). More...
 
virtual LosVisibility GetVisibility (player_id_t player, bool isVisible, bool isExplored)=0
 
virtual bool GetRetainInFog ()=0
 
virtual bool GetAlwaysVisible ()=0
 
- Public Member Functions inherited from IComponent
virtual ~IComponent ()
 
virtual void Init (const CParamNode &paramNode)=0
 
virtual void Deinit ()=0
 
virtual void HandleMessage (const CMessage &msg, bool global)
 
CEntityHandle GetEntityHandle () const
 
void SetEntityHandle (CEntityHandle ent)
 
entity_id_t GetEntityId () const
 
CEntityHandle GetSystemEntity () const
 
const CSimContextGetSimContext () const
 
void SetSimContext (const CSimContext &context)
 
virtual void Serialize (ISerializer &serialize)=0
 
virtual void Deserialize (const CParamNode &paramNode, IDeserializer &deserialize)=0
 
virtual bool NewJSObject (const ScriptInterface &scriptInterface, JS::MutableHandleObject out) const
 Returns false by default, indicating that a scripted wrapper of this IComponent is not supported. More...
 
virtual JS::Value GetJSInstance () const
 
virtual int GetComponentTypeId () const =0
 

Static Public Member Functions

static void ClassInit (CComponentManager &componentManager)
 
static IComponentAllocate (const ScriptInterface &scriptInterface, JS::HandleValue instance)
 
static void Deallocate (IComponent *cmp)
 
static std::string GetSchema ()
 
- Static Public Member Functions inherited from IComponent
static std::string GetSchema ()
 
static void RegisterComponentType (CComponentManager &mgr, EInterfaceId iid, EComponentTypeId cid, AllocFunc alloc, DeallocFunc dealloc, const char *name, const std::string &schema)
 
static void RegisterComponentTypeScriptWrapper (CComponentManager &mgr, EInterfaceId iid, EComponentTypeId cid, AllocFunc alloc, DeallocFunc dealloc, const char *name, const std::string &schema)
 
static u8 GetSerializationVersion ()
 

Private Attributes

CComponentTypeScript m_Script
 

Additional Inherited Members

- Public Types inherited from IComponent
using AllocFunc = IComponent *(*)(const ScriptInterface &scriptInterface, JS::HandleValue ctor)
 
using DeallocFunc = void(*)(IComponent *)
 

Constructor & Destructor Documentation

◆ CCmpVisibilityScripted()

CCmpVisibilityScripted::CCmpVisibilityScripted ( const ScriptInterface scriptInterface,
JS::HandleValue  instance 
)
inline

Member Function Documentation

◆ Allocate()

static IComponent * CCmpVisibilityScripted::Allocate ( const ScriptInterface scriptInterface,
JS::HandleValue  instance 
)
inlinestatic

◆ ClassInit()

static void CCmpVisibilityScripted::ClassInit ( CComponentManager componentManager)
inlinestatic

◆ Deallocate()

static void CCmpVisibilityScripted::Deallocate ( IComponent cmp)
inlinestatic

◆ Deinit()

void CCmpVisibilityScripted::Deinit ( )
inlineoverridevirtual

Implements IComponent.

◆ Deserialize()

void CCmpVisibilityScripted::Deserialize ( const CParamNode paramNode,
IDeserializer deserialize 
)
inlineoverridevirtual

Implements IComponent.

◆ GetAlwaysVisible()

bool CCmpVisibilityScripted::GetAlwaysVisible ( )
inlineoverridevirtual

Implements ICmpVisibility.

◆ GetComponentTypeId()

int CCmpVisibilityScripted::GetComponentTypeId ( ) const
inlineoverridevirtual

Implements IComponent.

◆ GetJSInstance()

JS::Value CCmpVisibilityScripted::GetJSInstance ( ) const
inlineoverridevirtual

Reimplemented from IComponent.

◆ GetRetainInFog()

bool CCmpVisibilityScripted::GetRetainInFog ( )
inlineoverridevirtual

Implements ICmpVisibility.

◆ GetSchema()

static std::string CCmpVisibilityScripted::GetSchema ( )
inlinestatic

◆ GetVisibility()

LosVisibility CCmpVisibilityScripted::GetVisibility ( player_id_t  player,
bool  isVisible,
bool  isExplored 
)
inlineoverridevirtual

Implements ICmpVisibility.

◆ HandleMessage()

void CCmpVisibilityScripted::HandleMessage ( const CMessage msg,
bool  global 
)
inlineoverridevirtual

Reimplemented from IComponent.

◆ Init()

void CCmpVisibilityScripted::Init ( const CParamNode paramNode)
inlineoverridevirtual

Implements IComponent.

◆ IsActivated()

bool CCmpVisibilityScripted::IsActivated ( )
inlineoverridevirtual

This function is a fallback for some entities whose visibility status cannot be cached by the range manager (especially local entities like previews).

Calling the scripts is expensive, so only call it if really needed.

Implements ICmpVisibility.

◆ Serialize()

void CCmpVisibilityScripted::Serialize ( ISerializer serialize)
inlineoverridevirtual

Implements IComponent.

Member Data Documentation

◆ m_Script

CComponentTypeScript CCmpVisibilityScripted::m_Script
private

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