RFID_STATUS WINAPI RFID_FujitsuReadBlockLock ( RFID_HANDLE32  readerHandle,
UINT8 *  pTagID,
UINT32  tagIDLength,
FUJITSU_READ_BLOCKLOCK_ACCESS_PARAMS *  lpReadBlockLockParams,
LPACCESS_FILTER  lpAccessFilter,
LPANTENNA_INFO  lpAntennaInfo,
TAG_DATA *  lpTagData,
LPVOID  rsvd 
)

This function reads the status of Block-Lock flags of a particular BlockGroup on one or more Fujitsu tags in the FOV.

Parameters:
[in] readerHandle 
Handle to the RFID device.
[in] pTagID 
Pointer to the byte array containing Tag ID
[in] tagIDLength 
Length of the byte array containing Tag ID
[in] lpReadBlockLockAcessParams 
Pointer to FUJITSU_READ_BLOCKLOCK_ACCESS_PARAMS structure containing the BlockGroup's offset.
[in] lpAccessFilter 
Pointer to Access filter structure specifying the tag-filter criteria for the current Access operation
[in] lpAntennaInfo 
Pointer to ANTENNA_INFO structure specifying the Antenna IDs on which the access operation is to be performed
[out] lpTagData 
Pointer to Tag_DATA structure which indicates among others the "blockLock-status" of the given BlockGroup.
[in] rsvd 
Reserved for future use
Returns:
If the function succeeds the return value is RFID_API_SUCCESS. If the function fails the return value is one of the following:
  • RFID_API_INVALID_HANDLE Handle provided is invalid
  • RFID_API_PARAM_ERROR Parameter is invalid.
  • RFID_ACCESS_FUJITSU_READ_BLOCKLOCK_FAILED Failed to change BlockLock flags on the specified tag(s)

Remarks:
The TAG_DATA structure contains a Pointer to ACCESS_OPERATION_RESULT which contains a union of results for certain Access Operations, one among them being FujitsuReadBlockLockResult. This result is a 16-bit pattern or "blockLock-status" which specifies the states of the BlockLock flags for the given BlockGroup.
See also:
See RFID_FujitsuChangeBlockLock, RFID_FujitsuChangeBlockOrAreaGroupPassword
Remarks:
Example:
// Code Snippets for Reading  BlockLock flags
  
   RFID_HANDLE32 readerHandle;
   RFID_STATUS rfidStatus = RFID_API_SUCCESS;
   CONNECTION_INFO connectionInfo;
   connectionInfo.version = RFID_API3_5_1;
   if(RFID_API_SUCCESS == RFID_Connect(&readerHandle, TEXT("157.235.207.191"), 0, 0, &connectionInfo))
   {  
           
        UINT8 fujitsu64KtagIDPattern[2] = {0x30,0x35};          
                ACCESS_FILTER accessFilter;
                TAG_PATTERN tagPatternA;
                UINT32 successCount=0,failureCount=0;
                tagPatternA.bitOffset = 32;
                tagPatternA.memoryBank = MEMORY_BANK_EPC;
                tagPatternA.pTagPattern = fujitsu64KTagID;
                tagPatternA.tagPatternBitCount = 16;
                tagPatternA.pTagMask = tagMaskPattern;
                tagPatternA.tagMaskBitCount =  16;
                TAG_DATA* lpTagData = RFID_AllocateTag(readerHandle);
                HANDLE hAccessStopEvent  = CreateEvent(NULL,false,false,NULL);
                RFID_RegisterEventNotification(readerHandle,ACCESS_STOP_EVENT,hAccessStopEvent);
                                
                                                        
                FUJITSU_READ_BLOCKLOCK_ACCESS_PARAMS fujitsuReadBlockLockAccessParams;
                fujitsuReadBlockLockAccessParams.blockGroupOffset = 0x01;
                                        
                rfidStatus = RFID_FujitsuReadBlockLock(readerHandle,NULL,0,&fujitsuReadBlockLockAccessParams,NULL,NULL,NULL);
                if(rfidStatus == RFID_API_SUCCESS)
                {
                         WaitForSingleObject(hAccessStopEvent,INFINITE);
                         while(RFID_API_SUCCESS == RFID_GetReadTag(readerHandle,lpTagData))
                         {
                            printf("\n BlockLockStatus of the Block 0x01 is %d",lpTagData->lpAccessOperationResult->FujitsuReadBlockLockResult.blockLockStatus);
                         }
                }        
                RFID_Disconnect(readerHandle);
   }


Generated on Fri Mar 4 02:25:31 2016 for RFIDAPI3 1.1 C API Documentation by  doxygen 1.5.6