Emergency 20 Dokumentation  4.2.0
em5::BarrierTapeComponent Class Reference

EMERGENCY 5 barrier tape component. More...

#include <BarrierTapeComponent.h>

Inheritance diagram for em5::BarrierTapeComponent:
qsf::Component qsf::InheritedObject qsf::WeakPtrTarget qsf::Object

Public Types

enum  TapeConnection { POLE_TO_POLE, POLE_TO_SQUAD }
 
- Public Types inherited from qsf::Component
enum  TransformChangeFlag {
  TRANSFORM_CHANGE_POSITION = 0x01, TRANSFORM_CHANGE_ROTATION = 0x02, TRANSFORM_CHANGE_SCALE = 0x04, TRANSFORM_CHANGE_TRANSFORM = 0x07,
  TRANSFORM_CHANGE_FOR_SIMULATION = 0x08, TRANSFORM_CHANGE_FOR_ANIMATION = 0x10
}
 
typedef BitFlagSet< uint8, TransformChangeFlagTransformChangeFlags
 
- Public Types inherited from qsf::Object
enum  PropertyOverrideState { PROPERTY_INVALID, PROPERTY_DEFAULT, PROPERTY_OVERRIDE, PROPERTY_REMOVED }
 
enum  SerializationMethod { SERIALIZE_FLAT, SERIALIZE_COMPLETE, SERIALIZE_DIFFERENTIAL, SERIALIZE_IGNORE_UNKNOWN }
 
enum  SerializationMode { MODE_MINIMAL, MODE_COMPATIBLE }
 

Public Member Functions

 BarrierTapeComponent (qsf::Prototype *prototype)
 Constructor. More...
 
virtual ~BarrierTapeComponent ()
 Destructor. More...
 
bool createPole (uint32 poleIndex)
 Create a pole, if it does exist already we will return false. More...
 
void movePole (uint32 poleIndex, const glm::vec3 &targetPosition)
 Move a pole. More...
 
const glm::vec3 & getPolePosition (uint32 poleIndex) const
 Returns the current pole position or a ZERO vector if no position is available for this pole. More...
 
bool isPolePositionValid (uint32 poleIndex) const
 Check if a poles is on a valid place. More...
 
void createBarrier ()
 Create the finished barrier. More...
 
bool isBarrier () const
 Returns "true" if this barrier exists (=blocks path finding), "false" otherwise. More...
 
qsf::EntitygetPoleEntity (uint32 poleIndex) const
 Get a pointer to a pole entity, index can be 0 or 1, null if we don't have this pole. More...
 
uint32 getNumPoles () const
 Number of poles which are placed, previews or all (maximum 2) More...
 
void setPoleTransparency (uint32 poleIndex, float transparency)
 Transparent poles. More...
 
float getPoleTransparency (uint32 poleIndex) const
 Get the transparency of the specified pole or 0.0f if the pole does not exist. More...
 
void setTapeTransparency (float transparency)
 Transparent tape. More...
 
float getTapeTransparency () const
 Get the transparency of the tape or 0.0f if the tape does not exist. More...
 
void setPoleMarker (uint32 poleIndex, const qsf::Color4 &color)
 Set pole markers. More...
 
void deletePoleMarker (uint32 poleIndex)
 Delete pole markers. More...
 
void createTape (TapeConnection tapeConnection, qsf::Entity *policeEntity=nullptr)
 Tape can be connected between poles or from the first pole to the squad. More...
 
bool hasTape () const
 Do we have a valid tape? More...
 
TapeConnection getTapeConnectionType () const
 Returns the current tape connection type. More...
 
uint64 getTapeConnectionPoliceEntityId () const
 Returns the entity id of the police entity the tape is currently connected to or uninitialized if the tape is not connected to a police entity. More...
 
void destroyTape ()
 Destroy the barrier tape (no fadeout, just removing it) More...
 
bool isFinishedBuilding () const
 Remember if it's finished building up a barrier. More...
 
void setFinishedBuilding (bool finished)
 
glm::vec3 getBarrierCenter () const
 Give back the center of the tape. More...
 
virtual void serialize (qsf::BinarySerializer &serializer) override
 Serialize or deserialize the component using a binary serializer. More...
 
- Public Member Functions inherited from qsf::Component
virtual ~Component ()
 Destructor. More...
 
PrototypegetPrototype () const
 Return the prototype this component is in. More...
 
EntitygetEntity () const
 Return a reference to the entity this component is in. More...
 
uint32 getId () const
 Return the unique component identifier. More...
 
ComponentManagergetComponentManager () const
 Return the component manager that's responsible for this component instance. More...
 
ComponentCollectiongetComponentCollection () const
 Return the component collection that's responsible for this component instance. More...
 
bool isSimulating () const
 Return whether or not the component is in simulating mode. More...
 
bool isActive () const
 Return whether or not the component is considered to be active. More...
 
void setActive (bool active)
 Set whether or not the component is considered to be active. More...
 
bool isDebug () const
 Return whether or not the component is considered to be in debug mode. More...
 
bool isHidden () const
 Return whether or not the component is hidden. More...
 
void setHidden (bool hidden)
 Set whether or not the component is hidden. More...
 
bool isGloballyHidden () const
 Return whether or not the component is globally hidden. More...
 
void setGloballyHidden (bool globallyHidden)
 Set whether or not the component is globally hidden. More...
 
bool isReallyHidden () const
 Return whether or not the component is really hidden. More...
 
bool startup (bool ownerIsRunning)
 Startup the component. More...
 
bool isRunning () const
 Return whether or not the component is up-and-running. More...
 
void shutdown ()
 Shutdown the component. More...
 
uint64 getPrototypeId () const
 Return the ID of the prototype this component is in. More...
 
uint64 getEntityId () const
 Return the ID of the entity this component is in. More...
 
virtual void onInvalidation ()
 Invalidate the component. More...
 
virtual void setDebug (bool debugMode)
 Set whether or not the component is considered to be in debug mode. More...
 
- Public Member Functions inherited from qsf::InheritedObject
void copyPropertyOverrideStateFrom (const InheritedObject &object, bool add=false)
 
void setAllPropertyOverrideFlags (bool value)
 
void autoCreatePropertyOverrideState ()
 
virtual camp::Value getPropertyDefaultValue (const StringHash &propertyId) const override
 
virtual PropertyOverrideState getPropertyOverrideState (const StringHash &propertyId) const override
 
virtual bool setPropertyOverrideState (const StringHash &propertyId, PropertyOverrideState overrideState) override
 
- Public Member Functions inherited from qsf::Object
virtual ~Object ()
 Destructor. More...
 
const camp::Class & getCampClass () const
 Return the CAMP class. More...
 
int getPropertyIndexById (const StringHash &propertyId) const
 Return the CAMP property index by using the unique class property ID. More...
 
uint32 getPropertyIdByIndex (int index) const
 Return the unique class property ID with the given index. More...
 
std::string getPropertyNameById (const StringHash &propertyId) const
 Return the CAMP property name by using the unique class property ID. More...
 
const camp::Property * getCampPropertyById (const StringHash &propertyId) const
 Return the CAMP property by using the unique class property ID. More...
 
void setPropertyValuesByString (const std::string &values)
 Set CAMP reflection property values by using a given string. More...
 
void setPropertiesToDefaultValues ()
 Set all CAMP reflection system properties to their default values. More...
 
void serializeToBoostPTree (boost::property_tree::ptree &pTree, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL) const
 
void serializeToBoostPTree (boost::property_tree::ptree &pTree, const camp::Class &campClass, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL) const
 
bool deserializeFromBoostPTree (const boost::property_tree::ptree &pTree, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL)
 
bool deserializeFromBoostPTree (const boost::property_tree::ptree &pTree, const camp::Class &campClass, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL)
 
void serializeToBinarySerializer (BinarySerializer &serializer, SerializationMode mode=MODE_MINIMAL, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL) const
 
void deserializeFromBinarySerializer (BinarySerializer &serializer, SerializationMode mode=MODE_MINIMAL, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL, bool setOverrideState=true)
 
virtual void onPreDeserialize ()
 Called right before the object is deserialized using any of the above methods. Default implementation is empty. More...
 
virtual void onPostDeserialize ()
 Called right after the object was deserialized using any of the above methods. Default implementation is empty. More...
 
virtual ScriptgetAssociatedScript () const
 Return the script instance associated with this object instance. More...
 

Static Public Attributes

static const uint32 COMPONENT_ID
 "em5::BarrierTapeComponent" unique component ID More...
 
- Static Public Attributes inherited from qsf::Component
static const uint32 COMPONENT_ID
 "qsf::Component" unique component ID More...
 

Protected Member Functions

virtual void onShutdown () override
 Shutdown the component. More...
 
- Protected Member Functions inherited from qsf::Component
 Component (Prototype *prototype)
 Constructor. More...
 
void promotePropertyChange (uint32 propertyId)
 A component property value was changed. More...
 
template<typename T , typename S >
bool assignAndPromoteChange (T &variable, const S &newValue, uint32 propertyId)
 Comfort function for updating an exported member variable and promoting any change that happened. More...
 
void setRegisterForSimulationTransformChanges (bool enable)
 Register or unregister this component as simulation transform listener. More...
 
void setRegisterForAnimationTransformChanges (bool enable)
 Register or unregister this component as animation transform listener. More...
 
virtual const ObjectgetPropertyDefaultsProvider () const override
 
virtual bool ignoreOwnerRunningState () const
 Return whether or not the component will only startup if the owner is in running state. More...
 
virtual bool implementsOnComponentPropertyChange () const
 Signal whether this component needs the "onComponentPropertyChange" callback at all. More...
 
virtual void onComponentPropertyChange (const Component &component, uint32 propertyId)
 Called in case a component property value was changed. More...
 
virtual void onComponentTransformChange (const Transform &transform, TransformChangeFlags flags)
 Called in case a component transformation value was changed. More...
 
virtual void onSetSimulating (bool simulating)
 Set whether or not the component is in simulating mode. More...
 
virtual void onSetActive (bool active)
 Set whether or not the component is considered to be active. More...
 
virtual void onSetDebug (bool debug)
 Set whether or not the component is considered to be in debug mode. More...
 
virtual void onSetHidden (bool hidden)
 Set whether or not the component is considered to be hidden. More...
 
virtual bool onStartup ()
 Startup the component. More...
 
- Protected Member Functions inherited from qsf::InheritedObject
 InheritedObject ()
 Default constructor. More...
 
- Protected Member Functions inherited from qsf::Object
 Object ()
 Default constructor. More...
 
- Protected Member Functions inherited from qsf::WeakPtrTarget
 WeakPtrTarget ()
 Default constructor. More...
 
 WeakPtrTarget (const WeakPtrTarget &other)
 Copy constructor. More...
 
 WeakPtrTarget (WeakPtrTarget &&)=delete
 Delete the move constructor, as WeakPtrTarget would need a proper move constructor-implementation that ensures that its pointer gets updated in the WeakPtrBase as well. More...
 
 ~WeakPtrTarget ()
 Destructor. More...
 
void invalidateAllWeakPtr ()
 Invalidate all weak pointers to this object. More...
 
void operator= (const WeakPtrTarget &other)
 Copy operator. More...
 

Additional Inherited Members

- Protected Attributes inherited from qsf::InheritedObject
std::bitset< 128 > mPropertyOverrideFlags
 One bit for each property; if set, the property is overridden. More...
 

Detailed Description

EMERGENCY 5 barrier tape component.

Member Enumeration Documentation

Enumerator
POLE_TO_POLE 
POLE_TO_SQUAD 

Constructor & Destructor Documentation

em5::BarrierTapeComponent::BarrierTapeComponent ( qsf::Prototype prototype)
explicit

Constructor.

Parameters
[in]prototypeThe prototype this component is in, no null pointer allowed
virtual em5::BarrierTapeComponent::~BarrierTapeComponent ( )
virtual

Destructor.

Member Function Documentation

void em5::BarrierTapeComponent::createBarrier ( )

Create the finished barrier.

bool em5::BarrierTapeComponent::createPole ( uint32  poleIndex)

Create a pole, if it does exist already we will return false.

void em5::BarrierTapeComponent::createTape ( TapeConnection  tapeConnection,
qsf::Entity policeEntity = nullptr 
)

Tape can be connected between poles or from the first pole to the squad.

Parameters
[in]policeEntityThe policeman entity
void em5::BarrierTapeComponent::deletePoleMarker ( uint32  poleIndex)

Delete pole markers.

void em5::BarrierTapeComponent::destroyTape ( )

Destroy the barrier tape (no fadeout, just removing it)

glm::vec3 em5::BarrierTapeComponent::getBarrierCenter ( ) const

Give back the center of the tape.

uint32 em5::BarrierTapeComponent::getNumPoles ( ) const

Number of poles which are placed, previews or all (maximum 2)

qsf::Entity* em5::BarrierTapeComponent::getPoleEntity ( uint32  poleIndex) const

Get a pointer to a pole entity, index can be 0 or 1, null if we don't have this pole.

const glm::vec3& em5::BarrierTapeComponent::getPolePosition ( uint32  poleIndex) const

Returns the current pole position or a ZERO vector if no position is available for this pole.

float em5::BarrierTapeComponent::getPoleTransparency ( uint32  poleIndex) const

Get the transparency of the specified pole or 0.0f if the pole does not exist.

uint64 em5::BarrierTapeComponent::getTapeConnectionPoliceEntityId ( ) const

Returns the entity id of the police entity the tape is currently connected to or uninitialized if the tape is not connected to a police entity.

TapeConnection em5::BarrierTapeComponent::getTapeConnectionType ( ) const

Returns the current tape connection type.

float em5::BarrierTapeComponent::getTapeTransparency ( ) const

Get the transparency of the tape or 0.0f if the tape does not exist.

bool em5::BarrierTapeComponent::hasTape ( ) const

Do we have a valid tape?

bool em5::BarrierTapeComponent::isBarrier ( ) const

Returns "true" if this barrier exists (=blocks path finding), "false" otherwise.

bool em5::BarrierTapeComponent::isFinishedBuilding ( ) const

Remember if it's finished building up a barrier.

bool em5::BarrierTapeComponent::isPolePositionValid ( uint32  poleIndex) const

Check if a poles is on a valid place.

void em5::BarrierTapeComponent::movePole ( uint32  poleIndex,
const glm::vec3 &  targetPosition 
)

Move a pole.

Parameters
virtual void em5::BarrierTapeComponent::onShutdown ( )
overrideprotectedvirtual

Shutdown the component.

Note
  • Only called in case "onStartup()" returned successfully
  • The default implementation is empty

Reimplemented from qsf::Component.

virtual void em5::BarrierTapeComponent::serialize ( qsf::BinarySerializer serializer)
overridevirtual

Serialize or deserialize the component using a binary serializer.

Parameters
[in]serializerThe serializer, which can be either in read or write mode

Reimplemented from qsf::Component.

void em5::BarrierTapeComponent::setFinishedBuilding ( bool  finished)
void em5::BarrierTapeComponent::setPoleMarker ( uint32  poleIndex,
const qsf::Color4 color 
)

Set pole markers.

void em5::BarrierTapeComponent::setPoleTransparency ( uint32  poleIndex,
float  transparency 
)

Transparent poles.

void em5::BarrierTapeComponent::setTapeTransparency ( float  transparency)

Transparent tape.

Member Data Documentation

const uint32 em5::BarrierTapeComponent::COMPONENT_ID
static

"em5::BarrierTapeComponent" unique component ID


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