1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- pragma solidity ^0.4.24;
- import "../../introspection/IERC165.sol";
- /**
- * @title ERC721 Non-Fungible Token Standard basic interface
- * @dev see https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md
- */
- contract IERC721Basic is IERC165 {
- bytes4 internal constant InterfaceId_ERC721 = 0x80ac58cd;
- /*
- * 0x80ac58cd ===
- * bytes4(keccak256('balanceOf(address)')) ^
- * bytes4(keccak256('ownerOf(uint256)')) ^
- * bytes4(keccak256('approve(address,uint256)')) ^
- * bytes4(keccak256('getApproved(uint256)')) ^
- * bytes4(keccak256('setApprovalForAll(address,bool)')) ^
- * bytes4(keccak256('isApprovedForAll(address,address)')) ^
- * bytes4(keccak256('transferFrom(address,address,uint256)')) ^
- * bytes4(keccak256('safeTransferFrom(address,address,uint256)')) ^
- * bytes4(keccak256('safeTransferFrom(address,address,uint256,bytes)'))
- */
- bytes4 internal constant InterfaceId_ERC721Enumerable = 0x780e9d63;
- /**
- * 0x780e9d63 ===
- * bytes4(keccak256('totalSupply()')) ^
- * bytes4(keccak256('tokenOfOwnerByIndex(address,uint256)')) ^
- * bytes4(keccak256('tokenByIndex(uint256)'))
- */
- bytes4 internal constant InterfaceId_ERC721Metadata = 0x5b5e139f;
- /**
- * 0x5b5e139f ===
- * bytes4(keccak256('name()')) ^
- * bytes4(keccak256('symbol()')) ^
- * bytes4(keccak256('tokenURI(uint256)'))
- */
- event Transfer(
- address indexed from,
- address indexed to,
- uint256 indexed tokenId
- );
- event Approval(
- address indexed owner,
- address indexed approved,
- uint256 indexed tokenId
- );
- event ApprovalForAll(
- address indexed owner,
- address indexed operator,
- bool approved
- );
- function balanceOf(address _owner) public view returns (uint256 _balance);
- function ownerOf(uint256 _tokenId) public view returns (address _owner);
- function approve(address _to, uint256 _tokenId) public;
- function getApproved(uint256 _tokenId)
- public view returns (address _operator);
- function setApprovalForAll(address _operator, bool _approved) public;
- function isApprovedForAll(address _owner, address _operator)
- public view returns (bool);
- function transferFrom(address _from, address _to, uint256 _tokenId) public;
- function safeTransferFrom(address _from, address _to, uint256 _tokenId)
- public;
- function safeTransferFrom(
- address _from,
- address _to,
- uint256 _tokenId,
- bytes _data
- )
- public;
- }
|