[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[certi-cvs] certi RTIA/DeclarationManagement.cc RTIA/Federa... [br_DEV_H
From: |
certi-cvs |
Subject: |
[certi-cvs] certi RTIA/DeclarationManagement.cc RTIA/Federa... [br_DEV_HETEROGENEOUS] |
Date: |
Thu, 10 Apr 2008 14:57:51 +0000 |
CVSROOT: /sources/certi
Module name: certi
Branch: br_DEV_HETEROGENEOUS
Changes by: Eric NOULARD <erk> 08/04/10 14:57:50
Modified files:
RTIA : DeclarationManagement.cc
FederationManagement.cc Files.cc
ObjectManagement.cc RTIA_network.cc
TimeManagement.cc Communications.cc
OwnershipManagement.cc DataDistribution.cc
RTIG : RTIG.cc RTIG_processing.cc Federation.cc
libCERTI : NetworkMessage_RW.cc NetworkMessage.hh
NM_Classes.hh ObjectClassAttribute.cc
ObjectClassBroadcastList.cc NM_Classes.cc
Interaction.cc ObjectClass.cc NetworkMessage.cc
Log message:
One big step forward (not [yet] functional)
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/DeclarationManagement.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.17.2.1&r2=3.17.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/FederationManagement.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.50.2.1&r2=3.50.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/Files.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.8&r2=3.8.4.1
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/ObjectManagement.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.35.2.1&r2=3.35.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/RTIA_network.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.22.2.1&r2=3.22.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/TimeManagement.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.29.2.1&r2=3.29.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/Communications.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.22.2.2&r2=3.22.2.3
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/OwnershipManagement.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.12.2.1&r2=3.12.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/DataDistribution.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.23.2.1&r2=3.23.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/RTIG.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.36.2.3&r2=3.36.2.4
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/RTIG_processing.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.56.2.2&r2=3.56.2.3
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/Federation.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.80.2.2&r2=3.80.2.3
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage_RW.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.45.2.5&r2=3.45.2.6
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage.hh?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.30.2.6&r2=3.30.2.7
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NM_Classes.hh?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=1.1.2.7&r2=1.1.2.8
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/ObjectClassAttribute.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.27&r2=3.27.2.1
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/ObjectClassBroadcastList.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.18.2.2&r2=3.18.2.3
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NM_Classes.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=1.1.2.7&r2=1.1.2.8
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/Interaction.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.35.2.2&r2=3.35.2.3
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/ObjectClass.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.41.2.2&r2=3.41.2.3
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.28.2.5&r2=3.28.2.6
Patches:
Index: RTIA/DeclarationManagement.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/DeclarationManagement.cc,v
retrieving revision 3.17.2.1
retrieving revision 3.17.2.2
diff -u -b -r3.17.2.1 -r3.17.2.2
--- RTIA/DeclarationManagement.cc 18 Mar 2008 15:55:57 -0000 3.17.2.1
+++ RTIA/DeclarationManagement.cc 10 Apr 2008 14:57:47 -0000 3.17.2.2
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: DeclarationManagement.cc,v 3.17.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: DeclarationManagement.cc,v 3.17.2.2 2008/04/10 14:57:47 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -26,6 +26,7 @@
#include "InteractionSet.hh"
#include "ObjectClassSet.hh"
#include "DeclarationManagement.hh"
+#include "NM_Classes.hh"
#ifdef _WIN32
#include <windows.h>
@@ -86,8 +87,7 @@
}
// Partie RTIG
- NetworkMessage req ;
- req.type = NetworkMessage::PUBLISH_OBJECT_CLASS ;
+ NM_Publish_Object_Class req ;
req.objectClass = theClassHandle ;
req.handleArraySize = attribArraySize ;
req.federation = fm->_numero_federation ;
@@ -131,8 +131,8 @@
}
// Partie RTIG
- NetworkMessage req ;
- req.type = NetworkMessage::UNPUBLISH_OBJECT_CLASS ;
+ NM_Unpublish_Object_Class req ;
+
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.objectClass = theClassHandle ;
@@ -166,8 +166,8 @@
}
// RTIG (may be non-local) request
- NetworkMessage req ;
- req.type = NetworkMessage::PUBLISH_INTERACTION_CLASS ;
+ NM_Publish_Interaction_Class req ;
+
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.interactionClass = theInteractionHandle ;
@@ -199,8 +199,7 @@
}
// Partie RTIG
- NetworkMessage req;
- req.type = NetworkMessage::UNPUBLISH_INTERACTION_CLASS ;
+ NM_Unpublish_Interaction_Class req;
req.interactionClass = theInteractionHandle ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -221,14 +220,13 @@
UShort attribArraySize,
TypeException &e)
{
- NetworkMessage req;
+ NM_Subscribe_Object_Class req;
G.Out(pdGendoc,"enter
DeclarationManagement::subscribeObjectClassAttribute");
// Pas de partie locale pour les abonnements
// Partie RTIG
- req.type = NetworkMessage::SUBSCRIBE_OBJECT_CLASS ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.objectClass = theClassHandle ;
@@ -258,14 +256,13 @@
unsubscribeObjectClassAttribute(ObjectClassHandle theClassHandle,
TypeException &e)
{
- NetworkMessage req;
+ NM_Unsubscribe_Object_Class req;
e = e_NO_EXCEPTION ;
// Pas de Partie Locale pour les abonnements
// Partie RTIG
- req.type = NetworkMessage::UNSUBSCRIBE_OBJECT_CLASS ;
req.objectClass = theClassHandle ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -286,7 +283,7 @@
subscribeInteractionClass(InteractionClassHandle theClassHandle,
TypeException &e)
{
- NetworkMessage req;
+ NM_Subscribe_Interaction_Class req;
e = e_NO_EXCEPTION ;
@@ -303,8 +300,6 @@
}
// Partie RTIG
-
- req.type = NetworkMessage::SUBSCRIBE_INTERACTION_CLASS ;
req.interactionClass = theClassHandle ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -324,7 +319,7 @@
unsubscribeInteractionClass(InteractionClassHandle theClassHandle,
TypeException &e)
{
- NetworkMessage req;
+ NM_Unsubscribe_Object_Class req;
e = e_NO_EXCEPTION ;
@@ -341,8 +336,6 @@
}
// Partie RTIG
-
- req.type = NetworkMessage::UNSUBSCRIBE_INTERACTION_CLASS ;
req.interactionClass = theClassHandle ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -459,4 +452,4 @@
}} // namespace certi/rtia
-// $Id: DeclarationManagement.cc,v 3.17.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: DeclarationManagement.cc,v 3.17.2.2 2008/04/10 14:57:47 erk Exp $
Index: RTIA/FederationManagement.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/FederationManagement.cc,v
retrieving revision 3.50.2.1
retrieving revision 3.50.2.2
diff -u -b -r3.50.2.1 -r3.50.2.2
--- RTIA/FederationManagement.cc 18 Mar 2008 15:55:57 -0000 3.50.2.1
+++ RTIA/FederationManagement.cc 10 Apr 2008 14:57:48 -0000 3.50.2.2
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: FederationManagement.cc,v 3.50.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: FederationManagement.cc,v 3.50.2.2 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -26,6 +26,7 @@
#include "TimeManagement.hh"
#include "PrettyDebug.hh"
+#include "NM_Classes.hh"
#ifdef _WIN32
#include <windows.h>
@@ -114,7 +115,7 @@
CouldNotOpenFED,ErrorReadingFED,
RTIinternalError)
{
- NetworkMessage requete;
+ NM_Create_Federation_Execution requete;
G.Out(pdGendoc,"enter FederationManagement::createFederationExecution");
D.Out(pdInit, "Creating Federation %s.", theName);
@@ -136,7 +137,6 @@
if (e == e_NO_EXCEPTION)
{
- requete.type = NetworkMessage::CREATE_FEDERATION_EXECUTION ;
requete.federationName = theName;
requete.FEDid = _FEDid;
@@ -203,7 +203,7 @@
destroyFederationExecution(const char *theName,
TypeException &e)
{
- NetworkMessage requete;
+ NM_Destroy_Federation_Execution requete;
D.Out(pdInit, "Destroy Federation %s.", theName);
G.Out(pdGendoc,"enter FederationManagement::destroyFederationExecution");
@@ -215,7 +215,6 @@
// e = e_FederationExecutionDoesNotExist ;
if (e == e_NO_EXCEPTION) {
- requete.type = NetworkMessage::DESTROY_FEDERATION_EXECUTION ;
requete.federation = _numero_federation ;
requete.federate = federate ;
requete.federationName = theName;
@@ -256,7 +255,9 @@
const char *Federation,
TypeException &e)
{
- NetworkMessage requete, requeteFED ;
+ NM_Join_Federation_Execution requete;
+ NM_Get_FED_File requeteFED;
+
int i, nb ;
char *filename ; // Needed for working file name
@@ -272,7 +273,6 @@
e = e_FederateAlreadyExecutionMember ;
if (e == e_NO_EXCEPTION) {
- requete.type = NetworkMessage::JOIN_FEDERATION_EXECUTION ;
requete.federationName = Federation;
requete.federateName = Federate;
@@ -330,7 +330,6 @@
throw RTIinternalError("FED file has vanished.") ;
// RTIA says RTIG OK for file transfer
- requeteFED.type = NetworkMessage::GET_FED_FILE ;
requeteFED.federateName = Federate;
requeteFED.FEDid = filename;
if ( e == e_NO_EXCEPTION)
@@ -367,7 +366,6 @@
int nbw = fputs(file_line,fdd);
file_line = NULL ;
// RTIA says OK to RTIG
- requeteFED.type = NetworkMessage::GET_FED_FILE ;
requeteFED.federateName =Federate;
requeteFED.number = num_line ;
requeteFED.FEDid = filename;
@@ -402,7 +400,7 @@
for (i=0 ; i<nb ; i++) {
reponse.reset(comm->waitMessage(NetworkMessage::MESSAGE_NULL,
0));
assert(tm != NULL);
- tm->insert(reponse->federate, reponse->date);
+ tm->insert(reponse->federate, reponse->getDate());
}
_est_membre_federation = true ;
@@ -424,7 +422,7 @@
FederationManagement::resignFederationExecution(RTI::ResignAction,
TypeException &e)
{
- NetworkMessage msg ;
+ NM_Resign_Federation_Execution msg ;
TypeException exception = e_NO_EXCEPTION ;
e = e_NO_EXCEPTION ;
@@ -440,7 +438,6 @@
if (tm->requestRegulateurState())
tm->setTimeRegulating(false, exception);
- msg.type = NetworkMessage::RESIGN_FEDERATION_EXECUTION ;
msg.federation = _numero_federation ;
msg.federate = federate ;
@@ -496,8 +493,7 @@
e = e_FederateNotExecutionMember ;
if (e == e_NO_EXCEPTION) {
- NetworkMessage req ;
- req.type = NetworkMessage::REGISTER_FEDERATION_SYNCHRONIZATION_POINT ;
+ NM_Register_Federation_Synchronization_Point req ;
req.federation = _numero_federation ;
req.federate = federate ;
req.setLabel(label);
@@ -547,8 +543,7 @@
e = e_FederateNotExecutionMember ;
if (e == e_NO_EXCEPTION) {
- NetworkMessage req ;
- req.type = NetworkMessage::REGISTER_FEDERATION_SYNCHRONIZATION_POINT ;
+ NM_Register_Federation_Synchronization_Point req;
req.federation = _numero_federation ;
req.federate = federate ;
req.setLabel(label);
@@ -604,9 +599,8 @@
e = e_FederateNotExecutionMember ;
if (e == e_NO_EXCEPTION) {
- NetworkMessage req ;
+ NM_Synchronization_Point_Achieved req ;
- req.type = NetworkMessage::SYNCHRONIZATION_POINT_ACHIEVED ;
req.federation = _numero_federation ;
req.federate = federate ;
req.setLabel(label);
@@ -719,9 +713,9 @@
assert(label != 0);
- NetworkMessage req ;
- req.type = NetworkMessage::REQUEST_FEDERATION_SAVE ;
- req.date = the_time ;
+ NM_Request_Federation_Save req ;
+
+ req.setDate(the_time);
req.setLabel(label);
req.federation = _numero_federation ;
req.federate = federate ;
@@ -750,8 +744,8 @@
assert(label != 0);
- NetworkMessage req ;
- req.type = NetworkMessage::REQUEST_FEDERATION_SAVE ;
+ NM_Request_Federation_Save req ;
+
req.setLabel(label);
req.federation = _numero_federation ;
req.federate = federate ;
@@ -776,9 +770,8 @@
if (!savingState)
throw SaveNotInitiated("Federation did not initiate saving.");
- NetworkMessage req ;
+ NM_Federate_Save_Begun req ;
- req.type = NetworkMessage::FEDERATE_SAVE_BEGUN ;
req.federate = federate ;
req.federation = _numero_federation ;
@@ -799,11 +792,10 @@
if (!savingState)
throw SaveNotInitiated("Federation did not initiate saving.");
- NetworkMessage req ;
+ std::auto_ptr<NetworkMessage> req(NM_Factory::create(status ?
NetworkMessage::FEDERATE_SAVE_COMPLETE :
NetworkMessage::FEDERATE_SAVE_NOT_COMPLETE));
- req.type= status ? NetworkMessage::FEDERATE_SAVE_COMPLETE :
NetworkMessage::FEDERATE_SAVE_NOT_COMPLETE ;
- req.federate = federate ;
- req.federation = _numero_federation ;
+ req->federate = federate ;
+ req->federation = _numero_federation ;
if (status)
{
@@ -814,7 +806,7 @@
G.Out(pdGendoc," federateSaveStatus ====>send Message F_S_N_C to
RTIG");
}
- comm->sendMessage(&req);
+ comm->sendMessage(req.get());
G.Out(pdGendoc,"exit FederationManagement::federateSaveStatus");
}
@@ -868,8 +860,8 @@
assert(label != NULL);
- NetworkMessage req ;
- req.type = NetworkMessage::REQUEST_FEDERATION_RESTORE ;
+ NM_Request_Federation_Restore req ;
+
req.setLabel(label);
req.federate = federate ;
req.federation = _numero_federation ;
@@ -892,15 +884,10 @@
if (!restoringState)
throw RestoreNotRequested("Federation did not initiate restoring.");
- NetworkMessage req ;
- req.federate = federate ;
- req.federation = _numero_federation ;
- if (status)
- req.type = NetworkMessage::FEDERATE_RESTORE_COMPLETE ;
- else
- req.type = NetworkMessage::FEDERATE_RESTORE_NOT_COMPLETE ;
-
- comm->sendMessage(&req);
+ std::auto_ptr<NetworkMessage> req(NM_Factory::create(status ?
NetworkMessage::FEDERATE_RESTORE_COMPLETE :
NetworkMessage::FEDERATE_RESTORE_NOT_COMPLETE));
+ req->federate = federate ;
+ req->federation = _numero_federation ;
+ comm->sendMessage(req.get());
}
// ----------------------------------------------------------------------------
@@ -1003,4 +990,4 @@
}} // namespace certi/rtia
-// $Id: FederationManagement.cc,v 3.50.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: FederationManagement.cc,v 3.50.2.2 2008/04/10 14:57:48 erk Exp $
Index: RTIA/Files.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/Files.cc,v
retrieving revision 3.8
retrieving revision 3.8.4.1
diff -u -b -r3.8 -r3.8.4.1
--- RTIA/Files.cc 30 Apr 2005 16:38:39 -0000 3.8
+++ RTIA/Files.cc 10 Apr 2008 14:57:48 -0000 3.8.4.1
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: Files.cc,v 3.8 2005/04/30 16:38:39 breholee Exp $
+// $Id: Files.cc,v 3.8.4.1 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -43,7 +43,7 @@
else {
msg_buffer = tsos.front();
found = true ;
- time = msg_buffer->date ;
+ time = msg_buffer->getDate();
}
}
@@ -113,7 +113,7 @@
if (!tsos.empty()) {
buffer_msg = tsos.front();
- if (buffer_msg->date <= heure_logique) {
+ if (buffer_msg->getDate() <= heure_logique) {
// remove from list but keep pointer to execute
// ExecuterServiceFedere.
tsos.pop_front();
@@ -124,7 +124,7 @@
NetworkMessage *buffer_msg2 ;
buffer_msg2 = tsos.front();
- if (buffer_msg2->date <= heure_logique)
+ if (buffer_msg2->getDate() <= heure_logique)
msg_restant = true ;
}
return buffer_msg ;
@@ -175,7 +175,7 @@
// stricly greater because we want to place new message behind
// older ones with same logical time and thus keep receive order
// in list.
- if ((*i)->date > msg->date) {
+ if ((*i)->getDate() > msg->getDate()) {
tsos.insert(i, msg);
return ;
}
@@ -186,4 +186,4 @@
}} // namespaces
-// $Id: Files.cc,v 3.8 2005/04/30 16:38:39 breholee Exp $
+// $Id: Files.cc,v 3.8.4.1 2008/04/10 14:57:48 erk Exp $
Index: RTIA/ObjectManagement.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/ObjectManagement.cc,v
retrieving revision 3.35.2.1
retrieving revision 3.35.2.2
diff -u -b -r3.35.2.1 -r3.35.2.2
--- RTIA/ObjectManagement.cc 18 Mar 2008 15:55:58 -0000 3.35.2.1
+++ RTIA/ObjectManagement.cc 10 Apr 2008 14:57:48 -0000 3.35.2.2
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: ObjectManagement.cc,v 3.35.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: ObjectManagement.cc,v 3.35.2.2 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -29,6 +29,7 @@
#include "ObjectManagement.hh"
#include "FederationManagement.hh"
#include "PrettyDebug.hh"
+#include "NM_Classes.hh"
#ifdef _WIN32
#include <windows.h>
@@ -67,9 +68,8 @@
FederationTime,
TypeException & e)
{
- NetworkMessage req;
+ NM_Register_Object req;
- req.type = NetworkMessage::REGISTER_OBJECT ;
req.federate = fm->federate ;
req.federation = fm->_numero_federation ;
req.objectClass = the_class ;
@@ -110,17 +110,15 @@
const char *theTag,
TypeException &e)
{
- NetworkMessage req;
+ NM_Update_Attribute_Values req;
int i ;
// Building request (req NetworkMessage)
- req.type = NetworkMessage::UPDATE_ATTRIBUTE_VALUES ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObjectHandle ;
- req.date = theTime ;
- // true for UAV with time
- req.setBoolean(true);
+ // set Datefor UAV with time
+ req.setDate(theTime);
req.handleArraySize = attribArraySize ;
@@ -157,11 +155,10 @@
const char *theTag,
TypeException &e)
{
- NetworkMessage req;
+ NM_Update_Attribute_Values req;
int i ;
// Building request (req NetworkMessage)
- req.type = NetworkMessage::UPDATE_ATTRIBUTE_VALUES ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObjectHandle ;
@@ -273,7 +270,7 @@
RegionHandle region,
TypeException &e)
{
- NetworkMessage req;
+ NM_Send_Interaction req;
G.Out(pdGendoc,"ObjectManagement::sendInteraction with time") ;
// Local test to know if interaction is correct.
rootObject->Interactions->isReady(fm->federate,
@@ -282,11 +279,9 @@
paramArraySize);
// Building network message (req) to RTIG.
- req.type = NetworkMessage::SEND_INTERACTION ;
req.interactionClass = theInteraction ;
// true for UAV with time
- req.setBoolean(true);
- req.date = theTime ;
+ req.setDate(theTime);
req.region = region ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -320,7 +315,7 @@
RegionHandle region,
TypeException &e)
{
- NetworkMessage req;
+ NM_Send_Interaction req;
G.Out(pdGendoc,"ObjectManagement::sendInteraction without time");
// Local test to know if interaction is correct.
rootObject->Interactions->isReady(fm->federate,
@@ -329,10 +324,9 @@
paramArraySize);
// Building network message (req) to RTIG.
- req.type = NetworkMessage::SEND_INTERACTION ;
req.interactionClass = theInteraction ;
// false for UAV without time
- req.setBoolean(false);
+ req.isDated = false;
req.region = region ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -406,12 +400,10 @@
const char *theTag,
TypeException &e)
{
- NetworkMessage req;
+ NM_Delete_Object req;
- req.type = NetworkMessage::DELETE_OBJECT ;
req.object = theObjectHandle ;
- req.setBoolean(true);
- req.date = theTime;
+ req.setDate(theTime);
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -435,11 +427,9 @@
const char *theTag,
TypeException &e)
{
- NetworkMessage req;
+ NM_Delete_Object req;
- req.type = NetworkMessage::DELETE_OBJECT ;
req.object = theObjectHandle ;
- req.setBoolean(false);
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -506,10 +496,9 @@
TransportType theType,
TypeException &e)
{
- NetworkMessage req;
+ NM_Change_Attribute_Transport_Type req;
int i ;
- req.type = NetworkMessage::CHANGE_ATTRIBUTE_TRANSPORT_TYPE ;
req.object = theObjectHandle ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -538,10 +527,9 @@
OrderType theType,
TypeException &e)
{
- NetworkMessage req ;
+ NM_Change_Attribute_Order_Type req ;
int i ;
- req.type = NetworkMessage::CHANGE_ATTRIBUTE_ORDER_TYPE ;
req.object = theObjectHandle ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -567,9 +555,8 @@
TransportType theType,
TypeException &e)
{
- NetworkMessage req;
+ NM_Change_Interaction_Transport_Type req;
- req.type = NetworkMessage::CHANGE_INTERACTION_TRANSPORT_TYPE ;
req.interactionClass = id ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -589,9 +576,8 @@
OrderType theType,
TypeException &e)
{
- NetworkMessage req;
+ NM_Change_Interaction_Order_Type req;
- req.type = NetworkMessage::CHANGE_INTERACTION_ORDER_TYPE ;
req.interactionClass = id ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -614,11 +600,10 @@
UShort attribArraySize,
TypeException &e)
{
- NetworkMessage req;
+ NM_Request_Object_Attribute_Value_Update req;
G.Out(pdGendoc,"enter
ObjectManagement::requestObjectAttributeValueUpdate");
- req.type = NetworkMessage::REQUEST_OBJECT_ATTRIBUTE_VALUE_UPDATE ;
req.object = handle ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
@@ -785,4 +770,4 @@
}} // namespace certi/rtia
-// $Id: ObjectManagement.cc,v 3.35.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: ObjectManagement.cc,v 3.35.2.2 2008/04/10 14:57:48 erk Exp $
Index: RTIA/RTIA_network.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/RTIA_network.cc,v
retrieving revision 3.22.2.1
retrieving revision 3.22.2.2
diff -u -b -r3.22.2.1 -r3.22.2.2
--- RTIA/RTIA_network.cc 18 Mar 2008 15:55:58 -0000 3.22.2.1
+++ RTIA/RTIA_network.cc 10 Apr 2008 14:57:48 -0000 3.22.2.2
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: RTIA_network.cc,v 3.22.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: RTIA_network.cc,v 3.22.2.2 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -41,7 +41,7 @@
void
RTIA::processNetworkMessage(NetworkMessage *msg)
{
-NetworkMessage::Type msgType = msg->type;
+NetworkMessage::Type msgType = msg->getType();
G.Out(pdGendoc,"enter RTIA::processNetworkMessage");
@@ -51,9 +51,9 @@
{
D.Out(pdTrace,
"Receving Message from RTIG, type
NetworkMessage::MESSAGE_NULL(%f).",
- msg->date);
+ msg->getDate());
- tm->update(msg->federate, msg->date);
+ tm->update(msg->federate, msg->getDate());
delete msg ;
break ;
}
@@ -65,7 +65,7 @@
"Receving Message from RTIG, type
NetworkMessage::SET_TIME_REGULATING.");
if (msg->regulator)
- tm->insert(msg->federate, msg->date);
+ tm->insert(msg->federate, msg->getDate());
else
tm->remove(msg->federate);
delete msg ;
@@ -343,4 +343,4 @@
}} // namespace certi/rtia
-// $Id: RTIA_network.cc,v 3.22.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: RTIA_network.cc,v 3.22.2.2 2008/04/10 14:57:48 erk Exp $
Index: RTIA/TimeManagement.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/TimeManagement.cc,v
retrieving revision 3.29.2.1
retrieving revision 3.29.2.2
diff -u -b -r3.29.2.1 -r3.29.2.2
--- RTIA/TimeManagement.cc 18 Mar 2008 15:55:57 -0000 3.29.2.1
+++ RTIA/TimeManagement.cc 10 Apr 2008 14:57:48 -0000 3.29.2.2
@@ -18,11 +18,12 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: TimeManagement.cc,v 3.29.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: TimeManagement.cc,v 3.29.2.2 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
#include "TimeManagement.hh"
+#include "NM_Classes.hh"
#include <float.h>
namespace certi {
@@ -93,16 +94,15 @@
//! Send a null message to RTIG containing Local Time + Lookahead.
void TimeManagement::sendNullMessage(FederationTime heure_logique)
{
- NetworkMessage msg ;
+ NM_Message_Null msg ;
- msg.date = heure_logique ;
+ msg.setDate(heure_logique);
heure_logique += _lookahead_courant ;
if (heure_logique > lastNullMessageDate) {
- msg.type = NetworkMessage::MESSAGE_NULL ;
msg.federation = fm->_numero_federation ;
msg.federate = fm->federate ;
- msg.date = heure_logique ; // ? See 6 lines upper !
+ msg.setDate(heure_logique) ; // ? See 6 lines upper !
comm->sendMessage(&msg);
lastNullMessageDate = heure_logique ;
@@ -120,12 +120,12 @@
TimeManagement::executeFederateService(NetworkMessage &msg)
{
G.Out(pdGendoc,"enter TimeManagement::executeFederateService");
- D.Out(pdRequest, "Execute federate service: Type %d.", msg.type);
+ D.Out(pdRequest, "Execute federate service: Type %d.", msg.getType());
_ongoing_tick = false ; // end of the blocking tick, a message is delivered
_tick_request_ack = false ; // the callback message serves as the ack
- switch (msg.type) {
+ switch (msg.getType()) {
case NetworkMessage::FEDERATION_SYNCHRONIZED:
try {
@@ -163,7 +163,7 @@
om->discoverObject(msg.object,
msg.objectClass,
msg.label.c_str(),
- msg.date,
+ msg.getDate(),
msg.eventRetraction,
msg.exception);
@@ -183,7 +183,7 @@
msg.handleArray,
ValueArray,
msg.handleArraySize,
- msg.date,
+ msg.getDate(),
msg.label.c_str(),
msg.eventRetraction,
msg.exception);
@@ -217,7 +217,7 @@
msg.handleArray,
ValueArray,
msg.handleArraySize,
- msg.date,
+ msg.getDate(),
msg.label.c_str(),
msg.eventRetraction,
msg.exception);
@@ -237,7 +237,7 @@
if (msg.getBoolean()) {
om->removeObject(msg.object,
msg.federate,
- msg.date,
+ msg.getDate(),
msg.label.c_str(),
msg.eventRetraction,
msg.exception);
@@ -320,14 +320,14 @@
case NetworkMessage::FEDERATION_SAVED:
case NetworkMessage::FEDERATION_NOT_SAVED: {
- bool status = (msg.type == NetworkMessage::FEDERATION_SAVED) ? true
: false ;
+ bool status = (msg.getType() == NetworkMessage::FEDERATION_SAVED) ?
true : false ;
fm->federationSavedStatus(status);
}
break ;
case NetworkMessage::REQUEST_FEDERATION_RESTORE_SUCCEEDED:
case NetworkMessage::REQUEST_FEDERATION_RESTORE_FAILED: {
- bool status = (msg.type ==
NetworkMessage::REQUEST_FEDERATION_RESTORE_SUCCEEDED)
+ bool status = (msg.getType() ==
NetworkMessage::REQUEST_FEDERATION_RESTORE_SUCCEEDED)
? true : false ;
fm->requestFederationRestoreStatus(status, msg.label.c_str(),
msg.tag.c_str());
}
@@ -343,7 +343,7 @@
case NetworkMessage::FEDERATION_RESTORED:
case NetworkMessage::FEDERATION_NOT_RESTORED: {
- bool status = (msg.type == NetworkMessage::FEDERATION_RESTORED) ?
true : false ;
+ bool status = (msg.getType() == NetworkMessage::FEDERATION_RESTORED)
? true : false ;
fm->federationRestoredStatus(status);
}
break ;
@@ -551,7 +551,7 @@
void
TimeManagement::setTimeConstrained(bool etat, TypeException &e)
{
- NetworkMessage msg ;
+ NM_Set_Time_Constrained msg ;
e = e_NO_EXCEPTION ;
@@ -566,7 +566,6 @@
if (e == e_NO_EXCEPTION) {
_est_contraint = etat ;
- msg.type = NetworkMessage::SET_TIME_CONSTRAINED ;
msg.federation = fm->_numero_federation ;
msg.federate = fm->federate ;
msg.constrained = etat ;
@@ -585,7 +584,7 @@
void
TimeManagement::setTimeRegulating(bool etat, TypeException &e)
{
- NetworkMessage msg ;
+ NM_Set_Time_Regulating msg ;
e = e_NO_EXCEPTION ;
@@ -606,11 +605,10 @@
if (e == e_NO_EXCEPTION) {
_est_regulateur = etat ;
- msg.type = NetworkMessage::SET_TIME_REGULATING ;
msg.federation = fm->_numero_federation ;
msg.federate = fm->federate ;
msg.regulator = etat ;
- msg.date = _heure_courante + _lookahead_courant ;
+ msg.setDate(_heure_courante + _lookahead_courant);
comm->sendMessage(&msg);
@@ -798,4 +796,4 @@
}} // namespaces
-// $Id: TimeManagement.cc,v 3.29.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: TimeManagement.cc,v 3.29.2.2 2008/04/10 14:57:48 erk Exp $
Index: RTIA/Communications.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/Communications.cc,v
retrieving revision 3.22.2.2
retrieving revision 3.22.2.3
diff -u -b -r3.22.2.2 -r3.22.2.3
--- RTIA/Communications.cc 10 Apr 2008 11:35:57 -0000 3.22.2.2
+++ RTIA/Communications.cc 10 Apr 2008 14:57:48 -0000 3.22.2.3
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: Communications.cc,v 3.22.2.2 2008/04/10 11:35:57 erk Exp $
+// $Id: Communications.cc,v 3.22.2.3 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -75,7 +75,7 @@
D.Out(pdProtocol, "TCP Message of Type %d has arrived.", type_msg);
- while ((msg->type != type_msg) ||
+ while ((msg->getType() != type_msg) ||
((numeroFedere != 0) && (msg->federate != numeroFedere))) {
waitingList.push_back(msg);
msg = NM_Factory::receive((SecureTCPSocket *) this);
@@ -83,7 +83,7 @@
}
assert(msg != NULL);
- assert(msg->type == type_msg);
+ assert(msg->getType() == type_msg);
return msg;
} /* end of waitMessage */
@@ -290,7 +290,7 @@
D.Out(pdProtocol, "Rechercher message de type %d .", type_msg);
- if ((*i)->type == type_msg) {
+ if ((*i)->getType() == type_msg) {
// if numeroFedere != 0, verify that federateNumbers are similar
if (((*i)->federate == numeroFedere) || (numeroFedere == 0)) {
*msg = *i;
@@ -328,4 +328,4 @@
}} // namespace certi/rtia
-// $Id: Communications.cc,v 3.22.2.2 2008/04/10 11:35:57 erk Exp $
+// $Id: Communications.cc,v 3.22.2.3 2008/04/10 14:57:48 erk Exp $
Index: RTIA/OwnershipManagement.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/OwnershipManagement.cc,v
retrieving revision 3.12.2.1
retrieving revision 3.12.2.2
diff -u -b -r3.12.2.1 -r3.12.2.2
--- RTIA/OwnershipManagement.cc 18 Mar 2008 15:55:57 -0000 3.12.2.1
+++ RTIA/OwnershipManagement.cc 10 Apr 2008 14:57:48 -0000 3.12.2.2
@@ -18,13 +18,14 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: OwnershipManagement.cc,v 3.12.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: OwnershipManagement.cc,v 3.12.2.2 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
#include "OwnershipManagement.hh"
#include "PrettyDebug.hh"
+#include "NM_Classes.hh"
#ifdef _WIN32
#include <windows.h>
@@ -63,13 +64,12 @@
AttributeHandle theAttribute,
TypeException &e)
{
- NetworkMessage req ;
+ NM_Is_Attribute_Owned_By_Federate req ;
D.Out(pdDebug,
"IS_ATTRIBUTE_OWNED_BY_FEDERATE, attribute %u of object %u",
theAttribute, theObject);
- req.type = NetworkMessage::IS_ATTRIBUTE_OWNED_BY_FEDERATE ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -100,13 +100,12 @@
AttributeHandle theAttribute,
TypeException &e)
{
- NetworkMessage req;
+ NM_Query_Attribute_Ownership req;
D.Out(pdDebug,
"QUERY_ATTRIBUTE_OWNERSHIP, attribute %u from object %u",
theAttribute, theObject);
- req.type = NetworkMessage::QUERY_ATTRIBUTE_OWNERSHIP ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -134,9 +133,8 @@
TypeException &e)
{
- NetworkMessage req;
+ NM_Negotiated_Attribute_Ownership_Divestiture req;
- req.type = NetworkMessage::NEGOTIATED_ATTRIBUTE_OWNERSHIP_DIVESTITURE ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -166,9 +164,8 @@
UShort attribArraySize,
TypeException &e)
{
- NetworkMessage req;
+ NM_Cancel_Negotiated_Attribute_Ownership_Divestiture req;
- req.type =
NetworkMessage::CANCEL_NEGOTIATED_ATTRIBUTE_OWNERSHIP_DIVESTITURE ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -198,9 +195,8 @@
UShort attribArraySize,
TypeException &e)
{
- NetworkMessage req;
+ NM_Attribute_Ownership_Acquisition_If_Available req;
- req.type = NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION_IF_AVAILABLE ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -228,9 +224,8 @@
UShort attribArraySize,
TypeException &e)
{
- NetworkMessage req;
+ NM_Unconditional_Attribute_Ownership_Divestiture req;
- req.type = NetworkMessage::UNCONDITIONAL_ATTRIBUTE_OWNERSHIP_DIVESTITURE ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -260,9 +255,8 @@
const char *theTag,
TypeException &e)
{
- NetworkMessage req;
+ NM_Attribute_Ownership_Acquisition req;
- req.type = NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -292,9 +286,8 @@
UShort attribArraySize,
TypeException &e)
{
- NetworkMessage req;
+ NM_Attribute_Ownership_Release_Response req;
- req.type = NetworkMessage::ATTRIBUTE_OWNERSHIP_RELEASE_RESPONSE ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -338,9 +331,8 @@
UShort attribArraySize,
TypeException &e)
{
- NetworkMessage req;
+ NM_Cancel_Attribute_Ownership_Acquisition req;
- req.type = NetworkMessage::CANCEL_ATTRIBUTE_OWNERSHIP_ACQUISITION ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = theObject ;
@@ -512,4 +504,4 @@
}} // namespace certi/rtia
-// $Id: OwnershipManagement.cc,v 3.12.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: OwnershipManagement.cc,v 3.12.2.2 2008/04/10 14:57:48 erk Exp $
Index: RTIA/DataDistribution.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/DataDistribution.cc,v
retrieving revision 3.23.2.1
retrieving revision 3.23.2.2
diff -u -b -r3.23.2.1 -r3.23.2.2
--- RTIA/DataDistribution.cc 18 Mar 2008 15:55:57 -0000 3.23.2.1
+++ RTIA/DataDistribution.cc 10 Apr 2008 14:57:48 -0000 3.23.2.2
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: DataDistribution.cc,v 3.23.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: DataDistribution.cc,v 3.23.2.2 2008/04/10 14:57:48 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -33,6 +33,7 @@
#include "ObjectClassAttribute.hh"
#include "RoutingSpace.hh"
#include "FedRegion.hh"
+#include "NM_Classes.hh"
#include <cassert>
#include <memory>
@@ -123,9 +124,8 @@
throw (SpaceNotDefined)
{
D[pdDebug] << "Start creating region in space " << space << "..." << endl ;
- NetworkMessage req;
+ NM_DDM_Create_Region req;
- req.type = NetworkMessage::DDM_CREATE_REGION ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.space = space ;
@@ -164,9 +164,8 @@
RTIRegion *region = rootObject->getRegion(handle);
// Request to RTIG
- NetworkMessage req;
+ NM_DDM_Modify_Region req;
- req.type = NetworkMessage::DDM_MODIFY_REGION ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.region = handle ;
@@ -195,9 +194,8 @@
rootObject->getRegion(handle);
// Request to RTIG
- NetworkMessage req;
+ NM_DDM_Delete_Region req;
- req.type = NetworkMessage::DDM_DELETE_REGION ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.region = handle ;
@@ -232,9 +230,8 @@
rootObject->getObjectAttribute(object, attr[i])->associate(r);
}
- NetworkMessage req;
+ NM_DDM_Associate_Region req;
- req.type = NetworkMessage::DDM_ASSOCIATE_REGION ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = object ;
@@ -260,9 +257,8 @@
D[pdDebug] << "Register object of class " << class_handle << " with "
<< regions.size() << " region(s)." << std::endl ;
- NetworkMessage req;
+ NM_DDM_Register_Object req;
- req.type = NetworkMessage::DDM_REGISTER_OBJECT ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.objectClass = class_handle ;
@@ -304,9 +300,8 @@
rootObject->getObject(object)->unassociate(r);
- NetworkMessage req;
+ NM_DDM_Unassociate_Region req;
- req.type = NetworkMessage::DDM_UNASSOCIATE_REGION ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.object = object ;
@@ -331,9 +326,8 @@
D[pdDebug] << "Subscribe attributes with region " << region << endl ;
rootObject->getRegion(region);
- NetworkMessage req;
+ NM_DDM_Subscribe_Attributes req;
- req.type = NetworkMessage::DDM_SUBSCRIBE_ATTRIBUTES ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.objectClass = obj_class ;
@@ -358,9 +352,8 @@
<< " with region " << region << endl ;
rootObject->getRegion(region);
- NetworkMessage req;
+ NM_DDM_Unsubscribe_Attributes req;
- req.type = NetworkMessage::DDM_UNSUBSCRIBE_ATTRIBUTES ;
req.federation = fm->_numero_federation ;
req.federate = fm->federate ;
req.objectClass = obj_class ;
@@ -383,9 +376,8 @@
D[pdDebug] << "Subscribe interaction with region " << region << endl ;
rootObject->getRegion(region);
- NetworkMessage req;
+ NM_DDM_Subscribe_Interaction req;
- req.type = NetworkMessage::DDM_SUBSCRIBE_INTERACTION ;
req.interactionClass = int_class ;
req.region = region ;
@@ -406,9 +398,8 @@
D[pdDebug] << "Unsubscribe interaction with region " << region << endl ;
rootObject->getRegion(region);
- NetworkMessage req;
+ NM_DDM_Unsubscribe_Interaction req;
- req.type = NetworkMessage::DDM_UNSUBSCRIBE_INTERACTION ;
req.interactionClass = int_class ;
req.region = region ;
@@ -421,4 +412,4 @@
}} // namespace certi::rtia
-// $Id: DataDistribution.cc,v 3.23.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: DataDistribution.cc,v 3.23.2.2 2008/04/10 14:57:48 erk Exp $
Index: RTIG/RTIG.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/RTIG.cc,v
retrieving revision 3.36.2.3
retrieving revision 3.36.2.4
diff -u -b -r3.36.2.3 -r3.36.2.4
--- RTIG/RTIG.cc 10 Apr 2008 11:35:55 -0000 3.36.2.3
+++ RTIG/RTIG.cc 10 Apr 2008 14:57:49 -0000 3.36.2.4
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: RTIG.cc,v 3.36.2.3 2008/04/10 11:35:55 erk Exp $
+// $Id: RTIG.cc,v 3.36.2.4 2008/04/10 14:57:49 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -85,12 +85,12 @@
Socket*
RTIG::chooseProcessingMethod(Socket *link, NetworkMessage *msg)
{
- G.Out(pdGendoc,"enter RTIG::chooseProcessingMethod type %d",msg->type);
+ G.Out(pdGendoc,"enter RTIG::chooseProcessingMethod type
%d",msg->getType());
// This may throw a security error.
- if ( msg->type != NetworkMessage::DESTROY_FEDERATION_EXECUTION)
+ if ( msg->getType() != NetworkMessage::DESTROY_FEDERATION_EXECUTION)
socketServer.checkMessage(link->returnSocket(), msg);
- switch(msg->type) {
+ switch(msg->getType()) {
case NetworkMessage::MESSAGE_NULL:
D.Out(pdDebug, "Message Null.");
auditServer.setLevel(0);
@@ -202,7 +202,7 @@
case NetworkMessage::SET_TIME_REGULATING:
D.Out(pdTrace, "SetTimeRegulating du federe %u(date=%f).",
- msg->federate, msg->date);
+ msg->federate, msg->getDate());
auditServer.setLevel(8);
processSetTimeRegulating(msg);
break ;
@@ -369,7 +369,7 @@
default:
// FIXME: Should treat other cases CHANGE_*_ORDER/TRANSPORT_TYPE
- D.Out(pdError, "processMessageRecu: unknown type %u.", msg->type);
+ D.Out(pdError, "processMessageRecu: unknown type %u.", msg->getType());
throw RTIinternalError("Unknown Message Type");
}
G.Out(pdGendoc,"exit RTIG::chooseProcessingMethod");
@@ -506,7 +506,7 @@
RTIG::processIncomingMessage(Socket *link)
{
NetworkMessage* msg ;
- NetworkMessage rep ; // Server Answer(only if an exception is raised)
+
char buffer[BUFFER_EXCEPTION_REASON_SIZE] ; // To store the exception
reason
G.Out(pdGendoc,"enter RTIG::processIncomingMessage");
@@ -518,11 +518,11 @@
/* virtual constructor call */
msg = NM_Factory::receive(link);
- rep.type = msg->type ;
- rep.exception = e_NO_EXCEPTION ;
- rep.federate = msg->federate ;
+ // Server Answer(only if an exception is raised)
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(msg->getType()));
+ rep->federate = msg->federate ;
- auditServer.startLine(msg->federation, msg->federate, msg->type);
+ auditServer.startLine(msg->federation, msg->federate, msg->getType());
// This macro is used to copy any non null exception reason
// string into our buffer(used for Audit purpose).
@@ -537,327 +537,327 @@
catch (ArrayIndexOutOfBounds &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ArrayIndexOutOfBounds ;
+ rep->exception = e_ArrayIndexOutOfBounds ;
}
catch (AttributeAlreadyOwned &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeAlreadyOwned ;
+ rep->exception = e_AttributeAlreadyOwned ;
}
catch (AttributeAlreadyBeingAcquired &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeAlreadyBeingAcquired ;
+ rep->exception = e_AttributeAlreadyBeingAcquired ;
}
catch (AttributeAlreadyBeingDivested &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeAlreadyBeingDivested ;
+ rep->exception = e_AttributeAlreadyBeingDivested ;
}
catch (AttributeDivestitureWasNotRequested &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeDivestitureWasNotRequested ;
+ rep->exception = e_AttributeDivestitureWasNotRequested ;
}
catch (AttributeAcquisitionWasNotRequested &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeAcquisitionWasNotRequested ;
+ rep->exception = e_AttributeAcquisitionWasNotRequested ;
}
catch (AttributeNotDefined &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeNotDefined ;
+ rep->exception = e_AttributeNotDefined ;
}
catch (AttributeNotKnown &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeNotKnown ;
+ rep->exception = e_AttributeNotKnown ;
}
catch (AttributeNotOwned &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeNotOwned ;
+ rep->exception = e_AttributeNotOwned ;
}
catch (AttributeNotPublished &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeNotPublished ;
+ rep->exception = e_AttributeNotPublished ;
}
catch (AttributeNotSubscribed &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_AttributeNotSubscribed ;
+ rep->exception = e_AttributeNotSubscribed ;
}
catch (ConcurrentAccessAttempted &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ConcurrentAccessAttempted ;
+ rep->exception = e_ConcurrentAccessAttempted ;
}
catch (CouldNotDiscover &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_CouldNotDiscover ;
+ rep->exception = e_CouldNotDiscover ;
}
catch (CouldNotOpenRID &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_CouldNotOpenRID ;
+ rep->exception = e_CouldNotOpenRID ;
}
catch (CouldNotOpenFED &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_CouldNotOpenFED ;
+ rep->exception = e_CouldNotOpenFED ;
}
catch (CouldNotRestore &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_CouldNotRestore ;
+ rep->exception = e_CouldNotRestore ;
}
catch (DeletePrivilegeNotHeld &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_DeletePrivilegeNotHeld ;
+ rep->exception = e_DeletePrivilegeNotHeld ;
}
catch (ErrorReadingRID &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ErrorReadingRID ;
+ rep->exception = e_ErrorReadingRID ;
}
catch (EventNotKnown &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_EventNotKnown ;
+ rep->exception = e_EventNotKnown ;
}
catch (FederateAlreadyPaused &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateAlreadyPaused ;
+ rep->exception = e_FederateAlreadyPaused ;
}
catch (FederateAlreadyExecutionMember &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateAlreadyExecutionMember ;
+ rep->exception = e_FederateAlreadyExecutionMember ;
}
catch (FederateDoesNotExist &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateDoesNotExist ;
+ rep->exception = e_FederateDoesNotExist ;
}
catch (FederateInternalError &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateInternalError ;
+ rep->exception = e_FederateInternalError ;
}
catch (FederateNameAlreadyInUse &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateNameAlreadyInUse ;
+ rep->exception = e_FederateNameAlreadyInUse ;
}
catch (FederateNotExecutionMember &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateNotExecutionMember ;
+ rep->exception = e_FederateNotExecutionMember ;
}
catch (FederateNotPaused &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateNotPaused ;
+ rep->exception = e_FederateNotPaused ;
}
catch (FederateNotPublishing &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateNotPublishing ;
+ rep->exception = e_FederateNotPublishing ;
}
catch (FederateNotSubscribing &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateNotSubscribing ;
+ rep->exception = e_FederateNotSubscribing ;
}
catch (FederateOwnsAttributes &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateOwnsAttributes ;
+ rep->exception = e_FederateOwnsAttributes ;
}
catch (FederatesCurrentlyJoined &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederatesCurrentlyJoined ;
+ rep->exception = e_FederatesCurrentlyJoined ;
}
catch (FederateWasNotAskedToReleaseAttribute &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederateWasNotAskedToReleaseAttribute ;
+ rep->exception = e_FederateWasNotAskedToReleaseAttribute ;
}
catch (FederationAlreadyPaused &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederationAlreadyPaused ;
+ rep->exception = e_FederationAlreadyPaused ;
}
catch (FederationExecutionAlreadyExists &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederationExecutionAlreadyExists ;
+ rep->exception = e_FederationExecutionAlreadyExists ;
}
catch (FederationExecutionDoesNotExist &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederationExecutionDoesNotExist ;
+ rep->exception = e_FederationExecutionDoesNotExist ;
}
catch (FederationNotPaused &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederationNotPaused ;
+ rep->exception = e_FederationNotPaused ;
}
catch (FederationTimeAlreadyPassed &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_FederationTimeAlreadyPassed ;
+ rep->exception = e_FederationTimeAlreadyPassed ;
}
catch (IDsupplyExhausted &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_IDsupplyExhausted ;
+ rep->exception = e_IDsupplyExhausted ;
}
catch (InteractionClassNotDefined &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InteractionClassNotDefined ;
+ rep->exception = e_InteractionClassNotDefined ;
}
catch (InteractionClassNotKnown &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InteractionClassNotKnown ;
+ rep->exception = e_InteractionClassNotKnown ;
}
catch (InteractionClassNotPublished &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InteractionClassNotPublished ;
+ rep->exception = e_InteractionClassNotPublished ;
}
catch (InteractionParameterNotDefined &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InteractionParameterNotDefined ;
+ rep->exception = e_InteractionParameterNotDefined ;
}
catch (InteractionParameterNotKnown &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InteractionParameterNotKnown ;
+ rep->exception = e_InteractionParameterNotKnown ;
}
catch (InvalidDivestitureCondition &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidDivestitureCondition ;
+ rep->exception = e_InvalidDivestitureCondition ;
}
catch (InvalidExtents &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidExtents ;
+ rep->exception = e_InvalidExtents ;
}
catch (InvalidFederationTime &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidFederationTime ;
+ rep->exception = e_InvalidFederationTime ;
}
catch (InvalidFederationTimeDelta &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidFederationTimeDelta ;
+ rep->exception = e_InvalidFederationTimeDelta ;
}
catch (InvalidObjectHandle &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidObjectHandle ;
+ rep->exception = e_InvalidObjectHandle ;
}
catch (InvalidOrderType &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidOrderType ;
+ rep->exception = e_InvalidOrderType ;
}
catch (InvalidResignAction &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidResignAction ;
+ rep->exception = e_InvalidResignAction ;
}
catch (InvalidRetractionHandle &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidRetractionHandle ;
+ rep->exception = e_InvalidRetractionHandle ;
}
catch (InvalidRoutingSpace &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidRoutingSpace ;
+ rep->exception = e_InvalidRoutingSpace ;
}
catch (InvalidTransportType &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_InvalidTransportType ;
+ rep->exception = e_InvalidTransportType ;
}
catch (MemoryExhausted &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_MemoryExhausted ;
+ rep->exception = e_MemoryExhausted ;
}
catch (NameNotFound &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_NameNotFound ;
+ rep->exception = e_NameNotFound ;
}
catch (NoPauseRequested &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_NoPauseRequested ;
+ rep->exception = e_NoPauseRequested ;
}
catch (NoResumeRequested &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_NoResumeRequested ;
+ rep->exception = e_NoResumeRequested ;
}
catch (ObjectClassNotDefined &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ObjectClassNotDefined ;
+ rep->exception = e_ObjectClassNotDefined ;
}
catch (ObjectClassNotKnown &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ObjectClassNotKnown ;
+ rep->exception = e_ObjectClassNotKnown ;
}
catch (ObjectClassNotPublished &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ObjectClassNotPublished ;
+ rep->exception = e_ObjectClassNotPublished ;
}
catch (ObjectClassNotSubscribed &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ObjectClassNotSubscribed ;
+ rep->exception = e_ObjectClassNotSubscribed ;
}
catch (ObjectNotKnown &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ObjectNotKnown ;
+ rep->exception = e_ObjectNotKnown ;
}
catch (ObjectAlreadyRegistered &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ObjectAlreadyRegistered ;
+ rep->exception = e_ObjectAlreadyRegistered ;
}
catch (RegionNotKnown &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_RegionNotKnown ;
+ rep->exception = e_RegionNotKnown ;
}
catch (RestoreInProgress &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_RestoreInProgress ;
+ rep->exception = e_RestoreInProgress ;
}
catch (RestoreNotRequested &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_RestoreNotRequested ;
+ rep->exception = e_RestoreNotRequested ;
}
catch (RTIinternalError &e) {
if (e._reason == NULL)
@@ -865,78 +865,78 @@
else
D.Out(pdExcept, "Catching \"%s\" exception: %s.", e._name,
e._reason);
CPY_NOT_NULL(e);
- rep.exception = e_RTIinternalError ;
+ rep->exception = e_RTIinternalError ;
}
catch (SaveInProgress &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_SaveInProgress ;
+ rep->exception = e_SaveInProgress ;
}
catch (SaveNotInitiated &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_SaveNotInitiated ;
+ rep->exception = e_SaveNotInitiated ;
}
catch (SecurityError &e) {
cout << endl << "Security Error : " << e._reason << endl ;
CPY_NOT_NULL(e);
- rep.exception = e_SecurityError ;
+ rep->exception = e_SecurityError ;
}
catch (SpaceNotDefined &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_SpaceNotDefined ;
+ rep->exception = e_SpaceNotDefined ;
}
catch (SpecifiedSaveLabelDoesNotExist &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_SpecifiedSaveLabelDoesNotExist ;
+ rep->exception = e_SpecifiedSaveLabelDoesNotExist ;
}
catch (TimeAdvanceAlreadyInProgress &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_TimeAdvanceAlreadyInProgress ;
+ rep->exception = e_TimeAdvanceAlreadyInProgress ;
}
catch (TimeAdvanceWasNotInProgress &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_TimeAdvanceWasNotInProgress ;
+ rep->exception = e_TimeAdvanceWasNotInProgress ;
}
catch (TooManyIDsRequested &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_TooManyIDsRequested ;
+ rep->exception = e_TooManyIDsRequested ;
}
catch (UnableToPerformSave &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_UnableToPerformSave ;
+ rep->exception = e_UnableToPerformSave ;
}
catch (UnimplementedService &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_UnimplementedService ;
+ rep->exception = e_UnimplementedService ;
}
catch (UnknownLabel &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_UnknownLabel ;
+ rep->exception = e_UnknownLabel ;
}
catch (ValueCountExceeded &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ValueCountExceeded ;
+ rep->exception = e_ValueCountExceeded ;
}
catch (ValueLengthExceeded &e) {
D.Out(pdExcept, "Catching \"%s\" exception.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_ValueLengthExceeded ;
+ rep->exception = e_ValueLengthExceeded ;
}
// Non RTI specific exception, Client connection problem(internal)
catch (NetworkError &e) {
strcpy(buffer, " - NetworkError");
- auditServer.endLine(rep.exception, buffer);
+ auditServer.endLine(rep->exception, buffer);
throw e ;
}
@@ -945,28 +945,28 @@
catch (Exception &e) {
D.Out(pdExcept, "Unknown Exception : %s.", e._name);
CPY_NOT_NULL(e);
- rep.exception = e_RTIinternalError ;
+ rep->exception = e_RTIinternalError ;
}
// buffer may contain an exception reason. If not, set it to OK
// or Exception
if (strlen(buffer)== 0) {
- if (rep.exception == e_NO_EXCEPTION)
+ if (rep->exception == e_NO_EXCEPTION)
strcpy(buffer, " - OK");
else
strcpy(buffer, " - Exception");
}
- auditServer.endLine(rep.exception, buffer);
+ auditServer.endLine(rep->exception, buffer);
if (link == NULL) return link ;
/* FIXME ***/
- if (rep.exception != e_NO_EXCEPTION) {
- rep.send(link);
+ if (rep->exception != e_NO_EXCEPTION) {
+ rep->send(link);
D.Out(pdExcept,
"RTIG catched exception %d and sent it back to federate %d.",
- rep.exception, rep.federate);
+ rep->exception, rep->federate);
}
G.Out(pdGendoc,"exit RTIG::processIncomingMessage");
return link ;
@@ -987,4 +987,4 @@
}} // namespace certi/rtig
-// $Id: RTIG.cc,v 3.36.2.3 2008/04/10 11:35:55 erk Exp $
+// $Id: RTIG.cc,v 3.36.2.4 2008/04/10 14:57:49 erk Exp $
Index: RTIG/RTIG_processing.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/RTIG_processing.cc,v
retrieving revision 3.56.2.2
retrieving revision 3.56.2.3
diff -u -b -r3.56.2.2 -r3.56.2.3
--- RTIG/RTIG_processing.cc 10 Apr 2008 11:35:56 -0000 3.56.2.2
+++ RTIG/RTIG_processing.cc 10 Apr 2008 14:57:49 -0000 3.56.2.3
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: RTIG_processing.cc,v 3.56.2.2 2008/04/10 11:35:56 erk Exp $
+// $Id: RTIG_processing.cc,v 3.56.2.3 2008/04/10 14:57:49 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -204,7 +204,7 @@
repFED.exception = e ;
// Send answer
D.Out(pdTrace,"send NetworkMessage of Type %d after open \"%s\"",
- repFED.type,repFED.FEDid.c_str());
+ repFED.getType(),repFED.FEDid.c_str());
G.Out(pdGendoc,"processJoinFederation====>Begin FED file transfer");
repFED.send(link);
@@ -213,7 +213,7 @@
{
// Wait for OK from RTIA
NM_Get_FED_File msg ;
- D.Out(pdTrace,"wait NetworkMessage of Type %d",msg.type);
+ D.Out(pdTrace,"wait NetworkMessage of Type %d",msg.getType());
msg.receive(link);
assert ( msg.number == 0 );
// RTIA has opened working file then RTIG has to transfer file contents
@@ -332,11 +332,11 @@
RTIG::processSetTimeRegulating(NetworkMessage *msg)
{
if (msg->regulator) {
- auditServer << "ON at time " << msg->date ;
+ auditServer << "ON at time " << msg->getDate();
federations.createRegulator(msg->federation,
msg->federate,
- msg->date);
+ msg->getDate());
D.Out(pdTerm, "Federate %u of Federation %u sets TimeRegulation ON.",
msg->federate, msg->federation);
}
@@ -356,7 +356,7 @@
RTIG::processSetTimeConstrained(NetworkMessage *msg)
{
if (msg->constrained) {
- auditServer << "ON at time " << msg->date ;
+ auditServer << "ON at time " << msg->getDate();
federations.addConstrained(msg->federation,
msg->federate);
@@ -378,13 +378,13 @@
void
RTIG::processMessageNull(NetworkMessage *msg)
{
- auditServer << "Date " << msg->date ;
+ auditServer << "Date " << msg->getDate() ;
// Catch all exceptions because RTIA does not expect an answer anyway.
try {
federations.updateRegulator(msg->federation,
msg->federate,
- msg->date);
+ msg->getDate());
} catch (Exception &e) {}
}
@@ -473,7 +473,7 @@
if ( req->boolean )
// With time
federations.requestFederationSave(req->federation, req->federate,
- req->label.c_str(), req->date);
+ req->label.c_str(), req->getDate());
else
// Without time
federations.requestFederationSave(req->federation, req->federate,
@@ -503,14 +503,14 @@
RTIG::processFederateSaveStatus(Socket *, NetworkMessage *req)
{
G.Out(pdGendoc,"enter RTIG::processFederateSaveStatus");
- if (req->type == NetworkMessage::FEDERATE_SAVE_COMPLETE)
+ if (req->getType() == NetworkMessage::FEDERATE_SAVE_COMPLETE)
G.Out(pdGendoc,"BEGIN ** FEDERATE SAVE COMPLETE SERVICE **");
else
G.Out(pdGendoc,"BEGIN ** FEDERATE SAVE NOT COMPLETE SERVICE **");
auditServer << "Federate " << req->federate << " save ended." ;
- bool status = req->type == NetworkMessage::FEDERATE_SAVE_COMPLETE ;
+ bool status = req->getType() == NetworkMessage::FEDERATE_SAVE_COMPLETE ;
federations.federateSaveStatus(req->federation, req->federate, status);
G.Out(pdGendoc,"exit END ** FEDERATE SAVE (NOT) COMPLETE SERVICE **");
@@ -539,7 +539,7 @@
G.Out(pdGendoc,"enter RTIG::processRequestFederateRestoreStatus");
auditServer << "Federate " << req->federate << " restore ended." ;
- bool status = req->type == NetworkMessage::FEDERATE_RESTORE_COMPLETE ;
+ bool status = req->getType() == NetworkMessage::FEDERATE_RESTORE_COMPLETE ;
federations.federateRestoreStatus(req->federation, req->federate, status);
@@ -552,7 +552,7 @@
void
RTIG::processPublishObjectClass(Socket *link, NetworkMessage *req)
{
- bool pub = (req->type == NetworkMessage::PUBLISH_OBJECT_CLASS);
+ bool pub = (req->getType() == NetworkMessage::PUBLISH_OBJECT_CLASS);
auditServer << "Class = " << req->objectClass << ", # of att. = "
<< req->handleArraySize ;
@@ -567,7 +567,7 @@
D.Out(pdRegister, "Federate %u of Federation %u published object class
%d.",
req->federate, req->federation, req->objectClass);
- std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->getType()));
rep->federate = req->federate ;
rep->objectClass = req->objectClass ;
rep->handleArraySize = 0 ;
@@ -583,7 +583,7 @@
G.Out(pdGendoc,"enter RTIG::processSubscribeObjectClass");
G.Out(pdGendoc,"BEGIN ** SUBSCRIBE OBJECT CLASS SERVICE **");
- bool sub = (req->type == NetworkMessage::SUBSCRIBE_OBJECT_CLASS);
+ bool sub = (req->getType() == NetworkMessage::SUBSCRIBE_OBJECT_CLASS);
auditServer << "Class = " << req->objectClass
<< ", # of att. = " << req->handleArraySize ;
@@ -598,7 +598,7 @@
"Federate %u of Federation %u subscribed to object class %d.",
req->federate, req->federation, req->objectClass);
- std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->getType()));
rep->federate = req->federate ;
rep->objectClass = req->objectClass ;
rep->handleArraySize = 0 ;
@@ -616,7 +616,7 @@
{
assert(link != NULL && req != NULL);
- bool pub = (req->type == NetworkMessage::PUBLISH_INTERACTION_CLASS);
+ bool pub = (req->getType() == NetworkMessage::PUBLISH_INTERACTION_CLASS);
auditServer << "Class = " << req->interactionClass ;
federations.publishInteraction(req->federation,
@@ -628,7 +628,7 @@
req->federation,
req->interactionClass);
- std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type)); ;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->getType())); ;
rep->federate = req->federate ;
rep->interactionClass = req->interactionClass ;
@@ -640,7 +640,7 @@
void
RTIG::processSubscribeInteractionClass(Socket *link, NetworkMessage *req)
{
- bool sub = (req->type == NetworkMessage::SUBSCRIBE_INTERACTION_CLASS);
+ bool sub = (req->getType() == NetworkMessage::SUBSCRIBE_INTERACTION_CLASS);
auditServer << "Class = %u" << req->interactionClass ;
federations.subscribeInteraction(req->federation,
@@ -653,7 +653,7 @@
req->federation,
req->interactionClass);
- std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->getType()));;
rep->federate = req->federate ;
rep->interactionClass = req->interactionClass ;
@@ -665,7 +665,7 @@
void
RTIG::processRegisterObject(Socket *link, NetworkMessage *req)
{
- std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->getType()));;
auditServer << "Class = %u" << req->objectClass ;
rep->object = federations.registerObject(req->federation,
@@ -693,7 +693,7 @@
ValueLengthPair *ValueArray = NULL ;
auditServer << "ObjID = " << req->object
- << ", Date = " << req->date ;
+ << ", Date = " << req->getDate() ;
// Get Value Array
ValueArray = req->getAttribValueArray();
@@ -708,7 +708,7 @@
req->handleArray,
ValueArray,
req->handleArraySize,
- req->date,
+ req->getDate(),
req->label.c_str());
}
else
@@ -728,7 +728,7 @@
NM_Update_Attribute_Values rep ;
rep.federate = req->federate ;
rep.object = req->object ;
- rep.date = req->date ;
+ rep.setDate(req->getDate());
rep.handleArraySize = 0 ;
// Don't forget label and tag
rep.label=req->label ;
@@ -749,7 +749,7 @@
// Building Value Array
auditServer << "IntID = " << req->interactionClass
- << ", date = " << req->date ;
+ << ", date = " << req->getDate() ;
values = req->getParamValueArray();
if ( req->getBoolean() )
@@ -760,7 +760,7 @@
req->handleArray,
values,
req->handleArraySize,
- req->date,
+ req->getDate(),
req->region,
req->label.c_str());
}
@@ -808,7 +808,7 @@
federations.destroyObject(req->federation,
req->federate,
req->object,
- req->date,
+ req->getDate(),
const_cast<char*>(req->label.c_str()));
}
else {
@@ -1255,7 +1255,7 @@
void
RTIG::processRegisterObjectWithRegion(Socket *link, NetworkMessage *req)
{
- std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->getType()));
// FIXME bug #9869
// When we were passed a set of region
// we should register object for each region
@@ -1318,8 +1318,6 @@
answer.exceptionReason = e._reason ;
}
- answer.type = NetworkMessage::REQUEST_OBJECT_ATTRIBUTE_VALUE_UPDATE;
- answer.type = request->type ;
answer.federate = request->federate ;
answer.object = request->object ;
@@ -1330,4 +1328,4 @@
}} // namespace certi/rtig
-// $Id: RTIG_processing.cc,v 3.56.2.2 2008/04/10 11:35:56 erk Exp $
+// $Id: RTIG_processing.cc,v 3.56.2.3 2008/04/10 14:57:49 erk Exp $
Index: RTIG/Federation.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/Federation.cc,v
retrieving revision 3.80.2.2
retrieving revision 3.80.2.3
diff -u -b -r3.80.2.2 -r3.80.2.3
--- RTIG/Federation.cc 10 Apr 2008 11:35:56 -0000 3.80.2.2
+++ RTIG/Federation.cc 10 Apr 2008 14:57:49 -0000 3.80.2.3
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: Federation.cc,v 3.80.2.2 2008/04/10 11:35:56 erk Exp $
+// $Id: Federation.cc,v 3.80.2.3 2008/04/10 14:57:49 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -449,10 +449,10 @@
for (unsigned int i = 0 ; i < v.size(); ++i) {
nullMessage.federation = handle ;
nullMessage.federate = v[i].first ;
- nullMessage.date = v[i].second ;
+ nullMessage.setDate(v[i].second);
D.Out(pdTerm,
"Sending NULL message(type %d) from %d to new federate.",
- nullMessage.type, nullMessage.federate);
+ nullMessage.getType(), nullMessage.federate);
nullMessage.send(tcp_link);
}
@@ -468,7 +468,7 @@
ASPMessage.setLabel((*i).first);
ASPMessage.setTag((*i).second);
D.Out(pdTerm, "Sending synchronization message %s (type %d)"
- " to the new Federate.", (*i).first, ASPMessage.type);
+ " to the new Federate.", (*i).first,
ASPMessage.getType());
ASPMessage.send(tcp_link);
federates.back().addSynchronizationLabel((*i).first);
@@ -528,13 +528,12 @@
D.Out(pdTerm, "Federation %d: Federate %d is now a regulator(Time=%f).",
handle, federate_handle, time);
- NetworkMessage msg ;
- msg.type = NetworkMessage::SET_TIME_REGULATING ;
+ NM_Set_Time_Regulating msg ;
msg.exception = e_NO_EXCEPTION ;
msg.federation = handle ;
msg.federate = federate_handle ;
msg.regulator = true ;
- msg.date = time ;
+ msg.setDate(time);
this->broadcastAnyMessage(&msg, 0);
}
@@ -898,8 +897,7 @@
throw RTIinternalError("Bad pause label(null or too long).");
// broadcast announceSynchronizationPoint() to all federates in federation.
- NetworkMessage msg ;
- msg.type = NetworkMessage::ANNOUNCE_SYNCHRONIZATION_POINT ;
+ NM_Announce_Synchronization_Point msg ;
msg.federate = federate ;
msg.federation = handle ;
msg.setLabel(label);
@@ -934,8 +932,7 @@
throw RTIinternalError("Bad pause label(null or too long).");
// broadcast announceSynchronizationPoint() to all federates in federation.
- NetworkMessage msg ;
- msg.type = NetworkMessage::ANNOUNCE_SYNCHRONIZATION_POINT ;
+ NM_Announce_Synchronization_Point msg ;
msg.federate = federate ;
msg.federation = handle ;
msg.setLabel(label);
@@ -976,14 +973,12 @@
saveInProgress = true ;
saveLabel = the_label ;
- NetworkMessage msg ;
- msg.type = NetworkMessage::INITIATE_FEDERATE_SAVE ;
+ NM_Initiate_Federate_Save msg ;
msg.federate = the_federate ;
msg.federation = handle ;
msg.setLabel(the_label);
- // boolean true means with time and needs time
- msg.setBoolean(true);
- msg.date = time;
+ // timed message
+ msg.setDate(time);
G.Out(pdGendoc," requestFederationSave====>broadcast I_F_S to all");
@@ -1017,13 +1012,10 @@
saveInProgress = true ;
saveLabel = the_label ;
- NetworkMessage msg ;
- msg.type = NetworkMessage::INITIATE_FEDERATE_SAVE ;
+ NM_Initiate_Federate_Save msg ;
msg.federate = the_federate ;
msg.federation = handle ;
msg.setLabel(the_label);
- // boolean false means without time
- msg.setBoolean(false);
G.Out(pdGendoc," requestFederationSave====>broadcast
I_F_S"
" to all");
@@ -1075,14 +1067,12 @@
}
// Send end save message.
- NetworkMessage msg ;
+ std::auto_ptr<NetworkMessage> msg(NM_Factory::create(saveStatus ?
NetworkMessage::FEDERATION_SAVED : NetworkMessage::FEDERATION_NOT_SAVED )) ;
- msg.type = saveStatus ? NetworkMessage::FEDERATION_SAVED :
NetworkMessage::FEDERATION_NOT_SAVED ;
-
- msg.federate = the_federate ;
- msg.federation = handle ;
+ msg->federate = the_federate ;
+ msg->federation = handle ;
- broadcastAnyMessage(&msg, 0);
+ broadcastAnyMessage(msg.get(), 0);
G.Out(pdGendoc," =======> broadcast F_S or F_N_S");
@@ -1219,17 +1209,12 @@
}
// Send end restore message.
- NetworkMessage msg ;
-
- if (restoreStatus)
- msg.type = NetworkMessage::FEDERATION_RESTORED ;
- else
- msg.type = NetworkMessage::FEDERATION_NOT_RESTORED ;
+ std::auto_ptr<NetworkMessage> msg(NM_Factory::create(restoreStatus ?
NetworkMessage::FEDERATION_RESTORED : NetworkMessage::FEDERATION_NOT_RESTORED))
;
- msg.federate = the_federate ;
- msg.federation = handle ;
+ msg->federate = the_federate ;
+ msg->federation = handle ;
- broadcastAnyMessage(&msg, 0);
+ broadcastAnyMessage(msg.get(), 0);
// Reinitialize state.
restoreStatus = true ;
@@ -1494,13 +1479,10 @@
D.Out(pdTerm, "Federation %d: Federate %d is not a regulator anymore.",
handle, federate_handle);
- NetworkMessage msg ;
- msg.type = NetworkMessage::SET_TIME_REGULATING ;
- msg.exception = e_NO_EXCEPTION ;
+ NM_Set_Time_Regulating msg ;
msg.federation = handle ;
msg.federate = federate_handle ;
msg.regulator = false ;
- msg.date = 0 ;
broadcastAnyMessage(&msg, 0);
}
@@ -1551,9 +1533,7 @@
}
// send a federationSynchronized().
- NetworkMessage msg ;
- msg.type = NetworkMessage::FEDERATION_SYNCHRONIZED ;
- msg.exception = e_NO_EXCEPTION ;
+ NM_Federation_Synchronized msg ;
msg.federation = handle ;
msg.federate = federate_handle ;
msg.setLabel(label);
@@ -1699,12 +1679,10 @@
regulators.update(federate_handle, time);
- NetworkMessage msg ;
- msg.type = NetworkMessage::MESSAGE_NULL ;
- msg.exception = e_NO_EXCEPTION ;
+ NM_Message_Null msg ;
msg.federation = handle ;
msg.federate = federate_handle ;
- msg.date = time ;
+ msg.setDate(time);
broadcastAnyMessage(&msg, federate_handle);
}
@@ -2303,5 +2281,5 @@
}} // namespace certi/rtig
-// $Id: Federation.cc,v 3.80.2.2 2008/04/10 11:35:56 erk Exp $
+// $Id: Federation.cc,v 3.80.2.3 2008/04/10 14:57:49 erk Exp $
Index: libCERTI/NetworkMessage_RW.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage_RW.cc,v
retrieving revision 3.45.2.5
retrieving revision 3.45.2.6
diff -u -b -r3.45.2.5 -r3.45.2.6
--- libCERTI/NetworkMessage_RW.cc 10 Apr 2008 11:35:56 -0000 3.45.2.5
+++ libCERTI/NetworkMessage_RW.cc 10 Apr 2008 14:57:49 -0000 3.45.2.6
@@ -16,7 +16,7 @@
// License along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: NetworkMessage_RW.cc,v 3.45.2.5 2008/04/10 11:35:56 erk Exp $
+// $Id: NetworkMessage_RW.cc,v 3.45.2.6 2008/04/10 14:57:49 erk Exp $
// ----------------------------------------------------------------------------
@@ -38,6 +38,10 @@
/* We serialize the common Network messages part
* ALL Network Message will contain the following
*/
+ if ((type==NOT_USED) ||
+ (type==LAST)) {
+ throw RTIinternalError("Invalid network type (not a valid
type);");
+ }
D.Out(pdDebug, "serialize <%s>", getName().c_str());
/* type of message */
msgBuf.write_int32(type);
@@ -46,9 +50,11 @@
msgBuf.write_int32(federation);
/*
* "builtin" Optional part
- * The subclass may chose in the constructor
- * the variable part.
+ * The subclass may chose in the constructor the variable part.
+ * isDated may be chosen on Message instance basis
+ * (same message may Dated or Not Dated)
*/
+ msgBuf.write_bool(isDated);
if (isDated) {
msgBuf.write_double(date);
}
@@ -74,9 +80,11 @@
federation = msgBuf.read_int32();
/*
* "builtin" Optional part
- * The subclass may chose in the constructor
- * the variable part.
+ * The subclass may chose in the constructor the variable part.
+ * isDated may be chosen on Message instance basis
+ * (same message may Dated or Not Dated)
*/
+ isDated = msgBuf.read_bool();
if (isDated) {
date = msgBuf.read_double();
}
@@ -136,4 +144,4 @@
} // namespace certi
-// $Id: NetworkMessage_RW.cc,v 3.45.2.5 2008/04/10 11:35:56 erk Exp $
+// $Id: NetworkMessage_RW.cc,v 3.45.2.6 2008/04/10 14:57:49 erk Exp $
Index: libCERTI/NetworkMessage.hh
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage.hh,v
retrieving revision 3.30.2.6
retrieving revision 3.30.2.7
diff -u -b -r3.30.2.6 -r3.30.2.7
--- libCERTI/NetworkMessage.hh 10 Apr 2008 11:35:56 -0000 3.30.2.6
+++ libCERTI/NetworkMessage.hh 10 Apr 2008 14:57:49 -0000 3.30.2.7
@@ -17,7 +17,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: NetworkMessage.hh,v 3.30.2.6 2008/04/10 11:35:56 erk Exp $
+// $Id: NetworkMessage.hh,v 3.30.2.7 2008/04/10 14:57:49 erk Exp $
// ----------------------------------------------------------------------------
#ifndef CERTI_NETWORK_MESSAGE_HH
@@ -219,10 +219,10 @@
*/
bool isDated;
/**
- * The date of message if it is dated.
+ * If ones set Date then this is a Dated message
+ * Message builder which setDate will generate a Dated message
*/
- FederationTime date ;
- void setDate(FederationTime date) {this->date = date;};
+ void setDate(FederationTime date) {isDated=true; this->date = date;};
const FederationTime getDate() const {return this->date;};
int numberOfRegulators ;
@@ -233,8 +233,8 @@
*/
bool isLabelled;
std::string label;
- void setLabel(const std::string label) {this->label = label;};
- void setLabel(const char *new_label) { label = std::string(new_label); }
+ void setLabel(const std::string label) {isLabelled = true; this->label
= label;};
+ void setLabel(const char *new_label) {isLabelled = true; label =
std::string(new_label); }
const std::string getLabel() const {return this->label;};
/**
@@ -242,8 +242,8 @@
*/
bool isTagged;
std::string tag;
- void setTag(const std::string tag) {this->tag = tag;};
- void setTag(const char *new_tag) { tag = std::string(new_tag); }
+ void setTag(const std::string tag) {isTagged = true; this->tag = tag;};
+ void setTag(const char *new_tag) {isTagged = true; tag =
std::string(new_tag); }
const std::string getTag() const {return this->tag;};
ObjectHandlecount idCount ;
@@ -263,9 +263,6 @@
/** The name corresponding to message type */
const std::string getName() const {return name;}
- /** The network message type */
- Message_T type;
-
/**
* The exception type
* if the message is carrying an exception
@@ -297,6 +294,22 @@
* network message constructor
*/
std::string name;
+
+ /**
+ * The network message type
+ * type field cannot be accessed directly
+ * - only NM constructor may set it.
+ * - getter should be used to get it.
+ */
+ Message_T type;
+
+ /**
+ * The date of message if it is dated.
+ * date field cannot be accessed directly but only using
+ * getter/setter.
+ */
+ FederationTime date ;
+
// ValueArray is now a ValueLengthPair
ValueLengthPair ValueArray[MAX_ATTRIBUTES_PER_CLASS] ;
@@ -311,4 +324,4 @@
#endif // CERTI_NETWORK_MESSAGE_HH
-// $Id: NetworkMessage.hh,v 3.30.2.6 2008/04/10 11:35:56 erk Exp $
+// $Id: NetworkMessage.hh,v 3.30.2.7 2008/04/10 14:57:49 erk Exp $
Index: libCERTI/NM_Classes.hh
===================================================================
RCS file: /sources/certi/certi/libCERTI/Attic/NM_Classes.hh,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -u -b -r1.1.2.7 -r1.1.2.8
--- libCERTI/NM_Classes.hh 10 Apr 2008 11:35:56 -0000 1.1.2.7
+++ libCERTI/NM_Classes.hh 10 Apr 2008 14:57:49 -0000 1.1.2.8
@@ -221,7 +221,7 @@
/* specific Getter/Setter */
protected:
/* specific field */
- bool constrained;
+ //bool constrained;
private:
};
@@ -549,7 +549,7 @@
/* specific Getter/Setter */
protected:
/* specific field */
- ObjectClassHandle objectClass;
+// ObjectClassHandle objectClass;
private:
};
@@ -568,7 +568,7 @@
void setInteractionClassHandle(InteractionClassHandle interactionClass)
{this->interactionClass=interactionClass;};
protected:
/* specific field */
- InteractionClassHandle interactionClass;
+// InteractionClassHandle interactionClass;
private:
};
@@ -1172,7 +1172,7 @@
void setRegion(SpaceHandle region) {this->region=region;};
protected:
/* specific field */
- int32_t region;
+// int32_t region;
private:
};
@@ -1212,8 +1212,8 @@
void setObject(ObjectHandle object) {this->object=object;};
protected:
/* specific field */
- int32_t region;
- ObjectHandle object;
+// int32_t region;
+// ObjectHandle object;
private:
};
Index: libCERTI/ObjectClassAttribute.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/ObjectClassAttribute.cc,v
retrieving revision 3.27
retrieving revision 3.27.2.1
diff -u -b -r3.27 -r3.27.2.1
--- libCERTI/ObjectClassAttribute.cc 31 Oct 2007 10:30:19 -0000 3.27
+++ libCERTI/ObjectClassAttribute.cc 10 Apr 2008 14:57:49 -0000 3.27.2.1
@@ -19,7 +19,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: ObjectClassAttribute.cc,v 3.27 2007/10/31 10:30:19 erk Exp $
+// $Id: ObjectClassAttribute.cc,v 3.27.2.1 2008/04/10 14:57:49 erk Exp $
// ----------------------------------------------------------------------------
#include "ObjectClassAttribute.hh"
@@ -191,7 +191,7 @@
ObjectClassAttribute::updateBroadcastList(ObjectClassBroadcastList *ocblist,
const RTIRegion *region)
{
- switch(ocblist->message->type) {
+ switch(ocblist->message->getType()) {
case NetworkMessage::REFLECT_ATTRIBUTE_VALUES: {
addFederatesIfOverlap(*ocblist, region, handle);
@@ -209,4 +209,4 @@
} // namespace
-// $Id: ObjectClassAttribute.cc,v 3.27 2007/10/31 10:30:19 erk Exp $
+// $Id: ObjectClassAttribute.cc,v 3.27.2.1 2008/04/10 14:57:49 erk Exp $
Index: libCERTI/ObjectClassBroadcastList.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/ObjectClassBroadcastList.cc,v
retrieving revision 3.18.2.2
retrieving revision 3.18.2.3
diff -u -b -r3.18.2.2 -r3.18.2.3
--- libCERTI/ObjectClassBroadcastList.cc 10 Apr 2008 11:35:56 -0000
3.18.2.2
+++ libCERTI/ObjectClassBroadcastList.cc 10 Apr 2008 14:57:50 -0000
3.18.2.3
@@ -19,7 +19,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: ObjectClassBroadcastList.cc,v 3.18.2.2 2008/04/10 11:35:56 erk Exp $
+// $Id: ObjectClassBroadcastList.cc,v 3.18.2.3 2008/04/10 14:57:50 erk Exp $
// ----------------------------------------------------------------------------
@@ -59,18 +59,18 @@
G.Out(pdGendoc,"enter ObjectClassBroadcastList::adaptMessage");
G.Out(pdGendoc," message->objectClass=%d",message->objectClass);
- if ((message->type != NetworkMessage::REFLECT_ATTRIBUTE_VALUES) &&
- (message->type !=
NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION))
+ if ((message->getType() != NetworkMessage::REFLECT_ATTRIBUTE_VALUES) &&
+ (message->getType() !=
NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION))
throw RTIinternalError("Bad Message type in Broadcast's AdaptMsg.");
// Copy static informations.
- NetworkMessage *reducedMessage = NM_Factory::create(message->type);
+ NetworkMessage *reducedMessage = NM_Factory::create(message->getType());
reducedMessage->exception = message->exception ;
reducedMessage->federation = message->federation ;
reducedMessage->federate = message->federate ;
reducedMessage->object = message->object ;
- reducedMessage->date = message->date ;
- reducedMessage->boolean = message->boolean ; // Useful ?
+ reducedMessage->setDate(message->getDate());
+ reducedMessage->boolean = message->boolean ; // FIXME Useful ?
reducedMessage->objectClass = message->objectClass ;
reducedMessage->label = message->label;
@@ -96,7 +96,7 @@
// Copy Attribute Handle.
reducedMessage->handleArray[currentSize] = currentAttrib ;
- if (message->type == NetworkMessage::REFLECT_ATTRIBUTE_VALUES) {
+ if (message->getType() ==
NetworkMessage::REFLECT_ATTRIBUTE_VALUES) {
// Copy Attribute Value.
message->getValue(i, &length, buffer);
reducedMessage->setValue(currentSize, buffer, length);
@@ -285,7 +285,7 @@
void ObjectClassBroadcastList::sendPendingMessage(SecurityServer *server)
{
G.Out(pdGendoc,"enter ObjectClassBroadcastList::sendPendingMessage");
- switch (message->type) {
+ switch (message->getType()) {
case NetworkMessage::REFLECT_ATTRIBUTE_VALUES:
case NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION:
@@ -391,4 +391,4 @@
} // namespace certi
-// $Id: ObjectClassBroadcastList.cc,v 3.18.2.2 2008/04/10 11:35:56 erk Exp $
+// $Id: ObjectClassBroadcastList.cc,v 3.18.2.3 2008/04/10 14:57:50 erk Exp $
Index: libCERTI/NM_Classes.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/Attic/NM_Classes.cc,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -u -b -r1.1.2.7 -r1.1.2.8
--- libCERTI/NM_Classes.cc 10 Apr 2008 11:35:57 -0000 1.1.2.7
+++ libCERTI/NM_Classes.cc 10 Apr 2008 14:57:50 -0000 1.1.2.8
@@ -386,7 +386,7 @@
this->name = "MESSAGE_NULL";
this->type = NetworkMessage::MESSAGE_NULL;
/* specific field init */
- isDated = true;
+ ////isDated =true;
}
NM_Message_Null::~NM_Message_Null() {
}
@@ -397,7 +397,7 @@
this->name = "CREATE_FEDERATION_EXECUTION";
this->type = NetworkMessage::CREATE_FEDERATION_EXECUTION;
/* specific field init */
- isDated = true;
+ ////isDated =true;
}
NM_Create_Federation_Execution::~NM_Create_Federation_Execution() {
}
@@ -422,7 +422,7 @@
this->name = "DESTROY_FEDERATION_EXECUTION";
this->type = NetworkMessage::DESTROY_FEDERATION_EXECUTION;
/* specific field init */
- isDated = true;
+ ////isDated =true;
}
NM_Destroy_Federation_Execution::~NM_Destroy_Federation_Execution() {
}
@@ -488,7 +488,7 @@
this->name = "SET_TIME_REGULATING";
this->type = NetworkMessage::SET_TIME_REGULATING;
/* specific field init */
- isDated = true;
+ ////isDated =true;
}
NM_Set_Time_Regulating::~NM_Set_Time_Regulating() {
}
@@ -511,7 +511,7 @@
this->name = "SET_TIME_CONSTRAINED";
this->type = NetworkMessage::SET_TIME_CONSTRAINED;
/* specific field init */
- isDated = true;
+ ////isDated =true;
}
NM_Set_Time_Constrained::~NM_Set_Time_Constrained() {
}
@@ -534,7 +534,7 @@
this->name = "REGISTER_FEDERATION_SYNCHRONIZATION_POINT";
this->type = NetworkMessage::REGISTER_FEDERATION_SYNCHRONIZATION_POINT;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
isTagged = true;
}
@@ -547,7 +547,7 @@
this->name = "SYNCHRONIZATION_POINT_REGISTRATION_SUCCEEDED";
this->type =
NetworkMessage::SYNCHRONIZATION_POINT_REGISTRATION_SUCCEEDED;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Synchronization_Point_Registration_Succeeded::~NM_Synchronization_Point_Registration_Succeeded()
{
@@ -559,7 +559,7 @@
this->name = "ANNOUNCE_SYNCHRONIZATION_POINT";
this->type = NetworkMessage::ANNOUNCE_SYNCHRONIZATION_POINT;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
isTagged = true;
}
@@ -572,7 +572,7 @@
this->name = "SYNCHRONIZATION_POINT_ACHIEVED";
this->type = NetworkMessage::SYNCHRONIZATION_POINT_ACHIEVED;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Synchronization_Point_Achieved::~NM_Synchronization_Point_Achieved() {
@@ -584,7 +584,7 @@
this->name = "FEDERATION_SYNCHRONIZED";
this->type = NetworkMessage::FEDERATION_SYNCHRONIZED;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Federation_Synchronized::~NM_Federation_Synchronized() {
@@ -637,7 +637,7 @@
this->name = "INITIATE_FEDERATE_SAVE";
this->type = NetworkMessage::INITIATE_FEDERATE_SAVE;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Initiate_Federate_Save::~NM_Initiate_Federate_Save() {
@@ -669,7 +669,7 @@
this->name = "REQUEST_FEDERATION_RESTORE";
this->type = NetworkMessage::REQUEST_FEDERATION_RESTORE;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Request_Federation_Restore::~NM_Request_Federation_Restore() {
@@ -701,7 +701,7 @@
this->name = "REQUEST_FEDERATION_RESTORE_SUCCEEDED";
this->type = NetworkMessage::REQUEST_FEDERATION_RESTORE_SUCCEEDED;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Request_Federation_Restore_Succeeded::~NM_Request_Federation_Restore_Succeeded()
{
@@ -713,7 +713,7 @@
this->name = "REQUEST_FEDERATION_RESTORE_FAILED";
this->type = NetworkMessage::REQUEST_FEDERATION_RESTORE_FAILED;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
isTagged = true;
}
@@ -925,7 +925,7 @@
this->name = "UPDATE_ATTRIBUTE_VALUES";
this->type = NetworkMessage::UPDATE_ATTRIBUTE_VALUES;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Update_Attribute_Values::~NM_Update_Attribute_Values() {
@@ -970,7 +970,7 @@
this->name = "SEND_INTERACTION";
this->type = NetworkMessage::SEND_INTERACTION;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Send_Interaction::~NM_Send_Interaction() {
@@ -1015,7 +1015,7 @@
this->name = "DELETE_OBJECT";
this->type = NetworkMessage::DELETE_OBJECT;
/* specific field init */
- isDated = true;
+ //isDated =true;
isLabelled = true;
}
NM_Delete_Object::~NM_Delete_Object() {
Index: libCERTI/Interaction.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/Interaction.cc,v
retrieving revision 3.35.2.2
retrieving revision 3.35.2.3
diff -u -b -r3.35.2.2 -r3.35.2.3
--- libCERTI/Interaction.cc 10 Apr 2008 11:35:57 -0000 3.35.2.2
+++ libCERTI/Interaction.cc 10 Apr 2008 14:57:50 -0000 3.35.2.3
@@ -19,7 +19,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: Interaction.cc,v 3.35.2.2 2008/04/10 11:35:57 erk Exp $
+// $Id: Interaction.cc,v 3.35.2.3 2008/04/10 14:57:50 erk Exp $
// ----------------------------------------------------------------------------
@@ -413,8 +413,7 @@
answer->federation = server->federation();
answer->federate = federate_handle ;
answer->interactionClass = handle ; // Interaction Class Handle
- answer->setBoolean(true) ; // with time
- answer->date = time ;
+ answer->setDate(time);
answer->label = the_tag;
@@ -552,4 +551,4 @@
} // namespace certi
-// $Id: Interaction.cc,v 3.35.2.2 2008/04/10 11:35:57 erk Exp $
+// $Id: Interaction.cc,v 3.35.2.3 2008/04/10 14:57:50 erk Exp $
Index: libCERTI/ObjectClass.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/ObjectClass.cc,v
retrieving revision 3.41.2.2
retrieving revision 3.41.2.3
diff -u -b -r3.41.2.2 -r3.41.2.3
--- libCERTI/ObjectClass.cc 10 Apr 2008 11:35:57 -0000 3.41.2.2
+++ libCERTI/ObjectClass.cc 10 Apr 2008 14:57:50 -0000 3.41.2.3
@@ -19,7 +19,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: ObjectClass.cc,v 3.41.2.2 2008/04/10 11:35:57 erk Exp $
+// $Id: ObjectClass.cc,v 3.41.2.3 2008/04/10 14:57:50 erk Exp $
// ----------------------------------------------------------------------------
#include "Object.hh"
@@ -123,8 +123,8 @@
G.Out(pdGendoc," ObjectClass::broadcastClassMessage
handle=%d",handle);
// 2. Update message attribute list by removing child's attributes.
- if ((ocbList->message->type == NetworkMessage::REFLECT_ATTRIBUTE_VALUES) ||
- (ocbList->message->type ==
NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION)) {
+ if ((ocbList->message->getType() ==
NetworkMessage::REFLECT_ATTRIBUTE_VALUES) ||
+ (ocbList->message->getType() ==
NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION)) {
int attr = 0 ;
while (attr < ocbList->message->handleArraySize) {
// If the attribute is not in that class, remove it from
@@ -140,7 +140,7 @@
}
// 3. Add class/attributes subscribers to the list.
- switch(ocbList->message->type) {
+ switch(ocbList->message->getType()) {
case NetworkMessage::DISCOVER_OBJECT:
case NetworkMessage::REMOVE_OBJECT: {
// For each federate, add it to list if at least one attribute has
@@ -233,13 +233,12 @@
for (int i = 0 ; i < nbAttributes ; i++) {
toFederate = diffusionList->DiffArray[i].federate ;
if (toFederate != 0) {
- NetworkMessage answer;
- answer.type = type ;
- answer.federation = server->federation();
- answer.federate = theFederate ;
- answer.exception = e_NO_EXCEPTION ;
- answer.object = theObjectHandle ;
- answer.label = theTag;
+ std::auto_ptr<NetworkMessage> answer(NM_Factory::create(type));
+ answer->federation = server->federation();
+ answer->federate = theFederate ;
+ answer->exception = e_NO_EXCEPTION ;
+ answer->object = theObjectHandle ;
+ answer->label = theTag;
int index = 0 ;
for (int j = i ; j < nbAttributes ; j++) {
@@ -247,14 +246,14 @@
D.Out(pdDebug, "handle : %u",
diffusionList->DiffArray[j].attribute);
diffusionList->DiffArray[j].federate = 0 ;
- answer.handleArray[index] = diffusionList
+ answer->handleArray[index] = diffusionList
->DiffArray[j].attribute ;
index++ ;
}
}
- answer.handleArraySize = index ;
+ answer->handleArraySize = index ;
D.Out(pdDebug, "Envoi message type %u ", type);
- sendToFederate(&answer, toFederate);
+ sendToFederate(answer.get(), toFederate);
}
}
}
@@ -365,10 +364,8 @@
answer->object = the_object ;
// with time
- answer->date = theTime ;
- answer->boolean = true ;
-
- answer->label = the_tag;
+ answer->setDate(theTime);
+ answer->setLabel(the_tag);
ocbList = new ObjectClassBroadcastList(answer, 0);
broadcastClassMessage(ocbList);
@@ -429,15 +426,12 @@
NetworkMessage *answer =
NM_Factory::create(NetworkMessage::REMOVE_OBJECT);
answer->federation = server->federation();
answer->federate = the_federate ;
- answer->exception = e_NO_EXCEPTION ;
answer->objectClass = handle ; // Class Handle
answer->object = the_object ;
// without time
- answer->date = 0 ;
- answer->boolean = false ;
- answer->label = the_tag;
+ answer->setLabel(the_tag);
ocbList = new ObjectClassBroadcastList(answer, 0);
broadcastClassMessage(ocbList);
@@ -793,12 +787,11 @@
list<Object *>::const_iterator o ;
for (o = objectSet.begin(); o != objectSet.end(); o++) {
if ((*o)->getOwner() != federate) {
- NetworkMessage message ;
+ NM_Discover_Object message ;
D.Out(pdInit,
"Sending DiscoverObj to Federate %d for Object %u in class %u
",
federate, (*o)->getHandle(), handle, message.label.c_str());
- message.type = NetworkMessage::DISCOVER_OBJECT ;
message.federation = server->federation();
message.federate = federate ;
message.exception = e_NO_EXCEPTION ;
@@ -909,10 +902,8 @@
answer->exception = e_NO_EXCEPTION ;
answer->object = object->getHandle();
// with time
- answer->date = the_time ;
- answer->boolean = true ;
-
- answer->label = the_tag;
+ answer->setDate(the_time);
+ answer->setLabel(the_tag);
answer->handleArraySize = the_size ;
@@ -973,10 +964,8 @@
answer->exception = e_NO_EXCEPTION ;
answer->object = object->getHandle();
// without time
- answer->date = 0 ;
- answer->boolean = false ;
- answer->label = the_tag;
+ answer->setLabel(the_tag);
answer->handleArraySize = the_size ;
@@ -1054,7 +1043,7 @@
if (server != NULL) {
NetworkMessage *AnswerAssumption =
NM_Factory::create(NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION) ;
- NetworkMessage AnswerDivestiture;
+ NM_Attribute_Ownership_Divestiture_Notification AnswerDivestiture;
AnswerAssumption->handleArraySize = theListSize ;
@@ -1110,11 +1099,8 @@
}
if (compteur_divestiture !=0) {
- AnswerDivestiture.type =
- NetworkMessage::ATTRIBUTE_OWNERSHIP_DIVESTITURE_NOTIFICATION ;
AnswerDivestiture.federation = server->federation();
AnswerDivestiture.federate = theFederateHandle ;
- AnswerDivestiture.exception = e_NO_EXCEPTION ;
AnswerDivestiture.object = theObjectHandle ;
AnswerDivestiture.label = std::string("");
AnswerDivestiture.handleArraySize = compteur_divestiture ;
@@ -1376,7 +1362,6 @@
}
if (compteur_assumption != 0) {
- AnswerAssumption->type =
NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION ;
AnswerAssumption->federation = server->federation();
AnswerAssumption->federate = theFederateHandle ;
AnswerAssumption->exception = e_NO_EXCEPTION ;
@@ -1818,4 +1803,4 @@
} // namespace certi
-// $Id: ObjectClass.cc,v 3.41.2.2 2008/04/10 11:35:57 erk Exp $
+// $Id: ObjectClass.cc,v 3.41.2.3 2008/04/10 14:57:50 erk Exp $
Index: libCERTI/NetworkMessage.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage.cc,v
retrieving revision 3.28.2.5
retrieving revision 3.28.2.6
diff -u -b -r3.28.2.5 -r3.28.2.6
--- libCERTI/NetworkMessage.cc 10 Apr 2008 11:35:57 -0000 3.28.2.5
+++ libCERTI/NetworkMessage.cc 10 Apr 2008 14:57:50 -0000 3.28.2.6
@@ -16,7 +16,7 @@
// License along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: NetworkMessage.cc,v 3.28.2.5 2008/04/10 11:35:57 erk Exp $
+// $Id: NetworkMessage.cc,v 3.28.2.6 2008/04/10 14:57:50 erk Exp $
// ----------------------------------------------------------------------------
@@ -50,6 +50,7 @@
federationName = std::string("") ;
federateName[0] = '\0' ;
+
label[0] = '\0' ;
FEDid = std::string("") ;
@@ -230,4 +231,4 @@
} // namespace certi
-// $Id: NetworkMessage.cc,v 3.28.2.5 2008/04/10 11:35:57 erk Exp $
+// $Id: NetworkMessage.cc,v 3.28.2.6 2008/04/10 14:57:50 erk Exp $
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [certi-cvs] certi RTIA/DeclarationManagement.cc RTIA/Federa... [br_DEV_HETEROGENEOUS],
certi-cvs <=