InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CLinkResourceService Class Reference

#include <CLinkResourceService.h>

Inheritance diagram for CLinkResourceService:
CPMUnknown< IK2ServiceProvider >IK2ServiceProviderIPMUnknown

Public Types

typedef CPMUnknown
< IK2ServiceProvider
inherited
 

Public Member Functions

 CLinkResourceService (IPMUnknown *boss)
 
virtual void GetName (PMString *pName)
 
virtual ServiceID GetServiceID ()
 
virtual bool16 IsDefaultServiceProvider ()
 
virtual InstancePerX GetInstantiationPolicy ()
 
virtual bool16 HasMultipleIDs () const
 
virtual void GetServiceIDs (K2Vector< ServiceID > &serviceIDs)
 
virtual IPlugIn::ThreadingPolicy GetThreadingPolicy () const
 
- Public Member Functions inherited from CPMUnknown< IK2ServiceProvider >
IPMUnknownQueryInterface (PMIID interfaceID) const
 
void AddRef () const
 
void Release () const
 
void PreDirty (ImplementationID prop=kInvalidImpl, bool16 allowModification=kTrue)
 
void PreDirtyNoMessage (ImplementationID prop=kInvalidImpl, bool16 allowModification=kTrue)
 
 CPMUnknown (const CPMUnknown &)=delete
 
CPMUnknownoperator= (const CPMUnknown &)=delete
 

Additional Inherited Members

- Protected Member Functions inherited from CPMUnknown< IK2ServiceProvider >
 CPMUnknown (IPMUnknown *boss)
 
- Protected Attributes inherited from CPMUnknown< IK2ServiceProvider >
HelperInterface fHelperInterface
 

Detailed Description

Implementation of IK2ServiceProvider for a multi-service link resource service provider. This class can be utilized as the implementation of the IID_IK2SERVICEPROVIDER entry for all link resource service provider bosses.

See Also
IK2ServiceProvider

Member Function Documentation

virtual InstancePerX CLinkResourceService::GetInstantiationPolicy ()
virtual

Returns the instantiation policy used by the service.

Returns
kInstancePerSession by default.

Implements IK2ServiceProvider.

virtual void CLinkResourceService::GetName (PMStringpName)
virtual

Returns the optional name of the service provider.\ The service registry does not use this name in any way.

Parameters
pName[OUT] Name of the service provider.

Implements IK2ServiceProvider.

virtual ServiceID CLinkResourceService::GetServiceID ()
virtual

Returns the service ID that the service provider implements.

Returns
kInvalidService by default.

Implements IK2ServiceProvider.

virtual void CLinkResourceService::GetServiceIDs (K2Vector< ServiceID > & serviceIDs)
virtual

Returns the IDs of all the services suppported by the provider.

Parameters
serviceIDs[OUT] IDs of all the services suppported by the provider.\ By default, this provider supports the kLinkResourceService and kAsyncWorkProcessorFactoryService services.

Implements IK2ServiceProvider.

virtual IPlugIn::ThreadingPolicy CLinkResourceService::GetThreadingPolicy () const
virtual

A service provider can choose if it wants to be instantiated and used by other threads than the main thread. By default the threading policy returned by the base class CServiceProvider is kUnknownThreadingPolicy which means that the service provider will NOT be used by other threads besides the main thread. If a service is designed to be only used exclusively by the main thread it should return kMainThreadOnly. All UI service providers will fall in this category. If a service provider returns kMultipleThreads, it will be instantiated in each worker thread according to its instantiation policy (kInstancePerSession in this case will mean one instance in each thread session).Get the threading policy used for this service.

Returns
the threading policy

Implements IK2ServiceProvider.

virtual bool16 CLinkResourceService::HasMultipleIDs () const
virtual

Returns whether the service provider supports multiple services.

Returns
kTrue by default.

Implements IK2ServiceProvider.

virtual bool16 CLinkResourceService::IsDefaultServiceProvider ()
virtual

Returns whether the service is the default service provider.

Returns
kFalse by default.

Implements IK2ServiceProvider.