ERC721Basic.sol 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. pragma solidity ^0.4.23;
  2. import "../../introspection/ERC165.sol";
  3. /**
  4. * @title ERC721 Non-Fungible Token Standard basic interface
  5. * @dev see https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md
  6. */
  7. contract ERC721Basic is ERC165 {
  8. event Transfer(
  9. address indexed _from,
  10. address indexed _to,
  11. uint256 indexed _tokenId
  12. );
  13. event Approval(
  14. address indexed _owner,
  15. address indexed _approved,
  16. uint256 indexed _tokenId
  17. );
  18. event ApprovalForAll(
  19. address indexed _owner,
  20. address indexed _operator,
  21. bool _approved
  22. );
  23. function balanceOf(address _owner) public view returns (uint256 _balance);
  24. function ownerOf(uint256 _tokenId) public view returns (address _owner);
  25. function exists(uint256 _tokenId) public view returns (bool _exists);
  26. function approve(address _to, uint256 _tokenId) public;
  27. function getApproved(uint256 _tokenId)
  28. public view returns (address _operator);
  29. function setApprovalForAll(address _operator, bool _approved) public;
  30. function isApprovedForAll(address _owner, address _operator)
  31. public view returns (bool);
  32. function transferFrom(address _from, address _to, uint256 _tokenId) public;
  33. function safeTransferFrom(address _from, address _to, uint256 _tokenId)
  34. public;
  35. function safeTransferFrom(
  36. address _from,
  37. address _to,
  38. uint256 _tokenId,
  39. bytes _data
  40. )
  41. public;
  42. }