本文整理汇总了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;
}
}
示例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++;
示例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;