InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CusDtLnkStateUpdateProcessor Class Reference
Inheritance diagram for CusDtLnkStateUpdateProcessor:
CPMUnknown< ICusDtLnkStateUpdateProcessor >ICusDtLnkStateUpdateProcessorIPMUnknown

Public Member Functions

 CusDtLnkStateUpdateProcessor (IPMUnknown *boss)
 
virtual ~CusDtLnkStateUpdateProcessor ()
 
virtual bool16 AddJob (const CusDtLnkLinkResourceStatePacket &job)
 
virtual bool16 RemoveJob (const CusDtLnkLinkResourceStatePacket &job)
 
virtual bool16 IsJobPending (const CusDtLnkLinkResourceStatePacket &job) const
 
virtual bool16 UpdateStateForJob (const CusDtLnkLinkResourceStatePacket &job)
 
virtual bool16 UpdateStateForTopJob ()
 
- Public Member Functions inherited from CPMUnknown< ICusDtLnkStateUpdateProcessor >
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

- Public Types inherited from ICusDtLnkStateUpdateProcessor
enum  { kDefaultIID = IID_ICUSDTLNKSTATEUPDATEPROCESSOR }
 
- Protected Member Functions inherited from CPMUnknown< ICusDtLnkStateUpdateProcessor >
 CPMUnknown (IPMUnknown *boss)
 
- Protected Attributes inherited from CPMUnknown< ICusDtLnkStateUpdateProcessor >
HelperInterface fHelperInterface
 

Detailed Description

ICusDtLnkStateUpdateProcessor implementation which maintains a queue of CusDtLnkLinkResourceStatePacket. CusDtLnkLinkResourceStatePacket is created by CusDtLnkLinkResourceStateUpdater, when the updater is asked by link manager to give a state update for a link resource, it creates a packet which contains a snapshot of the resource state at the time when link manager asks for status update. The packet is then queued in the fJobQueue of CusDtLnkStateUpdateProcessor. The CusDtLnk sample has an idle task, which will call CusDtLnkStateUpdateProcessor::UpdateStateForTopJob each time the task is run, which essentially takes one packet off the queue and update the packet with the latest resource information.

See Also
ICusDtLnkStateUpdateProcessor

Constructor & Destructor Documentation

CusDtLnkStateUpdateProcessor::CusDtLnkStateUpdateProcessor (IPMUnknownboss)

Constructor.

Parameters
bossinterface ptr from boss object on which this interface is aggregated.
virtual CusDtLnkStateUpdateProcessor::~CusDtLnkStateUpdateProcessor ()
inlinevirtual

Destructor

Member Function Documentation

bool16 CusDtLnkStateUpdateProcessor::AddJob (const CusDtLnkLinkResourceStatePacketjob)
virtual

Add a job (CusDtLnkLinkResourceStatePacket) to the processor

Returns
kTrue if job is added successfully.

Implements ICusDtLnkStateUpdateProcessor.

bool16 CusDtLnkStateUpdateProcessor::IsJobPending (const CusDtLnkLinkResourceStatePacketjob) const
virtual

Remove the job from the processor

Returns
kTrue if job is removed successfully.

Implements ICusDtLnkStateUpdateProcessor.

bool16 CusDtLnkStateUpdateProcessor::RemoveJob (const CusDtLnkLinkResourceStatePacketjob)
virtual

Remove the job (CusDtLnkLinkResourceStatePacket) from the processor

Returns
kTrue if job is removed successfully.

Implements ICusDtLnkStateUpdateProcessor.

bool16 CusDtLnkStateUpdateProcessor::UpdateStateForJob (const CusDtLnkLinkResourceStatePacketjob)
virtual

The state updater mainains a job queue. A job is to provide state update for a particular linkr resource. This routine process the state update function given a particular job packet, and remove it from the queue

Returns
kTrue if job is removed successfully.

Implements ICusDtLnkStateUpdateProcessor.

bool16 CusDtLnkStateUpdateProcessor::UpdateStateForTopJob ()
virtual

The state updater mainains a job queue. A job is to provide state update for a particular linkr resource. This routine removes a job from the job queue and process the state update function

Implements ICusDtLnkStateUpdateProcessor.