certi-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[certi-cvs] certi libRTI/RTIambassador.cc libCERTI/NetworkM...


From: certi-cvs
Subject: [certi-cvs] certi libRTI/RTIambassador.cc libCERTI/NetworkM...
Date: Mon, 12 May 2008 12:17:05 +0000

CVSROOT:        /sources/certi
Module name:    certi
Changes by:     Eric NOULARD <erk>      08/05/12 12:17:04

Modified files:
        libRTI         : RTIambassador.cc 
        libCERTI       : NetworkMessage.hh Message_W.cc NM_Classes.hh 
                         PrettyDebEx.cc Message_R.cc NM_Classes.cc 
        RTIA           : TimeManagement.cc TimeManagement.hh 
                         RTIA_network.cc 
        RTIG           : RTIG_processing.cc Federation.cc RTIG.cc 
                         RTIG.hh 
        scripts        : NW_MessageType.txt 

Log message:
        Fix bug #1795 : Enable Time Constrained/Regulation callbacks not used
        This is a patch from Christian Stenzel slightly modified.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/libRTI/RTIambassador.cc?cvsroot=certi&r1=3.78&r2=3.79
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage.hh?cvsroot=certi&r1=3.33&r2=3.34
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/Message_W.cc?cvsroot=certi&r1=3.24&r2=3.25
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NM_Classes.hh?cvsroot=certi&r1=3.1&r2=3.2
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/PrettyDebEx.cc?cvsroot=certi&r1=4.3&r2=4.4
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/Message_R.cc?cvsroot=certi&r1=3.21&r2=3.22
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NM_Classes.cc?cvsroot=certi&r1=3.4&r2=3.5
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/TimeManagement.cc?cvsroot=certi&r1=3.38&r2=3.39
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/TimeManagement.hh?cvsroot=certi&r1=3.16&r2=3.17
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/RTIA_network.cc?cvsroot=certi&r1=3.25&r2=3.26
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/RTIG_processing.cc?cvsroot=certi&r1=3.67&r2=3.68
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/Federation.cc?cvsroot=certi&r1=3.85&r2=3.86
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/RTIG.cc?cvsroot=certi&r1=3.41&r2=3.42
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/RTIG.hh?cvsroot=certi&r1=3.25&r2=3.26
http://cvs.savannah.gnu.org/viewcvs/certi/scripts/NW_MessageType.txt?cvsroot=certi&r1=1.1&r2=1.2

Patches:
Index: libRTI/RTIambassador.cc
===================================================================
RCS file: /sources/certi/certi/libRTI/RTIambassador.cc,v
retrieving revision 3.78
retrieving revision 3.79
diff -u -b -r3.78 -r3.79
--- libRTI/RTIambassador.cc     5 May 2008 09:47:20 -0000       3.78
+++ libRTI/RTIambassador.cc     12 May 2008 12:16:58 -0000      3.79
@@ -19,7 +19,7 @@
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 // USA
 //
-// $Id: RTIambassador.cc,v 3.78 2008/05/05 09:47:20 erk Exp $
+// $Id: RTIambassador.cc,v 3.79 2008/05/12 12:16:58 erk Exp $
 // ----------------------------------------------------------------------------
 
 
@@ -497,6 +497,13 @@
                   
privateRefs->fed_amb->timeAdvanceGrant(vers_Fed.getFedTime());
               } break ;
 
+              case Message::TIME_REGULATION_ENABLED:
+                
privateRefs->fed_amb->timeRegulationEnabled(vers_Fed.getFedTime());
+               break;
+             case Message::TIME_CONSTRAINED_ENABLED:
+                
privateRefs->fed_amb->timeConstrainedEnabled(vers_Fed.getFedTime());
+                break;
+
               default: {
                   privateRefs->leave("RTI service requested by RTI is 
unknown.");
               }
@@ -2949,4 +2956,4 @@
     privateRefs->executeService(&req, &rep);
 }
 
-// $Id: RTIambassador.cc,v 3.78 2008/05/05 09:47:20 erk Exp $
+// $Id: RTIambassador.cc,v 3.79 2008/05/12 12:16:58 erk Exp $

Index: libCERTI/NetworkMessage.hh
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage.hh,v
retrieving revision 3.33
retrieving revision 3.34
diff -u -b -r3.33 -r3.34
--- libCERTI/NetworkMessage.hh  9 May 2008 20:21:39 -0000       3.33
+++ libCERTI/NetworkMessage.hh  12 May 2008 12:16:59 -0000      3.34
@@ -17,7 +17,7 @@
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 // USA
 //
-// $Id: NetworkMessage.hh,v 3.33 2008/05/09 20:21:39 erk Exp $
+// $Id: NetworkMessage.hh,v 3.34 2008/05/12 12:16:59 erk Exp $
 // ----------------------------------------------------------------------------
 
 #ifndef CERTI_NETWORK_MESSAGE_HH
@@ -63,6 +63,8 @@
                RESIGN_FEDERATION_EXECUTION,
                SET_TIME_REGULATING,
                SET_TIME_CONSTRAINED,
+               TIME_REGULATION_ENABLED, // RTIG to RTIA
+               TIME_CONSTRAINED_ENABLED, // RTIG to RTIA
                REGISTER_FEDERATION_SYNCHRONIZATION_POINT,
                SYNCHRONIZATION_POINT_REGISTRATION_SUCCEEDED, // RTIG to RTIA
                ANNOUNCE_SYNCHRONIZATION_POINT, // RTIG to RTIA
@@ -362,4 +364,4 @@
 
 #endif // CERTI_NETWORK_MESSAGE_HH
 
-// $Id: NetworkMessage.hh,v 3.33 2008/05/09 20:21:39 erk Exp $
+// $Id: NetworkMessage.hh,v 3.34 2008/05/12 12:16:59 erk Exp $

Index: libCERTI/Message_W.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/Message_W.cc,v
retrieving revision 3.24
retrieving revision 3.25
diff -u -b -r3.24 -r3.25
--- libCERTI/Message_W.cc       5 May 2008 09:47:19 -0000       3.24
+++ libCERTI/Message_W.cc       12 May 2008 12:16:59 -0000      3.25
@@ -17,7 +17,7 @@
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 // USA
 //
-// $Id: Message_W.cc,v 3.24 2008/05/05 09:47:19 erk Exp $
+// $Id: Message_W.cc,v 3.25 2008/05/12 12:16:59 erk Exp $
 // ----------------------------------------------------------------------------
 
 
@@ -678,6 +678,8 @@
       case NEXT_EVENT_REQUEST:
       case NEXT_EVENT_REQUEST_AVAILABLE:
       case TIME_ADVANCE_GRANT:
+      case TIME_REGULATION_ENABLED:
+      case TIME_CONSTRAINED_ENABLED:
         header.bodySize = 0 ;
         break ;
 
@@ -746,4 +748,4 @@
 
 } // namespace certi
 
-// $Id: Message_W.cc,v 3.24 2008/05/05 09:47:19 erk Exp $
+// $Id: Message_W.cc,v 3.25 2008/05/12 12:16:59 erk Exp $

Index: libCERTI/NM_Classes.hh
===================================================================
RCS file: /sources/certi/certi/libCERTI/NM_Classes.hh,v
retrieving revision 3.1
retrieving revision 3.2
diff -u -b -r3.1 -r3.2
--- libCERTI/NM_Classes.hh      26 Apr 2008 14:59:40 -0000      3.1
+++ libCERTI/NM_Classes.hh      12 May 2008 12:16:59 -0000      3.2
@@ -243,6 +243,37 @@
 
 /*<END>---------- Set_Time_Constrained ------------<END>*/
 
+/*<BEGIN>---------- Time_Regulation_Enabled ------------<BEGIN>*/
+class CERTI_EXPORT NM_Time_Regulation_Enabled : public NetworkMessage {
+public:
+       typedef NetworkMessage Super;
+       NM_Time_Regulation_Enabled();
+       virtual ~NM_Time_Regulation_Enabled();
+       /* specific Getter/Setter */
+protected:
+       /* specific field */     
+
+private:
+};
+
+/*<END>---------- Time_Regulation_Enabled ------------<END>*/
+
+/*<BEGIN>---------- Time_Constrained_Enabled ------------<BEGIN>*/
+class CERTI_EXPORT NM_Time_Constrained_Enabled : public NetworkMessage {
+public:
+       typedef NetworkMessage Super;
+       NM_Time_Constrained_Enabled();
+       virtual ~NM_Time_Constrained_Enabled();
+       /* specific Getter/Setter */
+protected:
+       /* specific field */     
+
+private:
+};
+
+/*<END>---------- Time_Constrained_Enabled ------------<END>*/
+
+
 /*<BEGIN>---------- Register_Federation_Synchronization_Point 
------------<BEGIN>*/
 class CERTI_EXPORT NM_Register_Federation_Synchronization_Point : public 
NM_WithHandleArray {
 public:

Index: libCERTI/PrettyDebEx.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/PrettyDebEx.cc,v
retrieving revision 4.3
retrieving revision 4.4
diff -u -b -r4.3 -r4.4
--- libCERTI/PrettyDebEx.cc     4 Feb 2008 14:41:30 -0000       4.3
+++ libCERTI/PrettyDebEx.cc     12 May 2008 12:17:00 -0000      4.4
@@ -19,7 +19,7 @@
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 // USA
 //
-// $Id: PrettyDebEx.cc,v 4.3 2008/02/04 14:41:30 erk Exp $
+// $Id: PrettyDebEx.cc,v 4.4 2008/05/12 12:17:00 erk Exp $
 // ----------------------------------------------------------------------------
 
 
@@ -223,7 +223,9 @@
                case certi::NetworkMessage::JOIN_FEDERATION_EXECUTION :         
                                                
strcat(theMessage,"JOIN_FEDERATION_EXECUTION"); break;
                case certi::NetworkMessage::RESIGN_FEDERATION_EXECUTION :       
                                        
strcat(theMessage,"RESIGN_FEDERATION_EXECUTION"); break;
                case certi::NetworkMessage::SET_TIME_REGULATING :               
                                                        
strcat(theMessage,"SET_TIME_REGULATING"); break;
+               case certi::NetworkMessage::TIME_REGULATION_ENABLED :           
                                                        
strcat(theMessage,"TIME_REGULATION_ENABLED"); break;
                case certi::NetworkMessage::SET_TIME_CONSTRAINED :              
                                                
strcat(theMessage,"SET_TIME_CONSTRAINED"); break;
+               case certi::NetworkMessage::TIME_CONSTRAINED_ENABLED :          
                                                        
strcat(theMessage,"TIME_CONSTRAINED_ENABLED"); break;
                case 
certi::NetworkMessage::REGISTER_FEDERATION_SYNCHRONIZATION_POINT :         
strcat(theMessage,"REGISTER_FEDERATION_SYNCHRONIZATION_POINT"); break;
                case 
certi::NetworkMessage::SYNCHRONIZATION_POINT_REGISTRATION_SUCCEEDED : 
strcat(theMessage,"SYNCHRONIZATION_POINT_REGISTRATION_SUCCEEDED"); break;
                case certi::NetworkMessage::ANNOUNCE_SYNCHRONIZATION_POINT :    
                                
strcat(theMessage,"ANNOUNCE_SYNCHRONIZATION_POINT"); break;
@@ -305,4 +307,4 @@
 }
 #endif // NDEBUG
 
-// $Id: PrettyDebEx.cc,v 4.3 2008/02/04 14:41:30 erk Exp $
+// $Id: PrettyDebEx.cc,v 4.4 2008/05/12 12:17:00 erk Exp $

Index: libCERTI/Message_R.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/Message_R.cc,v
retrieving revision 3.21
retrieving revision 3.22
diff -u -b -r3.21 -r3.22
--- libCERTI/Message_R.cc       5 May 2008 09:47:19 -0000       3.21
+++ libCERTI/Message_R.cc       12 May 2008 12:17:00 -0000      3.22
@@ -17,7 +17,7 @@
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 // USA
 //
-// $Id: Message_R.cc,v 3.21 2008/05/05 09:47:19 erk Exp $
+// $Id: Message_R.cc,v 3.22 2008/05/12 12:17:00 erk Exp $
 // ----------------------------------------------------------------------------
 
 
@@ -648,6 +648,8 @@
       case NEXT_EVENT_REQUEST:
       case NEXT_EVENT_REQUEST_AVAILABLE:
       case TIME_ADVANCE_GRANT:
+      case TIME_REGULATION_ENABLED:
+      case TIME_CONSTRAINED_ENABLED:
         break ;
 
       // lookahead got from header
@@ -765,4 +767,4 @@
 
 } // namespace certi
 
-// $Id: Message_R.cc,v 3.21 2008/05/05 09:47:19 erk Exp $
+// $Id: Message_R.cc,v 3.22 2008/05/12 12:17:00 erk Exp $

Index: libCERTI/NM_Classes.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/NM_Classes.cc,v
retrieving revision 3.4
retrieving revision 3.5
diff -u -b -r3.4 -r3.5
--- libCERTI/NM_Classes.cc      9 May 2008 20:21:39 -0000       3.4
+++ libCERTI/NM_Classes.cc      12 May 2008 12:17:00 -0000      3.5
@@ -54,6 +54,12 @@
        case NetworkMessage::SET_TIME_CONSTRAINED:
                msg = new NM_Set_Time_Constrained(); 
                break;
+       case NetworkMessage::TIME_REGULATION_ENABLED:
+               msg = new NM_Time_Regulation_Enabled(); 
+               break;
+       case NetworkMessage::TIME_CONSTRAINED_ENABLED:
+               msg = new NM_Time_Constrained_Enabled(); 
+               break;
        case NetworkMessage::REGISTER_FEDERATION_SYNCHRONIZATION_POINT:
                msg = new NM_Register_Federation_Synchronization_Point(); 
                break;
@@ -526,6 +532,25 @@
 } /* end of deserialize */
 /*<END>---------- Set_Time_Constrained ------------<END>*/
 
+/*<BEGIN>---------- Time_Regulation_Enabled  ------------<BEGIN>*/
+NM_Time_Regulation_Enabled::NM_Time_Regulation_Enabled() {
+       this->name = "TIME_REGULATION_ENABLED";
+       this->type = NetworkMessage::TIME_REGULATION_ENABLED;
+}
+
+NM_Time_Regulation_Enabled::~NM_Time_Regulation_Enabled() {
+}
+/*<END>---------- Time_Regulation_Enabled ------------<END>*/
+
+/*<BEGIN>---------- Time_Constrained_Enabled  ------------<BEGIN>*/
+NM_Time_Constrained_Enabled::NM_Time_Constrained_Enabled() {
+       this->name = "TIME_CONSTRAINED_ENABLED";
+       this->type = NetworkMessage::TIME_CONSTRAINED_ENABLED;
+}
+NM_Time_Constrained_Enabled::~NM_Time_Constrained_Enabled() {
+}
+/*<END>---------- Time_Constrained_Enabled ------------<END>*/
+
 /*<BEGIN>---------- Register_Federation_Synchronization_Point 
------------<BEGIN>*/
 
NM_Register_Federation_Synchronization_Point::NM_Register_Federation_Synchronization_Point()
 {
        this->name = "REGISTER_FEDERATION_SYNCHRONIZATION_POINT";

Index: RTIA/TimeManagement.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/TimeManagement.cc,v
retrieving revision 3.38
retrieving revision 3.39
diff -u -b -r3.38 -r3.39
--- RTIA/TimeManagement.cc      9 May 2008 20:21:40 -0000       3.38
+++ RTIA/TimeManagement.cc      12 May 2008 12:17:00 -0000      3.39
@@ -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: TimeManagement.cc,v 3.38 2008/05/09 20:21:40 erk Exp $
+// $Id: TimeManagement.cc,v 3.39 2008/05/12 12:17:00 erk Exp $
 // ----------------------------------------------------------------------------
 
 #include <config.h>
@@ -347,6 +347,12 @@
           fm->federationRestoredStatus(status);
       }
         break ;
+      case NetworkMessage::TIME_REGULATION_ENABLED:
+        this->timeRegulationEnabled(msg.getDate(), msg.exception);
+        break;
+      case NetworkMessage::TIME_CONSTRAINED_ENABLED:
+        this->timeConstrainedEnabled(msg.getDate(), msg.exception);
+        break;
 
       default:
        std::stringstream errorMsg;
@@ -665,6 +671,26 @@
 }
 
 // ----------------------------------------------------------------------------
+void
+TimeManagement::timeRegulationEnabled(FederationTime theTime, TypeException 
&e) {
+    Message req;
+    
+    req.type = Message::TIME_REGULATION_ENABLED;
+    req.setFederationTime(theTime);
+    comm->requestFederateService(&req);
+}
+
+// ----------------------------------------------------------------------------
+void
+TimeManagement::timeConstrainedEnabled(FederationTime theTime, TypeException 
&e) {
+    Message req;
+
+    req.type = Message::TIME_CONSTRAINED_ENABLED;
+    req.setFederationTime(theTime);
+    comm->requestFederateService(&req);
+}
+
+// ----------------------------------------------------------------------------
 /*! Is the time stamp of a time advance request correct ?
 */
 bool
@@ -932,4 +958,4 @@
 
 }} // namespaces
 
-// $Id: TimeManagement.cc,v 3.38 2008/05/09 20:21:40 erk Exp $
+// $Id: TimeManagement.cc,v 3.39 2008/05/12 12:17:00 erk Exp $

Index: RTIA/TimeManagement.hh
===================================================================
RCS file: /sources/certi/certi/RTIA/TimeManagement.hh,v
retrieving revision 3.16
retrieving revision 3.17
diff -u -b -r3.16 -r3.17
--- RTIA/TimeManagement.hh      5 May 2008 09:47:21 -0000       3.16
+++ RTIA/TimeManagement.hh      12 May 2008 12:17:01 -0000      3.17
@@ -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: TimeManagement.hh,v 3.16 2008/05/05 09:47:21 erk Exp $
+// $Id: TimeManagement.hh,v 3.17 2008/05/12 12:17:01 erk Exp $
 // ----------------------------------------------------------------------------
 
 #ifndef CERTI_RTIA_TIME_MANAGEMENT_HH
@@ -127,6 +127,8 @@
     void flushQueueRequest(FederationTime, TypeException &);
     bool executeFederateService(NetworkMessage &msg);
     void sendNullMessage(FederationTime heure_logique);
+    void timeRegulationEnabled(FederationTime, TypeException &e);
+    void timeConstrainedEnabled(FederationTime, TypeException &e);
 
     // Other RTIA Objects
     Communications *comm ;
@@ -155,4 +157,4 @@
 
 #endif // CERTI_RTIA_TIME_MANAGEMENT_HH
 
-// $Id: TimeManagement.hh,v 3.16 2008/05/05 09:47:21 erk Exp $
+// $Id: TimeManagement.hh,v 3.17 2008/05/12 12:17:01 erk Exp $

Index: RTIA/RTIA_network.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/RTIA_network.cc,v
retrieving revision 3.25
retrieving revision 3.26
diff -u -b -r3.25 -r3.26
--- RTIA/RTIA_network.cc        9 May 2008 20:21:40 -0000       3.25
+++ RTIA/RTIA_network.cc        12 May 2008 12:17:01 -0000      3.26
@@ -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.25 2008/05/09 20:21:40 erk Exp $
+// $Id: RTIA_network.cc,v 3.26 2008/05/12 12:17:01 erk Exp $
 // ----------------------------------------------------------------------------
 
 #include <config.h>
@@ -326,6 +326,17 @@
         queues->insertFifoMessage(msg);
         break ;
 
+      case NetworkMessage::TIME_REGULATION_ENABLED:
+         D.Out(pdTrace, "Receiving Message from RTIG, "
+                         " type TimeRegulationEnabled.");
+         queues->insertFifoMessage(msg);
+         break ;
+      case NetworkMessage::TIME_CONSTRAINED_ENABLED:
+         D.Out(pdTrace, "Receiving Message from RTIG, "
+                         " type TimeConstrainedEnabled.");
+         queues->insertFifoMessage(msg);
+         break;
+
       default:
       {
           D.Out(pdTrace,
@@ -341,4 +352,4 @@
 
 }} // namespace certi/rtia
 
-// $Id: RTIA_network.cc,v 3.25 2008/05/09 20:21:40 erk Exp $
+// $Id: RTIA_network.cc,v 3.26 2008/05/12 12:17:01 erk Exp $

Index: RTIG/RTIG_processing.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/RTIG_processing.cc,v
retrieving revision 3.67
retrieving revision 3.68
diff -u -b -r3.67 -r3.68
--- RTIG/RTIG_processing.cc     9 May 2008 20:21:40 -0000       3.67
+++ RTIG/RTIG_processing.cc     12 May 2008 12:17:02 -0000      3.68
@@ -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.67 2008/05/09 20:21:40 erk Exp $
+// $Id: RTIG_processing.cc,v 3.68 2008/05/12 12:17:02 erk Exp $
 // ----------------------------------------------------------------------------
 
 #include <config.h>
@@ -393,14 +393,28 @@
 // ----------------------------------------------------------------------------
 //! Put federate as time regulating.
 void
-RTIG::processSetTimeRegulating(NM_Set_Time_Regulating *msg)
+RTIG::processSetTimeRegulating(Socket *link, NM_Set_Time_Regulating *msg)
 {
+  G.Out(pdGendoc,"enter RTIG::processSetTimeRegulating");
+  G.Out(pdGendoc,"BEGIN ** SET TIME REGULATING **");
+
   if (msg->isRegulator()) {
         auditServer << "ON at time " << msg->getDate();
 
         federations.createRegulator(msg->federation,
                                      msg->federate,
                                      msg->getDate());
+    
+        // send timeRegulationEnabled() to federate.
+        NM_Time_Regulation_Enabled rep ;    
+        rep.federate = msg->federate ;
+        rep.federation = msg->federation ;
+       rep.setDate(msg->getDate());
+
+        G.Out(pdGendoc,"      processSetTimeRegulating====> write TRE to 
RTIA");
+
+        rep.send(link);
+
         D.Out(pdTerm, "Federate %u of Federation %u sets TimeRegulation ON.",
               msg->federate, msg->federation);
     }
@@ -412,19 +426,35 @@
         D.Out(pdTerm, "Federate %u of Federation %u sets TimeRegulation OFF.",
               msg->federate, msg->federation);
     }
+
+    G.Out(pdGendoc,"END ** SET TIME REGULATING **");
+    G.Out(pdGendoc,"exit RTIG::processSetTimeRegulating");
 }
 
 // ----------------------------------------------------------------------------
 //! Put federate as time constrained
 void
-RTIG::processSetTimeConstrained(NM_Set_Time_Constrained *msg)
+RTIG::processSetTimeConstrained(Socket *link, NM_Set_Time_Constrained *msg)
 {
+  G.Out(pdGendoc,"enter RTIG::processSetTimeConstrained");
+  G.Out(pdGendoc,"BEGIN ** SET TIME CONSTRAINED **");
   
   if (msg->isConstrained()) {
         auditServer << "ON at time " << msg->getDate();
 
         federations.addConstrained(msg->federation,
                                     msg->federate);
+
+        // send timeConstrainedEnabled() to federate.
+        NM_Time_Constrained_Enabled rep ;    
+        rep.federate = msg->federate ;
+        rep.federation = msg->federation ;
+       rep.setDate(msg->getDate());
+
+        G.Out(pdGendoc,"      processSetTimeConstrained====> write TCE to 
RTIA");
+
+        rep.send(link);
+
         D.Out(pdTerm, "Federate %u of Federation %u is now constrained.",
               msg->federate, msg->federation);
     }
@@ -436,6 +466,9 @@
         D.Out(pdTerm, "Federate %u of Federation %u is no more constrained.",
               msg->federate, msg->federation);
     }
+
+    G.Out(pdGendoc,"END ** SET TIME CONSTRAINED **");
+    G.Out(pdGendoc,"exit RTIG::processSetTimeConstrained");
 }
 
 // ----------------------------------------------------------------------------
@@ -1394,4 +1427,4 @@
 
 }} // namespace certi/rtig
 
-// $Id: RTIG_processing.cc,v 3.67 2008/05/09 20:21:40 erk Exp $
+// $Id: RTIG_processing.cc,v 3.68 2008/05/12 12:17:02 erk Exp $

Index: RTIG/Federation.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/Federation.cc,v
retrieving revision 3.85
retrieving revision 3.86
diff -u -b -r3.85 -r3.86
--- RTIG/Federation.cc  29 Apr 2008 08:57:48 -0000      3.85
+++ RTIG/Federation.cc  12 May 2008 12:17:02 -0000      3.86
@@ -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.85 2008/04/29 08:57:48 erk Exp $
+// $Id: Federation.cc,v 3.86 2008/05/12 12:17:02 erk Exp $
 // ----------------------------------------------------------------------------
 
 #include <config.h>
@@ -2273,5 +2273,5 @@
 
 }} // namespace certi/rtig
 
-// $Id: Federation.cc,v 3.85 2008/04/29 08:57:48 erk Exp $
+// $Id: Federation.cc,v 3.86 2008/05/12 12:17:02 erk Exp $
 

Index: RTIG/RTIG.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/RTIG.cc,v
retrieving revision 3.41
retrieving revision 3.42
diff -u -b -r3.41 -r3.42
--- RTIG/RTIG.cc        29 Apr 2008 08:33:04 -0000      3.41
+++ RTIG/RTIG.cc        12 May 2008 12:17:04 -0000      3.42
@@ -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.41 2008/04/29 08:33:04 erk Exp $
+// $Id: RTIG.cc,v 3.42 2008/05/12 12:17:04 erk Exp $
 // ----------------------------------------------------------------------------
 
 #include <config.h>
@@ -204,14 +204,14 @@
         D.Out(pdTrace, "SetTimeRegulating du federe %u(date=%f).",
               msg->federate, msg->getDate());
         auditServer.setLevel(8);
-        processSetTimeRegulating(static_cast<NM_Set_Time_Regulating*>(msg));
+        processSetTimeRegulating(link, 
static_cast<NM_Set_Time_Regulating*>(msg));
         break ;
 
       case NetworkMessage::SET_TIME_CONSTRAINED:
         D.Out(pdTrace, "SetTimeConstrained du federe %u.", msg->federate);
         auditServer.setLevel(8);
         
-        processSetTimeConstrained(static_cast<NM_Set_Time_Constrained*>(msg));
+        processSetTimeConstrained(link, 
static_cast<NM_Set_Time_Constrained*>(msg));
         break ;
 
       case NetworkMessage::PUBLISH_OBJECT_CLASS:
@@ -990,4 +990,4 @@
 
 }} // namespace certi/rtig
 
-// $Id: RTIG.cc,v 3.41 2008/04/29 08:33:04 erk Exp $
+// $Id: RTIG.cc,v 3.42 2008/05/12 12:17:04 erk Exp $

Index: RTIG/RTIG.hh
===================================================================
RCS file: /sources/certi/certi/RTIG/RTIG.hh,v
retrieving revision 3.25
retrieving revision 3.26
diff -u -b -r3.25 -r3.26
--- RTIG/RTIG.hh        26 Apr 2008 14:59:42 -0000      3.25
+++ RTIG/RTIG.hh        12 May 2008 12:17:04 -0000      3.26
@@ -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.hh,v 3.25 2008/04/26 14:59:42 erk Exp $
+// $Id: RTIG.hh,v 3.26 2008/05/12 12:17:04 erk Exp $
 // ----------------------------------------------------------------------------
 
 #ifndef CERTI_RTIG_HH
@@ -72,8 +72,8 @@
     void processJoinFederation(Socket*, NetworkMessage*);
     void processResignFederation(Socket*,Handle, FederateHandle);
     void processDestroyFederation(Socket*, NetworkMessage*);
-    void processSetTimeRegulating(NM_Set_Time_Regulating *msg);
-    void processSetTimeConstrained(NM_Set_Time_Constrained *msg);
+    void processSetTimeRegulating(Socket*, NM_Set_Time_Regulating *msg);
+    void processSetTimeConstrained(Socket*, NM_Set_Time_Constrained *msg);
     void processMessageNull(NetworkMessage*);
     void processRegisterSynchronization(Socket*, NetworkMessage*);
     void processSynchronizationAchieved(Socket*, NetworkMessage*);
@@ -132,4 +132,4 @@
 
 #endif // CERTI_RTIG_HH
 
-// $Id: RTIG.hh,v 3.25 2008/04/26 14:59:42 erk Exp $
+// $Id: RTIG.hh,v 3.26 2008/05/12 12:17:04 erk Exp $

Index: scripts/NW_MessageType.txt
===================================================================
RCS file: /sources/certi/certi/scripts/NW_MessageType.txt,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- scripts/NW_MessageType.txt  10 Mar 2008 16:34:43 -0000      1.1
+++ scripts/NW_MessageType.txt  12 May 2008 12:17:04 -0000      1.2
@@ -7,6 +7,8 @@
 RESIGN_FEDERATION_EXECUTION 
 SET_TIME_REGULATING 
 SET_TIME_CONSTRAINED 
+TIME_REGULATION_ENABLED
+TIME_CONSTRAINED_ENABLED 
 REGISTER_FEDERATION_SYNCHRONIZATION_POINT 
 SYNCHRONIZATION_POINT_REGISTRATION_SUCCEEDED 
 ANNOUNCE_SYNCHRONIZATION_POINT 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]