ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

#include <line_of_sight.h>

Collaboration diagram for ICB::_line_of_sight:

List of all members.

Public Types

enum  { ACTOR_EYE_HEIGHT = 160 }
enum  { ACTOR_CROUCHED_HEIGHT = 61 }
enum  ActorEyeMode { USE_OBJECT_VALUE = 0, FORCE_EYE_HEIGHT, FORCE_CROUCHED_HEIGHT }

Public Member Functions

 _line_of_sight ()
 ~_line_of_sight ()
void Initialise ()
void Subscribe (uint32 nObserverID, uint32 nTargetID)
void UnSubscribe (uint32 nObserverID, uint32 nTargetID)
void Suspend (uint32 nObserverID)
void Unsuspend (uint32 nObserverID)
void SwitchOff ()
void SwitchOn ()
void DutyCycle ()
void SetDutyCycle (uint32 nSubsPerCycle)
void SetFieldOfView (uint32 nID, uint32 nFieldOfView)
void SetSightRange (uint32 nID, uint32 nRange)
void SetSightHeight (uint32 nID, uint32 nHeight)
void SetCanSeeInDarkFlag (uint32 nID, bool8 bState)
void SetNeverInShadowFlag (uint32 nID, bool8 bState)
void ShadowsOnOff (bool8 bState)
bool8 ObjectToObject (uint32 nObserverID, uint32 nTargetID, _barrier_ray_type eRayType, bool8 bCanSeeUs, ActorEyeMode eEyeMode, bool8 bOverrideHeightLimit=FALSE8)
bool8 LineOfSight (uint32 nObserverID, uint32 nTargetID)
const px3DRealPoint GetLastImpactPoint () const
_barrier_logic_value GetLastImpactType () const
_linked_data_fileGetSlicesPointer () const
bool8 FailingOnHeight () const

Private Member Functions

 _line_of_sight (const _line_of_sight &)
void operator= (const _line_of_sight &)
void WhatSeesWhat ()
bool8 InFieldOfView (PXreal fLookingX, PXreal fLookingZ, PXfloat fLookingDirection, PXreal fObservedX, PXreal fObservedZ, uint32 nFieldOfView) const
void SetPackedBit (uint8 *pnArray, uint32 i, uint32 j, bool8 bValue)
bool8 GetPackedBit (uint8 *pnArray, uint32 i, uint32 j) const

Private Attributes

_linked_data_filem_pyLOSData
uint32 m_nSubsPerCycle
uint32 m_nFirstSubscriber
uint32 m_nNumObjects
uint32 m_nTotalCurrentSubscribers
uint32 m_pnFieldOfView [LOS_1D_SIZE]
uint32 m_pnSeeingDistance [LOS_1D_SIZE]
PXreal m_pfHeightOfView [LOS_1D_SIZE]
int32 m_pnSubscribeNum [LOS_1D_SIZE]
uint8 m_pnTable [LOS_2D_SIZE_PACKED]
uint8 m_pnSubscribers [LOS_2D_SIZE_PACKED]
bool8 m_pbSuspended [LOS_1D_SIZE]
bool8 m_pbCanSeeInDark [LOS_1D_SIZE]
bool8 m_pbIgnoreShadows [LOS_1D_SIZE]
px3DRealPoint m_oImpactPoint
_barrier_logic_value m_eImpactType
bool8 m_bSwitchedOn
bool8 m_bFailingOnHeight
bool8 m_bHandleShadows
uint8 m_nPad

Detailed Description

Definition at line 66 of file line_of_sight.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
ACTOR_EYE_HEIGHT 

Definition at line 69 of file line_of_sight.h.

anonymous enum
Enumerator:
ACTOR_CROUCHED_HEIGHT 

Definition at line 70 of file line_of_sight.h.

Enumerator:
USE_OBJECT_VALUE 
FORCE_EYE_HEIGHT 
FORCE_CROUCHED_HEIGHT 

Definition at line 71 of file line_of_sight.h.


Constructor & Destructor Documentation

ICB::_line_of_sight::_line_of_sight (  )  [inline]

Definition at line 171 of file line_of_sight.h.

ICB::_line_of_sight::~_line_of_sight (  )  [inline]

Definition at line 182 of file line_of_sight.h.

ICB::_line_of_sight::_line_of_sight ( const _line_of_sight  )  [inline, private]

Definition at line 157 of file line_of_sight.h.


Member Function Documentation

void ICB::_line_of_sight::DutyCycle (  ) 

Definition at line 115 of file line_of_sight.cpp.

bool8 ICB::_line_of_sight::FailingOnHeight (  )  const [inline]

Definition at line 132 of file line_of_sight.h.

const px3DRealPoint ICB::_line_of_sight::GetLastImpactPoint (  )  const [inline]

Definition at line 126 of file line_of_sight.h.

_barrier_logic_value ICB::_line_of_sight::GetLastImpactType (  )  const [inline]

Definition at line 127 of file line_of_sight.h.

bool8 ICB::_line_of_sight::GetPackedBit ( uint8 pnArray,
uint32  i,
uint32  j 
) const [inline, private]

Definition at line 222 of file line_of_sight.h.

_linked_data_file* ICB::_line_of_sight::GetSlicesPointer (  )  const [inline]

Definition at line 130 of file line_of_sight.h.

bool8 ICB::_line_of_sight::InFieldOfView ( PXreal  fLookingX,
PXreal  fLookingZ,
PXfloat  fLookingDirection,
PXreal  fObservedX,
PXreal  fObservedZ,
uint32  nFieldOfView 
) const [private]

Definition at line 502 of file line_of_sight.cpp.

void ICB::_line_of_sight::Initialise (  ) 

Definition at line 41 of file line_of_sight.cpp.

bool8 ICB::_line_of_sight::LineOfSight ( uint32  nObserverID,
uint32  nTargetID 
) [inline]

Definition at line 204 of file line_of_sight.h.

bool8 ICB::_line_of_sight::ObjectToObject ( uint32  nObserverID,
uint32  nTargetID,
_barrier_ray_type  eRayType,
bool8  bCanSeeUs,
ActorEyeMode  eEyeMode,
bool8  bOverrideHeightLimit = FALSE8 
)

Definition at line 160 of file line_of_sight.cpp.

void ICB::_line_of_sight::operator= ( const _line_of_sight  )  [inline, private]

Definition at line 158 of file line_of_sight.h.

void ICB::_line_of_sight::SetCanSeeInDarkFlag ( uint32  nID,
bool8  bState 
) [inline]

Definition at line 194 of file line_of_sight.h.

void ICB::_line_of_sight::SetDutyCycle ( uint32  nSubsPerCycle  )  [inline]

Definition at line 99 of file line_of_sight.h.

void ICB::_line_of_sight::SetFieldOfView ( uint32  nID,
uint32  nFieldOfView 
)

Definition at line 326 of file line_of_sight.cpp.

void ICB::_line_of_sight::SetNeverInShadowFlag ( uint32  nID,
bool8  bState 
) [inline]

Definition at line 199 of file line_of_sight.h.

void ICB::_line_of_sight::SetPackedBit ( uint8 pnArray,
uint32  i,
uint32  j,
bool8  bValue 
) [inline, private]

Definition at line 212 of file line_of_sight.h.

void ICB::_line_of_sight::SetSightHeight ( uint32  nID,
uint32  nHeight 
)

Definition at line 352 of file line_of_sight.cpp.

void ICB::_line_of_sight::SetSightRange ( uint32  nID,
uint32  nRange 
)

Definition at line 341 of file line_of_sight.cpp.

void ICB::_line_of_sight::ShadowsOnOff ( bool8  bState  )  [inline]

Definition at line 117 of file line_of_sight.h.

void ICB::_line_of_sight::Subscribe ( uint32  nObserverID,
uint32  nTargetID 
)

Definition at line 126 of file line_of_sight.cpp.

void ICB::_line_of_sight::Suspend ( uint32  nObserverID  ) 

Definition at line 363 of file line_of_sight.cpp.

void ICB::_line_of_sight::SwitchOff (  )  [inline]

Definition at line 206 of file line_of_sight.h.

void ICB::_line_of_sight::SwitchOn (  )  [inline]

Definition at line 92 of file line_of_sight.h.

void ICB::_line_of_sight::UnSubscribe ( uint32  nObserverID,
uint32  nTargetID 
)

Definition at line 145 of file line_of_sight.cpp.

void ICB::_line_of_sight::Unsuspend ( uint32  nObserverID  )  [inline]

Definition at line 189 of file line_of_sight.h.

void ICB::_line_of_sight::WhatSeesWhat (  )  [private]

Definition at line 377 of file line_of_sight.cpp.


Member Data Documentation

Definition at line 152 of file line_of_sight.h.

Definition at line 153 of file line_of_sight.h.

Definition at line 151 of file line_of_sight.h.

Definition at line 137 of file line_of_sight.h.

Definition at line 138 of file line_of_sight.h.

Definition at line 154 of file line_of_sight.h.

Definition at line 136 of file line_of_sight.h.

Definition at line 147 of file line_of_sight.h.

Definition at line 148 of file line_of_sight.h.

bool8 ICB::_line_of_sight::m_pbSuspended[LOS_1D_SIZE] [private]

Definition at line 146 of file line_of_sight.h.

Definition at line 142 of file line_of_sight.h.

Definition at line 140 of file line_of_sight.h.

Definition at line 141 of file line_of_sight.h.

Definition at line 143 of file line_of_sight.h.

uint8 ICB::_line_of_sight::m_pnSubscribers[LOS_2D_SIZE_PACKED] [private]

Definition at line 145 of file line_of_sight.h.

uint8 ICB::_line_of_sight::m_pnTable[LOS_2D_SIZE_PACKED] [private]

Definition at line 144 of file line_of_sight.h.


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


Generated on Sat Sep 26 2020 05:03:41 for ResidualVM by doxygen 1.7.1
curved edge   curved edge