Mixed Reality szolgáltatásjegyzék

A Mixed Reality eszközkészlet két nagyon hasonló nevű összetevővel rendelkezik, amelyek kapcsolódó feladatokat hajtanak végre: MixedRealityServiceRegistry és IMixedRealityServiceRegistrar.

MixedRealityServiceRegistry

A MixedRealityServiceRegistry összetevő tartalmazza az egyes regisztrált szolgáltatások (alaprendszerek és bővítményszolgáltatások) példányait.

Megjegyzés

A MixedRealityServiceRegistry az IMixedRealityService felületet megvalósító objektumok példányait tartalmazza, beleértve az IMixedRealityExtensionService szolgáltatástis.

Az IMixedRealityDataProvider osztályt (az IMixedRealityService alosztályát) végrehajtó objektumok explicit módon nincsenek regisztrálva a MixedRealityServiceRegistry szolgáltatásban. Ezeket az objektumokat az egyes szolgáltatások kezelik (például Térbeli tudatosság).

A MixedRealityServiceRegistry statikus C#-osztályként van megvalósítva, és a szolgáltatáspéldányok alkalmazáskódban való lekért ajánlott mintája.

Az alábbi kódrészlet egy IMixedRealityInputSystem példány megszerzését mutatja be.

IMixedRealityInputSystem inputSystem = null;

if (!MixedRealityServiceRegistry.TryGetService<IMixedRealityInputSystem>(out inputSystem))
{
    // Failed to acquire the input system. It may not have been registered
}

IMixedRealityServiceRegistrar

Az IMixedRealityServiceRegistrar az a felület, amely meghatározza az egy vagy több szolgáltatás regisztrációját kezelő összetevők által megvalósított funkciókat. Az IMixedRealityServiceRegistrar megvalósításához szükséges összetevők feladata az adatok hozzáadása és eltávolítása a MixedRealityServiceRegistry szolgáltatásban. A MixedRealityToolkit objektum egy ilyen összetevő.

Más regisztrálók az MRTK/SDK/Experimental/Features mappában találhatók. Ezekkel az összetevőkkel egy szolgáltatás (például térbeli tudatosság) támogatása is hozzáadható egy alkalmazáshoz. Ezek az egyszolgáltatás-kezelők az alábbiakban vannak felsorolva.

A fenti összetevők mindegyikének az InputSystemManager kivételével a feladata egyetlen szolgáltatástípus regisztrációja és állapota. Az InputSystem további támogatási szolgáltatásokat igényel (például FocusProvider), amelyek az InputSystemManager által is kezelhetők.

Általánosságban elmondható, hogy az IMixedRealityServiceRegistrar által meghatározott metódusokat belsőleg hívják meg a szolgáltatáskezelési összetevők, vagy olyan szolgáltatások, amelyek további szolgáltatás-összetevőket igényelnek a megfelelő működéshez. Az alkalmazáskód általában nem hívja meg ezeket a metódusokat, mert így az alkalmazás kiszámíthatatlan viselkedését okozhatja (például egy gyorsítótárazott szolgáltatáspéldány érvénytelenné válhat).

Lásd még