<?xml version="1.0" encoding="UTF-8"?>
<root>
    <doclet-version-NOT-library-version>1.02</doclet-version-NOT-library-version>
    <class>
        <name>anywheresoftware.b4a.objects.NFC</name>
        <shortname>NFCOld</shortname>
        <comment>Supports reading NDEF (NFC Data Exchange Format) tags.
See this &lt;link&gt;tutorial|http://www.basic4ppc.com/forum/basic4android-getting-started-tutorials/14931-reading-ndef-data-nfc-tags.html&lt;/link&gt; for more information.</comment>
        <owner>process</owner>
        <permission>android.permission.NFC</permission>
        <method>
            <name>GeTagtUID</name>
            <comment></comment>
            <returntype>byte[]</returntype>
            <parameter>
                <name>Intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>getHexString</name>
            <comment>return an hex string of data</comment>
            <returntype>java.lang.String</returntype>
            <parameter>
                <name>raw</name>
                <type>byte[]</type>
            </parameter>
            <parameter>
                <name>len</name>
                <type>int</type>
            </parameter>
        </method>
        <method>
            <name>GetNdefRecords</name>
            <comment>Retrieves the NdefRecords stored in the Intent object.</comment>
            <returntype>anywheresoftware.b4a.objects.collections.List</returntype>
            <parameter>
                <name>Intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>IsNdefIntent</name>
            <comment>Tests whether the Intent contains data read from an NDef tag.</comment>
            <returntype>boolean</returntype>
            <parameter>
                <name>Intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>IsNfcv</name>
            <comment>Tests whether the Intent is a NfcV tag.</comment>
            <returntype>boolean</returntype>
            <parameter>
                <name>intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>IsV</name>
            <comment>Tests whether the Intent is a NfcV tag.</comment>
            <returntype>boolean</returntype>
            <parameter>
                <name>intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>IsMifareClassic</name>
            <comment>Tests whether the Intent is a Mifare classic tag.</comment>
            <returntype>boolean</returntype>
            <parameter>
                <name>intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>GetExtraTag</name>
            <comment></comment>
            <returntype>java.lang.String</returntype>
            <parameter>
                <name>Intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
    </class>
    <class>
        <name>anywheresoftware.b4a.objects.NFC.NdefRecordWrapper</name>
        <shortname>NdefRecord</shortname>
        <objectwrapper>android.nfc.NdefRecord</objectwrapper>
        <owner>process</owner>
        <method>
            <name>GetType</name>
            <comment>Returns the variable length Type field</comment>
            <returntype>byte[]</returntype>
        </method>
        <method>
            <name>GetNdefByteArray</name>
            <comment></comment>
            <returntype>byte[]</returntype>
        </method>
        <method>
            <name>IsUriType</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
        <method>
            <name>GetPayload</name>
            <comment>Returns the whole payload</comment>
            <returntype>byte[]</returntype>
        </method>
        <method>
            <name>GetAsTextType</name>
            <comment>Reads the payload and returns the stored text.</comment>
            <returntype>java.lang.String</returntype>
        </method>
        <method>
            <name>GetTnf</name>
            <comment></comment>
            <returntype>short</returntype>
        </method>
        <method>
            <name>IsTextType</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
        <method>
            <name>GetAsUriType</name>
            <comment>Reads the payload and returns the stored Uri.</comment>
            <returntype>java.lang.String</returntype>
        </method>
        <method>
            <name>IsInitialized</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
    </class>
    <class>
        <name>anywheresoftware.b4a.objects.NFC.MiFareWrapper</name>
        <shortname>MiFare</shortname>
        <objectwrapper>android.nfc.tech.MifareClassic</objectwrapper>
        <owner>process</owner>
        <method>
            <name>Initialize</name>
            <comment>Initialise the Mifare Classic object.</comment>
            <returntype>void</returntype>
            <parameter>
                <name>intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>ReadSector</name>
            <comment>Read a sector. 
 Parameter: 
 	sectorIndex, index of the sector to read
  key, the key for authentication. If it's null, 3 known default keys will be tested
  keyType, the type of key. 0 for keyA, 1 for keyB</comment>
            <returntype>boolean</returntype>
            <parameter>
                <name>sectorIndex</name>
                <type>int</type>
            </parameter>
            <parameter>
                <name>Key</name>
                <type>byte[]</type>
            </parameter>
            <parameter>
                <name>keyType</name>
                <type>int</type>
            </parameter>
        </method>
        <method>
            <name>GetBlockData</name>
            <comment>Get 16 bytes data in a block. Should be called after a success reading
 Parameter: 
 	BlockIndexInSector, index of the block inside it's block, should be 0 to 3</comment>
            <returntype>byte[]</returntype>
            <parameter>
                <name>blockIndexInSector</name>
                <type>int</type>
            </parameter>
        </method>
        <method>
            <name>GetAllBlockData</name>
            <comment></comment>
            <returntype>byte[]</returntype>
        </method>
        <method>
            <name>IsInitialized</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
        <method>
            <name>SetBlockData</name>
            <comment></comment>
            <returntype>void</returntype>
            <parameter>
                <name>blockIndexInSector</name>
                <type>int</type>
            </parameter>
            <parameter>
                <name>data</name>
                <type>byte[]</type>
            </parameter>
        </method>
        <method>
            <name>WriteSector</name>
            <comment>Write a sector. 
 Parameter: 
 	sectorIndex, index of the sector to read
  key, the key for authentication. If it's null, 3 known default keys will be tested
  keyType, the type of key. 0 for keyA, 1 for keyB</comment>
            <returntype>boolean</returntype>
            <parameter>
                <name>sectorIndex</name>
                <type>int</type>
            </parameter>
            <parameter>
                <name>Key</name>
                <type>byte[]</type>
            </parameter>
            <parameter>
                <name>KeyType</name>
                <type>int</type>
            </parameter>
            <parameter>
                <name>Data</name>
                <type>byte[][]</type>
            </parameter>
        </method>
    </class>
    <class>
        <name>anywheresoftware.b4a.objects.NFC.NfcvWrapper</name>
        <shortname>Nfcv</shortname>
        <objectwrapper>com.nfc.common.NfcvData</objectwrapper>
        <owner>process</owner>
        <method>
            <name>Initialize</name>
            <comment></comment>
            <returntype>void</returntype>
            <parameter>
                <name>intent</name>
                <type>android.content.Intent</type>
            </parameter>
        </method>
        <method>
            <name>isMemoryExceed2048bytesSize</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
        <method>
            <name>isBasedOnTwoBytesAddress</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
        <method>
            <name>isMultipleReadSupported</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
        <method>
            <name>readTag</name>
            <comment>Read a tag. 
 Parameter: 
 	addressStart, byte array with address in big endian
  numberOfBlockToRead, byte array with number of blocks to read, in big endian</comment>
            <returntype>void</returntype>
            <parameter>
                <name>addressStart</name>
                <type>byte[]</type>
            </parameter>
            <parameter>
                <name>numberOfBlockToRead</name>
                <type>byte[]</type>
            </parameter>
        </method>
        <method>
            <name>IsInitialized</name>
            <comment></comment>
            <returntype>boolean</returntype>
        </method>
        <property>
            <name>ReadData</name>
            <returntype>byte[]</returntype>
            <comment>Get the result of reading.</comment>
        </property>
        <property>
            <name>Techno</name>
            <returntype>java.lang.String</returntype>
            <comment>Get the tech of the tag, i.e. ISO 15693</comment>
        </property>
        <property>
            <name>Dsfid</name>
            <returntype>java.lang.String</returntype>
            <comment>Get the dsfid of the tag</comment>
        </property>
        <property>
            <name>BlockSize</name>
            <returntype>java.lang.String</returntype>
            <comment>Get the block size. Note: real size is 1 more then the return value</comment>
        </property>
        <property>
            <name>SystemInfo</name>
            <returntype>boolean</returntype>
            <comment>Send command to get information about the tag</comment>
        </property>
        <property>
            <name>Manufacturer</name>
            <returntype>java.lang.String</returntype>
            <comment>Get the manufacturer of the tag chip</comment>
        </property>
        <property>
            <name>Afi</name>
            <returntype>java.lang.String</returntype>
            <comment>Get AFI</comment>
        </property>
        <property>
            <name>ProductName</name>
            <returntype>java.lang.String</returntype>
            <comment>Get the product name</comment>
        </property>
        <property>
            <name>MemorySize</name>
            <returntype>java.lang.String</returntype>
            <comment>Get memory size of the tag</comment>
        </property>
        <property>
            <name>UidRaw</name>
            <returntype>byte[]</returntype>
            <comment>Get the uid in bytes</comment>
        </property>
        <property>
            <name>IcReference</name>
            <returntype>java.lang.String</returntype>
            <comment>Get the IC reference</comment>
        </property>
        <property>
            <name>Uid</name>
            <returntype>java.lang.String</returntype>
            <comment>Get the UID of the tag</comment>
        </property>
    </class>
    <version>1.23</version>
</root>
