github.com/codingfuture/orig-energi3@v0.8.4/energi/abi/IMasternodeRegistryV2.go (about) 1 // Code generated - DO NOT EDIT. 2 // This file is a generated binding and any manual changes will be lost. 3 4 package abi 5 6 import ( 7 "math/big" 8 "strings" 9 10 ethereum "github.com/ethereum/go-ethereum" 11 "github.com/ethereum/go-ethereum/accounts/abi" 12 "github.com/ethereum/go-ethereum/accounts/abi/bind" 13 "github.com/ethereum/go-ethereum/common" 14 "github.com/ethereum/go-ethereum/core/types" 15 "github.com/ethereum/go-ethereum/event" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var ( 20 _ = big.NewInt 21 _ = strings.NewReader 22 _ = ethereum.NotFound 23 _ = abi.U256 24 _ = bind.Bind 25 _ = common.Big1 26 _ = types.BloomLookup 27 _ = event.NewSubscription 28 ) 29 30 // IMasternodeRegistryV2ABI is the input ABI used to generate the binding from. 31 const IMasternodeRegistryV2ABI = "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"ipv4address\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"bytes32[2]\",\"name\":\"enode\",\"type\":\"bytes32[2]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"collateral\",\"type\":\"uint256\"}],\"name\":\"Announced\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"Deactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Denounced\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"validator\",\"type\":\"address\"}],\"name\":\"Invalidation\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"ipv4address\",\"type\":\"uint32\"},{\"internalType\":\"bytes32[2]\",\"name\":\"enode\",\"type\":\"bytes32[2]\"}],\"name\":\"announce\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"canHeartbeat\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"can_heartbeat\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"canInvalidate\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"can_invalidate\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"collateralLimits\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"count\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"active\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"total\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"active_collateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"total_collateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max_of_all_times\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"denounce\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"enumerate\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"masternodes\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"enumerateActive\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"masternodes\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"block_number\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"block_hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"sw_features\",\"type\":\"uint256\"}],\"name\":\"heartbeat\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"info\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"ipv4address\",\"type\":\"uint32\"},{\"internalType\":\"bytes32[2]\",\"name\":\"enode\",\"type\":\"bytes32[2]\"},{\"internalType\":\"uint256\",\"name\":\"collateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"announced_block\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"sw_features\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"invalidate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"isActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"onCollateralUpdate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"ownerInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"ipv4address\",\"type\":\"uint32\"},{\"internalType\":\"bytes32[2]\",\"name\":\"enode\",\"type\":\"bytes32[2]\"},{\"internalType\":\"uint256\",\"name\":\"collateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"announced_block\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"sw_features\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"token_proxy\",\"outputs\":[{\"internalType\":\"contractIGovernedProxy\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"treasury_proxy\",\"outputs\":[{\"internalType\":\"contractIGovernedProxy\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"masternode\",\"type\":\"address\"}],\"name\":\"validationTarget\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}]" 32 33 // IMasternodeRegistryV2 is an auto generated Go binding around an Ethereum contract. 34 type IMasternodeRegistryV2 struct { 35 IMasternodeRegistryV2Caller // Read-only binding to the contract 36 IMasternodeRegistryV2Transactor // Write-only binding to the contract 37 IMasternodeRegistryV2Filterer // Log filterer for contract events 38 } 39 40 // IMasternodeRegistryV2Caller is an auto generated read-only Go binding around an Ethereum contract. 41 type IMasternodeRegistryV2Caller struct { 42 contract *bind.BoundContract // Generic contract wrapper for the low level calls 43 } 44 45 // IMasternodeRegistryV2Transactor is an auto generated write-only Go binding around an Ethereum contract. 46 type IMasternodeRegistryV2Transactor struct { 47 contract *bind.BoundContract // Generic contract wrapper for the low level calls 48 } 49 50 // IMasternodeRegistryV2Filterer is an auto generated log filtering Go binding around an Ethereum contract events. 51 type IMasternodeRegistryV2Filterer struct { 52 contract *bind.BoundContract // Generic contract wrapper for the low level calls 53 } 54 55 // IMasternodeRegistryV2Session is an auto generated Go binding around an Ethereum contract, 56 // with pre-set call and transact options. 57 type IMasternodeRegistryV2Session struct { 58 Contract *IMasternodeRegistryV2 // Generic contract binding to set the session for 59 CallOpts bind.CallOpts // Call options to use throughout this session 60 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 61 } 62 63 // IMasternodeRegistryV2CallerSession is an auto generated read-only Go binding around an Ethereum contract, 64 // with pre-set call options. 65 type IMasternodeRegistryV2CallerSession struct { 66 Contract *IMasternodeRegistryV2Caller // Generic contract caller binding to set the session for 67 CallOpts bind.CallOpts // Call options to use throughout this session 68 } 69 70 // IMasternodeRegistryV2TransactorSession is an auto generated write-only Go binding around an Ethereum contract, 71 // with pre-set transact options. 72 type IMasternodeRegistryV2TransactorSession struct { 73 Contract *IMasternodeRegistryV2Transactor // Generic contract transactor binding to set the session for 74 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 75 } 76 77 // IMasternodeRegistryV2Raw is an auto generated low-level Go binding around an Ethereum contract. 78 type IMasternodeRegistryV2Raw struct { 79 Contract *IMasternodeRegistryV2 // Generic contract binding to access the raw methods on 80 } 81 82 // IMasternodeRegistryV2CallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 83 type IMasternodeRegistryV2CallerRaw struct { 84 Contract *IMasternodeRegistryV2Caller // Generic read-only contract binding to access the raw methods on 85 } 86 87 // IMasternodeRegistryV2TransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 88 type IMasternodeRegistryV2TransactorRaw struct { 89 Contract *IMasternodeRegistryV2Transactor // Generic write-only contract binding to access the raw methods on 90 } 91 92 // NewIMasternodeRegistryV2 creates a new instance of IMasternodeRegistryV2, bound to a specific deployed contract. 93 func NewIMasternodeRegistryV2(address common.Address, backend bind.ContractBackend) (*IMasternodeRegistryV2, error) { 94 contract, err := bindIMasternodeRegistryV2(address, backend, backend, backend) 95 if err != nil { 96 return nil, err 97 } 98 return &IMasternodeRegistryV2{IMasternodeRegistryV2Caller: IMasternodeRegistryV2Caller{contract: contract}, IMasternodeRegistryV2Transactor: IMasternodeRegistryV2Transactor{contract: contract}, IMasternodeRegistryV2Filterer: IMasternodeRegistryV2Filterer{contract: contract}}, nil 99 } 100 101 // NewIMasternodeRegistryV2Caller creates a new read-only instance of IMasternodeRegistryV2, bound to a specific deployed contract. 102 func NewIMasternodeRegistryV2Caller(address common.Address, caller bind.ContractCaller) (*IMasternodeRegistryV2Caller, error) { 103 contract, err := bindIMasternodeRegistryV2(address, caller, nil, nil) 104 if err != nil { 105 return nil, err 106 } 107 return &IMasternodeRegistryV2Caller{contract: contract}, nil 108 } 109 110 // NewIMasternodeRegistryV2Transactor creates a new write-only instance of IMasternodeRegistryV2, bound to a specific deployed contract. 111 func NewIMasternodeRegistryV2Transactor(address common.Address, transactor bind.ContractTransactor) (*IMasternodeRegistryV2Transactor, error) { 112 contract, err := bindIMasternodeRegistryV2(address, nil, transactor, nil) 113 if err != nil { 114 return nil, err 115 } 116 return &IMasternodeRegistryV2Transactor{contract: contract}, nil 117 } 118 119 // NewIMasternodeRegistryV2Filterer creates a new log filterer instance of IMasternodeRegistryV2, bound to a specific deployed contract. 120 func NewIMasternodeRegistryV2Filterer(address common.Address, filterer bind.ContractFilterer) (*IMasternodeRegistryV2Filterer, error) { 121 contract, err := bindIMasternodeRegistryV2(address, nil, nil, filterer) 122 if err != nil { 123 return nil, err 124 } 125 return &IMasternodeRegistryV2Filterer{contract: contract}, nil 126 } 127 128 // bindIMasternodeRegistryV2 binds a generic wrapper to an already deployed contract. 129 func bindIMasternodeRegistryV2(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 130 parsed, err := abi.JSON(strings.NewReader(IMasternodeRegistryV2ABI)) 131 if err != nil { 132 return nil, err 133 } 134 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 135 } 136 137 // Call invokes the (constant) contract method with params as input values and 138 // sets the output to result. The result type might be a single field for simple 139 // returns, a slice of interfaces for anonymous returns and a struct for named 140 // returns. 141 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 142 return _IMasternodeRegistryV2.Contract.IMasternodeRegistryV2Caller.contract.Call(opts, result, method, params...) 143 } 144 145 // Transfer initiates a plain transaction to move funds to the contract, calling 146 // its default method if one is available. 147 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 148 return _IMasternodeRegistryV2.Contract.IMasternodeRegistryV2Transactor.contract.Transfer(opts) 149 } 150 151 // Transact invokes the (paid) contract method with params as input values. 152 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 153 return _IMasternodeRegistryV2.Contract.IMasternodeRegistryV2Transactor.contract.Transact(opts, method, params...) 154 } 155 156 // Call invokes the (constant) contract method with params as input values and 157 // sets the output to result. The result type might be a single field for simple 158 // returns, a slice of interfaces for anonymous returns and a struct for named 159 // returns. 160 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 161 return _IMasternodeRegistryV2.Contract.contract.Call(opts, result, method, params...) 162 } 163 164 // Transfer initiates a plain transaction to move funds to the contract, calling 165 // its default method if one is available. 166 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 167 return _IMasternodeRegistryV2.Contract.contract.Transfer(opts) 168 } 169 170 // Transact invokes the (paid) contract method with params as input values. 171 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 172 return _IMasternodeRegistryV2.Contract.contract.Transact(opts, method, params...) 173 } 174 175 // CanHeartbeat is a free data retrieval call binding the contract method 0xd9966aba. 176 // 177 // Solidity: function canHeartbeat(address masternode) constant returns(bool can_heartbeat) 178 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) CanHeartbeat(opts *bind.CallOpts, masternode common.Address) (bool, error) { 179 var ( 180 ret0 = new(bool) 181 ) 182 out := ret0 183 err := _IMasternodeRegistryV2.contract.Call(opts, out, "canHeartbeat", masternode) 184 return *ret0, err 185 } 186 187 // CanHeartbeat is a free data retrieval call binding the contract method 0xd9966aba. 188 // 189 // Solidity: function canHeartbeat(address masternode) constant returns(bool can_heartbeat) 190 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) CanHeartbeat(masternode common.Address) (bool, error) { 191 return _IMasternodeRegistryV2.Contract.CanHeartbeat(&_IMasternodeRegistryV2.CallOpts, masternode) 192 } 193 194 // CanHeartbeat is a free data retrieval call binding the contract method 0xd9966aba. 195 // 196 // Solidity: function canHeartbeat(address masternode) constant returns(bool can_heartbeat) 197 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) CanHeartbeat(masternode common.Address) (bool, error) { 198 return _IMasternodeRegistryV2.Contract.CanHeartbeat(&_IMasternodeRegistryV2.CallOpts, masternode) 199 } 200 201 // CanInvalidate is a free data retrieval call binding the contract method 0xd13ef5a5. 202 // 203 // Solidity: function canInvalidate(address masternode) constant returns(bool can_invalidate) 204 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) CanInvalidate(opts *bind.CallOpts, masternode common.Address) (bool, error) { 205 var ( 206 ret0 = new(bool) 207 ) 208 out := ret0 209 err := _IMasternodeRegistryV2.contract.Call(opts, out, "canInvalidate", masternode) 210 return *ret0, err 211 } 212 213 // CanInvalidate is a free data retrieval call binding the contract method 0xd13ef5a5. 214 // 215 // Solidity: function canInvalidate(address masternode) constant returns(bool can_invalidate) 216 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) CanInvalidate(masternode common.Address) (bool, error) { 217 return _IMasternodeRegistryV2.Contract.CanInvalidate(&_IMasternodeRegistryV2.CallOpts, masternode) 218 } 219 220 // CanInvalidate is a free data retrieval call binding the contract method 0xd13ef5a5. 221 // 222 // Solidity: function canInvalidate(address masternode) constant returns(bool can_invalidate) 223 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) CanInvalidate(masternode common.Address) (bool, error) { 224 return _IMasternodeRegistryV2.Contract.CanInvalidate(&_IMasternodeRegistryV2.CallOpts, masternode) 225 } 226 227 // CollateralLimits is a free data retrieval call binding the contract method 0xe2cb2195. 228 // 229 // Solidity: function collateralLimits() constant returns(uint256 min, uint256 max) 230 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) CollateralLimits(opts *bind.CallOpts) (struct { 231 Min *big.Int 232 Max *big.Int 233 }, error) { 234 ret := new(struct { 235 Min *big.Int 236 Max *big.Int 237 }) 238 out := ret 239 err := _IMasternodeRegistryV2.contract.Call(opts, out, "collateralLimits") 240 return *ret, err 241 } 242 243 // CollateralLimits is a free data retrieval call binding the contract method 0xe2cb2195. 244 // 245 // Solidity: function collateralLimits() constant returns(uint256 min, uint256 max) 246 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) CollateralLimits() (struct { 247 Min *big.Int 248 Max *big.Int 249 }, error) { 250 return _IMasternodeRegistryV2.Contract.CollateralLimits(&_IMasternodeRegistryV2.CallOpts) 251 } 252 253 // CollateralLimits is a free data retrieval call binding the contract method 0xe2cb2195. 254 // 255 // Solidity: function collateralLimits() constant returns(uint256 min, uint256 max) 256 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) CollateralLimits() (struct { 257 Min *big.Int 258 Max *big.Int 259 }, error) { 260 return _IMasternodeRegistryV2.Contract.CollateralLimits(&_IMasternodeRegistryV2.CallOpts) 261 } 262 263 // Count is a free data retrieval call binding the contract method 0x06661abd. 264 // 265 // Solidity: function count() constant returns(uint256 active, uint256 total, uint256 active_collateral, uint256 total_collateral, uint256 max_of_all_times) 266 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) Count(opts *bind.CallOpts) (struct { 267 Active *big.Int 268 Total *big.Int 269 ActiveCollateral *big.Int 270 TotalCollateral *big.Int 271 MaxOfAllTimes *big.Int 272 }, error) { 273 ret := new(struct { 274 Active *big.Int 275 Total *big.Int 276 ActiveCollateral *big.Int 277 TotalCollateral *big.Int 278 MaxOfAllTimes *big.Int 279 }) 280 out := ret 281 err := _IMasternodeRegistryV2.contract.Call(opts, out, "count") 282 return *ret, err 283 } 284 285 // Count is a free data retrieval call binding the contract method 0x06661abd. 286 // 287 // Solidity: function count() constant returns(uint256 active, uint256 total, uint256 active_collateral, uint256 total_collateral, uint256 max_of_all_times) 288 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) Count() (struct { 289 Active *big.Int 290 Total *big.Int 291 ActiveCollateral *big.Int 292 TotalCollateral *big.Int 293 MaxOfAllTimes *big.Int 294 }, error) { 295 return _IMasternodeRegistryV2.Contract.Count(&_IMasternodeRegistryV2.CallOpts) 296 } 297 298 // Count is a free data retrieval call binding the contract method 0x06661abd. 299 // 300 // Solidity: function count() constant returns(uint256 active, uint256 total, uint256 active_collateral, uint256 total_collateral, uint256 max_of_all_times) 301 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) Count() (struct { 302 Active *big.Int 303 Total *big.Int 304 ActiveCollateral *big.Int 305 TotalCollateral *big.Int 306 MaxOfAllTimes *big.Int 307 }, error) { 308 return _IMasternodeRegistryV2.Contract.Count(&_IMasternodeRegistryV2.CallOpts) 309 } 310 311 // Enumerate is a free data retrieval call binding the contract method 0xff9f78b3. 312 // 313 // Solidity: function enumerate() constant returns(address[] masternodes) 314 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) Enumerate(opts *bind.CallOpts) ([]common.Address, error) { 315 var ( 316 ret0 = new([]common.Address) 317 ) 318 out := ret0 319 err := _IMasternodeRegistryV2.contract.Call(opts, out, "enumerate") 320 return *ret0, err 321 } 322 323 // Enumerate is a free data retrieval call binding the contract method 0xff9f78b3. 324 // 325 // Solidity: function enumerate() constant returns(address[] masternodes) 326 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) Enumerate() ([]common.Address, error) { 327 return _IMasternodeRegistryV2.Contract.Enumerate(&_IMasternodeRegistryV2.CallOpts) 328 } 329 330 // Enumerate is a free data retrieval call binding the contract method 0xff9f78b3. 331 // 332 // Solidity: function enumerate() constant returns(address[] masternodes) 333 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) Enumerate() ([]common.Address, error) { 334 return _IMasternodeRegistryV2.Contract.Enumerate(&_IMasternodeRegistryV2.CallOpts) 335 } 336 337 // EnumerateActive is a free data retrieval call binding the contract method 0xe1d6f43a. 338 // 339 // Solidity: function enumerateActive() constant returns(address[] masternodes) 340 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) EnumerateActive(opts *bind.CallOpts) ([]common.Address, error) { 341 var ( 342 ret0 = new([]common.Address) 343 ) 344 out := ret0 345 err := _IMasternodeRegistryV2.contract.Call(opts, out, "enumerateActive") 346 return *ret0, err 347 } 348 349 // EnumerateActive is a free data retrieval call binding the contract method 0xe1d6f43a. 350 // 351 // Solidity: function enumerateActive() constant returns(address[] masternodes) 352 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) EnumerateActive() ([]common.Address, error) { 353 return _IMasternodeRegistryV2.Contract.EnumerateActive(&_IMasternodeRegistryV2.CallOpts) 354 } 355 356 // EnumerateActive is a free data retrieval call binding the contract method 0xe1d6f43a. 357 // 358 // Solidity: function enumerateActive() constant returns(address[] masternodes) 359 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) EnumerateActive() ([]common.Address, error) { 360 return _IMasternodeRegistryV2.Contract.EnumerateActive(&_IMasternodeRegistryV2.CallOpts) 361 } 362 363 // Info is a free data retrieval call binding the contract method 0x0aae7a6b. 364 // 365 // Solidity: function info(address masternode) constant returns(address owner, uint32 ipv4address, bytes32[2] enode, uint256 collateral, uint256 announced_block, uint256 sw_features) 366 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) Info(opts *bind.CallOpts, masternode common.Address) (struct { 367 Owner common.Address 368 Ipv4address uint32 369 Enode [2][32]byte 370 Collateral *big.Int 371 AnnouncedBlock *big.Int 372 SwFeatures *big.Int 373 }, error) { 374 ret := new(struct { 375 Owner common.Address 376 Ipv4address uint32 377 Enode [2][32]byte 378 Collateral *big.Int 379 AnnouncedBlock *big.Int 380 SwFeatures *big.Int 381 }) 382 out := ret 383 err := _IMasternodeRegistryV2.contract.Call(opts, out, "info", masternode) 384 return *ret, err 385 } 386 387 // Info is a free data retrieval call binding the contract method 0x0aae7a6b. 388 // 389 // Solidity: function info(address masternode) constant returns(address owner, uint32 ipv4address, bytes32[2] enode, uint256 collateral, uint256 announced_block, uint256 sw_features) 390 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) Info(masternode common.Address) (struct { 391 Owner common.Address 392 Ipv4address uint32 393 Enode [2][32]byte 394 Collateral *big.Int 395 AnnouncedBlock *big.Int 396 SwFeatures *big.Int 397 }, error) { 398 return _IMasternodeRegistryV2.Contract.Info(&_IMasternodeRegistryV2.CallOpts, masternode) 399 } 400 401 // Info is a free data retrieval call binding the contract method 0x0aae7a6b. 402 // 403 // Solidity: function info(address masternode) constant returns(address owner, uint32 ipv4address, bytes32[2] enode, uint256 collateral, uint256 announced_block, uint256 sw_features) 404 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) Info(masternode common.Address) (struct { 405 Owner common.Address 406 Ipv4address uint32 407 Enode [2][32]byte 408 Collateral *big.Int 409 AnnouncedBlock *big.Int 410 SwFeatures *big.Int 411 }, error) { 412 return _IMasternodeRegistryV2.Contract.Info(&_IMasternodeRegistryV2.CallOpts, masternode) 413 } 414 415 // IsActive is a free data retrieval call binding the contract method 0x9f8a13d7. 416 // 417 // Solidity: function isActive(address masternode) constant returns(bool) 418 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) IsActive(opts *bind.CallOpts, masternode common.Address) (bool, error) { 419 var ( 420 ret0 = new(bool) 421 ) 422 out := ret0 423 err := _IMasternodeRegistryV2.contract.Call(opts, out, "isActive", masternode) 424 return *ret0, err 425 } 426 427 // IsActive is a free data retrieval call binding the contract method 0x9f8a13d7. 428 // 429 // Solidity: function isActive(address masternode) constant returns(bool) 430 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) IsActive(masternode common.Address) (bool, error) { 431 return _IMasternodeRegistryV2.Contract.IsActive(&_IMasternodeRegistryV2.CallOpts, masternode) 432 } 433 434 // IsActive is a free data retrieval call binding the contract method 0x9f8a13d7. 435 // 436 // Solidity: function isActive(address masternode) constant returns(bool) 437 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) IsActive(masternode common.Address) (bool, error) { 438 return _IMasternodeRegistryV2.Contract.IsActive(&_IMasternodeRegistryV2.CallOpts, masternode) 439 } 440 441 // OwnerInfo is a free data retrieval call binding the contract method 0xb83e1605. 442 // 443 // Solidity: function ownerInfo(address owner) constant returns(address masternode, uint32 ipv4address, bytes32[2] enode, uint256 collateral, uint256 announced_block, uint256 sw_features) 444 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) OwnerInfo(opts *bind.CallOpts, owner common.Address) (struct { 445 Masternode common.Address 446 Ipv4address uint32 447 Enode [2][32]byte 448 Collateral *big.Int 449 AnnouncedBlock *big.Int 450 SwFeatures *big.Int 451 }, error) { 452 ret := new(struct { 453 Masternode common.Address 454 Ipv4address uint32 455 Enode [2][32]byte 456 Collateral *big.Int 457 AnnouncedBlock *big.Int 458 SwFeatures *big.Int 459 }) 460 out := ret 461 err := _IMasternodeRegistryV2.contract.Call(opts, out, "ownerInfo", owner) 462 return *ret, err 463 } 464 465 // OwnerInfo is a free data retrieval call binding the contract method 0xb83e1605. 466 // 467 // Solidity: function ownerInfo(address owner) constant returns(address masternode, uint32 ipv4address, bytes32[2] enode, uint256 collateral, uint256 announced_block, uint256 sw_features) 468 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) OwnerInfo(owner common.Address) (struct { 469 Masternode common.Address 470 Ipv4address uint32 471 Enode [2][32]byte 472 Collateral *big.Int 473 AnnouncedBlock *big.Int 474 SwFeatures *big.Int 475 }, error) { 476 return _IMasternodeRegistryV2.Contract.OwnerInfo(&_IMasternodeRegistryV2.CallOpts, owner) 477 } 478 479 // OwnerInfo is a free data retrieval call binding the contract method 0xb83e1605. 480 // 481 // Solidity: function ownerInfo(address owner) constant returns(address masternode, uint32 ipv4address, bytes32[2] enode, uint256 collateral, uint256 announced_block, uint256 sw_features) 482 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) OwnerInfo(owner common.Address) (struct { 483 Masternode common.Address 484 Ipv4address uint32 485 Enode [2][32]byte 486 Collateral *big.Int 487 AnnouncedBlock *big.Int 488 SwFeatures *big.Int 489 }, error) { 490 return _IMasternodeRegistryV2.Contract.OwnerInfo(&_IMasternodeRegistryV2.CallOpts, owner) 491 } 492 493 // TokenProxy is a free data retrieval call binding the contract method 0x84afd47f. 494 // 495 // Solidity: function token_proxy() constant returns(address) 496 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) TokenProxy(opts *bind.CallOpts) (common.Address, error) { 497 var ( 498 ret0 = new(common.Address) 499 ) 500 out := ret0 501 err := _IMasternodeRegistryV2.contract.Call(opts, out, "token_proxy") 502 return *ret0, err 503 } 504 505 // TokenProxy is a free data retrieval call binding the contract method 0x84afd47f. 506 // 507 // Solidity: function token_proxy() constant returns(address) 508 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) TokenProxy() (common.Address, error) { 509 return _IMasternodeRegistryV2.Contract.TokenProxy(&_IMasternodeRegistryV2.CallOpts) 510 } 511 512 // TokenProxy is a free data retrieval call binding the contract method 0x84afd47f. 513 // 514 // Solidity: function token_proxy() constant returns(address) 515 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) TokenProxy() (common.Address, error) { 516 return _IMasternodeRegistryV2.Contract.TokenProxy(&_IMasternodeRegistryV2.CallOpts) 517 } 518 519 // TreasuryProxy is a free data retrieval call binding the contract method 0xa2731784. 520 // 521 // Solidity: function treasury_proxy() constant returns(address) 522 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) TreasuryProxy(opts *bind.CallOpts) (common.Address, error) { 523 var ( 524 ret0 = new(common.Address) 525 ) 526 out := ret0 527 err := _IMasternodeRegistryV2.contract.Call(opts, out, "treasury_proxy") 528 return *ret0, err 529 } 530 531 // TreasuryProxy is a free data retrieval call binding the contract method 0xa2731784. 532 // 533 // Solidity: function treasury_proxy() constant returns(address) 534 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) TreasuryProxy() (common.Address, error) { 535 return _IMasternodeRegistryV2.Contract.TreasuryProxy(&_IMasternodeRegistryV2.CallOpts) 536 } 537 538 // TreasuryProxy is a free data retrieval call binding the contract method 0xa2731784. 539 // 540 // Solidity: function treasury_proxy() constant returns(address) 541 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) TreasuryProxy() (common.Address, error) { 542 return _IMasternodeRegistryV2.Contract.TreasuryProxy(&_IMasternodeRegistryV2.CallOpts) 543 } 544 545 // ValidationTarget is a free data retrieval call binding the contract method 0xc3db74d6. 546 // 547 // Solidity: function validationTarget(address masternode) constant returns(address target) 548 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Caller) ValidationTarget(opts *bind.CallOpts, masternode common.Address) (common.Address, error) { 549 var ( 550 ret0 = new(common.Address) 551 ) 552 out := ret0 553 err := _IMasternodeRegistryV2.contract.Call(opts, out, "validationTarget", masternode) 554 return *ret0, err 555 } 556 557 // ValidationTarget is a free data retrieval call binding the contract method 0xc3db74d6. 558 // 559 // Solidity: function validationTarget(address masternode) constant returns(address target) 560 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) ValidationTarget(masternode common.Address) (common.Address, error) { 561 return _IMasternodeRegistryV2.Contract.ValidationTarget(&_IMasternodeRegistryV2.CallOpts, masternode) 562 } 563 564 // ValidationTarget is a free data retrieval call binding the contract method 0xc3db74d6. 565 // 566 // Solidity: function validationTarget(address masternode) constant returns(address target) 567 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2CallerSession) ValidationTarget(masternode common.Address) (common.Address, error) { 568 return _IMasternodeRegistryV2.Contract.ValidationTarget(&_IMasternodeRegistryV2.CallOpts, masternode) 569 } 570 571 // Announce is a paid mutator transaction binding the contract method 0xd70d5c30. 572 // 573 // Solidity: function announce(address masternode, uint32 ipv4address, bytes32[2] enode) returns() 574 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Transactor) Announce(opts *bind.TransactOpts, masternode common.Address, ipv4address uint32, enode [2][32]byte) (*types.Transaction, error) { 575 return _IMasternodeRegistryV2.contract.Transact(opts, "announce", masternode, ipv4address, enode) 576 } 577 578 // Announce is a paid mutator transaction binding the contract method 0xd70d5c30. 579 // 580 // Solidity: function announce(address masternode, uint32 ipv4address, bytes32[2] enode) returns() 581 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) Announce(masternode common.Address, ipv4address uint32, enode [2][32]byte) (*types.Transaction, error) { 582 return _IMasternodeRegistryV2.Contract.Announce(&_IMasternodeRegistryV2.TransactOpts, masternode, ipv4address, enode) 583 } 584 585 // Announce is a paid mutator transaction binding the contract method 0xd70d5c30. 586 // 587 // Solidity: function announce(address masternode, uint32 ipv4address, bytes32[2] enode) returns() 588 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2TransactorSession) Announce(masternode common.Address, ipv4address uint32, enode [2][32]byte) (*types.Transaction, error) { 589 return _IMasternodeRegistryV2.Contract.Announce(&_IMasternodeRegistryV2.TransactOpts, masternode, ipv4address, enode) 590 } 591 592 // Denounce is a paid mutator transaction binding the contract method 0xca0e551f. 593 // 594 // Solidity: function denounce(address masternode) returns() 595 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Transactor) Denounce(opts *bind.TransactOpts, masternode common.Address) (*types.Transaction, error) { 596 return _IMasternodeRegistryV2.contract.Transact(opts, "denounce", masternode) 597 } 598 599 // Denounce is a paid mutator transaction binding the contract method 0xca0e551f. 600 // 601 // Solidity: function denounce(address masternode) returns() 602 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) Denounce(masternode common.Address) (*types.Transaction, error) { 603 return _IMasternodeRegistryV2.Contract.Denounce(&_IMasternodeRegistryV2.TransactOpts, masternode) 604 } 605 606 // Denounce is a paid mutator transaction binding the contract method 0xca0e551f. 607 // 608 // Solidity: function denounce(address masternode) returns() 609 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2TransactorSession) Denounce(masternode common.Address) (*types.Transaction, error) { 610 return _IMasternodeRegistryV2.Contract.Denounce(&_IMasternodeRegistryV2.TransactOpts, masternode) 611 } 612 613 // Heartbeat is a paid mutator transaction binding the contract method 0x91ceac96. 614 // 615 // Solidity: function heartbeat(uint256 block_number, bytes32 block_hash, uint256 sw_features) returns() 616 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Transactor) Heartbeat(opts *bind.TransactOpts, block_number *big.Int, block_hash [32]byte, sw_features *big.Int) (*types.Transaction, error) { 617 return _IMasternodeRegistryV2.contract.Transact(opts, "heartbeat", block_number, block_hash, sw_features) 618 } 619 620 // Heartbeat is a paid mutator transaction binding the contract method 0x91ceac96. 621 // 622 // Solidity: function heartbeat(uint256 block_number, bytes32 block_hash, uint256 sw_features) returns() 623 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) Heartbeat(block_number *big.Int, block_hash [32]byte, sw_features *big.Int) (*types.Transaction, error) { 624 return _IMasternodeRegistryV2.Contract.Heartbeat(&_IMasternodeRegistryV2.TransactOpts, block_number, block_hash, sw_features) 625 } 626 627 // Heartbeat is a paid mutator transaction binding the contract method 0x91ceac96. 628 // 629 // Solidity: function heartbeat(uint256 block_number, bytes32 block_hash, uint256 sw_features) returns() 630 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2TransactorSession) Heartbeat(block_number *big.Int, block_hash [32]byte, sw_features *big.Int) (*types.Transaction, error) { 631 return _IMasternodeRegistryV2.Contract.Heartbeat(&_IMasternodeRegistryV2.TransactOpts, block_number, block_hash, sw_features) 632 } 633 634 // Invalidate is a paid mutator transaction binding the contract method 0x37a3931f. 635 // 636 // Solidity: function invalidate(address masternode) returns() 637 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Transactor) Invalidate(opts *bind.TransactOpts, masternode common.Address) (*types.Transaction, error) { 638 return _IMasternodeRegistryV2.contract.Transact(opts, "invalidate", masternode) 639 } 640 641 // Invalidate is a paid mutator transaction binding the contract method 0x37a3931f. 642 // 643 // Solidity: function invalidate(address masternode) returns() 644 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) Invalidate(masternode common.Address) (*types.Transaction, error) { 645 return _IMasternodeRegistryV2.Contract.Invalidate(&_IMasternodeRegistryV2.TransactOpts, masternode) 646 } 647 648 // Invalidate is a paid mutator transaction binding the contract method 0x37a3931f. 649 // 650 // Solidity: function invalidate(address masternode) returns() 651 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2TransactorSession) Invalidate(masternode common.Address) (*types.Transaction, error) { 652 return _IMasternodeRegistryV2.Contract.Invalidate(&_IMasternodeRegistryV2.TransactOpts, masternode) 653 } 654 655 // OnCollateralUpdate is a paid mutator transaction binding the contract method 0xcdc7d4ad. 656 // 657 // Solidity: function onCollateralUpdate(address owner) returns() 658 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Transactor) OnCollateralUpdate(opts *bind.TransactOpts, owner common.Address) (*types.Transaction, error) { 659 return _IMasternodeRegistryV2.contract.Transact(opts, "onCollateralUpdate", owner) 660 } 661 662 // OnCollateralUpdate is a paid mutator transaction binding the contract method 0xcdc7d4ad. 663 // 664 // Solidity: function onCollateralUpdate(address owner) returns() 665 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Session) OnCollateralUpdate(owner common.Address) (*types.Transaction, error) { 666 return _IMasternodeRegistryV2.Contract.OnCollateralUpdate(&_IMasternodeRegistryV2.TransactOpts, owner) 667 } 668 669 // OnCollateralUpdate is a paid mutator transaction binding the contract method 0xcdc7d4ad. 670 // 671 // Solidity: function onCollateralUpdate(address owner) returns() 672 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2TransactorSession) OnCollateralUpdate(owner common.Address) (*types.Transaction, error) { 673 return _IMasternodeRegistryV2.Contract.OnCollateralUpdate(&_IMasternodeRegistryV2.TransactOpts, owner) 674 } 675 676 // IMasternodeRegistryV2AnnouncedIterator is returned from FilterAnnounced and is used to iterate over the raw logs and unpacked data for Announced events raised by the IMasternodeRegistryV2 contract. 677 type IMasternodeRegistryV2AnnouncedIterator struct { 678 Event *IMasternodeRegistryV2Announced // Event containing the contract specifics and raw log 679 680 contract *bind.BoundContract // Generic contract to use for unpacking event data 681 event string // Event name to use for unpacking event data 682 683 logs chan types.Log // Log channel receiving the found contract events 684 sub ethereum.Subscription // Subscription for errors, completion and termination 685 done bool // Whether the subscription completed delivering logs 686 fail error // Occurred error to stop iteration 687 } 688 689 // Next advances the iterator to the subsequent event, returning whether there 690 // are any more events found. In case of a retrieval or parsing error, false is 691 // returned and Error() can be queried for the exact failure. 692 func (it *IMasternodeRegistryV2AnnouncedIterator) Next() bool { 693 // If the iterator failed, stop iterating 694 if it.fail != nil { 695 return false 696 } 697 // If the iterator completed, deliver directly whatever's available 698 if it.done { 699 select { 700 case log := <-it.logs: 701 it.Event = new(IMasternodeRegistryV2Announced) 702 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 703 it.fail = err 704 return false 705 } 706 it.Event.Raw = log 707 return true 708 709 default: 710 return false 711 } 712 } 713 // Iterator still in progress, wait for either a data or an error event 714 select { 715 case log := <-it.logs: 716 it.Event = new(IMasternodeRegistryV2Announced) 717 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 718 it.fail = err 719 return false 720 } 721 it.Event.Raw = log 722 return true 723 724 case err := <-it.sub.Err(): 725 it.done = true 726 it.fail = err 727 return it.Next() 728 } 729 } 730 731 // Error returns any retrieval or parsing error occurred during filtering. 732 func (it *IMasternodeRegistryV2AnnouncedIterator) Error() error { 733 return it.fail 734 } 735 736 // Close terminates the iteration process, releasing any pending underlying 737 // resources. 738 func (it *IMasternodeRegistryV2AnnouncedIterator) Close() error { 739 it.sub.Unsubscribe() 740 return nil 741 } 742 743 // IMasternodeRegistryV2Announced represents a Announced event raised by the IMasternodeRegistryV2 contract. 744 type IMasternodeRegistryV2Announced struct { 745 Masternode common.Address 746 Owner common.Address 747 Ipv4address uint32 748 Enode [2][32]byte 749 Collateral *big.Int 750 Raw types.Log // Blockchain specific contextual infos 751 } 752 753 // FilterAnnounced is a free log retrieval operation binding the contract event 0x935a2f33570c4840d82856d75f5d0aafca32c5e6b31db5627552304a7dc82c09. 754 // 755 // Solidity: event Announced(address indexed masternode, address indexed owner, uint32 ipv4address, bytes32[2] enode, uint256 collateral) 756 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) FilterAnnounced(opts *bind.FilterOpts, masternode []common.Address, owner []common.Address) (*IMasternodeRegistryV2AnnouncedIterator, error) { 757 758 var masternodeRule []interface{} 759 for _, masternodeItem := range masternode { 760 masternodeRule = append(masternodeRule, masternodeItem) 761 } 762 var ownerRule []interface{} 763 for _, ownerItem := range owner { 764 ownerRule = append(ownerRule, ownerItem) 765 } 766 767 logs, sub, err := _IMasternodeRegistryV2.contract.FilterLogs(opts, "Announced", masternodeRule, ownerRule) 768 if err != nil { 769 return nil, err 770 } 771 return &IMasternodeRegistryV2AnnouncedIterator{contract: _IMasternodeRegistryV2.contract, event: "Announced", logs: logs, sub: sub}, nil 772 } 773 774 // WatchAnnounced is a free log subscription operation binding the contract event 0x935a2f33570c4840d82856d75f5d0aafca32c5e6b31db5627552304a7dc82c09. 775 // 776 // Solidity: event Announced(address indexed masternode, address indexed owner, uint32 ipv4address, bytes32[2] enode, uint256 collateral) 777 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) WatchAnnounced(opts *bind.WatchOpts, sink chan<- *IMasternodeRegistryV2Announced, masternode []common.Address, owner []common.Address) (event.Subscription, error) { 778 779 var masternodeRule []interface{} 780 for _, masternodeItem := range masternode { 781 masternodeRule = append(masternodeRule, masternodeItem) 782 } 783 var ownerRule []interface{} 784 for _, ownerItem := range owner { 785 ownerRule = append(ownerRule, ownerItem) 786 } 787 788 logs, sub, err := _IMasternodeRegistryV2.contract.WatchLogs(opts, "Announced", masternodeRule, ownerRule) 789 if err != nil { 790 return nil, err 791 } 792 return event.NewSubscription(func(quit <-chan struct{}) error { 793 defer sub.Unsubscribe() 794 for { 795 select { 796 case log := <-logs: 797 // New log arrived, parse the event and forward to the user 798 event := new(IMasternodeRegistryV2Announced) 799 if err := _IMasternodeRegistryV2.contract.UnpackLog(event, "Announced", log); err != nil { 800 return err 801 } 802 event.Raw = log 803 804 select { 805 case sink <- event: 806 case err := <-sub.Err(): 807 return err 808 case <-quit: 809 return nil 810 } 811 case err := <-sub.Err(): 812 return err 813 case <-quit: 814 return nil 815 } 816 } 817 }), nil 818 } 819 820 // IMasternodeRegistryV2DeactivatedIterator is returned from FilterDeactivated and is used to iterate over the raw logs and unpacked data for Deactivated events raised by the IMasternodeRegistryV2 contract. 821 type IMasternodeRegistryV2DeactivatedIterator struct { 822 Event *IMasternodeRegistryV2Deactivated // Event containing the contract specifics and raw log 823 824 contract *bind.BoundContract // Generic contract to use for unpacking event data 825 event string // Event name to use for unpacking event data 826 827 logs chan types.Log // Log channel receiving the found contract events 828 sub ethereum.Subscription // Subscription for errors, completion and termination 829 done bool // Whether the subscription completed delivering logs 830 fail error // Occurred error to stop iteration 831 } 832 833 // Next advances the iterator to the subsequent event, returning whether there 834 // are any more events found. In case of a retrieval or parsing error, false is 835 // returned and Error() can be queried for the exact failure. 836 func (it *IMasternodeRegistryV2DeactivatedIterator) Next() bool { 837 // If the iterator failed, stop iterating 838 if it.fail != nil { 839 return false 840 } 841 // If the iterator completed, deliver directly whatever's available 842 if it.done { 843 select { 844 case log := <-it.logs: 845 it.Event = new(IMasternodeRegistryV2Deactivated) 846 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 847 it.fail = err 848 return false 849 } 850 it.Event.Raw = log 851 return true 852 853 default: 854 return false 855 } 856 } 857 // Iterator still in progress, wait for either a data or an error event 858 select { 859 case log := <-it.logs: 860 it.Event = new(IMasternodeRegistryV2Deactivated) 861 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 862 it.fail = err 863 return false 864 } 865 it.Event.Raw = log 866 return true 867 868 case err := <-it.sub.Err(): 869 it.done = true 870 it.fail = err 871 return it.Next() 872 } 873 } 874 875 // Error returns any retrieval or parsing error occurred during filtering. 876 func (it *IMasternodeRegistryV2DeactivatedIterator) Error() error { 877 return it.fail 878 } 879 880 // Close terminates the iteration process, releasing any pending underlying 881 // resources. 882 func (it *IMasternodeRegistryV2DeactivatedIterator) Close() error { 883 it.sub.Unsubscribe() 884 return nil 885 } 886 887 // IMasternodeRegistryV2Deactivated represents a Deactivated event raised by the IMasternodeRegistryV2 contract. 888 type IMasternodeRegistryV2Deactivated struct { 889 Masternode common.Address 890 Raw types.Log // Blockchain specific contextual infos 891 } 892 893 // FilterDeactivated is a free log retrieval operation binding the contract event 0x749cb6b4c510bc468cf6b9c2086d6f0a54d6b18e25d37bf3200e68eab0880c00. 894 // 895 // Solidity: event Deactivated(address indexed masternode) 896 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) FilterDeactivated(opts *bind.FilterOpts, masternode []common.Address) (*IMasternodeRegistryV2DeactivatedIterator, error) { 897 898 var masternodeRule []interface{} 899 for _, masternodeItem := range masternode { 900 masternodeRule = append(masternodeRule, masternodeItem) 901 } 902 903 logs, sub, err := _IMasternodeRegistryV2.contract.FilterLogs(opts, "Deactivated", masternodeRule) 904 if err != nil { 905 return nil, err 906 } 907 return &IMasternodeRegistryV2DeactivatedIterator{contract: _IMasternodeRegistryV2.contract, event: "Deactivated", logs: logs, sub: sub}, nil 908 } 909 910 // WatchDeactivated is a free log subscription operation binding the contract event 0x749cb6b4c510bc468cf6b9c2086d6f0a54d6b18e25d37bf3200e68eab0880c00. 911 // 912 // Solidity: event Deactivated(address indexed masternode) 913 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) WatchDeactivated(opts *bind.WatchOpts, sink chan<- *IMasternodeRegistryV2Deactivated, masternode []common.Address) (event.Subscription, error) { 914 915 var masternodeRule []interface{} 916 for _, masternodeItem := range masternode { 917 masternodeRule = append(masternodeRule, masternodeItem) 918 } 919 920 logs, sub, err := _IMasternodeRegistryV2.contract.WatchLogs(opts, "Deactivated", masternodeRule) 921 if err != nil { 922 return nil, err 923 } 924 return event.NewSubscription(func(quit <-chan struct{}) error { 925 defer sub.Unsubscribe() 926 for { 927 select { 928 case log := <-logs: 929 // New log arrived, parse the event and forward to the user 930 event := new(IMasternodeRegistryV2Deactivated) 931 if err := _IMasternodeRegistryV2.contract.UnpackLog(event, "Deactivated", log); err != nil { 932 return err 933 } 934 event.Raw = log 935 936 select { 937 case sink <- event: 938 case err := <-sub.Err(): 939 return err 940 case <-quit: 941 return nil 942 } 943 case err := <-sub.Err(): 944 return err 945 case <-quit: 946 return nil 947 } 948 } 949 }), nil 950 } 951 952 // IMasternodeRegistryV2DenouncedIterator is returned from FilterDenounced and is used to iterate over the raw logs and unpacked data for Denounced events raised by the IMasternodeRegistryV2 contract. 953 type IMasternodeRegistryV2DenouncedIterator struct { 954 Event *IMasternodeRegistryV2Denounced // Event containing the contract specifics and raw log 955 956 contract *bind.BoundContract // Generic contract to use for unpacking event data 957 event string // Event name to use for unpacking event data 958 959 logs chan types.Log // Log channel receiving the found contract events 960 sub ethereum.Subscription // Subscription for errors, completion and termination 961 done bool // Whether the subscription completed delivering logs 962 fail error // Occurred error to stop iteration 963 } 964 965 // Next advances the iterator to the subsequent event, returning whether there 966 // are any more events found. In case of a retrieval or parsing error, false is 967 // returned and Error() can be queried for the exact failure. 968 func (it *IMasternodeRegistryV2DenouncedIterator) Next() bool { 969 // If the iterator failed, stop iterating 970 if it.fail != nil { 971 return false 972 } 973 // If the iterator completed, deliver directly whatever's available 974 if it.done { 975 select { 976 case log := <-it.logs: 977 it.Event = new(IMasternodeRegistryV2Denounced) 978 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 979 it.fail = err 980 return false 981 } 982 it.Event.Raw = log 983 return true 984 985 default: 986 return false 987 } 988 } 989 // Iterator still in progress, wait for either a data or an error event 990 select { 991 case log := <-it.logs: 992 it.Event = new(IMasternodeRegistryV2Denounced) 993 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 994 it.fail = err 995 return false 996 } 997 it.Event.Raw = log 998 return true 999 1000 case err := <-it.sub.Err(): 1001 it.done = true 1002 it.fail = err 1003 return it.Next() 1004 } 1005 } 1006 1007 // Error returns any retrieval or parsing error occurred during filtering. 1008 func (it *IMasternodeRegistryV2DenouncedIterator) Error() error { 1009 return it.fail 1010 } 1011 1012 // Close terminates the iteration process, releasing any pending underlying 1013 // resources. 1014 func (it *IMasternodeRegistryV2DenouncedIterator) Close() error { 1015 it.sub.Unsubscribe() 1016 return nil 1017 } 1018 1019 // IMasternodeRegistryV2Denounced represents a Denounced event raised by the IMasternodeRegistryV2 contract. 1020 type IMasternodeRegistryV2Denounced struct { 1021 Masternode common.Address 1022 Owner common.Address 1023 Raw types.Log // Blockchain specific contextual infos 1024 } 1025 1026 // FilterDenounced is a free log retrieval operation binding the contract event 0x55faf8e51ab442f8d8510476317b2e313144c3db60adc284affef64140fe8552. 1027 // 1028 // Solidity: event Denounced(address indexed masternode, address indexed owner) 1029 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) FilterDenounced(opts *bind.FilterOpts, masternode []common.Address, owner []common.Address) (*IMasternodeRegistryV2DenouncedIterator, error) { 1030 1031 var masternodeRule []interface{} 1032 for _, masternodeItem := range masternode { 1033 masternodeRule = append(masternodeRule, masternodeItem) 1034 } 1035 var ownerRule []interface{} 1036 for _, ownerItem := range owner { 1037 ownerRule = append(ownerRule, ownerItem) 1038 } 1039 1040 logs, sub, err := _IMasternodeRegistryV2.contract.FilterLogs(opts, "Denounced", masternodeRule, ownerRule) 1041 if err != nil { 1042 return nil, err 1043 } 1044 return &IMasternodeRegistryV2DenouncedIterator{contract: _IMasternodeRegistryV2.contract, event: "Denounced", logs: logs, sub: sub}, nil 1045 } 1046 1047 // WatchDenounced is a free log subscription operation binding the contract event 0x55faf8e51ab442f8d8510476317b2e313144c3db60adc284affef64140fe8552. 1048 // 1049 // Solidity: event Denounced(address indexed masternode, address indexed owner) 1050 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) WatchDenounced(opts *bind.WatchOpts, sink chan<- *IMasternodeRegistryV2Denounced, masternode []common.Address, owner []common.Address) (event.Subscription, error) { 1051 1052 var masternodeRule []interface{} 1053 for _, masternodeItem := range masternode { 1054 masternodeRule = append(masternodeRule, masternodeItem) 1055 } 1056 var ownerRule []interface{} 1057 for _, ownerItem := range owner { 1058 ownerRule = append(ownerRule, ownerItem) 1059 } 1060 1061 logs, sub, err := _IMasternodeRegistryV2.contract.WatchLogs(opts, "Denounced", masternodeRule, ownerRule) 1062 if err != nil { 1063 return nil, err 1064 } 1065 return event.NewSubscription(func(quit <-chan struct{}) error { 1066 defer sub.Unsubscribe() 1067 for { 1068 select { 1069 case log := <-logs: 1070 // New log arrived, parse the event and forward to the user 1071 event := new(IMasternodeRegistryV2Denounced) 1072 if err := _IMasternodeRegistryV2.contract.UnpackLog(event, "Denounced", log); err != nil { 1073 return err 1074 } 1075 event.Raw = log 1076 1077 select { 1078 case sink <- event: 1079 case err := <-sub.Err(): 1080 return err 1081 case <-quit: 1082 return nil 1083 } 1084 case err := <-sub.Err(): 1085 return err 1086 case <-quit: 1087 return nil 1088 } 1089 } 1090 }), nil 1091 } 1092 1093 // IMasternodeRegistryV2InvalidationIterator is returned from FilterInvalidation and is used to iterate over the raw logs and unpacked data for Invalidation events raised by the IMasternodeRegistryV2 contract. 1094 type IMasternodeRegistryV2InvalidationIterator struct { 1095 Event *IMasternodeRegistryV2Invalidation // Event containing the contract specifics and raw log 1096 1097 contract *bind.BoundContract // Generic contract to use for unpacking event data 1098 event string // Event name to use for unpacking event data 1099 1100 logs chan types.Log // Log channel receiving the found contract events 1101 sub ethereum.Subscription // Subscription for errors, completion and termination 1102 done bool // Whether the subscription completed delivering logs 1103 fail error // Occurred error to stop iteration 1104 } 1105 1106 // Next advances the iterator to the subsequent event, returning whether there 1107 // are any more events found. In case of a retrieval or parsing error, false is 1108 // returned and Error() can be queried for the exact failure. 1109 func (it *IMasternodeRegistryV2InvalidationIterator) Next() bool { 1110 // If the iterator failed, stop iterating 1111 if it.fail != nil { 1112 return false 1113 } 1114 // If the iterator completed, deliver directly whatever's available 1115 if it.done { 1116 select { 1117 case log := <-it.logs: 1118 it.Event = new(IMasternodeRegistryV2Invalidation) 1119 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1120 it.fail = err 1121 return false 1122 } 1123 it.Event.Raw = log 1124 return true 1125 1126 default: 1127 return false 1128 } 1129 } 1130 // Iterator still in progress, wait for either a data or an error event 1131 select { 1132 case log := <-it.logs: 1133 it.Event = new(IMasternodeRegistryV2Invalidation) 1134 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1135 it.fail = err 1136 return false 1137 } 1138 it.Event.Raw = log 1139 return true 1140 1141 case err := <-it.sub.Err(): 1142 it.done = true 1143 it.fail = err 1144 return it.Next() 1145 } 1146 } 1147 1148 // Error returns any retrieval or parsing error occurred during filtering. 1149 func (it *IMasternodeRegistryV2InvalidationIterator) Error() error { 1150 return it.fail 1151 } 1152 1153 // Close terminates the iteration process, releasing any pending underlying 1154 // resources. 1155 func (it *IMasternodeRegistryV2InvalidationIterator) Close() error { 1156 it.sub.Unsubscribe() 1157 return nil 1158 } 1159 1160 // IMasternodeRegistryV2Invalidation represents a Invalidation event raised by the IMasternodeRegistryV2 contract. 1161 type IMasternodeRegistryV2Invalidation struct { 1162 Masternode common.Address 1163 Validator common.Address 1164 Raw types.Log // Blockchain specific contextual infos 1165 } 1166 1167 // FilterInvalidation is a free log retrieval operation binding the contract event 0x389d58799d7eca76264c556a007ffbc7c60caa4e3c8ea0564e791af3a1b9d331. 1168 // 1169 // Solidity: event Invalidation(address indexed masternode, address indexed validator) 1170 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) FilterInvalidation(opts *bind.FilterOpts, masternode []common.Address, validator []common.Address) (*IMasternodeRegistryV2InvalidationIterator, error) { 1171 1172 var masternodeRule []interface{} 1173 for _, masternodeItem := range masternode { 1174 masternodeRule = append(masternodeRule, masternodeItem) 1175 } 1176 var validatorRule []interface{} 1177 for _, validatorItem := range validator { 1178 validatorRule = append(validatorRule, validatorItem) 1179 } 1180 1181 logs, sub, err := _IMasternodeRegistryV2.contract.FilterLogs(opts, "Invalidation", masternodeRule, validatorRule) 1182 if err != nil { 1183 return nil, err 1184 } 1185 return &IMasternodeRegistryV2InvalidationIterator{contract: _IMasternodeRegistryV2.contract, event: "Invalidation", logs: logs, sub: sub}, nil 1186 } 1187 1188 // WatchInvalidation is a free log subscription operation binding the contract event 0x389d58799d7eca76264c556a007ffbc7c60caa4e3c8ea0564e791af3a1b9d331. 1189 // 1190 // Solidity: event Invalidation(address indexed masternode, address indexed validator) 1191 func (_IMasternodeRegistryV2 *IMasternodeRegistryV2Filterer) WatchInvalidation(opts *bind.WatchOpts, sink chan<- *IMasternodeRegistryV2Invalidation, masternode []common.Address, validator []common.Address) (event.Subscription, error) { 1192 1193 var masternodeRule []interface{} 1194 for _, masternodeItem := range masternode { 1195 masternodeRule = append(masternodeRule, masternodeItem) 1196 } 1197 var validatorRule []interface{} 1198 for _, validatorItem := range validator { 1199 validatorRule = append(validatorRule, validatorItem) 1200 } 1201 1202 logs, sub, err := _IMasternodeRegistryV2.contract.WatchLogs(opts, "Invalidation", masternodeRule, validatorRule) 1203 if err != nil { 1204 return nil, err 1205 } 1206 return event.NewSubscription(func(quit <-chan struct{}) error { 1207 defer sub.Unsubscribe() 1208 for { 1209 select { 1210 case log := <-logs: 1211 // New log arrived, parse the event and forward to the user 1212 event := new(IMasternodeRegistryV2Invalidation) 1213 if err := _IMasternodeRegistryV2.contract.UnpackLog(event, "Invalidation", log); err != nil { 1214 return err 1215 } 1216 event.Raw = log 1217 1218 select { 1219 case sink <- event: 1220 case err := <-sub.Err(): 1221 return err 1222 case <-quit: 1223 return nil 1224 } 1225 case err := <-sub.Err(): 1226 return err 1227 case <-quit: 1228 return nil 1229 } 1230 } 1231 }), nil 1232 }