ChangeIdleRoutine
The ChangeIdleRoutine
function changes some or all of the characteristics of an idle function based
on the FNIDLE
Note This function
may not be supported in future versions of MAPI.
Quick Info
Header
file: |
MAPIUTIL.H |
Implemented
by: |
MAPI |
Called by: |
Client
applications and service providers |
VOID ChangeIdleRoutine(
FTG ftg, |
|
PFNIDLE pfnIdle,
|
|
LPVOID pvIdleParam, |
|
short priIdle,
|
|
ULONG csecIdle,
|
|
USHORT iroIdle,
|
|
USHORT ircIdle |
|
); |
|
Parameters
ftg
[in] Function
tag that identifies the idle function.
pfnIdle
[in] Pointer
to the idle function.
pvIdleParam
[in] Pointer
to a new block of memory that the calling implementation allocates for the idle
function.
priIdle
[in] Value
representing a new priority for the idle function. Possible priorities for
implementation-defined functions are greater than or less than zero, but not
zero. A value of zero is reserved for a user event such as a mouse click.
Values
greater than zero represent priorities for background tasks that have a higher
priority than user events and are dispatched as part of the standard message
pump loop. Values less than zero represent priorities for idle tasks that only
run during message-pump idle time. Examples of priorities are: 1 for foreground
submission, -1 for power-edit character
insertion, and -3 for
downloading new messages.
csecIdle
[in] A new
time, in hundredths of a second, to apply to the idle function. The meaning of
the initial time value varies, depending on what is passed in the iroIdle parameter.
It can be:
The minimum period of user inaction that must
elapse before the MAPI idle engine calls the idle function for the first time,
if the FIROWAIT flag is set in iroIdle. After this time passes, the idle
engine can call the idle function as often as necessary.
The minimum interval between calls to the
idle function, if the FIROINTERVAL flag is set in iroIdle.
iroIdle
[in] Bitmask
of flags indicating new options for the idle function. The following flags can
be set:
FIRODISABLED
The idle
function is initially disabled when registered. The default action is to enable
the idle function when the FtgRegisterIdleRoutine function
FIROINTERVAL
The time
specified by the csecIdle parameter is the minimum interval between
successive calls to the idle function.
FIROWAIT
The time
specified by the csecIdle parameter is the minimum period of user
inaction that must elapse before the MAPI idle engine calls the idle function
for the first time. After this time passes, the idle engine can call the idle
function as often as necessary.
ircIdle
[in] Bitmask
of flags used to indicate the changes to be made to the idle function. The
following flags can be set:
FIRCCSEC
A change to
the time associated with the idle function that is, a change indicated by the value passed in the csecIdle parameter.
FIRCIRO
A change to
the options for the idle function that is, a change indicated by the value passed in the iroIdle
parameter.
FIRCPFN
A change to
the idle function pointer
that is, a change indicated by the value passed in the pfnIdle
parameter.
FIRCPRI
A change to
the priority of the idle function that is, a change indicated by the value passed in the priIdle
parameter.
FIRCPV
A change to
the memory block of the idle function that is, a change indicated by the value passed in the pvIdleParam
parameter.