当前位置: 首页>>代码示例>>C++>>正文


C++ Country::Update方法代码示例

本文整理汇总了C++中Country::Update方法的典型用法代码示例。如果您正苦于以下问题:C++ Country::Update方法的具体用法?C++ Country::Update怎么用?C++ Country::Update使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Country的用法示例。


在下文中一共展示了Country::Update方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: reflectAttributeValues

void HwFederateAmbassador::reflectAttributeValues (
        RTI::ObjectHandle                 theObject,     // supplied C1
  const RTI::AttributeHandleValuePairSet& theAttributes, // supplied C4
  const char                             *theTag)        // supplied C4
throw (
  RTI::ObjectNotKnown,
  RTI::AttributeNotKnown,
  RTI::FederateOwnsAttributes,
  RTI::FederateInternalError)
{
   //-----------------------------------------------------------------
   // Find the Country instance this update is for.  If we can't find
   // it then I am getting data I didn't ask for.
   //-----------------------------------------------------------------
   Country *pCountry = Country::Find( theObject );

   if ( pCountry )
   {
      //-----------------------------------------------------------------
      // Set the new attribute values in this country instance.
      //-----------------------------------------------------------------
      pCountry->Update( theAttributes );
      RTI::FedTime * zero_time = RTI::FedTimeFactory::makeZero();
      pCountry->SetLastTime(*zero_time );
      delete zero_time;
   }
}
开发者ID:huidesign,项目名称:Projects,代码行数:27,代码来源:HwFederateAmbassador.cpp

示例2: hw_main


//.........这里部分代码省略.........

				 //////////////////////////////////////////////////////////////////////////
				 // Tick the RTI until we get the timeRegulationEnabled
				 // callback with my current time.
				 //////////////////////////////////////////////////////////////////////////
				 while (!timeRegulation)
				 {
					 rtiAmb.tick(0.01, 1.0);
				 }
			 }
			 catch (RTI::Exception &e)
			 {
				 cerr << "FED_HW: ERROR:" << e << endl;
			 }
		 }

		 //////////////////////////////////////////////////////////////////////////
		 // 1.) Calculate current state and update to RTI.
		 // 2.) Ask for a time advance.
		 // 3.) Tick the RTI waiting for the grant and process all
		 //     RTI initiated services (especially reflections).
		 // 4.) Repeat.
		 //////////////////////////////////////////////////////////////////////////
		 int counter = 0;

		 while (counter++ < numberOfTicks - 1)
		 {
			 cout << "FED_HW: " << endl;
			 cout << "FED_HW: HelloWorld Event Loop Iteration #: " << counter << endl;

			 //////////////////////////////////////////////////////////////////////////
			 // 1.) - Update current state
			 //////////////////////////////////////////////////////////////////////////
			 myCountry->Update(grantTime);

			 // Print state of all countries
			 Country *pCountry = NULL;
			 for (unsigned int i = 0; i < Country::ms_extentCardinality; i++)
			 {
				 pCountry = Country::ms_countryExtent[i];

				 if (pCountry)
				 {
					 cout << "FED_HW: Country[" << i << "]" << pCountry << endl;

					 // Start of the modification
					 if (pCountry->GetPopulation() == PreviousPopulation[i])
					 {
						 cout << "*****************Not Updated******************\n";	
					 }
					 PreviousPopulation[i] = pCountry->GetPopulation();
					 // End of the modification
				 }
			 }
			 
			 //////////////////////////////////////////////////////////////////////////
			 // 2.) - Ask for a time advance.
			 //////////////////////////////////////////////////////////////////////////
			 if (RTI::RTI_FALSE)
			 {
				 try
				 {
					 RTIfedTime requestTime(timeStep.getTime());
					 requestTime += grantTime;
					 timeAdvGrant = RTI::RTI_FALSE;
					 loopCounter++;
开发者ID:huidesign,项目名称:Projects,代码行数:67,代码来源:HelloWorld.cpp

示例3: hw_main


//.........这里部分代码省略.........
         // callback with my current time.
         //------------------------------------------------------
         while ( !TimeRegulation )
         {
	   rtiAmb.tick(0.01, 1.0);
         }
      }
      catch ( RTI::Exception& e )
      {
         cerr << "FED_HW: ERROR:" << e << endl;
      }
    }

      //------------------------------------------------------
      // Event Loop
      // ----------
      // 
      // 1.) Calculate current state and update to RTI.
      // 2.) Ask for a time advance.
      // 3.) Tick the RTI waiting for the grant and process all
      //     RTI initiated services (especially reflections).
      // 4.) Repeat.
      //------------------------------------------------------
      int counter = 0;

      while ( counter++ < numberOfTicks-1 )
      {
         cout << "FED_HW: " << endl;
         cout << "FED_HW: HelloWorld Event Loop Iteration #: " << counter << endl; 

         //------------------------------------------------------
         // 1.) - Update current state
         //------------------------------------------------------
         myCountry->Update( grantTime );

         // Print state of all countries
         Country* pCountry = NULL;
         for ( unsigned int i = 0; i < Country::ms_extentCardinality; i++ )
         {
            pCountry = Country::ms_countryExtent[ i ];

            if ( pCountry )
            {
               cout << "FED_HW: Country[" << i << "] " << pCountry << endl;

	       // Start of the modification
	       if(pCountry->GetPopulation() == PreviousPopulation[i])
	       {
		 cout << "*************** Not Updated ************\n";
	       }
	       PreviousPopulation[i] = pCountry->GetPopulation();
	       // End of the modification
            }

         }

         //------------------------------------------------------
         // 2.) - Ask for a time advance.
         //------------------------------------------------------
	 if(RTI::RTI_FALSE)
	   {
	     try
	       {
		 RTIfedTime requestTime(timeStep.getTime());
		 requestTime += grantTime;
		 timeAdvGrant = RTI::RTI_FALSE;
开发者ID:huidesign,项目名称:Projects,代码行数:67,代码来源:HelloWorld.cpp


注:本文中的Country::Update方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。