Cross Point


ITimeScheme Interface Reference

Inheritance diagram for ITimeScheme:

IXMLBase IEventBase List of all members.

Detailed Description

This interface represents a time scheme.

When user groups/time schemes are enabled, the firmware is newer then 1.63 and the filesystem of the reader is set to 16 or 17, all users are a member of a user group. Every user group is linked to a single time scheme. Time schemes consists of multiple time blocks.

A time block is a period in time in which users are allowed access (after presenting their card). Outside the time blocks, access is denied to the all users of this time scheme. The time schemes are weekly schedules, they consists of 7 days that can hold a maximum of 3 time blocks per day.

This object is used in the IUserDatabase interface, it encapsulates s single time scheme.

Use this object to access the time blocks of this time scheme, to save all time blocks of a certain day.

This object simplifies passing time scheme information to and from a reader. A reader can contain a maximum of 16 time schemes.


Public Member Functions

HRESULT Reader ([out, retval] IProximityReader **ppintfReader)
 Returns the reader this time scheme belongs to.

HRESULT ID ([out, retval] long *plID)
 Returns the ID of this time scheme.

HRESULT Description ([out, retval] BSTR *bstrDescription)
 Returns the description of this time scheme.

HRESULT Description ([in] BSTR Description)
 Sets a description for this time scheme.

HRESULT TimeBlocks ([out, retval] ICollection **ppintfTimeBlocks)
 Returns a collection of all defined time blocks of this time scheme.

HRESULT FindTimeBlock ([in] ETimeSchemeDay eDay,[in] long lIndex,[out, retval] ITimeBlock **ppintfTimeBlock)
 Find a specific time block.

HRESULT RemoveTimeBlocks ([in] ETimeSchemeDay eDay)
 Remove timeblocks.

HRESULT Save ([out, retval] VARIANT_BOOL *pfSucceeded)
 Stores this time scheme information in the reader.

HRESULT SaveWholeDay ([in] ETimeSchemeDay eDay)
 Store all time blocks of a certain day at once.


Member Function Documentation

ITimeScheme::Reader [out, retval] IProximityReader **  ppintfReader  ) 
 

Returns the reader this time scheme belongs to.

Parameters:
ppintfReader Receives the reader object.
Precondition:
ppintfReader is not NULL.
Note:
This is a read-only property when used in scripting languages.
See also:
IProximityReader

ITimeScheme::ID [out, retval] long *  plID  ) 
 

Returns the ID of this time scheme.

Parameters:
plID Receives the ID of this time scheme.
Precondition:
plID is not NULL.

ITimeScheme::Description [out, retval] BSTR *  pbstrDescription  ) 
 

Returns the description of this time scheme.

Parameters:
pbstrDescription A pointer to a BSTR that receives the current description.
Precondition:
pbstrDescription is not NULL.

ITimeScheme::Description [in] BSTR  bstrDescription  ) 
 

Sets a description for this time scheme.

Parameters:
bstrDescription The new time scheme description.

ITimeScheme::TimeBlocks [out, retval] ICollection **  ppintfTimeBlocks  ) 
 

Returns a collection of all defined time blocks of this time scheme.

This method returns all the defined time blocks of this time scheme. All normal events of processtype ptCollectingTimeBlocks are fired by this method on this time scheme. For every collected time block the OnProcessInfo event is fired (sub process type sptItemFound) with the found time block object in the Info argument.

Parameters:
ppintfTimeBlocks Receives the collection with time blocks.
Precondition:
ppintfTimeBlocks may not be NULL.
Note:
This is a read-only property in scripting languages.

Time schemes and Time blocks are supported in readers with a firmware version of 1.63 or higher and filesystem 16 or 17.

See also:
ITimeBlock, FindTimeBlock, RemoveTimeBlocks

ITimeScheme::FindTimeBlock [in] ETimeSchemeDay  eDay,
[in] long  lIndex,
[out, retval] ITimeBlock **  ppintfTimeBlock
 

Find a specific time block.

Use this method to locate a specific time block quickly. To modify a time block, get the time block (using this method, or using the TimeBlocks property), modify its values and save the time block. See ITimeBlock::Save for more information.

Parameters:
eDay The specific day.
lIndex The index of the time block in the day (0 - 3).
ppintfTimeBlock Receives the found time block object.
Precondition:
ppintfTimeBlock is not NULL.
See also:
ITimeBlock, TimeBlocks, RemoveTimeBlocks, ITimeBlock::Save

ITimeScheme::RemoveTimeBlocks [in] ETimeSchemeDay  eDay  ) 
 

Remove timeblocks.

This method removes all timeblocks of a certain day from this timezone. This means that the start and end times of all three the time blocks will be set to 0xFFFF.

Parameters:
eDay Remove all timeblocks of this day from this time scheme.
See also:
ITimeBlock, TimeBlocks, FindTimeBlock

ITimeScheme::Save [out, retval] VARIANT_BOOL *  pfSucceeded  ) 
 

Stores this time scheme information in the reader.

The time scheme will only be saved when the data of this time scheme has changed.

Parameters:
pfSucceeded Will be set to true upon success.
See also:
IProximityReader::TimeSchemes, IProximityReader::CreateTimeScheme, IProximityReader::RemoveTimeScheme

ITimeScheme::SaveWholeDay [in] ETimeSchemeDay  eDay  ) 
 

Store all time blocks of a certain day at once.

This method is faster then saving every time block of a single day separately. Since the message that is sent to the reader to store a single time block actually contains all time blocks of that day, it is faster to modify all time blocks of a single day and then call this method, then to save all time blocks separately.

Parameters:
eDay The day of which the time blocks should be saved.
See also:
ITimeBlock::Save


© Copyright 2001 - 2006 Cross Point. Generated on Mon Mar 12 16:29:52 2007 Cross Point