![]() | InDesign SDK 20.5 |
#include <IK2ServiceMgr.h>

Public Types | |
| enum | InstancePerX { kInstancePerSession, kInstancePerUse, kInstancePerSessionPreload } |
Public Member Functions | |
| virtual void | Shutdown ()=0 |
| virtual void | RegisterServiceProvider (IK2ServiceProvider *provider, ClassID classID, InstancePerX instancePerX=kInstancePerSession, bool16 dontPurge=kFalse)=0 |
| virtual bool16 | ReleaseCachedServiceProviders ()=0 |
| virtual void | SetDefaultServiceProvider (ClassID classID)=0 |
| virtual IK2ServiceProvider * | QueryDefaultServiceProvider ()=0 |
| virtual ClassID | GetDefaultServiceProviderID ()=0 |
| virtual IK2ServiceProvider * | QueryServiceProviderByClassID (ClassID classID)=0 |
| virtual int32 | GetServiceProviderCount ()=0 |
| virtual IK2ServiceProvider * | QueryNthServiceProvider (int32 n)=0 |
| virtual ClassID | GetNthServiceProviderID (int32 n)=0 |
| virtual int32 | GetServiceProviderIndex (IK2ServiceProvider *serviceProvider)=0 |
| virtual int32 | GetServiceProviderIndex (ClassID serviceProviderID)=0 |
Public Member Functions inherited from IPMUnknown | |
| virtual IPMUnknown * | QueryInterface (PMIID interfaceID) const =0 |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
Service manager interface. This interface maintains a list of providers for one kind of service(one ServiceID). The Service Registry maintains a list of service managers, one for each service it knows about.
Instantiation enum. Determines how long this service manager will hold on to it's service provider bosses. Really only important if the service provider has state that you care about preserving from one access to the next.
| pure virtual |
Get the ClassID of the default service provider boss
| pure virtual |
Get the ClassID of the nth service provider boss
| pure virtual |
Count service providers for this service
| pure virtual |
Get the index of the passed in service provider in the service provider list
| serviceProvider | Pointer to the service provider you'd like the index of. |
| pure virtual |
Get the index of the passed in service provider ClassID in the service provider list
| serviceProviderID | The ClassID of the service provider boss you'd like the index of. |
| pure virtual |
Query for the default service provider. Caller must Release the returned pointer
| pure virtual |
Query the nth service provider for this service. Caller must Release the returned pointer
| pure virtual |
Query the service provider with the requested ClassID. Caller must Release the returned pointer
| pure virtual |
Internal use only. The service registry registers services that belong to this service manager. Just implement an IK2ServiceProvider and add it to your boss.
| pure virtual |
Internal use only. true means ok to purge this. false means serviceMgr couldn't purge everything, so don't purge it.
| pure virtual |
Set the default service provider for this service
| classID | The ClassID of the default service provider boss. |
| pure virtual |
Called when the Service Registry is shutdown, to force all service providers to be released. Not done in ~ServiceMgr because the call to the destructor is delayed until the database
is deleted because ServiceMgr is persistent and goes to the instance cache.