VR-Link API Documentation for HLA 1516
hPointObjEnc.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00007 #if DtHLA 
00008 
00009 #ifndef hPointObjEnc_H_
00010 #define hPointObjEnc_H_
00011 
00012 
00013 #include "hEnvObjEnc.h"
00014 
00018 
00019 class DT_DLL_VL DtPointObjectRepository;
00020 
00023 #define DtDECLARE_POINT_OBJ_ATTR_CHECKER(attrName) \
00024    DtDECLARE_ATTR_CHECKER(DtPointObjectRepository, attrName) 
00025 
00028 #define DtDECLARE_POINT_OBJ_ATTR_ENCODER(attrName) \
00029    DtDECLARE_ATTR_ENCODER(DtPointObjectRepository, attrName) 
00030 
00035 
00036 const double PO_ORIENT_THRESH = 0.00001;
00037 
00038 class DT_DLL_VL DtPointObjectEncoder : public DtEnvironmentObjectEncoder
00039 {
00040 public:
00041 
00043    DtPointObjectEncoder(
00044       DtExerciseConn* exConn,
00045       DtObjClassDesc* classDesc);
00046 
00048    virtual ~DtPointObjectEncoder();
00049 
00051    DtPointObjectEncoder(const DtPointObjectEncoder& orig);
00052 
00054    DtPointObjectEncoder& operator=(const DtPointObjectEncoder& orig);
00055 
00056 public:
00057    
00059    static DtHlaStateEncoder* create(
00060       DtExerciseConn* exConn,
00061       DtObjClassDesc* classDesc);
00062 
00063 protected:
00064    
00066    DtDECLARE_POINT_OBJ_ATTR_CHECKER(Location);
00067    DtDECLARE_POINT_OBJ_ATTR_CHECKER(Orientation);
00068    DtDECLARE_POINT_OBJ_ATTR_CHECKER(PercentComplete);
00069    DtDECLARE_POINT_OBJ_ATTR_CHECKER(DamagedAppearance);
00070    DtDECLARE_POINT_OBJ_ATTR_CHECKER(ObjectPreDistributed);
00071    DtDECLARE_POINT_OBJ_ATTR_CHECKER(Deactivated);
00072    DtDECLARE_POINT_OBJ_ATTR_CHECKER(Smoking);
00073    DtDECLARE_POINT_OBJ_ATTR_CHECKER(Flaming);
00074 
00075    DtDECLARE_POINT_OBJ_ATTR_ENCODER(Location);
00076    DtDECLARE_POINT_OBJ_ATTR_ENCODER(Orientation);
00077    DtDECLARE_POINT_OBJ_ATTR_ENCODER(PercentComplete);
00078    DtDECLARE_POINT_OBJ_ATTR_ENCODER(DamagedAppearance);
00079    DtDECLARE_POINT_OBJ_ATTR_ENCODER(ObjectPreDistributed);
00080    DtDECLARE_POINT_OBJ_ATTR_ENCODER(Deactivated);
00081    DtDECLARE_POINT_OBJ_ATTR_ENCODER(Smoking);
00082    DtDECLARE_POINT_OBJ_ATTR_ENCODER(Flaming);
00083 };
00084 
00090 #define DtDEFINE_SIMPLE_POINT_OBJ_ATTR_ENCODER( \
00091    attrName, netType, inspector) \
00092    DtDEFINE_SIMPLE_ATTR_ENCODER(DtPointObjectEncoder, \
00093       DtPointObjectRepository, \
00094       attrName, netType, inspector)
00095 
00101 #define DtDEFINE_SIMPLE_POINT_OBJ_ATTR_CHECKER( \
00102    attrName, inspector) \
00103    DtDEFINE_SIMPLE_ATTR_CHECKER(DtPointObjectEncoder, \
00104       DtPointObjectRepository, \
00105       attrName, inspector)
00106 
00107 #endif   //hPointObjEnc_H_
00108 
00109 #endif   //DtHLA
00110 

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)