MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
synchronousFileDistributor.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2007 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: synchronousFileDistributor.h,v $ $Revision: 1.6 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtSynchronousMultFileDistributor_H_
13 #define DtSynchronousMultFileDistributor_H_
14 
15 
16 #include "fileDistributor.h"
17 
18 
20 //DtFileDistributorThread creator callback signature
21 
28 {
29 
30 public:
31 
33  DtSynchronousFileDistributor( const int fedEx, const MAKRti::DtString& fedExName,
34  DtConnectionMgr* connMgr );
35 
38 
39 
40 
41 
42 public:
43 
45  virtual bool tick();
46 
47  static DtSynchronousFileDistributor* create(const int fedEx,
48  const MAKRti::DtString& fedExName,
49  DtConnectionMgr* connMgr );
50 
51 
54  virtual bool sendFedFile(const std::vector<MAKRti::DtString>& modules);
55 
57  virtual bool pullEntireFedFile(const std::vector<MAKRti::DtString>& modules, bool sc=true);
58 
60  static void multFileReceivedCb( const DtFomModuleDistributionMsg& msg, void* usr );
61 
63  bool pushedFomModules() const;
64 
66  bool pullInProgress() const;
67 
69  void getPushedFomModules(std::vector<MAKRti::DtString>& modules);
70 
72  void multFileRequestedCb( const DtFomModuleRequestMsg& msg );
73 
75  void multFileReceivedCb( const DtFomModuleDistributionMsg& msg );
76 
78  void fileReceivedCb(const DtFomModuleDistributionMsg& msg );
79 
80 
81 private:
85 
86 private:
87 
88 
90  //Really the string associated with the file when their contents were uploaded.
91  //All files stored as tmpFiles.
92 
94  std::vector<MAKRti::DtString> myReceivedPushedFomModules;
95 
98 
99 };
100 
101 #endif
virtual Boolean tick(TickTime minimum, TickTime maximum)
Distributes fomModule files from initiating federate to RtiExec and then from RtiExec to all joining ...
Definition: fileDistributor.h:126
bool myPullInProgress
Indicates that a FOM module pull is currently in progress.
Definition: synchronousFileDistributor.h:97
std::vector< MAKRti::DtString > myReceivedPushedFomModules
Definition: synchronousFileDistributor.h:94
Sent by Federates to request fed file from RtiExec.
Definition: fomModuleRequestMsg.h:28
Instances of DtConnectionMgr manage the communication objects that the RTI will use to either communi...
Definition: connectMgr.h:60
Distributes fomModule files from initiating federate to RtiExec and then from RtiExec to all joining ...
Definition: synchronousFileDistributor.h:27
Definition: fomModuleDistributionMsg.h:25
DtFileDistributor & operator=(const DtFileDistributor &orig)
#define DT_DLL_LRC
Definition: rtiMsConfig.h:126
DtConnectionMgr * myConnMgr
Map between files that have been uploaded to me and their &#39;file names&#39;.
Definition: synchronousFileDistributor.h:93
virtual bool sendFedFile(const std::vector< MAKRti::DtString > &modules)
Override sendFedFile upload fed files passed in.

Document ID: Generated on Thu May 11 15:55:32 EDT 2023 from SVN revision 254743
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)