Giriş
Senkronizasyon noktası tüm federeler synchronizationPointAchieved() çağrısını yapınca geçilir.
registerFederationSynchronizationPoint metodu - String
Federate için çağrı sırası şöyle. Birinci parametre point ismi, ikinci parametre tag verisidir. Tag verisinin ne işe yaradığını bilmiyorum.
- RTIambassador tarafından yapılan çağrılar koyu mavi renkte gösteriliyor.
-NullFederateAmbassador tarafından yapılan callback'ler ise açık mavi renkte gösteriliyor.
3. RTI ismini belirttiğimiz "Synchronization Point" nesnesini ilan eder. Callback bizim uygulamamıza da gelir.
4. Uygulamamız ismini belirttiğimiz "Synchronization Point" noktasına ulaştığını bildirir.
5. RTI ismi belirtilen "Synchronization Point" noktasına herkesin ulaştığını bildirir
Açıklaması şöyle.
HLA örnek uygulamalarında başlatma aşamasındaki kullanım şöyle.
- Simülasyonlar teker teker çalıştırılır. Hepsi synchronizationPointAchieved () çağrısı
yapıp federationSynchronized () callback'i beklerler.
- Manager uygulama registerFederationSynchronizationPoint () çağrısı yapar. Beklenen tüm federelerin bağlandığını tesbit ettikten sonra synchronizationPointAchieved () çağrısı yapar. Tüm federeler federationSynchronized () callback'i tetiklenip devam ederler.
Örnek
Senaryo koşarken kullanım şekli şöyle.
- Simülasyonlar synchronizationPointAchieved () çağrısı yapıp federationSynchronized () callback'i beklerler. Burada Manager uygulamanın federe sayısını kontrol etmesine gerek yok.
Senkronizasyon noktası tüm federeler synchronizationPointAchieved() çağrısını yapınca geçilir.
registerFederationSynchronizationPoint metodu - String
Federate için çağrı sırası şöyle. Birinci parametre point ismi, ikinci parametre tag verisidir. Tag verisinin ne işe yaradığını bilmiyorum.
- RTIambassador tarafından yapılan çağrılar koyu mavi renkte gösteriliyor.
-NullFederateAmbassador tarafından yapılan callback'ler ise açık mavi renkte gösteriliyor.
void registerFederationSynchronizationPoint (String,byte[],FederateHandleSet) -> RTI - 1
synchronizationPointRegistrationSucceeded () <- RTI - 2
announceSynchronizationPoint () <- RTI - 3
void synchronizationPointAchieved (String,boolean) -> RTI - 4
federationSynchronized () <- RTI - 5
2. RTI ismini belirttiğimiz "Synchronization Point" nesnesinin başarıyla yaratıldığını belirtir3. RTI ismini belirttiğimiz "Synchronization Point" nesnesini ilan eder. Callback bizim uygulamamıza da gelir.
4. Uygulamamız ismini belirttiğimiz "Synchronization Point" noktasına ulaştığını bildirir.
5. RTI ismi belirtilen "Synchronization Point" noktasına herkesin ulaştığını bildirir
Açıklaması şöyle.
When you want to synchronize only a subset of federates, specify the set of federate handles as a parameter in the call. In case you don't provide a federate list, then it implies that synchronization is intended for all the (joined) federatesÖrnek
HLA örnek uygulamalarında başlatma aşamasındaki kullanım şöyle.
- Simülasyonlar teker teker çalıştırılır. Hepsi synchronizationPointAchieved () çağrısı
yapıp federationSynchronized () callback'i beklerler.
- Manager uygulama registerFederationSynchronizationPoint () çağrısı yapar. Beklenen tüm federelerin bağlandığını tesbit ettikten sonra synchronizationPointAchieved () çağrısı yapar. Tüm federeler federationSynchronized () callback'i tetiklenip devam ederler.
Örnek
Senaryo koşarken kullanım şekli şöyle.
- Simülasyonlar synchronizationPointAchieved () çağrısı yapıp federationSynchronized () callback'i beklerler. Burada Manager uygulamanın federe sayısını kontrol etmesine gerek yok.
Hiç yorum yok:
Yorum Gönder