Creates the How To Use PDF file on the users computer at the folder specifiec by the File_Install_Work_Folder
Install_Requied_Files_Root( File_Install_Work_Folder [, At_home:= 0])
This should contain the full file path of the Root script working folder
File_Install_Work_Folder = C:\SerialMacro Function: Install_Requied_Files_Root( File_Install_Work_Folder)
0: Default tf nothing is in that location on the function
Install_Requied_Files_Root( File_Install_Work_Folder)
1: Function will use the alternate Fileinstall location
Install_Requied_Files_Root( File_Install_Work_Folder, "1")
The Errorlevel for the Fileinstall
function
File_Install_Work_Folder = C:\SerialMacro Result := Install_Requied_Files_Root( File_Install_Work_Folder)
Result is 0 if the file was created Result is 1 if the file was not able to be created
Uses the AutoHotkey built in function of FileInstall
to combine a file with the compiled version of the program.
The 'At_home' optional variable is here because I got tired of having errors when testing at home, and instead of having to change the orginal file location from
C:\Users\karnijs\Desktop\Autohotkey\02_Effectivity Macro\1.4\Install_Files
to
E:\Git\Effectivity_Macro\1.4\Install_Files\
when I was testing from home. I made it so that the program knows which computer I am on automatically. In the beginning of the program, I have the following code:
If A_UserName = karnijs At_home = 0 else At_home = 1
If I am on the work computer it will detect my username, or else it will be the home computer. I did this because you cannot have a variable for the initlal location of the file for FileInstall
. This is because AutohotKey does not know where the file is to install on compile if there is a variable in that location. Just saved me some time in the long run.
For more information on the FileInstall
function click on the link (Internet Connection Required) below:
FileInstall


|
XPMP2
X-Plane multiplayer library 2 - using instancing
|
Defined by FMOD. More...
Classes | |
| struct | CSLModelInfo_t |
| Collates some information on the CSL model. More... | |
| class | Aircraft |
| Actual representation of all aircraft in XPMP2. More... | |
| class | XPMP2Error |
| XPMP2 Exception class, e.g. thrown if there are no CSL models or duplicate modeS_ids when creating an Aircraft. More... | |
| struct | RemoteDataRefPackTy |
| Definition for how to map dataRef values to (u)int8, ie. to an integer range of 8 bits. More... | |
| struct | RemoteMsgBaseTy |
| Message header, identical for all message types. More... | |
| struct | RemoteMsgBeaconTy |
| "Beacon of Interest", ie. some message on the multicast just to wake up sender More... | |
| struct | RemoteMsgSettingsTy |
| Settings message, identifying a sending plugin, regularly providing its settings. More... | |
| struct | RemoteAcDetailTy |
| A/C details, packed into an array message. More... | |
| struct | RemoteMsgAcDetailTy |
| A/C detail message, has an inherited header plus an array of XPMP2::RemoteAcDetailTy elements. More... | |
| struct | RemoteAcPosUpdateTy |
| A/C Position updates based on global coordinates. More... | |
| struct | RemoteMsgAcPosUpdateTy |
| A/C detail message, has an inherited header plus an array of XPMP2::RemoteAcDetailTy elements. More... | |
| struct | RemoteAcAnimTy |
| A/C animation dataRef changes. More... | |
| struct | RemoteMsgAcAnimTy |
| A/C animation dataRef message, has an inherited header plus an array of variable sized XPMP2::RemoteAcAnimTy elements. More... | |
| struct | RemoteAcRemoveTy |
| A/C Removal only includes the plane id, structure required for msgSize() function. More... | |
| struct | RemoteMsgAcRemoveTy |
| A/C removal message, an array of plane ids. More... | |
| struct | RemoteCBFctTy |
| Function prototypes for callback functions to handle the received messages. More... | |
| struct | multiDataRefsTy |
| Keeps the dataRef handles for one of the up to 19 legacy AI/Multiplayer slots ("sim/multiplayer/position") More... | |
| struct | infoDataRefsTy |
| Keeps the dataRef handles for one of the up to 63 shared data slots ("sim/multiplayer/position/plane#...") More... | |
| union | TcasLightsTy |
| A structure simplifying communicaton with sim/cockpit2/tcas/targets/position/lights. More... | |
| class | LegacyAircraft |
| This class helps creating aircraft via the legacy global functions. It provides standard implementations of the abstract callbacks. More... | |
| class | CSLObj |
One .obj file of a CSL model (of which it can have multiple) More... | |
| class | CSLModel |
| Represetns a CSL model as it is saved on disk. More... | |
| class | NetRuntimeError |
| Exception raised by XPMP2::SocketNetworking objects. More... | |
| class | SocketNetworking |
| Base class for any socket-based networking. More... | |
| class | UDPReceiver |
| Receives UDP messages. More... | |
| class | UDPMulticast |
| UDP Multicast, always binding to INADDR_ANY. More... | |
| class | TCPConnection |
| Listens to TCP connections and opens a session socket upon connect. More... | |
| struct | InetAddrTy |
| Numerical IP address, used for both ipv4 and ipv6, for ease of handling. More... | |
| struct | Doc8643 |
| Represents a line in the Doc8643.txt file, of which we use only classification and WTC. More... | |
| struct | Obj8DataRefs |
| A pair of strings, first one to search for, second one to replace it with. More... | |
| struct | RemoteAcDetailTy_v0 |
| Version 0 A/C details, packed into an array message. More... | |
| struct | RemoteMsgAcDetailTy_v0 |
| Version 0 A/C detail message, has an inherited header plus an array of XPMP2::RemoteAcDetailTy elements. More... | |
| struct | RmtAcCacheTy |
| Holds a copy of some aircraft data as was sent out last. More... | |
| class | RmtDataBaseTy |
| Base structure for passing information from XP's main thread to the multicast thread. More... | |
| class | RmtDataEnqeueTy |
| Passing information about any data type (like a/c full detail message); the data is contained as copy. More... | |
| class | RmtDataAcAnimTy |
| Animation dataRef requires a special queue data type as each msg element is already of variable length. More... | |
| class | RmtMsgBufTy |
| Helper class to manage the temporary buffers in which the network message are put together. More... | |
| struct | FMOD_10830_ADVANCEDSETTINGS |
| FMOD 1.08.30 version of FMOD_ADVANCEDSETTINGS. More... | |
| struct | SoundDefTy |
| Definition of how sound is handled based on dataRef values (type) More... | |
| class | FmodError |
| Exception class to pass on error information. More... | |
| class | SoundFile |
| Represents a sound file. More... | |
| struct | XPMPPlaneNotifierTy |
| Stores the function and refcon pointer for plane creation/destrcution notifications. More... | |
| struct | GlobVars |
| All global config settings and variables are kept in one structure for convenient access and central definition. More... | |
| union | RmtDataAcAnimTy.__unnamed4__ |
Typedefs | |
| typedef std::map< float, XPMPPlaneID > | mapAcByDistTy |
| Map of Aircrafts, sorted by (priority-biased) distance. More... | |
| typedef std::map< std::string, Aircraft::wakeTy > | mapWakeTy |
| typedef std::map< XPMPPlaneID, Aircraft * > | mapAcTy |
| Map of all aircraft, key is tthe plane id. More... | |
| typedef std::map< std::string, int > | mapStrIntTy |
| a map of a text and a counter More... | |
| typedef std::map< std::string, std::string > | mapCSLPackageTy |
| Map of CSLPackages: Maps an id to the base path (path ends on forward slash) More... | |
| typedef std::list< CSLObj > | listCSLObjTy |
| List of objects. More... | |
| typedef std::pair< std::string, std::string > | pairOfStrTy |
| typedef std::map< std::string, CSLModel > | mapCSLModelTy |
| Map of CSLModels (owning the object), ordered by related group / type. More... | |
| typedef std::multimap< unsigned long, std::pair< CSLModel *, const CSLModel::MatchCritTy * > > | mmapCSLModelPTy |
| Multimap of references to CSLModels and match criteria for matching purposes. More... | |
| typedef std::map< std::string, XPLMMapLayerID > | mapMapLayerIDTy |
| A map holding our layer identifier, indexed by the map's name. More... | |
| typedef int | SOCKET |
| Windows defines SOCKET, so we define it for non-Windows manually. More... | |
| typedef std::map< std::string, int > | mapRelatedTy |
| Map of group membership: ICAO a/c type maps to line in related.txt. More... | |
| typedef std::map< std::string, Doc8643 > | mapDoc8643Ty |
| Map of Doc8643 information, key is the (icao) type code. More... | |
| typedef std::list< Obj8DataRefs > | listObj8DataRefsTy |
| a list of Obj8DataRefs definitions More... | |
| typedef std::map< XPMPPlaneID, RmtAcCacheTy > | mapRmtAcCacheTy |
| Defines a map with the plane id as key and the aboce cache structure as payload. More... | |
| typedef std::unique_ptr< RmtDataBaseTy > | ptrRmtDataBaseTy |
| Smart pointer to XPMP2::RmtDataBaseTy by which we manage objects of this and derived types. More... | |
| typedef std::queue< ptrRmtDataBaseTy, std::list< ptrRmtDataBaseTy > > | queueRmtDataTy |
| A queue managing the information objects, used to transfer data between main thread and network thread. More... | |
| typedef RmtDataEnqeueTy< RemoteAcDetailTy, RMT_MSG_AC_DETAILED > | RmtDataAcDetailTy |
| A/C Detail queue type. More... | |
| typedef RmtDataEnqeueTy< RemoteAcPosUpdateTy, RMT_MSG_AC_POS_UPDATE > | RmtDataAcPosUpdateTy |
| A/C Position Update queue type. More... | |
| typedef RmtDataEnqeueTy< RemoteAcRemoveTy, RMT_MSG_AC_REMOVE > | RmtDataAcRemoveTy |
| A/C Removal queue type. More... | |
| typedef std::unique_ptr< RmtDataAcAnimTy > | ptrRmtDataAcAnimTy |
| Smart pointer to XPMP2::RmtDataAcAnimTy. More... | |
| typedef std::map< std::string, SoundFile > | mapSoundTy |
| Map of all sounds, indexed by a sound name (type) More... | |
| typedef std::list< XPMPPlaneNotifierTy > | listXPMPPlaneNotifierTy |
Functions | |
| Aircraft * | AcFindByID (XPMPPlaneID _id) |
| Find aircraft by its plane ID, can return nullptr. More... | |
| bool | AcSetDefaultWakeData (const std::string &_wtc, const Aircraft::wakeTy &_wake) |
| (Re)Define default wake turbulence values per WTC More... | |
| std::uint16_t | PJWHash16 (const char *s) |
| Produces a reproducible(!) hash value for strings. More... | |
| CSLModel * | CSLModelByPkgShortId (std::uint16_t _pkgHash, const std::string &_shortId) |
| Find a model by package name hash and short id. More... | |
| template<class T > | |
| constexpr const T & | clamp (const T &v, const T &lo, const T &hi) |
Clamps v between lo and hi : lo if v < lo , hi if hi < v , otherwise v More... | |
| RemoteStatusTy | RemoteGetStatus () |
| Returns the current Remote status. More... | |
| void | RemoteRecvStart (const RemoteCBFctTy &_rmtCBFcts) |
| Starts the listener, will call provided callback functions with received messages. More... | |
| void | RemoteRecvStop () |
| Stops the receiver. More... | |
| void | TwoDDrawLabels () |
| Write the labels of all aircraft. More... | |
| int | CPLabelDrawing (XPLMDrawingPhase, int, void *) |
| Drawing callback, called by X-Plane in every drawing cycle. More... | |
| void | TwoDActivate () |
| Activate actual label drawing, esp. set up drawing callback. More... | |
| void | TwoDDeactivate () |
| Deactivate actual label drawing, esp. stop drawing callback. More... | |
| void | TwoDInit () |
| Initialize the module. More... | |
| void | TwoDCleanup () |
| Grace cleanup. More... | |
| void | AIMultiClearAIDataRefs (multiDataRefsTy &drM, bool bDeactivateToZero) |
| Resets all actual values of the AI/multiplayer dataRefs of one plane to something initial. More... | |
| void | AIMultiClearInfoDataRefs (infoDataRefsTy &drI) |
| Clears the shared info dataRefs. More... | |
| bool | GoTCASOverride () |
| Are we going to new (TCAS override) or the old way? More... | |
| bool | GoTCASWake () |
| Can we use the XP12 wake support system? More... | |
| size_t | AIUpdateMultiplayerDataRefs () |
| The old way: Update Multiplayer dataRefs directly. More... | |
| size_t | AIUpdateTCASTargets () |
| The modern way: Use TCAS override and update TCAS targets. More... | |
| void | AIAssignSlots (size_t fromSlot, size_t toSlot) |
| Assigns slots, ie. planes to places in gSlots. More... | |
| void | AIMultiUpdate () |
| Updates all TCAS target dataRefs, both standard X-Plane, as well as additional shared dataRefs for text publishing. More... | |
| int | AIMultiControlPlaneCount (XPLMDrawingPhase, int inIsBefore, void *) |
| Callback to toggle aircraft count ("TCAS hack") More... | |
| void | AIMultiClearTcasDataRefs () |
| Clears the key (mode_s) of the TCAS target dataRefs. More... | |
| void | AIMultiInitAllDataRefs (bool bDeactivateToZero) |
| Reset all (controlled) multiplayer dataRef values of all planes. More... | |
| void | AIMultiInformDREs () |
| Inform DRE and DRT of our shared dataRefs. More... | |
| void | AIMultiInit () |
| Initialize the module. More... | |
| void | AIMultiCleanup () |
| Grace cleanup. More... | |
| float | obj_get_float (void *) |
| int | obj_get_float_array (void *, float *, int, int inCount) |
| See obj_get_float() More... | |
| void | AcInit () |
| Initialize the module. More... | |
| void | AcCleanup () |
| Grace cleanup, esp. remove all aircraft. More... | |
| bool | ContrailInit () |
| Initialize the Contrail module and load the Contrail object. More... | |
| void | ContrailCleanup () |
| Graceful shutdown. More... | |
| std::string | CSLModelGetKeyStr (int _related, const std::string &_type, const std::string &_id) |
| std::string | CSLModelsConvPackagePath (const std::string &pkgPath, int lnNr, bool bPkgOptional=false) |
| Turn a relative package path into a full path. More... | |
| void | CSLModelsAdd (CSLModel &_csl) |
| Adds a readily defined CSL model to all the necessary maps, resets passed-in reference. More... | |
| const char * | CSLModelsReadPkgId (const std::string &path) |
Scans an xsb_aircraft.txt file for EXPORT_NAME entries to fill the list of packages. More... | |
| const char * | CSLModelsFindPkgs (const std::string &_path, std::vector< std::string > &paths, int _maxDepth=5) |
Recursively scans folders to find xsb_aircraft.txt files of CSL packages. More... | |
| void | AcTxtLine_DEPENDENCY (std::vector< std::string > &tokens, int lnNr) |
Process an DEPENDENCY line of an xsb_aircraft.txt file. More... | |
| void | AcTxtLine_OBJ8_AIRCRAFT (CSLModel &csl, const std::string &ln, const std::string &xsbAircraftPath, const std::string &exportName, int lnNr) |
Process an OBJ8_AIRCRAFT line of an xsb_aircraft.txt file. More... | |
| void | AcTxtLine_OBJECT_AIRCRAFT (CSLModel &csl, const std::string &, int) |
Process an OBJECT or AIRCRAFT line of an xsb_aircraft.txt file (which are no longer supported) More... | |
| void | AcTxtLine_OBJ8 (CSLModel &csl, std::vector< std::string > &tokens, int lnNr) |
| void | AcTxtLine_VERT_OFFSET (CSLModel &csl, std::vector< std::string > &tokens, int lnNr) |
Process an VERT_OFFSET line of an xsb_aircraft.txt file. More... | |
| void | AcTxtLine_OFFSET (CSLModel &csl, std::vector< std::string > &tokens, int lnNr) |
| void | AcTxtLine_MATCHES (CSLModel &csl, std::vector< std::string > &tokens, int lnNr) |
Process an ICAO, AIRLINE, LIVERY, or MATCHES line of an xsb_aircraft.txt file. More... | |
| int | StrCntString (const mapStrIntTy &m, std::string &s) |
| Compiles a string from a map of string->int like "(A320 x 5, A388 x 12)". More... | |
| const char * | CSLModelsProcessAcFile (const std::string &path) |
Process one xsb_aircraft.txt file for importing OBJ8 models. More... | |
| void | CSLModelsInit () |
| Initialization. More... | |
| void | CSLModelsCleanup () |
| Grace cleanup. More... | |
| const char * | CSLModelsLoad (const std::string &_path, int _maxDepth=5) |
| Read the CSL Models found in the given path and below. More... | |
| CSLModel * | CSLModelById (const std::string &_cslId, mapCSLModelTy::iterator *_pOutIter=nullptr) |
| Find a model by unique id. More... | |
| CSLModel * | CSLModelByKey (const std::string &_cslKey, mapCSLModelTy::iterator *_pOutIter=nullptr) |
| Find a model by (even more) unique key. More... | |
| template<class IteratorT > | |
| IteratorT | iterRnd (IteratorT lower, IteratorT upper) |
Returns any random value in the range [cslLower; cslUpper) , or upper if there is no value in that range. More... | |
| bool | CSLFindMatch (const std::string &_type, const std::string &_airline, const std::string &_livery, bool bIgnoreNoMatch, int &quality, CSLModel *&pModel) |
| Tries finding a match using both aircraft and Doc8643 attributes. More... | |
| int | CSLModelMatching (const std::string &_type, const std::string &_airline, const std::string &_livery, CSLModel *&pModel) |
| Find a matching model. More... | |
| bool | IsInRect (float x, float y, const float bounds_ltrb[4]) |
| Tests if x/y lies within the rect, given as a float[4] array. More... | |
| void | MapPrepareCacheCB (XPLMMapLayerID, const float *inTotalMapBoundsLeftTopRightBottom, XPLMMapProjectionID projection, void *) |
| Prepare map drawing information. More... | |
| void | MapIconDrawingCB (XPLMMapLayerID inLayer, const float *inMapBoundsLeftTopRightBottom, float, float mapUnitsPerUserInterfaceUnit, XPLMMapStyle, XPLMMapProjectionID projection, void *refcon) |
| Actually draw the icons into the map. More... | |
| void | MapLabelDrawingCB (XPLMMapLayerID inLayer, const float *inMapBoundsLeftTopRightBottom, float, float mapUnitsPerUserInterfaceUnit, XPLMMapStyle, XPLMMapProjectionID projection, void *refcon) |
| Actually draw the labels into th emap. More... | |
| void | MapDeleteCB (XPLMMapLayerID inLayer, void *) |
| Called when a map is about to be deleted. More... | |
| void | MapLayerCreate (const char *mapIdentifier) |
| Create our map layer for the given map. More... | |
| void | MapCreateAll () |
| Loop all existing maps and create our map layer for them. More... | |
| void | MapDestroyAll () |
| Remove all our map layers. More... | |
| void | MapCreateCB (const char *mapIdentifier, void *) |
| Callback called when a map is created. We then need to add our layer to it. More... | |
| void | MapInit () |
| Initialize the module. More... | |
| void | MapCleanup () |
| Grace cleanup. More... | |
| const std::vector< InetAddrTy > & | NetwGetLocalAddresses () |
| Return all local addresses (also cached locally) More... | |
| bool | NetwIsLocalAddr (const InetAddrTy &addr) |
| Is given address a local one? More... | |
| bool | NetwIsLocalAddr (const sockaddr *sa) |
| Is given address a local one? More... | |
| const char * | RelatedLoad (const std::string &_path) |
Read the related.txt file, full path passed in. More... | |
| int | RelatedGet (const std::string &_acType) |
| Find the related group for an ICAO a/c type, 0 if none. More... | |
| const char * | Doc8643Load (const std::string &_path) |
Load the content of the provided Doc8643.txt file. More... | |
| const Doc8643 & | Doc8643Get (const std::string &_type) |
| Return a reference to the matching Doc8643 object. More... | |
| bool | Doc8643IsTypeValid (const std::string &_type) |
| Is the given aircraft type a valid ICAO type as per Doc8643? More... | |
| const char * | Obj8DataRefsLoad (const std::string &_path) |
Load the content of the provided Obj8DataRefs.txt file. More... | |
| std::unique_lock< std::mutex > | glockRmtData (gmutexRmtData) |
| The lock that we keep during handling of the flight loop. More... | |
| bool | RmtSendContinue () |
| Conditions for continued send operation. More... | |
| void | RmtSendProcessQueue () |
| Process the data passed down to us in the queue. More... | |
| void | RmtSendSettings () |
| Send our settings. More... | |
| void | RmtSendLoop () |
| Sending function, ie. we are actively sending data out. More... | |
| void | RmtSendMain () |
| Thread main function for the sender. More... | |
| void | RmtSendBeacon () |
| Sends an Interest Beacon. More... | |
| bool | RmtRecvContinue () |
| Conditions for continued receive operation. More... | |
| void | RmtRecvMain () |
| Thread main function for the receiver. More... | |
| void | RmtStartMCThread (bool bSender) |
| Start the background thread to listen to multicast, to see if anybody is interested in our data. More... | |
| void | RmtStopAll () |
| Stop all threads and communication with the network. More... | |
| void | RemoteInit () |
| Initialize the module. More... | |
| void | RemoteCleanup () |
| Grace cleanup, stops all threads. More... | |
| void | RemoteSenderUpdateStatus () |
| Compares current vs. expected status and takes appropriate action. More... | |
| void | RemoteAcEnqueueStarts (float now) |
| void | RemoteAcEnqueue (const Aircraft &ac) |
| Regularly called from the flight loop callback to send a/c date onto the network. More... | |
| void | RemoteAcEnqueueDone () |
| Informs us that all a/c have been processed: All pending messages to be sent now. More... | |
| void | RemoteAcRemove (const Aircraft &ac) |
| Informs us about an aircraft deletion. More... | |
| void | RemoteAcClearAll () |
| Informs us that there are no more aircraft, clear our caches! More... | |
| FMOD_VECTOR | FmodHeadPitch2Vec (const float head, const float pitch) |
| Convert heading/pitch to normalized x/y/z vector. More... | |
| bool | UseOldFmod () |
| Use pre-v2 FMOD version structures? More... | |
| FMOD_RESULT F_CALLBACK | SoundLogCB (FMOD_DEBUG_FLAGS flags, const char *file, int line, const char *func, const char *message) |
| Callback function called by FMOD for logging purposes. More... | |
| void | SoundLogEnable (bool bEnable=true) |
| Enables/disables FMOD logging. More... | |
| FMOD_CHANNELGROUP * | SoundGetMasterChn () |
Get the FMOD system's master channel group, or nullptr More... | |
| SoundFile * | SoundGetSoundFile (FMOD_CHANNEL *pChn) |
| Get pointer to Sound File that created the channel. More... | |
| bool | SoundIsChnValid (FMOD_CHANNEL *pChn) |
| Is the channel still playing / is it valid? More... | |
| template<class T_ADVSET > | |
| void | SoundSetFmodSettings (T_ADVSET &advSet) |
| Helper functon to set FMOD settings. More... | |
| const char * | SoundEventTxt (Aircraft::SoundEventsTy e) |
| Return a text for the values of Aircraft::SoundEventsTy. More... | |
| bool | SoundInit () |
| Initialize the sound module and load the sounds. More... | |
| void | SoundUpdatesBegin () |
| Prepare for this frame's updates, which are about to start. More... | |
| void | SoundUpdatesDone () |
| Tell FMOD that all updates are done. More... | |
| void | SoundCleanup () |
| Graceful shoutdown. More... | |
| int | PrefsFuncIntDefault (const char *, const char *, int _default) |
| Default config function just always returns the provided default value. More... | |
| bool | ExistsFile (const std::string &filename) |
| Does a file path exist? More... | |
| bool | IsDir (const std::string &path) |
| Is path a directory? More... | |
| bool | CreateDir (const std::string &path) |
| Create directory if it does not exist. More... | |
| bool | CopyFileIfNewer (const std::string &source, const std::string &destDir) |
| Copy file if source is newer or destination missing. More... | |
| std::list< std::string > | GetDirContents (const std::string &path) |
| List of files in a directory (wrapper around XPLMGetDirectoryContents) More... | |
| std::istream & | safeGetline (std::istream &is, std::string &t) |
| Read a line from a text file, no matter if ending on CRLF or LF. More... | |
| const std::string & | GetXPSystemPath () |
| Returns XP's system directory, including a trailing slash. More... | |
| std::string | StripXPSysDir (const std::string &path) |
| If a path starts with X-Plane's system directory it is stripped. More... | |
| void | RemoveExtension (std::string &path) |
| Removes everything after the last dot, the dot including. More... | |
| std::string & | str_tolower (std::string &s) |
| change a std::string to uppercase More... | |
| std::vector< std::string > | str_tokenize (const std::string s, const std::string tokens, bool bSkipEmpty=true) |
| separates string into tokens More... | |
| float | headDiff (float head1, float head2) |
| (Shortest) difference between 2 angles: How much to turn to go from h1 to h2? More... | |
| std::valarray< float > | HeadPitch2Vec (const float head, const float pitch) |
| Convert heading/pitch to normalized x/y/z vector. More... | |
| float | GetMiscNetwTime () |
| Get synched network time from X-Plane (sim/network/misc/network_time_sec) as used in Log.txt. More... | |
| std::string | GetMiscNetwTimeStr (float _time=NAN) |
| Return the network time as a string like used in the XP's Log.txt. More... | |
| const char * | GetGraphicsDriverTxt () |
| Text string for current graphics driver in use. More... | |
| bool | IsPaused () |
| X-Plane in a Pause state? More... | |
| bool | IsViewExternal () |
| Is current X-Plane view an external view (outside a cockpit)? More... | |
| bool | CheckEverySoOften (float &_lastCheck, float _interval, float _now) |
| Convenience function to check on something at most every x seconds. More... | |
| const char * | LogGetString (const char *szFile, int ln, const char *szFunc, logLevelTy lvl, const char *szMsg, va_list args) |
| Returns ptr to static buffer filled with formatted log string. More... | |
| void | LogMsg (const char *szFile, int ln, const char *szFunc, logLevelTy lvl, const char *szMsg,...) XPMP2_FMTARGS(5) |
| Log Text to log file. More... | |
| std::string & | rtrim (std::string &s, const char *t=WHITESPACE) |
| trimming of string (from right) More... | |
| std::string & | ltrim (std::string &s, const char *t=WHITESPACE) |
| trimming of string (from left) More... | |
| std::string & | trim (std::string &s, const char *t=WHITESPACE) |
| trimming of string (from both ends) More... | |
| std::string | leftOf (const std::string &s, const std::string &terminators) |
| Returns everything left of any of terminators. More... | |
| bool | fequal (float a, float b) |
| Are these two float near-equal? (to avoid trying something like a == b) More... | |
| template<class T > | |
| T | rad2deg (const T _rad) |
| Convert radians to degrees, normalized to [0..360) More... | |
| template<class T > | |
| T | deg2rad (const T _deg) |
| Convert degree to radians. More... | |
| template<class T > | |
| T | sqr (const T a) |
| Square. More... | |
| template<class T > | |
| T | dist (const T x1, const T y1, const T z1, const T x2, const T y2, const T z2) |
| Pythagorean distance between two points in a 3-D world. More... | |
| float | atan2deg (float x, float y) |
| atan2 converted to degrees: the angle between (0|0) and the given point More... | |
| float | angleLocCoord (float x1, float z1, float x2, float z2) |
| Angle of line from point (x1|z1) to point (x2|z2) More... | |
| template<class numT > | |
| numT | headNormalize (numT _head) |
| Normalize a heading value to [0..360), works for both float and double values. More... | |
| bool | CheckEverySoOften (float &_lastCheck, float _interval) |
| Convenience function to check on something at most every x seconds. More... | |
| std::string | TOPOSIX (const std::string &p) |
On Lin/Win there is no need for a conversion, but we do treat p now as std::string More... | |
| std::string | FROMPOSIX (const std::string &p) |
On Lin/Win there is no need for a conversion, but we do treat p now as std::string More... | |
| void | XPMPSendNotification (const Aircraft &plane, XPMPPlaneNotification _notification) |
| Send a notification to all observers. More... | |
| const char * | XPMPValidateResourceFiles (const char *resourceDir) |
| Validate all required files are available in the resource directory. More... | |
Variables | |
| constexpr float | RPM_to_RADs = 0.10471975511966f |
| Defined by XPMP2 internally. More... | |
| constexpr double | M_per_FT = 0.3048 |
| Convert feet to meters, e.g. for altitude calculations. More... | |
| constexpr int | M_per_NM = 1852 |
| Convert nautical miles to meters. More... | |
| constexpr double | KT_per_M_per_S = 1.94384 |
| Convert m/s to knots. More... | |
| constexpr float | G_EARTH = 9.80665f |
| standard gravitational acceleration [m/s²] More... | |
| constexpr const char * | REMOTE_SIGNATURE = "TwinFan.plugin.XPMP2.Remote" |
| The signature of the XPMP2 Remote Client. More... | |
| const std::array< RemoteDataRefPackTy, V_COUNT > | REMOTE_DR_DEF |
| An array holding all dataRef packing definitions. More... | |
| struct XPMP2::RemoteMsgBaseTy | PACKED |
| constexpr std::uint8_t | RMT_VER_BEACON = 0 |
| Interest Beacon message version number. More... | |
| constexpr int | REMOTE_SEND_SETTINGS_INTVL = 20 |
| How often to send settings? [s]. More... | |
| constexpr std::uint8_t | RMT_VER_SETTINGS = 0 |
| Setttings message version number. More... | |
| constexpr std::uint8_t | RMT_VER_AC_DETAIL = 3 |
| A/C detail message version number. More... | |
| constexpr std::uint8_t | RMT_VER_AC_DETAIL_2 = 2 |
| constexpr std::uint8_t | RMT_VER_AC_DETAIL_1 = 1 |
| constexpr std::uint8_t | RMT_VER_AC_DETAIL_0 = 0 |
| constexpr std::uint8_t | RMT_VER_AC_POS_UPDATE = 0 |
| A/C Position update message version number. More... | |
| constexpr double | REMOTE_DEGREE_RES = 0.00000001 |
| What is the maximum difference a RemoteAcPosUpdateTy can hold? More... | |
| constexpr double | REMOTE_MAX_DIFF_DEGREE = REMOTE_DEGREE_RES * INT16_MAX |
| maximum degree difference that can be represented in a pos update msg More... | |
| constexpr double | REMOTE_ALT_FT_RES = 0.01 |
| resolution of altitude[ft] updates More... | |
| constexpr double | REMOTE_MAX_DIFF_ALT_FT = REMOTE_ALT_FT_RES * INT16_MAX |
| maximum altitude[ft] difference that can be represented in a pos update msg More... | |
| constexpr float | REMOTE_TIME_RES = 0.0001f |
| resolution of time difference More... | |
| constexpr float | REMOTE_MAX_DIFF_TIME = REMOTE_TIME_RES * UINT16_MAX |
| maximum time difference thatn can be represented in a pos update msg More... | |
| constexpr std::uint8_t | RMT_VER_AC_ANIM = 0 |
| A/C Position update message version number. More... | |
| constexpr std::uint8_t | RMT_VER_AC_REMOVE = 0 |
| A/C removal message version number. More... | |
| constexpr float | FAR_AWAY_VAL_GL = 9999999.9f |
| Don't dare using NAN...but with this coordinate for x/y/z a plane should be far out and virtually invisible. More... | |
| constexpr float | AISLOT_CHANGE_PERIOD = 15.0f |
| How often do we reassign AI slots? [seconds]. More... | |
| constexpr int | AI_PRIO_MULTIPLIER = 10 * M_per_NM |
| How much distance does each AIPrio add? More... | |
| float | F_NULL [10] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f} |
| A constant array of zero values supporting quick array initialization. More... | |
| constexpr int | XPLM_PHASE_AIRPLANES = 25 |
| The drawing phase "xplm_Phase_Airplanes" is deprecated in XP11.50 upwards, but we need it in earlier versions to fake TCAS. More... | |
| const char * | DATA_REF_EDITORS [] |
| std::vector< std::string > | vecDREdataRefStr |
| list of dataRef strings to be send to the editors More... | |
| constexpr size_t | SDR_CSLMODEL_TXT_SIZE = 40 |
| Number of characters to be allowed for CSL model text. More... | |
| XPLMFlightLoopID | gFlightLoopID = nullptr |
| The id of our flight loop callback. More... | |
| std::vector< std::unique_ptr< std::string > > | drStrings |
| std::vector< XPLMDataRef > | ahDataRefs |
| Registered dataRefs. More... | |
| XPLMObjectRef | ghContrailObj = nullptr |
| The one global Contrail object. More... | |
| XPLMDataRef | ghDrContrailLifeTime = nullptr |
| The handle for the registered Contrail LifeTime dataRef. More... | |
| XPLMFlightLoopID | gGarbageCollectionID = nullptr |
| The ids of our garbage collection flight loop callback.  More... | |
| constexpr float | GARBAGE_COLLECTION_TIMEOUT = 180.0f |
| Unload an unused object after how many seconds? More... | |
| constexpr int | MAP_ICON_WIDTH = 3 |
| Dimenson of MapIcon.png. More... | |
| constexpr int | MAP_ICON_HEIGHT = 3 |
| Dimenson of MapIcon.png. More... | |
| constexpr int | MAP_MIN_ICON_SIZE = 40 |
| Minimum icon size in map in UI units. More... | |
| constexpr float | MAP_AC_SIZE = 30.0f |
| Assumed size of an aircraft in m. More... | |
| std::array< const char *, 2 > | ALL_MAPS |
| The list of known maps, which are hard-coded by X-Plane's SDK. More... | |
| constexpr int | SERR_LEN = 100 |
| Maximum length of OS error message. More... | |
| std::recursive_mutex | mtxSocketClose |
| Mutex to ensure closing is done in one thread only to avoid race conditions on deleting the buffer. More... | |
| std::vector< InetAddrTy > | gaddrLocal |
| List of local IP addresses. More... | |
| constexpr SOCKET | INVALID_SOCKET = -1 |
| constexpr int | ERR_CFG_FILE_MAXWARN = 5 |
| Maximum number of warnings during file read before bailing. More... | |
| const Doc8643 | DOC8643_EMPTY |
| constexpr int | REMOTE_RECV_BEACON_INTVL = 15 |
| How often to send an Interest Beacon? [s]. More... | |
| constexpr float | REMOTE_SEND_AC_DETAILS_INTVL = 10.f |
| How often to send full a/c details? [s]. More... | |
| mapRmtAcCacheTy | gmapRmtAcCache |
| Cache for last data sent out to the network. More... | |
| unsigned | gFullUpdDue = 0 |
| What's the full update group that has its turn now? More... | |
| unsigned | gFullUpdLastDone = 0 |
| the last actually processed full update group More... | |
| unsigned | gNxtFullUpdGrpToAssign = 0 |
| What's the next group number to assign to the next a/c? (Assigned will be the value incremented by 1) More... | |
| float | gNow = 0.0f |
| Current network timestamp. More... | |
| float | gNxtTxfTime = 0.0f |
| When to actually process position updates next? More... | |
| queueRmtDataTy | gqueueRmtData |
| the queue for passing data from main to network thread More... | |
| std::condition_variable | gcvRmtData |
| notifies the network thread of available data to be processed More... | |
| std::mutex | gmutexRmtData |
| constexpr int | MC_MAX_ERR =5 |
| after this many errors we no longer try listening More... | |
| std::thread | gThrMC |
| remote listening/sending thread More... | |
| UDPMulticast * | gpMc = nullptr |
| multicast socket for listening/sending (destructor uses locks, which don't work during module shutdown, so can't create a global object due to its exit-time destructor) More... | |
| volatile bool | gbStopMCThread = false |
| Shall the network thread stop? More... | |
| int | gCntMCErr = 0 |
| error counter for network thread More... | |
| float | gSendSettingsLast = 0.0f |
| Timestamp when we sent our settings the last time. More... | |
| RmtMsgBufTy< RemoteAcDetailTy, RMT_MSG_AC_DETAILED, RMT_VER_AC_DETAIL > | gMsgAcDetail |
| A/C Detail message. More... | |
| RmtMsgBufTy< RemoteAcPosUpdateTy, RMT_MSG_AC_POS_UPDATE, RMT_VER_AC_POS_UPDATE > | gMsgAcPosUpdate |
| A/C Position Update message. More... | |
| RmtMsgBufTy< RemoteAcAnimTy, RMT_MSG_AC_ANIM, RMT_VER_AC_ANIM > | gMsgAcAnim |
| A/C Animation dataRefs message. More... | |
| RmtMsgBufTy< RemoteAcRemoveTy, RMT_MSG_AC_REMOVE, RMT_VER_AC_REMOVE > | gMsgAcRemove |
| A/C Removal message. More... | |
| RemoteCBFctTy | gRmtCBFcts |
| The callback function pointers the remote client plugin provided. More... | |
| constexpr int | EXP_COMP_SKIP_CYCLES = 10 |
| In how many cycles to skip expensive computations? More... | |
| constexpr int | FMOD_NUM_VIRT_CHANNELS = 1000 |
| Number of virtual channels during initialization. More... | |
| constexpr float | FMOD_3D_MAX_DIST = 10000.0f |
| Value used for 3D max distance, which doesn't have much of a function for the inverse roll-off model used here. More... | |
| constexpr float | FMOD_LOW_PASS_GAIN = 0.2f |
| Gain used when activating Low Pass filter. More... | |
| GlobVars | glob |
| The one and only global variable structure. More... | |
| const char * | LOG_LEVEL [] |
| constexpr const char * | RSRC_RELATED = "related.txt" |
| constexpr const char * | RSRC_DOC8643 = "Doc8643.txt" |
| constexpr const char * | RSRC_MAP_ICONS = "MapIcons.png" |
| constexpr const char * | RSRC_OBJ8DATAREFS = "Obj8DataRefs.txt" |
| constexpr double | PI = 3.1415926535897932384626433832795028841971693993751 |
| Pi. More... | |
| constexpr float | EPSILON_F = 0.00001f |
| Epsilon, a small number. More... | |
Defined by FMOD.
| union XPMP2::TcasLightsTy |
A structure simplifying communicaton with sim/cockpit2/tcas/targets/position/lights.
| Class Members | ||
|---|---|---|
| struct BitsTy | b | |
| int | i | the full integer value |
| struct XPMP2::FMOD_10830_ADVANCEDSETTINGS |
FMOD 1.08.30 version of FMOD_ADVANCEDSETTINGS.
| union XPMP2::RmtDataAcAnimTy.__unnamed4__ |
| Class Members | ||
|---|---|---|
| char | bufSize[RemoteAcAnimTy::msgSize(V_COUNT)] | a declaration that only makes sure that enough memory is reserved so that XPMP2::RmtDataAcAnimTy::data::v can fill up to max |
| RemoteAcAnimTy | data | The animation dataRef values element. |
| typedef std::list<CSLObj> XPMP2::listCSLObjTy |
List of objects.
| typedef std::list<Obj8DataRefs> XPMP2::listObj8DataRefsTy |
a list of Obj8DataRefs definitions
| typedef std::list<XPMPPlaneNotifierTy> XPMP2::listXPMPPlaneNotifierTy |
| typedef std::map<float,XPMPPlaneID> XPMP2::mapAcByDistTy |
Map of Aircrafts, sorted by (priority-biased) distance.
| typedef std::map<XPMPPlaneID,Aircraft*> XPMP2::mapAcTy |
Map of all aircraft, key is tthe plane id.
| typedef std::map<std::string,CSLModel> XPMP2::mapCSLModelTy |
Map of CSLModels (owning the object), ordered by related group / type.
| typedef std::map<std::string,std::string> XPMP2::mapCSLPackageTy |
Map of CSLPackages: Maps an id to the base path (path ends on forward slash)
| typedef std::map<std::string, Doc8643> XPMP2::mapDoc8643Ty |
Map of Doc8643 information, key is the (icao) type code.
| typedef std::map<std::string, XPLMMapLayerID> XPMP2::mapMapLayerIDTy |
A map holding our layer identifier, indexed by the map's name.
| typedef std::map<std::string, int> XPMP2::mapRelatedTy |
Map of group membership: ICAO a/c type maps to line in related.txt.
| typedef std::map<XPMPPlaneID,RmtAcCacheTy> XPMP2::mapRmtAcCacheTy |
Defines a map with the plane id as key and the aboce cache structure as payload.
| typedef std::map<std::string,SoundFile> XPMP2::mapSoundTy |
Map of all sounds, indexed by a sound name (type)
| typedef std::map<std::string, int> XPMP2::mapStrIntTy |
a map of a text and a counter
| typedef std::map<std::string, Aircraft::wakeTy> XPMP2::mapWakeTy |
| typedef std::multimap<unsigned long,std::pair<CSLModel*,const CSLModel::MatchCritTy*> > XPMP2::mmapCSLModelPTy |
Multimap of references to CSLModels and match criteria for matching purposes.
| typedef std::pair<std::string,std::string> XPMP2::pairOfStrTy |
| typedef std::unique_ptr<RmtDataAcAnimTy> XPMP2::ptrRmtDataAcAnimTy |
Smart pointer to XPMP2::RmtDataAcAnimTy.
| typedef std::unique_ptr<RmtDataBaseTy> XPMP2::ptrRmtDataBaseTy |
Smart pointer to XPMP2::RmtDataBaseTy by which we manage objects of this and derived types.
| typedef std::queue<ptrRmtDataBaseTy,std::list<ptrRmtDataBaseTy> > XPMP2::queueRmtDataTy |
A queue managing the information objects, used to transfer data between main thread and network thread.
A/C Detail queue type.
A/C Position Update queue type.
A/C Removal queue type.
| typedef int XPMP2::SOCKET |
Windows defines SOCKET, so we define it for non-Windows manually.
| enum XPMP2::DR_VALS : std::uint8_t |
The dataRefs provided by XPMP2 to the CSL models.
| Enumerator | |
|---|---|
| V_CONTROLS_GEAR_RATIO |
|
| V_CONTROLS_NWS_RATIO |
|
| V_CONTROLS_FLAP_RATIO |
|
| V_CONTROLS_SPOILER_RATIO |
|
| V_CONTROLS_SPEED_BRAKE_RATIO |
|
| V_CONTROLS_SLAT_RATIO |
|
| V_CONTROLS_WING_SWEEP_RATIO |
|
| V_CONTROLS_THRUST_RATIO |
|
| V_CONTROLS_YOKE_PITCH_RATIO |
|
| V_CONTROLS_YOKE_HEADING_RATIO |
|
| V_CONTROLS_YOKE_ROLL_RATIO |
|
| V_CONTROLS_THRUST_REVERS |
|
| V_CONTROLS_TAXI_LITES_ON |
|
| V_CONTROLS_LANDING_LITES_ON |
|
| V_CONTROLS_BEACON_LITES_ON |
|
| V_CONTROLS_STROBE_LITES_ON |
|
| V_CONTROLS_NAV_LITES_ON |
|
| V_GEAR_NOSE_GEAR_DEFLECTION_MTR |
|
| V_GEAR_TIRE_VERTICAL_DEFLECTION_MTR |
|
| V_GEAR_TIRE_ROTATION_ANGLE_DEG |
|
| V_GEAR_TIRE_ROTATION_SPEED_RPM |
|
| V_GEAR_TIRE_ROTATION_SPEED_RAD_SEC |
|
| V_ENGINES_ENGINE_ROTATION_ANGLE_DEG |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RPM |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RAD_SEC |
|
| V_ENGINES_PROP_ROTATION_ANGLE_DEG |
|
| V_ENGINES_PROP_ROTATION_SPEED_RPM |
|
| V_ENGINES_PROP_ROTATION_SPEED_RAD_SEC |
|
| V_ENGINES_THRUST_REVERSER_DEPLOY_RATIO |
|
| V_ENGINES_ENGINE_ROTATION_ANGLE_DEG1 |
|
| V_ENGINES_ENGINE_ROTATION_ANGLE_DEG2 |
|
| V_ENGINES_ENGINE_ROTATION_ANGLE_DEG3 |
|
| V_ENGINES_ENGINE_ROTATION_ANGLE_DEG4 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RPM1 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RPM2 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RPM3 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RPM4 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RAD_SEC1 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RAD_SEC2 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RAD_SEC3 |
|
| V_ENGINES_ENGINE_ROTATION_SPEED_RAD_SEC4 |
|
| V_MISC_TOUCH_DOWN |
|
| V_COUNT | always last, number of dataRefs XPMP2 pre-defines |
| enum XPMP2::logLevelTy |
Logging level.
State of the X-Plane object: Is it being loaded or available?
| enum XPMP2::RemoteCfgTy : int |
| enum XPMP2::RemoteMsgTy : std::uint8_t |
Message type.
| enum XPMP2::RemoteStatusTy : unsigned |
State of remote communcations.
| void XPMP2::AcCleanup | ( | ) |
Grace cleanup, esp. remove all aircraft.
| Aircraft * XPMP2::AcFindByID | ( | XPMPPlaneID | _id | ) |
Find aircraft by its plane ID, can return nullptr.
| void XPMP2::AcInit | ( | ) |
Initialize the module.
| bool XPMP2::AcSetDefaultWakeData | ( | const std::string & | _wtc, |
| const Aircraft::wakeTy & | _wake | ||
| ) |
(Re)Define default wake turbulence values per WTC
| void XPMP2::AcTxtLine_DEPENDENCY | ( | std::vector< std::string > & | tokens, |
| int | lnNr | ||
| ) |
Process an DEPENDENCY line of an xsb_aircraft.txt
file.
| void XPMP2::AcTxtLine_MATCHES | ( | CSLModel & | csl, |
| std::vector< std::string > & | tokens, | ||
| int | lnNr | ||
| ) |
Process an ICAO, AIRLINE, LIVERY, or MATCHES line of an xsb_aircraft.txt
file.
| void XPMP2::AcTxtLine_OBJ8 | ( | CSLModel & | csl, |
| std::vector< std::string > & | tokens, | ||
| int | lnNr | ||
| ) |
Process an OBJ8 line of an xsb_aircraft.txt
file We don't care what type of object it is (ignoring the 1st parameter)
| void XPMP2::AcTxtLine_OBJ8_AIRCRAFT | ( | CSLModel & | csl, |
| const std::string & | ln, | ||
| const std::string & | xsbAircraftPath, | ||
| const std::string & | exportName, | ||
| int | lnNr | ||
| ) |
Process an OBJ8_AIRCRAFT line of an xsb_aircraft.txt
file.
| void XPMP2::AcTxtLine_OBJECT_AIRCRAFT | ( | CSLModel & | csl, |
| const std::string & | , | ||
| int | |||
| ) |
Process an OBJECT or AIRCRAFT line of an xsb_aircraft.txt
file (which are no longer supported)
| void XPMP2::AcTxtLine_OFFSET | ( | CSLModel & | csl, |
| std::vector< std::string > & | tokens, | ||
| int | lnNr | ||
| ) |
Process an OFFSET line of a PilotEdge xsb_aircraft.txt
file, actually its 3rd parameter only (we still don't know what the first 2 are)
| void XPMP2::AcTxtLine_VERT_OFFSET | ( | CSLModel & | csl, |
| std::vector< std::string > & | tokens, | ||
| int | lnNr | ||
| ) |
Process an VERT_OFFSET line of an xsb_aircraft.txt
file.
| void XPMP2::AIAssignSlots | ( | size_t | fromSlot, |
| size_t | toSlot | ||
| ) |
Assigns slots, ie. planes to places in gSlots.
Called in several passes as to make sure that the lowest n slots are occupied by the closest n planes.
| void XPMP2::AIMultiCleanup | ( | ) |
Grace cleanup.
Make sure we aren't in control, then Unshare the shared dataRefs
| void XPMP2::AIMultiClearAIDataRefs | ( | multiDataRefsTy & | drM, |
| bool | bDeactivateToZero | ||
| ) |
Resets all actual values of the AI/multiplayer dataRefs of one plane to something initial.
| void XPMP2::AIMultiClearInfoDataRefs | ( | infoDataRefsTy & | drI | ) |
Clears the shared info dataRefs.
| void XPMP2::AIMultiClearTcasDataRefs | ( | ) |
Clears the key (mode_s) of the TCAS target dataRefs.
| int XPMP2::AIMultiControlPlaneCount | ( | XPLMDrawingPhase | , |
| int | inIsBefore, | ||
| void * | |||
| ) |
Callback to toggle aircraft count ("TCAS hack")
We use AI Aircraft to simulate TCAS blibs, but we don't want these AI Aircraft to actually draw. So during aircraft drawing phase we tell X-Plane there are no AI planes, afterwards we put the correct number back
| void XPMP2::AIMultiInformDREs | ( | ) |
Inform DRE and DRT of our shared dataRefs.
| void XPMP2::AIMultiInit | ( | ) |
Initialize the module.
Fetches all dataRef handles for all dataRefs of all up to 19 AI/multiplayer slots
| void XPMP2::AIMultiInitAllDataRefs | ( | bool | bDeactivateToZero | ) |
Reset all (controlled) multiplayer dataRef values of all planes.
| void XPMP2::AIMultiUpdate | ( | ) |
Updates all TCAS target dataRefs, both standard X-Plane, as well as additional shared dataRefs for text publishing.
| size_t XPMP2::AIUpdateMultiplayerDataRefs | ( | ) |
The old way: Update Multiplayer dataRefs directly.
| size_t XPMP2::AIUpdateTCASTargets | ( | ) |
The modern way: Use TCAS override and update TCAS targets.
|
inline |
Angle of line from point (x1|z1) to point (x2|z2)
|
inline |
atan2 converted to degrees: the angle between (0|0) and the given point
|
inline |
Convenience function to check on something at most every x seconds.
| _lastCheck | Provide a float which holds the time of last check (init with 0.0f ) |
| _interval | [seconds] How often to perform the check? |
true
if more than _interval
time has passed since _lastCheck
| bool XPMP2::CheckEverySoOften | ( | float & | _lastCheck, |
| float | _interval, | ||
| float | _now | ||
| ) |
Convenience function to check on something at most every x seconds.
| _lastCheck | Provide a float which holds the time of last check (init with 0.0f ) |
| _interval | [seconds] How often to perform the check? |
| _now | Current time, possibly from a call to GetTotalRunningTime() |
true
if more than _interval
time has passed since _lastCheck
|
constexpr |
Clamps v
between lo
and hi
: lo
if v
< lo
, hi
if hi
< v
, otherwise v
| void XPMP2::ContrailCleanup | ( | ) |
Graceful shutdown.
| bool XPMP2::ContrailInit | ( | ) |
Initialize the Contrail module and load the Contrail object.
Has a quick exit if already initialized or has already failed to initialize
| bool XPMP2::CopyFileIfNewer | ( | const std::string & | source, |
| const std::string & | destDir | ||
| ) |
Copy file if source is newer or destination missing.
| int XPMP2::CPLabelDrawing | ( | XPLMDrawingPhase | , |
| int | , | ||
| void * | |||
| ) |
Drawing callback, called by X-Plane in every drawing cycle.
| bool XPMP2::CreateDir | ( | const std::string & | path | ) |
Create directory if it does not exist.
| bool XPMP2::CSLFindMatch | ( | const std::string & | _type, |
| const std::string & | _airline, | ||
| const std::string & | _livery, | ||
| bool | bIgnoreNoMatch, | ||
| int & | quality, | ||
| CSLModel *& | pModel | ||
| ) |
Tries finding a match using both aircraft and Doc8643 attributes.
Each attribute is represented by a bit in a bit mask. Lower priority attributes are represented by low value bits, and vice versa high prio match criteria by high value bits. The bit is 0 if the attribute matches and 1 if not. The resulting numeric value of the bitmask is considered the match quality: The lower the number the better the quality.
| CSLModel * XPMP2::CSLModelById | ( | const std::string & | _cslId, |
| mapCSLModelTy::iterator * | _pOutIter = nullptr |
||
| ) |
Find a model by unique id.
| _cslId | The model's unique id to search for (package name/short id) | |
| [out] | _pOutIter | Optional pointer to an iterator variable, receiving the iterator position of the found model |
| CSLModel * XPMP2::CSLModelByKey | ( | const std::string & | _cslKey, |
| mapCSLModelTy::iterator * | _pOutIter = nullptr |
||
| ) |
Find a model by (even more) unique key.
| _cslKey | The model's unique key into the map | |
| [out] | _pOutIter | Optional pointer to an iterator variable, receiving the iterator position of the found model |
| CSLModel * XPMP2::CSLModelByPkgShortId | ( | std::uint16_t | _pkgHash, |
| const std::string & | _shortId | ||
| ) |
Find a model by package name hash and short id.
This approach is used by the remote client to safe network bandwith. If an exact match with pkgHash
and shortID
is not found, then a model matching the short id alone is returned if available.
| std::string XPMP2::CSLModelGetKeyStr | ( | int | _related, |
| const std::string & | _type, | ||
| const std::string & | _id | ||
| ) |
| int XPMP2::CSLModelMatching | ( | const std::string & | _type, |
| const std::string & | _airline, | ||
| const std::string & | _livery, | ||
| CSLModel *& | pModel | ||
| ) |
Find a matching model.
Matching happens usually in just one pass by calling CSLFindMatch().
The only exception is if the passed-in aircraft type is not an official ICAO type (which is what doc8643-matching bases on). In that case, the first pass is done without doc8643-matching. If that pass found no actual match, then there is a second pass based on the default ICAO type.
| _type | ICAO aircraft type like "A319" | |
| _airline | ICAO airline code like "DLH" | |
| _livery | Any specific livery code, in LiveTraffic e.g. the tail number | |
| [out] | pModel | Receives the pointer to the matching CSL model, or NULL if nothing found |
| void XPMP2::CSLModelsAdd | ( | CSLModel & | _csl | ) |
Adds a readily defined CSL model to all the necessary maps, resets passed-in reference.
| void XPMP2::CSLModelsCleanup | ( | ) |
Grace cleanup.
| std::string XPMP2::CSLModelsConvPackagePath | ( | const std::string & | pkgPath, |
| int | lnNr, | ||
| bool | bPkgOptional = false |
||
| ) |
Turn a relative package path into a full path.
Turns a relative package path in xsb_aircraft.txt
(like "__Bluebell_Airbus:A306/A306_AAW.obj") into a full path pointing to a concrete file and verifies the file's existence.
| const char* XPMP2::CSLModelsFindPkgs | ( | const std::string & | _path, |
| std::vector< std::string > & | paths, | ||
| int | _maxDepth = 5 |
||
| ) |
Recursively scans folders to find xsb_aircraft.txt
files of CSL packages.
| _path | The path to start the search in | |
| [out] | paths | List of paths in which an xsb_aircraft.txt file has actually been found |
| _maxDepth | How deep into the folder hierarchy shall we search? (defaults to 5) |
| void XPMP2::CSLModelsInit | ( | ) |
Initialization.
| const char * XPMP2::CSLModelsLoad | ( | const std::string & | _path, |
| int | _maxDepth = 5 |
||
| ) |
Read the CSL Models found in the given path and below.
| _path | Path to a folder, which will be searched hierarchically for xsb_aircraft.txt files |
| _maxDepth | Search shall go how many folders deep at max? |
| const char* XPMP2::CSLModelsProcessAcFile | ( | const std::string & | path | ) |
Process one xsb_aircraft.txt
file for importing OBJ8 models.
| const char* XPMP2::CSLModelsReadPkgId | ( | const std::string & | path | ) |
Scans an xsb_aircraft.txt
file for EXPORT_NAME
entries to fill the list of packages.
|
inline |
Convert degree to radians.
|
inline |
Pythagorean distance between two points in a 3-D world.
| const Doc8643 & XPMP2::Doc8643Get | ( | const std::string & | _type | ) |
Return a reference to the matching Doc8643 object.
| bool XPMP2::Doc8643IsTypeValid | ( | const std::string & | _type | ) |
Is the given aircraft type a valid ICAO type as per Doc8643?
| const char * XPMP2::Doc8643Load | ( | const std::string & | _path | ) |
Load the content of the provided Doc8643.txt
file.
| bool XPMP2::ExistsFile | ( | const std::string & | filename | ) |
Does a file path exist?
|
inline |
Are these two float near-equal? (to avoid trying something like a == b)
| FMOD_VECTOR XPMP2::FmodHeadPitch2Vec | ( | const float | head, |
| const float | pitch | ||
| ) |
Convert heading/pitch to normalized x/y/z vector.
|
inline |
On Lin/Win there is no need for a conversion, but we do treat p
now as std::string
| std::list< std::string > XPMP2::GetDirContents | ( | const std::string & | path | ) |
List of files in a directory (wrapper around XPLMGetDirectoryContents)
| const char * XPMP2::GetGraphicsDriverTxt | ( | ) |
Text string for current graphics driver in use.
| float XPMP2::GetMiscNetwTime | ( | ) |
Get synched network time from X-Plane (sim/network/misc/network_time_sec) as used in Log.txt.
| std::string XPMP2::GetMiscNetwTimeStr | ( | float | _time = NAN | ) |
Return the network time as a string like used in the XP's Log.txt.
| _time | If given convert that time, otherwise convert XPMP2::GetMiscNetwTime() |
| const std::string & XPMP2::GetXPSystemPath | ( | ) |
Returns XP's system directory, including a trailing slash.
| std::unique_lock<std::mutex> XPMP2::glockRmtData | ( | gmutexRmtData | ) |
The lock that we keep during handling of the flight loop.
|
inline |
Are we going to new (TCAS override) or the old way?
|
inline |
Can we use the XP12 wake support system?
| float XPMP2::headDiff | ( | float | head1, |
| float | head2 | ||
| ) |
(Shortest) difference between 2 angles: How much to turn to go from h1 to h2?
| numT XPMP2::headNormalize | ( | numT | _head | ) |
Normalize a heading value to [0..360), works for both float and double values.
| std::valarray< float > XPMP2::HeadPitch2Vec | ( | const float | head, |
| const float | pitch | ||
| ) |
Convert heading/pitch to normalized x/y/z vector.
valarray
with 3 values, x, y, and z | bool XPMP2::IsDir | ( | const std::string & | path | ) |
Is path a directory?
| bool XPMP2::IsInRect | ( | float | x, |
| float | y, | ||
| const float | bounds_ltrb[4] | ||
| ) |
Tests if x/y lies within the rect, given as a float[4] array.
| bool XPMP2::IsPaused | ( | ) |
X-Plane in a Pause state?
| bool XPMP2::IsViewExternal | ( | ) |
Is current X-Plane view an external view (outside a cockpit)?
| IteratorT XPMP2::iterRnd | ( | IteratorT | lower, |
| IteratorT | upper | ||
| ) |
Returns any random value in the range [cslLower; cslUpper)
, or upper
if there is no value in that range.
|
inline |
Returns everything left of any of terminators.
| const char * XPMP2::LogGetString | ( | const char * | szPath, |
| int | ln, | ||
| const char * | szFunc, | ||
| logLevelTy | lvl, | ||
| const char * | szMsg, | ||
| va_list | args | ||
| ) |
Returns ptr to static buffer filled with formatted log string.
| void XPMP2::LogMsg | ( | const char * | szPath, |
| int | ln, | ||
| const char * | szFunc, | ||
| logLevelTy | lvl, | ||
| const char * | szMsg, | ||
| ... | |||
| ) |
Log Text to log file.
|
inline |
trimming of string (from left)
| void XPMP2::MapCleanup | ( | ) |
Grace cleanup.
| void XPMP2::MapCreateAll | ( | ) |
Loop all existing maps and create our map layer for them.
| void XPMP2::MapCreateCB | ( | const char * | mapIdentifier, |
| void * | |||
| ) |
Callback called when a map is created. We then need to add our layer to it.
| void XPMP2::MapDeleteCB | ( | XPLMMapLayerID | inLayer, |
| void * | |||
| ) |
Called when a map is about to be deleted.
| void XPMP2::MapDestroyAll | ( | ) |
Remove all our map layers.
| void XPMP2::MapIconDrawingCB | ( | XPLMMapLayerID | inLayer, |
| const float * | inMapBoundsLeftTopRightBottom, | ||
| float | , | ||
| float | mapUnitsPerUserInterfaceUnit, | ||
| XPLMMapStyle | , | ||
| XPLMMapProjectionID | projection, | ||
| void * | refcon | ||
| ) |
Actually draw the icons into the map.
This call computes the labels location on the map and puts this info into the aircraft object. MapLabelDrawingCB() reuses the cached location info.
| void XPMP2::MapInit | ( | ) |
Initialize the module.
| void XPMP2::MapLabelDrawingCB | ( | XPLMMapLayerID | inLayer, |
| const float * | inMapBoundsLeftTopRightBottom, | ||
| float | , | ||
| float | mapUnitsPerUserInterfaceUnit, | ||
| XPLMMapStyle | , | ||
| XPLMMapProjectionID | projection, | ||
| void * | refcon | ||
| ) |
Actually draw the labels into th emap.
| void XPMP2::MapLayerCreate | ( | const char * | mapIdentifier | ) |
Create our map layer for the given map.
| void XPMP2::MapPrepareCacheCB | ( | XPLMMapLayerID | , |
| const float * | inTotalMapBoundsLeftTopRightBottom, | ||
| XPLMMapProjectionID | projection, | ||
| void * | |||
| ) |
Prepare map drawing information.
It seems that XPLMMapScaleMeter only works from here, otherwise could crash the sim. (Reported as bug to Laminar)
| const std::vector< InetAddrTy > & XPMP2::NetwGetLocalAddresses | ( | ) |
Return all local addresses (also cached locally)
| bool XPMP2::NetwIsLocalAddr | ( | const InetAddrTy & | addr | ) |
Is given address a local one?
|
inline |
Is given address a local one?
| const char * XPMP2::Obj8DataRefsLoad | ( | const std::string & | _path | ) |
Load the content of the provided Obj8DataRefs.txt
file.
| float XPMP2::obj_get_float | ( | void * | ) |
We need to provide these functions for purely formal reasons. They are not actually ever called as we provide the current dataRef values via XPLMInstanceSetPosition. So we don't bother providing any implementation
| int XPMP2::obj_get_float_array | ( | void * | , |
| float * | , | ||
| int | , | ||
| int | inCount | ||
| ) |
See obj_get_float()
| std::uint16_t XPMP2::PJWHash16 | ( | const char * | s | ) |
Produces a reproducible(!) hash value for strings.
Result is the same if the same string is provided, across platform and across executions, unlike what std::hash requires.
It is implemented as a 16-bit version of the PJW hash:
| int XPMP2::PrefsFuncIntDefault | ( | const char * | , |
| const char * | , | ||
| int | _default | ||
| ) |
Default config function just always returns the provided default value.
|
inline |
Convert radians to degrees, normalized to [0..360)
| int XPMP2::RelatedGet | ( | const std::string & | _acType | ) |
Find the related group for an ICAO a/c type, 0 if none.
| const char * XPMP2::RelatedLoad | ( | const std::string & | _path | ) |
Read the related.txt
file, full path passed in.
| void XPMP2::RemoteAcClearAll | ( | ) |
Informs us that there are no more aircraft, clear our caches!
| void XPMP2::RemoteAcEnqueue | ( | const Aircraft & | ac | ) |
Regularly called from the flight loop callback to send a/c date onto the network.
Will collect data into network messages but only send out when full
| void XPMP2::RemoteAcEnqueueDone | ( | ) |
Informs us that all a/c have been processed: All pending messages to be sent now.
| void XPMP2::RemoteAcEnqueueStarts | ( | float | now | ) |
Informs us that updating a/c will start now, do some prep work
| void XPMP2::RemoteAcRemove | ( | const Aircraft & | ac | ) |
Informs us about an aircraft deletion.
| void XPMP2::RemoteCleanup | ( | ) |
Grace cleanup, stops all threads.
| RemoteStatusTy XPMP2::RemoteGetStatus | ( | ) |
Returns the current Remote status.
| void XPMP2::RemoteInit | ( | ) |
Initialize the module.
| void XPMP2::RemoteRecvStart | ( | const RemoteCBFctTy & | _rmtCBFcts | ) |
Starts the listener, will call provided callback functions with received messages.
| void XPMP2::RemoteRecvStop | ( | ) |
Stops the receiver.
| void XPMP2::RemoteSenderUpdateStatus | ( | ) |
Compares current vs. expected status and takes appropriate action.
| void XPMP2::RemoveExtension | ( | std::string & | path | ) |
Removes everything after the last dot, the dot including.
|
inline |
Conditions for continued receive operation.
| void XPMP2::RmtRecvMain | ( | ) |
Thread main function for the receiver.
| void XPMP2::RmtSendBeacon | ( | ) |
Sends an Interest Beacon.
|
inline |
Conditions for continued send operation.
| void XPMP2::RmtSendLoop | ( | ) |
Sending function, ie. we are actively sending data out.
| void XPMP2::RmtSendMain | ( | ) |
Thread main function for the sender.
| void XPMP2::RmtSendProcessQueue | ( | ) |
Process the data passed down to us in the queue.
| void XPMP2::RmtSendSettings | ( | ) |
Send our settings.
| void XPMP2::RmtStartMCThread | ( | bool | bSender | ) |
Start the background thread to listen to multicast, to see if anybody is interested in our data.
| void XPMP2::RmtStopAll | ( | ) |
Stop all threads and communication with the network.
|
inline |
trimming of string (from right)
| std::istream & XPMP2::safeGetline | ( | std::istream & | is, |
| std::string & | t | ||
| ) |
Read a line from a text file, no matter if ending on CRLF or LF.
Read a text line, handling both Windows (CRLF) and Unix (LF) ending Code makes use of the fact that in both cases LF is the terminal character. So we read from file until LF (without widening!). In case of CRLF files there then is a trailing CR, which we just remove.
| void XPMP2::SoundCleanup | ( | ) |
Graceful shoutdown.
| const char* XPMP2::SoundEventTxt | ( | Aircraft::SoundEventsTy | e | ) |
Return a text for the values of Aircraft::SoundEventsTy.
| FMOD_CHANNELGROUP* XPMP2::SoundGetMasterChn | ( | ) |
Get the FMOD system's master channel group, or nullptr
| SoundFile* XPMP2::SoundGetSoundFile | ( | FMOD_CHANNEL * | pChn | ) |
Get pointer to Sound File that created the channel.
| bool XPMP2::SoundInit | ( | ) |
Initialize the sound module and load the sounds.
| bool XPMP2::SoundIsChnValid | ( | FMOD_CHANNEL * | pChn | ) |
Is the channel still playing / is it valid?
| FMOD_RESULT F_CALLBACK XPMP2::SoundLogCB | ( | FMOD_DEBUG_FLAGS | flags, |
| const char * | file, | ||
| int | line, | ||
| const char * | func, | ||
| const char * | message | ||
| ) |
Callback function called by FMOD for logging purposes.
XPLMDebugString()
, but so far it didn't hurt, and it should be debug builds only anyway. | void XPMP2::SoundLogEnable | ( | bool | bEnable = true | ) |
Enables/disables FMOD logging.
L
versions of the FMOD library | void XPMP2::SoundSetFmodSettings | ( | T_ADVSET & | advSet | ) |
Helper functon to set FMOD settings.
Implement as template function so it works with both FMOD_ADVANCEDSETTINGS
and FMOD_10830_ADVANCEDSETTINGS
for backwards compatibility with v1.8 of FMOD as used in XP11.
| void XPMP2::SoundUpdatesBegin | ( | ) |
Prepare for this frame's updates, which are about to start.
| void XPMP2::SoundUpdatesDone | ( | ) |
Tell FMOD that all updates are done.
|
inline |
Square.
| std::vector< std::string > XPMP2::str_tokenize | ( | const std::string | s, |
| const std::string | tokens, | ||
| bool | bSkipEmpty | ||
| ) |
separates string into tokens
| std::string & XPMP2::str_tolower | ( | std::string & | s | ) |
change a std::string to uppercase
| int XPMP2::StrCntString | ( | const mapStrIntTy & | m, |
| std::string & | s | ||
| ) |
Compiles a string from a map of string->int like "(A320 x 5, A388 x 12)".
| std::string XPMP2::StripXPSysDir | ( | const std::string & | path | ) |
If a path starts with X-Plane's system directory it is stripped.
|
inline |
On Lin/Win there is no need for a conversion, but we do treat p
now as std::string
|
inline |
trimming of string (from both ends)
| void XPMP2::TwoDActivate | ( | ) |
Activate actual label drawing, esp. set up drawing callback.
| void XPMP2::TwoDCleanup | ( | ) |
Grace cleanup.
| void XPMP2::TwoDDeactivate | ( | ) |
Deactivate actual label drawing, esp. stop drawing callback.
| void XPMP2::TwoDDrawLabels | ( | ) |
Write the labels of all aircraft.
XPMPDefaultPlaneRenderer
of the original libxplanemp | void XPMP2::TwoDInit | ( | ) |
Initialize the module.
|
inline |
Use pre-v2 FMOD version structures?
| void XPMP2::XPMPSendNotification | ( | const Aircraft & | plane, |
| XPMPPlaneNotification | _notification | ||
| ) |
Send a notification to all observers.
| const char* XPMP2::XPMPValidateResourceFiles | ( | const char * | resourceDir | ) |
Validate all required files are available in the resource directory.
| std::vector<XPLMDataRef> XPMP2::ahDataRefs |
Registered dataRefs.
|
constexpr |
How much distance does each AIPrio add?
|
constexpr |
How often do we reassign AI slots? [seconds].
| std::array<const char*, 2> XPMP2::ALL_MAPS |
The list of known maps, which are hard-coded by X-Plane's SDK.
| const char* XPMP2::DATA_REF_EDITORS[] |
| const Doc8643 XPMP2::DOC8643_EMPTY |
| std::vector<std::unique_ptr<std::string> > XPMP2::drStrings |
Here we store the dataRef strings as smart pointers, so that the pointed-to location will not change but we can easily manage them
|
constexpr |
Epsilon, a small number.
|
constexpr |
Maximum number of warnings during file read before bailing.
|
constexpr |
In how many cycles to skip expensive computations?
| float XPMP2::F_NULL[10] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f} |
A constant array of zero values supporting quick array initialization.
|
constexpr |
Don't dare using NAN...but with this coordinate for x/y/z a plane should be far out and virtually invisible.
|
constexpr |
Value used for 3D max distance, which doesn't have much of a function for the inverse roll-off model used here.
|
constexpr |
Gain used when activating Low Pass filter.
|
constexpr |
Number of virtual channels during initialization.
|
constexpr |
standard gravitational acceleration [m/s²]
| std::vector<InetAddrTy> XPMP2::gaddrLocal |
List of local IP addresses.
|
constexpr |
How often to call the garbage collection [s].
|
constexpr |
Unload an unused object after how many seconds?
| volatile bool XPMP2::gbStopMCThread = false |
Shall the network thread stop?
| int XPMP2::gCntMCErr = 0 |
error counter for network thread
| std::condition_variable XPMP2::gcvRmtData |
notifies the network thread of available data to be processed
| XPLMFlightLoopID XPMP2::gFlightLoopID = nullptr |
The id of our flight loop callback.
| unsigned XPMP2::gFullUpdDue = 0 |
What's the full update group that has its turn now?
| unsigned XPMP2::gFullUpdLastDone = 0 |
the last actually processed full update group
| XPLMFlightLoopID XPMP2::gGarbageCollectionID = nullptr |
The ids of our garbage collection flight loop callback.
| XPLMObjectRef XPMP2::ghContrailObj = nullptr |
The one global Contrail object.
| XPLMDataRef XPMP2::ghDrContrailLifeTime = nullptr |
The handle for the registered Contrail LifeTime dataRef.
| GlobVars XPMP2::glob |
The one and only global variable structure.
| mapRmtAcCacheTy XPMP2::gmapRmtAcCache |
Cache for last data sent out to the network.
| RmtMsgBufTy<RemoteAcAnimTy, RMT_MSG_AC_ANIM, RMT_VER_AC_ANIM> XPMP2::gMsgAcAnim |
A/C Animation dataRefs message.
| RmtMsgBufTy<RemoteAcDetailTy,RMT_MSG_AC_DETAILED,RMT_VER_AC_DETAIL> XPMP2::gMsgAcDetail |
A/C Detail message.
| RmtMsgBufTy<RemoteAcPosUpdateTy,RMT_MSG_AC_POS_UPDATE,RMT_VER_AC_POS_UPDATE> XPMP2::gMsgAcPosUpdate |
A/C Position Update message.
| RmtMsgBufTy<RemoteAcRemoveTy,RMT_MSG_AC_REMOVE,RMT_VER_AC_REMOVE> XPMP2::gMsgAcRemove |
A/C Removal message.
| std::mutex XPMP2::gmutexRmtData |
protects modifying access to the queue and the condition variable
| float XPMP2::gNow = 0.0f |
Current network timestamp.
| unsigned XPMP2::gNxtFullUpdGrpToAssign = 0 |
What's the next group number to assign to the next a/c? (Assigned will be the value incremented by 1)
| float XPMP2::gNxtTxfTime = 0.0f |
When to actually process position updates next?
| UDPMulticast* XPMP2::gpMc = nullptr |
multicast socket for listening/sending (destructor uses locks, which don't work during module shutdown, so can't create a global object due to its exit-time destructor)
| queueRmtDataTy XPMP2::gqueueRmtData |
the queue for passing data from main to network thread
| RemoteCBFctTy XPMP2::gRmtCBFcts |
The callback function pointers the remote client plugin provided.
| float XPMP2::gSendSettingsLast = 0.0f |
Timestamp when we sent our settings the last time.
| std::thread XPMP2::gThrMC |
remote listening/sending thread
|
constexpr |
|
constexpr |
Convert m/s to knots.
| const char* XPMP2::LOG_LEVEL[] |
|
constexpr |
Convert feet to meters, e.g. for altitude calculations.
|
constexpr |
Convert nautical miles to meters.
|
constexpr |
Assumed size of an aircraft in m.
|
constexpr |
Dimenson of MapIcon.png.
|
constexpr |
Dimenson of MapIcon.png.
|
constexpr |
Minimum icon size in map in UI units.
|
constexpr |
after this many errors we no longer try listening
| std::recursive_mutex XPMP2::mtxSocketClose |
Mutex to ensure closing is done in one thread only to avoid race conditions on deleting the buffer.
| XPMP2::RemoteMsgAcDetailTy_v0 XPMP2::PACKED |
|
constexpr |
Pi.
|
constexpr |
resolution of altitude[ft] updates
|
constexpr |
What is the maximum difference a RemoteAcPosUpdateTy can hold?
resolution of degree updates
| const std::array< RemoteDataRefPackTy, V_COUNT > XPMP2::REMOTE_DR_DEF |
An array holding all dataRef packing definitions.
Defines per dataRef the value range we support transferring to the remote client.
|
constexpr |
maximum altitude[ft] difference that can be represented in a pos update msg
|
constexpr |
maximum degree difference that can be represented in a pos update msg
|
constexpr |
maximum time difference thatn can be represented in a pos update msg
|
constexpr |
How often to send an Interest Beacon? [s].
|
constexpr |
How often to send full a/c details? [s].
|
constexpr |
How often to send settings? [s].
|
constexpr |
The signature of the XPMP2 Remote Client.
|
constexpr |
resolution of time difference
|
constexpr |
A/C Position update message version number.
|
constexpr |
A/C detail message version number.
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
A/C Position update message version number.
|
constexpr |
A/C removal message version number.
|
constexpr |
Interest Beacon message version number.
|
constexpr |
Setttings message version number.
|
constexpr |
Defined by XPMP2 internally.
Convert revolutions-per-minute (RPM) to radians per second (rad/s) by multiplying with PI/30
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
Number of characters to be allowed for CSL model text.
|
constexpr |
Maximum length of OS error message.
| std::vector<std::string> XPMP2::vecDREdataRefStr |
list of dataRef strings to be send to the editors
|
constexpr |
The drawing phase "xplm_Phase_Airplanes" is deprecated in XP11.50 upwards, but we need it in earlier versions to fake TCAS.


{% load static %}
To access this site, JavaScript needs to be enabled.
{{message}}
Check your email at . If you have been granted access to this site, you will receive a login link.


subject
DOCS ARCHIVE ASYRBNY8S
zu-hoch-hinaus-9783548019307.pdf
January 13, 2017
Filetype: PDF
|
916 views
system_update_alt
Download
subject
Read
100-addition-worksheets-with-three-1-digit-adden-9781511443654.pdf
December 26, 2016
Filetype: PDF
|
2152 views
system_update_alt
Download
subject
Read
why-me-1-9781455890569.pdf
August 13, 2016
Filetype: PDF
|
1313 views
system_update_alt
Download
subject
Read
gypsy-s-cousin-joy-classic-reprint-paperback-9781331337515.pdf
September 06, 2016
Filetype: PDF
|
3235 views
system_update_alt
Download
subject
Read
annual-report-of-intramural-research-program-act-2-9781333120658.pdf
November 24, 2016
Filetype: PDF
|
2988 views
system_update_alt
Download
subject
Read
headfirst-deluxe-edition-9781878298744.pdf
August 02, 2016
Filetype: PDF
|
357 views
system_update_alt
Download
subject
Read
how-to-marry-a-highlander-paperback-9780062273949.pdf
November 06, 2016
Filetype: PDF
|
1379 views
system_update_alt
Download
subject
Read
it-s-more-than-just-the-day-to-day-paperback-9781434387028.pdf
August 03, 2016
Filetype: PDF
|
362 views
system_update_alt
Download
subject
Read
mathematics-in-action-algebraic-graphical-and-tr-3-9780134134420.pdf
December 01, 2016
Filetype: PDF
|
1664 views
system_update_alt
Download
subject
Read
six-lectures-on-the-philosophy-of-mesmerism-deli-9781236657077.pdf
August 07, 2016
Filetype: PDF
|
2861 views
system_update_alt
Download
subject
Read
el-poder-curativo-de-plantas-x2f-healing-power-o-9789706275622.pdf
October 12, 2016
Filetype: PDF
|
1359 views
system_update_alt
Download
subject
Read
secrets-of-the-cws-exam-study-guide-cws-test-rev-9781609716042.pdf
December 22, 2016
Filetype: PDF
|
1862 views
system_update_alt
Download
subject
Read
the-gnomes-of-knothole-manor-bilingual-japanese--9781479188628.pdf
November 22, 2016
Filetype: PDF
|
1256 views
system_update_alt
Download
subject
Read
after-the-great-east-japan-earthquake-political--1-9788776941147.pdf
October 04, 2016
Filetype: PDF
|
459 views
system_update_alt
Download
subject
Read
yu-gi-oh-the-duelist-v-17-9781421506913.pdf
September 08, 2016
Filetype: PDF
|
2472 views
system_update_alt
Download
subject
Read
upadesa-saram-9788188071050.pdf
October 23, 2016
Filetype: PDF
|
2725 views
system_update_alt
Download
subject
Read
bramblestar-x27-s-storm-9780062291455.pdf
October 31, 2016
Filetype: PDF
|
1537 views
system_update_alt
Download
subject
Read
why-believe-in-god-9781596382121.pdf
December 28, 2016
Filetype: PDF
|
2474 views
system_update_alt
Download
subject
Read
peppa-pig-peppa-x27-s-halloween-1-9780723296225.pdf
August 29, 2016
Filetype: PDF
|
3299 views
system_update_alt
Download
subject
Read
how-to-be-a-parent-for-your-parent-paperback-9780971644915.pdf
January 11, 2017
Filetype: PDF
|
1562 views
system_update_alt
Download
subject
Read
unlearning-protestantism-sustaining-christian-co-9781587431111.pdf
November 29, 2016
Filetype: PDF
|
3069 views
system_update_alt
Download
subject
Read
four-thousand-lives-lost-the-inquiries-of-lord-m-9780752465715.pdf
August 07, 2016
Filetype: PDF
|
2408 views
system_update_alt
Download
subject
Read
the-dispatches-of-field-marshal-the-duke-of-well-9781232027201.pdf
December 10, 2016
Filetype: PDF
|
2571 views
system_update_alt
Download
subject
Read
angel-amp-faith-volume-2-daddy-issues-9781595829603.pdf
December 05, 2016
Filetype: PDF
|
2533 views
system_update_alt
Download
subject
Read
the-authenticity-of-english-version-bibles-a-stu-9781905447237.pdf
January 13, 2017
Filetype: PDF
|
927 views
system_update_alt
Download
subject
Read
oh-the-places-youll-go-9780679805274.pdf
January 09, 2017
Filetype: PDF
|
2993 views
system_update_alt
Download
subject
Read
open-court-reading-unit-2-assessment-annotated-t-9780075714293.pdf
September 02, 2016
Filetype: PDF
|
2906 views
system_update_alt
Download
subject
Read
uni-s-universe-paperback-9781424173662.pdf
November 24, 2016
Filetype: PDF
|
2227 views
system_update_alt
Download
subject
Read
genealogy-of-the-smith-walkup-bell-perry-and-all-9781332293780.pdf
December 06, 2016
Filetype: PDF
|
940 views
system_update_alt
Download
subject
Read
sing-spell-read-and-write-kindergarten-storybook-2-9780765231772.pdf
January 19, 2017
Filetype: PDF
|
1102 views
system_update_alt
Download
subject
Read
everyday-nfc-second-edition-near-field-communica-9780982434024.pdf
August 24, 2016
Filetype: PDF
|
670 views
system_update_alt
Download
subject
Read
stratford-upon-avon-little-souvenir-book-9781905385010.pdf
November 07, 2016
Filetype: PDF
|
1778 views
system_update_alt
Download
subject
Read
collins-primary-atlas-5th-revised-edition-9780008146757.pdf
November 24, 2016
Filetype: PDF
|
1548 views
system_update_alt
Download
subject
Read
little-blue-lions-wealth-masters-sell-apple-x27--9787534272899.pdf
November 19, 2016
Filetype: PDF
|
785 views
system_update_alt
Download
subject
Read
nurse-executive-exam-secrets-study-guide-nurse-e-9781610723305.pdf
October 14, 2016
Filetype: PDF
|
3001 views
system_update_alt
Download
subject
Read
blood-and-feathers-9781781080184.pdf
October 17, 2016
Filetype: PDF
|
2755 views
system_update_alt
Download
subject
Read
walking-san-francisco-33-savvy-tours-exploring-s-9780899976549.pdf
December 07, 2016
Filetype: PDF
|
1164 views
system_update_alt
Download
subject
Read
2010-kaoyan-ideological-and-political-big-crosst-9787509205990.pdf
October 14, 2016
Filetype: PDF
|
1541 views
system_update_alt
Download
subject
Read
writing-and-grammar-communication-in-action-gold-2-9780130439086.pdf
December 17, 2016
Filetype: PDF
|
2220 views
system_update_alt
Download
subject
Read
how-to-play-the-recorder-hardback-9781465435484.pdf
January 08, 2017
Filetype: PDF
|
1569 views
system_update_alt
Download
subject
Read
instantly-raise-your-self-confidence-the-truth-a-9781494252021.pdf
November 22, 2016
Filetype: PDF
|
2437 views
system_update_alt
Download
subject
Read
my-dearest-jonah-9781908248251.pdf
November 15, 2016
Filetype: PDF
|
3152 views
system_update_alt
Download
subject
Read
the-christian-educator-x27-s-handbook-on-childre-9780801091469.pdf
December 04, 2016
Filetype: PDF
|
2783 views
system_update_alt
Download
subject
Read
the-book-of-fun-for-children-3-crafts-mazes-puzz-9788130906898.pdf
December 29, 2016
Filetype: PDF
|
1520 views
system_update_alt
Download
subject
Read
a-candid-appeal-to-the-citizens-of-the-united-st-9781331445852.pdf
November 09, 2016
Filetype: PDF
|
3256 views
system_update_alt
Download
subject
Read
a-guide-to-a-library-of-occidental-chronology-al-9780595216581.pdf
October 18, 2016
Filetype: PDF
|
2551 views
system_update_alt
Download
subject
Read
autism-education-theory-and-practice-series-i-kn-9787514148350.pdf
September 11, 2016
Filetype: PDF
|
2807 views
system_update_alt
Download
subject
Read
world-of-warcraft-instrumental-solos-horn-in-f-b-9780739074848.pdf
December 08, 2016
Filetype: PDF
|
2122 views
system_update_alt
Download
subject
Read
genuine-party-spirit-asked-the-organization-depa-9787509903551.pdf
December 05, 2016
Filetype: PDF
|
2286 views
system_update_alt
Download
subject
Read
national-licensed-pharmacist-examination-troop-i-9787509157527.pdf
December 24, 2016
Filetype: PDF
|
1649 views
system_update_alt
Download
subject
Read
falling-for-rachel-9780263902143.pdf
January 21, 2017
Filetype: PDF
|
771 views
system_update_alt
Download
subject
Read
applied-chemistry-2nd-edition-of-the-national-vo-9787511106902.pdf
September 06, 2016
Filetype: PDF
|
878 views
system_update_alt
Download
subject
Read
christ-s-parable-of-the-ten-virgins-being-the-su-9781171138570.pdf
October 22, 2016
Filetype: PDF
|
479 views
system_update_alt
Download
subject
Read
ultimate-spider-man-vol-10-hollywood-9780785134374.pdf
November 08, 2016
Filetype: PDF
|
824 views
system_update_alt
Download
subject
Read
razers-paperback-9780989142526.pdf
November 07, 2016
Filetype: PDF
|
2373 views
system_update_alt
Download
subject
Read
incredible-ipad-apps-for-dummies-9780470929797.pdf
September 30, 2016
Filetype: PDF
|
3050 views
system_update_alt
Download
subject
Read
reading-2007-leveled-reader-grade-5-unit-2-lesso-4-9780328135257.pdf
December 03, 2016
Filetype: PDF
|
1656 views
system_update_alt
Download
subject
Read
the-elements-of-structures-prepared-in-the-exten-9781331895701.pdf
September 14, 2016
Filetype: PDF
|
2534 views
system_update_alt
Download
subject
Read
treating-trichotillomania-9781441924254.pdf
October 13, 2016
Filetype: PDF
|
1336 views
system_update_alt
Download
subject
Read
the-maximally-efficient-and-optimally-effecfive--9781944351120.pdf
January 20, 2017
Filetype: PDF
|
1910 views
system_update_alt
Download
subject
Read
enhancing-synergies-in-a-collaborative-environme-9783319140773.pdf
September 30, 2016
Filetype: PDF
|
504 views
system_update_alt
Download
subject
Read
the-insurance-economist-volume-20-21-paperback-9781236276049.pdf
December 17, 2016
Filetype: PDF
|
2227 views
system_update_alt
Download
subject
Read
ultimate-muscle-volume-18-the-kinnikuman-legacy-9781421511030.pdf
October 21, 2016
Filetype: PDF
|
799 views
system_update_alt
Download
subject
Read
essential-c-5-0-paperback-9780321877581.pdf
November 05, 2016
Filetype: PDF
|
2469 views
system_update_alt
Download
subject
Read
the-commitment-of-the-lark-poems-for-looking-dee-9781908128362.pdf
December 25, 2016
Filetype: PDF
|
2986 views
system_update_alt
Download
subject
Read
the-taken-celestial-blues-book-one-celestial-blu-9780062064646.pdf
September 07, 2016
Filetype: PDF
|
1322 views
system_update_alt
Download
subject
Read
mushroom-cloud-behind-four-decades-of-radiobiolo-9787030356383.pdf
December 23, 2016
Filetype: PDF
|
874 views
system_update_alt
Download
subject
Read
horngren-x27-s-financial-amp-managerial-accounti-9780134078922.pdf
August 10, 2016
Filetype: PDF
|
1998 views
system_update_alt
Download
subject
Read
mangy-mummies-menacing-pharoahs-and-awful-afterl-1-9780750289979.pdf
August 22, 2016
Filetype: PDF
|
506 views
system_update_alt
Download
subject
Read
offenders-on-offending-learning-about-crime-from-9781843927761.pdf
September 29, 2016
Filetype: PDF
|
821 views
system_update_alt
Download
subject
Read
nutrition-labeling-in-the-food-away-from-home-se-9781249369363.pdf
January 15, 2017
Filetype: PDF
|
1759 views
system_update_alt
Download
subject
Read
really-understand-binary-paperback-9780983384090.pdf
October 09, 2016
Filetype: PDF
|
2579 views
system_update_alt
Download
subject
Read
hi-small-2-classes-small-goldfish-know-chinese-e-9787532494880.pdf
July 27, 2016
Filetype: PDF
|
2615 views
system_update_alt
Download
subject
Read
ballerina-swan-paperback-9780823429066.pdf
November 16, 2016
Filetype: PDF
|
1953 views
system_update_alt
Download
subject
Read
level-5-jane-eyre-2nd-revised-edition-9781405865166.pdf
September 10, 2016
Filetype: PDF
|
2334 views
system_update_alt
Download
subject
Read
ifrs-3-2008-major-changes-and-implications-9783656850212.pdf
August 07, 2016
Filetype: PDF
|
2693 views
system_update_alt
Download
subject
Read
the-clockwork-fairy-kingdom-9781522658214.pdf
September 17, 2016
Filetype: PDF
|
1384 views
system_update_alt
Download
subject
Read
dictionary-of-dna-and-genome-technology-9781405156080.pdf
September 24, 2016
Filetype: PDF
|
2459 views
system_update_alt
Download
subject
Read
take-your-eye-off-the-ball-hardback-9781600786174.pdf
October 18, 2016
Filetype: PDF
|
697 views
system_update_alt
Download
subject
Read
rich-girls-9781601625526.pdf
December 16, 2016
Filetype: PDF
|
956 views
system_update_alt
Download
subject
Read
the-dirty-secrets-club-9781501236730.pdf
September 16, 2016
Filetype: PDF
|
585 views
system_update_alt
Download
subject
Read
toyota-kata-managing-people-for-improvement-adap-9780070683464.pdf
September 09, 2016
Filetype: PDF
|
1838 views
system_update_alt
Download
subject
Read
a-twentieth-century-history-and-biographical-rec-9781234249946.pdf
August 29, 2016
Filetype: PDF
|
2574 views
system_update_alt
Download
subject
Read
who-wants-to-be-a-millionaire-and-other-episodes-1-9781500987343.pdf
September 06, 2016
Filetype: PDF
|
1766 views
system_update_alt
Download
subject
Read
aldini-a-romantic-comedy-in-four-acts-classic-re-9781330964484.pdf
December 13, 2016
Filetype: PDF
|
3009 views
system_update_alt
Download
subject
Read
50-ways-the-world-could-end-9781782069461.pdf
August 12, 2016
Filetype: PDF
|
1667 views
system_update_alt
Download
subject
Read
increase-profit-from-your-florist-shop-145-easy--9781508518747.pdf
December 22, 2016
Filetype: PDF
|
1484 views
system_update_alt
Download
subject
Read
annual-report-of-the-board-of-state-charities-of-9781130004328.pdf
December 26, 2016
Filetype: PDF
|
2934 views
system_update_alt
Download
subject
Read
celtic-body-art-tattoos-9780486416496.pdf
August 06, 2016
Filetype: PDF
|
2412 views
system_update_alt
Download
subject
Read
h1-genuine-empress-wu-secret-history-chinese-edi-9787531720058.pdf
October 03, 2016
Filetype: PDF
|
1626 views
system_update_alt
Download
subject
Read
Other Files
description
study-of-the-new-york-city-milk-problem-paperbac-9781130224245.pdf
[67.56 KB]
description
theme-birthday-parties-for-children-a-complete-p-9780786407439.pdf
[67.56 KB]
description
research-methods-in-occupational-epidemiology-mo-9780195052244.pdf
[67.56 KB]
description
how-to-get-your-paper-published-2nd-revised-edit-9781848290815.pdf
[67.56 KB]
description
applied-risk-analysis-moving-beyond-uncertainty--9780471478850.pdf
[67.56 KB]
description
sacred-stone-9781405916578.pdf
[67.56 KB]
description
things-9780226076126.pdf
[67.56 KB]
description
one-wicked-summer-the-strange-freaky-bizarre-fun-9780595402014.pdf
[67.56 KB]
description
le-roman-de-leucipp-eacute-et-clitophon-9782251802268.pdf
[67.56 KB]
description
nursing-and-health-survival-guide-objective-stru-9780273738978.pdf
[67.56 KB]
description
on-becoming-a-healthier-church-managing-your-str-9781591609254.pdf
[67.56 KB]
description
graveyard-child-9781451678086.pdf
[67.56 KB]
description
student-study-guide-for-use-with-life-span-devel-9780072820522.pdf
[67.56 KB]
description
new-headway-beginner-fourth-edition-workbook-ich-9780194771085.pdf
[67.56 KB]
description
adhd-reflections-on-a-hidden-disability-paperbac-9781515393313.pdf
[67.56 KB]
description
advancing-the-integrity-of-professional-practice-9781118151167.pdf
[67.56 KB]
description
dominion-ayrshire-herd-book-containing-the-pedig-9781130239331.pdf
[67.56 KB]
description
hope-an-anchor-paperback-9781581693348.pdf
[67.56 KB]
description
oxford-reading-tree-stage-14-treetops-new-look-s-9780199184101.pdf
[67.56 KB]
description
hannah-arendt-and-the-specter-of-totalitarianism-9781137392954.pdf
[67.56 KB]
description
teaching-strategies-that-prepare-students-for-hi-1-9781412949750.pdf
[67.56 KB]
description
arizona-5th-grade-math-test-prep-common-core-lea-9781491090633.pdf
[67.56 KB]
description
ghost-detectors-volume-1-let-the-specter-detecti-9781938063282.pdf
[67.56 KB]
description
teaching-syllable-patterns-shortcut-to-fluency-a-9781934338391.pdf
[67.56 KB]
description
medical-higher-mathematics-4th-edition-with-cd-r-9787117060820.pdf
[67.56 KB]
description
place-being-resonance-a-critical-ecohermeneutic--9781433127304.pdf
[67.56 KB]
description
the-bible-unveiled-paperback-9781230273891.pdf
[67.56 KB]
description
your-life-as-a-pharaoh-in-ancient-egypt-paperbac-9781404877443.pdf
[67.56 KB]
description
mathematical-physics-vol-1-electricity-and-magne-9781330305621.pdf
[67.56 KB]
description
chronic-fatigue-syndrome-2nd-revised-edition-9780199233168.pdf
[67.56 KB]
description
a-little-grey-sheep-a-novel-classic-reprint-pape-9781330571163.pdf
[67.56 KB]
description
act-on-it-solving-101-of-the-toughest-management-9780738202457.pdf
[67.56 KB]
description
complete-babylonian-beginner-to-intermediate-cou-9780340983881.pdf
[67.56 KB]
description
words-in-my-pocket-early-days-on-sunnybook-farm--9781461169246.pdf
[67.56 KB]
description
leave-me-lost-paperback-9781680581812.pdf
[67.56 KB]
description
mapping-it-out-expository-cartography-for-the-hu-9780226534176.pdf
[67.56 KB]
description
the-wizard-of-karres-new-edition-9781416509264.pdf
[67.56 KB]
description
doctor-barnardo-champion-of-victorian-children-9781445648217.pdf
[67.56 KB]
description
kingfisher-readers-l1-busy-as-a-bee-paperback-9780753469002.pdf
[67.56 KB]
description
captive-hearts-v-4-9781421521589.pdf
[67.56 KB]
description
gcse-maths-functional-skills-student-book-edexce-9780007410064.pdf
[67.56 KB]
description
little-t-the-dragon-x27-s-tooth-9780713660500.pdf
[67.56 KB]
description
boston-braves-9780738505367.pdf
[67.56 KB]
description
angel-detox-taking-your-life-to-a-higher-level-t-9781401942588.pdf
[67.56 KB]
description
you-are-not-so-smart-why-your-memory-is-mostly-f-9781851689392.pdf
[67.56 KB]
description
silas-marner-townsend-library-edition-9781591940487.pdf
[67.56 KB]
description
get-the-guy-learn-secrets-of-the-male-mind-to-fi-9780062241757.pdf
[67.56 KB]
description
glencoe-literature-british-literature-lesson-pla-9780078911422.pdf
[67.56 KB]
description
little-bear-x27-s-alphabet-9781908759979.pdf
[67.56 KB]
description
beautiful-baby-boutique-annie-x27-s-attic-croche-9781596350489.pdf
[67.56 KB]
description
seasons-of-love-special-christmas-edition-paperb-9781682295564.pdf
[67.56 KB]
description
us-lvl-7-bees-to-honey-9781583408919.pdf
[67.56 KB]
description
up-your-score-the-underground-guide-to-the-sat-2-1-9780761126843.pdf
[67.56 KB]
description
chicken-soup-for-the-soul-messages-from-heaven-1-9781935096917.pdf
[67.56 KB]
description
when-two-women-die-an-historical-novella-of-marb-9780615587240.pdf
[67.56 KB]
description
soul-surfer-devotions-9781400317233.pdf
[67.56 KB]
description
india-at-the-polls-1980-a-study-of-the-parliamen-9788121501248.pdf
[67.56 KB]
description
americas-blessings-how-religion-benefits-everyon-9781599474458.pdf
[67.56 KB]
description
el-sapo-sap-oacute-n-un-cuento-con-la-s-9788421683538.pdf
[67.56 KB]
description
the-shame-of-the-colleges-classic-reprint-paperb-9781331152088.pdf
[67.56 KB]
description
loose-leaf-version-of-stern-s-introductory-plant-9780077753429.pdf
[67.56 KB]
description
beyond-wealth-the-road-map-to-a-rich-life-9781118027615.pdf
[67.56 KB]
description
these-hills-called-home-stories-from-a-war-zone-9789381017975.pdf
[67.56 KB]
description
a-journey-to-the-center-of-earth-9780812504712.pdf
[67.56 KB]
description
deeper-walk-contemplations-for-a-god-hungry-soul-9780974694276.pdf
[67.56 KB]
description
the-100-startup-fire-your-boss-do-what-you-love--9780230766518.pdf
[67.56 KB]
description
pernin-s-universal-phonography-the-simplest-most-9781332177097.pdf
[67.56 KB]
description
reducing-congestion-congestion-pricing-has-promi-9781240684762.pdf
[67.56 KB]
description
napoleon-the-great-9780141032016.pdf
[67.56 KB]
description
the-story-of-saiunkoku-volume-7-9781421541808.pdf
[67.56 KB]
description
h1-genuine-new-communicative-english-speaking-co-9787536127814.pdf
[67.56 KB]
description
spiritual-power-for-your-family-how-to-partner-w-9781591856566.pdf
[67.56 KB]
description
crunch-whole-grain-artisan-chips-and-crackers-lo-9781481922678.pdf
[67.56 KB]
description
6-year-primary-language-provides-excellent-maste-9787111307969.pdf
[67.56 KB]
description
common-ground-on-hostile-turf-stories-from-an-en-9781610914116.pdf
[67.56 KB]
description
my-spooky-activity-and-sticker-book-holiday-acti-9781408190142.pdf
[67.56 KB]
description
study-in-silks-a-9781522674450.pdf
[67.56 KB]
description
school-survival-9781844434121.pdf
[67.56 KB]
description
beyond-the-highland-mist-paperback-9780440234807.pdf
[67.56 KB]
description
pediatric-care-for-nursing-midwifery-and-other-m-9787509134559.pdf
[67.56 KB]
description
applied-physics-9788189866723.pdf
[67.56 KB]
description
switching-sides-gay-romance-erotica-paperback-9781627617765.pdf
[67.56 KB]
description
primary-maths-9781846547614.pdf
[67.56 KB]
description
techniques-for-treating-uncertainty-and-risk-in--9781410220103.pdf
[67.56 KB]
description
remembering-to-forget-a-mother-and-daughters-jou-9781425954413.pdf
[67.56 KB]
description
parts-ordinary-lathe-machining-two-chinese-editi-9787516702239.pdf
[67.56 KB]
description
4th-grade-vocabulary-flashcards-9780307479419.pdf
[67.56 KB]
description
autocad2010-tutorial-and-applications-9787111308713.pdf
[67.56 KB]
description
small-and-medium-towns-and-their-role-in-regiona-9788121202640.pdf
[67.56 KB]
description
the-blue-flower-paperback-9781502510259.pdf
[67.56 KB]
description
horses-x27-holiday-workbook-9780007474912.pdf
[67.56 KB]
description
silly-dinosaurs-coloring-book-a-fun-activity-boo-9781936432066.pdf
[67.56 KB]
description
exploring-flowers-paperback-9780761378327.pdf
[67.56 KB]
description
accepted-by-love-a-christmas-novel-paperback-9781492854159.pdf
[67.56 KB]
description
relationship-sos-seven-lifelines-to-rescue-your--9781508578925.pdf
[67.56 KB]
description
essays-paperback-9781502349750.pdf
[67.56 KB]
description
the-complete-book-of-italian-cooking-9781840388558.pdf
[67.56 KB]
description
incorporating-progress-monitoring-and-outcome-as-9780199356676.pdf
[67.56 KB]
description
lucky-bamboo-9781847507075.pdf
[67.56 KB]
description
towards-higher-categories-hardback-9781441915238.pdf
[67.56 KB]
description
version-to-help-you-learn-the-language-curriculu-9787110065648.pdf
[67.56 KB]
description
macmillan-reading-grade-03-book-1-ga-edition-9780021905621.pdf
[67.56 KB]
description
systeme-de-la-nature-ou-des-lois-du-monde-physiq-9781234524890.pdf
[67.56 KB]
description
power-questions-build-relationships-win-new-busi-9781480540927.pdf
[67.56 KB]
description
motivational-marketing-how-to-effectively-motiva-9780470116357.pdf
[67.56 KB]
description
war-of-the-necromancer-the-complete-trilogy-pape-9781505464030.pdf
[67.56 KB]
description
parent-handbook-family-education-classic-child-0-9787512409224.pdf
[67.56 KB]
description
a-visible-darkness-9780752858715.pdf
[67.56 KB]
description
the-cards-9787104035572.pdf
[67.56 KB]
description
saintly-deacons-9780809143221.pdf
[67.56 KB]
description
views-from-the-south-the-effects-of-globalizatio-9780935028829.pdf
[67.56 KB]
description
midgard-legends-paperback-9781936781140.pdf
[67.56 KB]
description
the-h1-genuine-electromechanical-control-chinese-9787810773072.pdf
[67.56 KB]
description
the-first-belgian-hare-9785519033978.pdf
[67.56 KB]
description
the-filmmaker-x27-s-guide-to-production-design-9781581152241.pdf
[67.56 KB]
description
the-early-history-of-the-generation-and-use-of-s-9781491008461.pdf
[67.56 KB]
description
the-ante-nicene-fathers-volume-10-bibliographica-9781232345756.pdf
[67.56 KB]
description
fortunately-the-milk-1-9780062224088.pdf
[67.56 KB]
description
little-miss-magic-9780843175653.pdf
[67.56 KB]
description
the-lord-x27-s-prayer-9781844270729.pdf
[67.56 KB]
description
effective-stl-50-specific-ways-to-improve-your-u-9780201749625.pdf
[67.56 KB]
description
2007-new-curriculum-zhongkaomoni-questions-engli-9787223019125.pdf
[67.56 KB]
description
american-literature-through-illustrative-reading-9781330946213.pdf
[67.56 KB]
description
finance-and-economics-discussion-series-ceo-succ-9781288699643.pdf
[67.56 KB]
description
organise-your-mind-organise-your-life-train-your-9780373892440.pdf
[67.56 KB]
description
insight-guides-phrasebooks-mandarin-9781780058320.pdf
[67.56 KB]
description
the-neurotic-s-guide-to-avoiding-enlightenment-h-9781478700432.pdf
[67.56 KB]
description
the-devil-upon-two-sticks-translated-from-the-di-9781170129463.pdf
[67.56 KB]
description
1891-1904-9781231250563.pdf
[67.56 KB]
description
dark-horses-and-black-beauties-animals-women-a-p-1-9780393322668.pdf
[67.56 KB]
description
the-love-book-9780340994887.pdf
[67.56 KB]
description
coloring-for-dark-paperback-9781491742440.pdf
[67.56 KB]
description
bethlehem-town-9781925036329.pdf
[67.56 KB]
description
aa-kids-phrasebook-spanish-spanish-and-english-e-9780749574192.pdf
[67.56 KB]
description
five-have-a-puzzling-time-9781444916317.pdf
[67.56 KB]
description
national-geographic-year-2-gold-independent-read-9780433008743.pdf
[67.56 KB]
description
making-the-best-of-things-the-autobiography-of-a-1-9780955577710.pdf
[67.56 KB]
description
standards-practice-holt-california-algebra-1-9780030962561.pdf
[67.56 KB]
description
the-book-of-fine-linen-9782080135575.pdf
[67.56 KB]
description
paradise-lost-book-ix-x2f-john-mil-9788126138746.pdf
[67.56 KB]
description
math-in-a-minute-grade-4-9781483801384.pdf
[67.56 KB]
description
cloud-modeling-9781287292937.pdf
[67.56 KB]
description
life-in-the-shadows-of-a-corporate-lawyer-alcoho-9781439241547.pdf
[67.56 KB]
description
the-unpredictable-heart-you-may-be-a-victim-pape-9781482857566.pdf
[67.56 KB]
description
mud-a-military-history-new-edition-9781597970037.pdf
[67.56 KB]
description
tail-of-the-moon-prequel-the-other-hanzou-v-1-9781421530536.pdf
[67.56 KB]
description
biochemical-engineering-9788120330528.pdf
[67.56 KB]
description
an-historical-sketch-of-goa-9788176465335.pdf
[67.56 KB]
description
an-address-on-the-life-and-labors-of-alexander-c-9789332895430.pdf
[67.56 KB]
description
catch-that-dog-wave-paperback-9780448464442.pdf
[67.56 KB]
description
home-theater-hacks-100-industrial-strength-tips--9780596007041.pdf
[67.56 KB]
description
northstar-listening-and-speaking-5-with-mynorths-9780132336727.pdf
[67.56 KB]
description
studyguide-for-environmental-science-problems-co-9781428859098.pdf
[67.56 KB]
description
set-theory-an-introduction-to-independence-proof-9780444868398.pdf
[67.56 KB]
description
your-body-is-talking-are-you-listening-volume-1-9781891962158.pdf
[67.56 KB]
description
the-wicked-wine-of-democracy-a-memoir-of-a-polit-9780295992327.pdf
[67.56 KB]
description
playwriting-for-dummies-9781118017227.pdf
[67.56 KB]
description
electrical-engineering-tsinghua-university-textb-9787302204558.pdf
[67.56 KB]
description
the-call-of-the-wild-dover-thrift-editions-9780486264721.pdf
[67.56 KB]
description
cbr-training-guide-with-teaching-vocational-reha-9787117197809.pdf
[67.56 KB]
description
essays-that-will-get-you-into-medical-school-ess-9780764142277.pdf
[67.56 KB]
description
can-you-see-a-little-bear-9781845073640.pdf
[67.56 KB]
description
using-technology-to-gather-store-and-report-evid-9781862018563.pdf
[67.56 KB]
description
open-house-aristocrats-squatters-and-ghosts-shar-9781490327754.pdf
[67.56 KB]
description
etre-heureux-le-cahier-d-x27-exercices-qui-vous--9782810415878.pdf
[67.56 KB]
description
clearings-everything-you-need-to-know-about-clea-9780615465395.pdf
[67.56 KB]
description
algebra-1-integration-applications-and-connectio-9780028253343.pdf
[67.56 KB]
description
the-qidong-secondary-school-exercise-book-9th-gr-2-9787508805931.pdf
[67.56 KB]
description
offshore-islands-paperback-9781786103833.pdf
[67.56 KB]
description
horses-heartache-healing-paperback-9780992548629.pdf
[67.56 KB]
description
cannabis-everything-you-wanted-to-know-about-gro-9781522809579.pdf
[67.56 KB]
description
you-are-wonderfully-made-12-life-changing-princi-9781517594282.pdf
[67.56 KB]
description
oxford-mini-thesaurus-9780199666140.pdf
[67.56 KB]


I am trying to do something simple with rmi.
When i do
everything is fine.Code:LocateRegistry.createRegistry(port); Naming.rebind("//localhost/Hello", new Hello());
But I read that it is good to have some security manager around so i tried to add
before the above code, it threw ****load of exceptions, then i read somewhere that i need to permit access for rmi or something like that by doing:Code:System.setSecurityManager(new RMISecurityManager());
And still i am getting:Code:System.setSecurityManager (new RMISecurityManager() { public void checkConnect (String host, int port) {} public void checkConnect (String host, int port, Object context) {} });
Any clue to what am i doing wrong?Code:Exception in thread "RMI TCP Connection(1)-<IP_ADDRESS>" java.security.AccessControlException: access denied (java.net.SocketPermission <IP_ADDRESS>:2543 accept,resolve) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264) at java.security.AccessController.checkPermission(AccessController.java:427) at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) at java.lang.SecurityManager.checkAccept(SecurityManager.java:1157) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.checkAcceptPermission(TCPTransport.java:566) at sun.rmi.transport.tcp.TCPTransport.checkAcceptPermission(TCPTransport.java:214) at sun.rmi.transport.Transport$1.run(Transport.java:152) at
(Btw the security stuff i took from http://www.ccs.neu.edu/home/kenb/com3337/rmi_tut.html)
Bookmarks


Home
My Program
Mailbox
Message
Faculties
Engineering
Arts & Humanities
Science
Social Science
Admission
Undergraduate
Graduate
Continue Learning
Research
Content...