VR-Link API Documentation for HLA 1.3
radioXmitSR.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *******************************************************************************/
00007 
00008 #ifndef DtRadioTransmitterRepository_H_
00009 #define DtRadioTransmitterRepository_H_
00010 
00011 
00012 #include "embedSystemSR.h"
00013 #include "antPatRec.h"
00014 #include "radioMod.h"
00015 #include <vlpi/thresholder.h>
00016 
00017 #ifndef DT_ENUM_LONG_WORD_PORTION
00018 #define DT_ENUM_LONG_WORD_PORTION
00019 enum DtLongWordPortion
00020 {
00021    DtUpperWord,
00022    DtLowerWord
00023 };
00024 #endif
00025 
00026 
00029 class DT_DLL_VL DtRadioTransmitterRepository : 
00030    public DtEmbeddedSystemRepository
00031 {
00032 public:
00033 
00035    DtRadioTransmitterRepository();
00036 
00038    virtual ~DtRadioTransmitterRepository();
00039 
00041    DtRadioTransmitterRepository(const DtRadioTransmitterRepository& orig);
00042 
00044    DtRadioTransmitterRepository& operator=(
00045       const DtRadioTransmitterRepository& orig);
00046 
00048    virtual DtStateRepository* clone(bool copy) const; 
00049 
00051    virtual void setAntennaPattern(const DtAntennaPatternRecord& rec);
00053    virtual const DtAntennaPatternRecord& antennaPattern() const;
00054 
00056    virtual void setAntennaPatternType(DtAntennaPatternType pattern);
00058    virtual DtAntennaPatternType antennaPatternType() const;
00059 
00061    virtual void setCryptoKeyId(DtU16 key);
00063    virtual DtU16 cryptoKeyId() const;
00064 
00066    virtual void setCryptoMode(DtCryptoMode mode);
00068    virtual DtCryptoMode cryptoMode() const;
00069 
00071    virtual void setCryptoSystem(DtRadioCryptoSystem system);
00072    virtual DtRadioCryptoSystem cryptoSystem() const;
00073 
00075    virtual void setDetailedModulationType(DtDetailedModulationType modulation);
00077    virtual DtDetailedModulationType detailedModulationType() const;
00078 
00081    virtual void setFrequency(unsigned long upper, unsigned long lower);
00082    virtual void setFrequency(unsigned long freq);
00083  
00085    virtual unsigned long frequency(
00086       DtLongWordPortion upperLower = DtLowerWord) const;
00087    
00090    virtual void setStreamTag(unsigned long upper, unsigned long lower);
00091    virtual void setStreamTag(unsigned long st);
00092  
00094    virtual unsigned long streamTag(
00095       DtLongWordPortion upperLower = DtLowerWord) const;
00096 
00098    virtual void setFrequencyBandwidth(DtFloat32 bandwidth);
00100    virtual DtFloat32 frequencyBandwidth() const;
00101 
00103    virtual void setFrequencyHopInUse(bool hopInUse);
00105    virtual bool frequencyHopInUse() const;
00106 
00108    virtual void setInputSource(DtRadioInputSource source);
00110    virtual DtRadioInputSource inputSource() const;
00111 
00113    virtual void setModulationParams(
00114       const void *networkRepresentation, DtU8 size);
00115    virtual const void *modulationParamsAddr() const;   
00116    virtual DtU8 modulationParamsLength() const;
00117 
00119    virtual void setMajorModulationType(DtRadioMajorModulation modulation);
00121    virtual DtRadioMajorModulation majorModulationType() const;
00122 
00124    virtual void setModulationSystemType(DtRadioSystem system);
00126    virtual DtRadioSystem modulationSystemType() const;
00127 
00129    virtual void setPower(DtFloat32 power);
00131    virtual DtFloat32 power() const;
00132 
00135    virtual void setPsuedoNoiseSpectrumInUse(bool inUse);
00138    virtual bool psuedoNoiseSpectrumInUse() const;
00139 
00141    virtual void setPseudoNoiseSpectrumInUse(bool inUse);
00143    virtual bool pseudoNoiseSpectrumInUse() const;
00144 
00146    virtual void setRadioId(unsigned int number);
00148    virtual unsigned int radioId() const;
00149 
00151    virtual void setRadioEntityType(const DtRadioEntityType& type);
00153    virtual const DtRadioEntityType& radioEntityType() const;
00154 
00156    virtual void setTimeHopInUse(bool inUse);
00158    virtual bool timeHopInUse() const;
00159 
00161    virtual void setTransmitState(DtRadioTransmitState state);
00163    virtual DtRadioTransmitState transmitState() const;
00164 
00166    virtual void setWorldAntennaLoc(const DtVector& location);
00168    virtual const DtVector& worldAntennaLoc() const;
00169 
00172    virtual void setRelativeAntennaLoc(const DtVector& location);
00174    virtual const DtVector& relativeAntennaLoc() const;
00175 
00176 
00192 
00193 
00194 
00198    virtual void setSpreadSpectrumType(DtSpreadSpectrumType ty);
00200    virtual DtSpreadSpectrumType spreadSpectrumType() const;
00201 
00203    virtual void setFHNetId(DtU16 id);
00205    virtual DtU16 fHNetId() const;
00206 
00208    virtual void setHopSetId(DtU16 id);
00209    virtual DtU16 hopSetId() const;
00210 
00212    virtual void setLockoutSetId(DtU16 id);
00214    virtual DtU16 lockoutSetId() const;
00215 
00217    virtual void setTransmissionSecurityKey(DtU16 key);
00219    virtual DtU16 transmissionSecurityKey() const;
00220 
00222    virtual void setFHSynchronizationTimeOffset(DtU32 id);
00224    virtual DtU32 fHSynchronizationTimeOffset() const;
00225 
00227    virtual void setClearChannel(DtU8 chan);
00229    virtual DtU8 clearChannel() const;
00230 
00232    virtual void setStartOfMessage(DtStartMessage mess);
00234    virtual DtStartMessage startOfMessage() const;
00236 
00237 
00238 
00247    
00248 
00250 
00251    virtual void setFidelityLevel(DtU16 level);
00253    virtual DtU16 fidelityLevel() const;
00254    
00258    virtual void setCommunicationMode(DtLink16CommunicationMode mode);
00260    virtual DtLink16CommunicationMode communicationMode() const;
00261 
00263    virtual void setPrimaryMode(DtU16 mode);
00265    virtual DtU16 primaryMode() const;
00266 
00268    virtual void setSecondaryMode(DtU16 mode);
00270    virtual DtU16 secondaryMode() const;
00271 
00273    virtual void setSynchronizationState(DtU16 val);
00275    virtual DtU16 synchronizationState() const;
00276 
00278    virtual void setNetworkSynchronizationId(int val);
00280    virtual int networkSynchronizationId() const;
00282 
00283    virtual void printData() const;
00284    virtual void printDataToStream(std::ostream& stream) const;
00285 
00286    virtual DtThresholder* thresholder();
00287    virtual const DtThresholder& thresholder() const;
00288 
00289 public:
00290 
00291    static DtRadioTransmitterRepository* create();
00292 
00293 protected:
00294 
00295    DtAntennaPatternType       myAntennaPatternType;
00296    DtU16                      myCryptoKeyId;
00297    DtCryptoMode               myCryptoMode;
00298    DtRadioCryptoSystem        myCryptoSystem;
00299    DtDetailedModulationType   myDetailedModulation;
00300    unsigned long              myFreqHi; 
00301    unsigned long              myFreqLo; 
00302    DtU32                      myStreamTagHi; 
00303    DtU32                      myStreamTagLo; 
00304    DtFloat32                  myFrequencyBandwidth;
00305    bool                       myFrequencyHopInUse;
00306    DtRadioInputSource         myInputSource;
00307    char*                      myModulationParamsAddr;
00308    DtU8                       myModulationParamsLength;
00309    DtAntennaPatternRecord*    myAntPat;
00310    DtRadioMajorModulation     myMajorModulationType;
00311    DtRadioSystem              myModulationSystem;
00312    DtFloat32                  myPower;
00313    bool                       myPseudoNoiseSpectrumInUse;
00314    DtU16                      myTransmitterRadioNumber;
00315    DtRadioEntityType          myRadioEntityType;
00316    bool                       myTimeHopInUse;
00317    DtRadioTransmitState       myTransmitState;
00318    DtVector                   myWorldLocation;
00319    DtSpreadSpectrumType       mySpreadSpectrumType;
00320    DtThresholder              myThresholder;
00321    DtU16                      myFHNetId;
00322    DtU16                      myHopSetId;
00323    DtU16                      myLockoutSetId;
00324    DtU16                      myTransmissionSecurityKey;
00325    DtU32                      myFHSynchronizationTimeOffset;
00326    DtU8                       myClearChannel;
00327    DtStartMessage             myStartOfMessage;
00328    DtU16                      myFidelityLevel;
00329    DtLink16CommunicationMode  myCommunicationMode;
00330    DtU16                      myPrimaryMode;
00331    DtU16                       mySecondaryMode;
00332    DtU16                       mySynchronizationState;
00333    int                        myNetworkSynchronizationId;
00334 };
00335 
00336 #endif   //DtRadioTransmitterRepository_H_
00337 

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)