VR-Link API Documentation for HLA 1516
tDetInter.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00007 #ifndef tDetInter_H_
00008 #define tDetInter_H_
00009 
00010 #if DtTENA
00011 
00012 #include "tInteraction.h"
00013 #include <vlpi/entityIdentifier.h>
00014 #include "globalObjDes.h"
00015 
00019 
00020 class DT_DLL_VL DtFireInteraction;
00021 class DT_DLL_VL DtDetonationInteraction;
00022 
00024 typedef void (*DtDetonationInteractionCb)(DtDetonationInteraction* inter, void* usr);
00025 
00026 
00030 class DT_DLL_VL DtDetonationInteraction : public DtInteraction
00031 {
00032 public:
00034    DtDetonationInteraction();
00035 
00037    virtual ~DtDetonationInteraction();
00038 
00040    DtDetonationInteraction(const DtDetonationInteraction& orig);
00041 
00043    DtDetonationInteraction& operator=(
00044       const DtDetonationInteraction& orig);
00045 
00047    DtDetonationInteraction(const DtFireInteraction& fire);
00048    
00050    virtual void setAttackerId(const DtGlobalObjectDesignator& id);
00051 
00053    virtual const DtGlobalObjectDesignator& attackerId() const;
00054 
00056    virtual void setTargetId(const DtGlobalObjectDesignator& id);
00057 
00059    virtual const DtGlobalObjectDesignator& targetId() const;
00060 
00063    virtual void setWorldLocation(const DtVector& loc);
00064 
00066    virtual const DtVector& worldLocation() const;
00067 
00070    virtual void setVelocity(const DtVector& vel);
00071 
00073    virtual const DtVector& velocity() const;
00074 
00076    virtual void setMunitionId(const DtGlobalObjectDesignator& id);
00077 
00079    virtual const DtGlobalObjectDesignator& munitionId() const;
00080 
00082    virtual void setMunitionType(const DtEntityType& munType);
00083 
00085    virtual const DtEntityType& munitionType() const;
00086 
00088    virtual void setResult(DtDetonationResult res);
00089 
00091    virtual DtDetonationResult result() const;
00092 
00094    virtual void setWarheadType(DtWarheadType whType);
00095 
00097    virtual DtWarheadType warheadType() const;
00098 
00099    virtual void setWeaponFireMessageId(const DtGlobalObjectDesignator& mesId);
00100 
00101    virtual const DtGlobalObjectDesignator& weaponFireMessageId() const;
00102 
00104    virtual const char* name() const;
00105 
00107    virtual void printData() const;
00108 
00110    virtual void printDataToStream(std::ostream& stream) const;
00111 
00112 public:
00113 
00116    static DtInteraction* create();
00117 
00120    static void addCallback(DtExerciseConn* conn,
00121       DtDetonationInteractionCb cb, void* usr);
00122 
00124    static void removeCallback(DtExerciseConn* conn,
00125       DtDetonationInteractionCb cb, void* usr);
00126 
00127 
00128 protected:
00129    DtGlobalObjectDesignator myAttackerId;
00130    DtGlobalObjectDesignator myTargetId;
00131    DtVector                 myWorldLocation;
00132    DtVector                 myVelocity;
00133    DtGlobalObjectDesignator myMunitionId;
00134    DtEntityType             myMunitionType;
00135    DtDetonationResult       myResult;
00136    DtWarheadType            myWarheadType;
00137    DtGlobalObjectDesignator myWeaponFireMessageId;
00138 };
00139 
00140 #endif
00141 #endif
00142 
00143 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)