VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
missileSimObjectDecorator.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 #include <boost/signals2.hpp>
11 
15 {
16 public:
18  virtual ~DtMissileSimObjectDecorator();
19 
23  virtual DtVector targetLocation() const;
24 
26  virtual double distanceSquaredToTarget() const;
27 
29  virtual DtVector worldVectorToTarget() const;
30 
32  virtual bool passedTarget() const;
33 
34  virtual const DtUUID& target() const;
35  virtual const DtUUID& attacker() const;
36 
37  boost::signals2::signal<void ()> signal_targetAttackerChanged;
38 
39 protected:
40  virtual void updateMissileInformation();
41 
42 protected:
47  boost::signals2::scoped_connection myMissileInfoUpdatedConnection;
48 };
49 
51 {
52 public:
53  virtual DtSimObjectDecorator* createDecorator(const DtSimObject* o) const { return new DtMissileSimObjectDecorator(o); };
54  virtual DtLocalObjectDecorator* createDecorator(DtLocalObject* o) const { throw makVrf::DtUnimplementedMethod("The DtMissileDecoratorCreator is not created for the DtLocalObject."); };
55 
56  virtual const char* DecoratorType() const { return "DtMissileDecoratorCreator"; };
57 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
Definition: stateDataTypes.h:23
DtUUID myTarget
Definition: missileSimObjectDecorator.h:44
virtual DtLocalObjectDecorator * createDecorator(DtLocalObject *o) const
Definition: missileSimObjectDecorator.h:54
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
DtVector myTargetPoint
Definition: missileSimObjectDecorator.h:46
This will keep track of the missile target, attacker and have an accessor to distance to target objec...
Definition: missileSimObjectDecorator.h:14
DtSimObjectReference myTargetObject
Definition: missileSimObjectDecorator.h:43
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual DtSimObjectDecorator * createDecorator(const DtSimObject *o) const
Definition: missileSimObjectDecorator.h:53
virtual const char * DecoratorType() const
Definition: missileSimObjectDecorator.h:56
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: simObject.h:88
Definition: missileSimObjectDecorator.h:50
boost::signals2::scoped_connection myMissileInfoUpdatedConnection
Definition: missileSimObjectDecorator.h:47
Definition: decoratorBase.h:57
DtUUID myAttacker
Definition: missileSimObjectDecorator.h:45
Definition: decoratorBase.h:30
boost::signals2::signal< void()> signal_targetAttackerChanged
Definition: missileSimObjectDecorator.h:37
Definition: decoratorBase.h:44
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)