Dash Core  0.12.2.1
P2P Digital Currency
governance-object.h File Reference
#include "cachemultimap.h"
#include "governance-exceptions.h"
#include "governance-vote.h"
#include "governance-votedb.h"
#include "key.h"
#include "net.h"
#include "sync.h"
#include "util.h"
#include <univalue.h>

Go to the source code of this file.

Classes

struct  vote_instance_t
 
struct  vote_rec_t
 
class  CGovernanceObject
 

Typedefs

typedef std::pair< CGovernanceVote, int64_t > vote_time_pair_t
 
typedef std::map< int, vote_instance_tvote_instance_m_t
 
typedef vote_instance_m_t::iterator vote_instance_m_it
 
typedef vote_instance_m_t::const_iterator vote_instance_m_cit
 

Functions

bool operator< (const vote_time_pair_t &p1, const vote_time_pair_t &p2)
 

Variables

static const int MAX_GOVERNANCE_OBJECT_DATA_SIZE = 16 * 1024
 
static const int MIN_GOVERNANCE_PEER_PROTO_VERSION = 70206
 
static const int GOVERNANCE_FILTER_PROTO_VERSION = 70206
 
static const double GOVERNANCE_FILTER_FP_RATE = 0.001
 
static const int GOVERNANCE_OBJECT_UNKNOWN = 0
 
static const int GOVERNANCE_OBJECT_PROPOSAL = 1
 
static const int GOVERNANCE_OBJECT_TRIGGER = 2
 
static const int GOVERNANCE_OBJECT_WATCHDOG = 3
 
static const CAmount GOVERNANCE_PROPOSAL_FEE_TX = (5.0*COIN)
 
static const int64_t GOVERNANCE_FEE_CONFIRMATIONS = 6
 
static const int64_t GOVERNANCE_MIN_RELAY_FEE_CONFIRMATIONS = 1
 
static const int64_t GOVERNANCE_UPDATE_MIN = 60*60
 
static const int64_t GOVERNANCE_DELETION_DELAY = 10*60
 
static const int64_t GOVERNANCE_ORPHAN_EXPIRATION_TIME = 10*60
 
static const int64_t GOVERNANCE_WATCHDOG_EXPIRATION_TIME = 2*60*60
 
static const int GOVERNANCE_TRIGGER_EXPIRATION_BLOCKS = 576
 
static const int SEEN_OBJECT_IS_VALID = 0
 
static const int SEEN_OBJECT_ERROR_INVALID = 1
 
static const int SEEN_OBJECT_ERROR_IMMATURE = 2
 
static const int SEEN_OBJECT_EXECUTED = 3
 
static const int SEEN_OBJECT_UNKNOWN = 4
 

Typedef Documentation

◆ vote_instance_m_cit

typedef vote_instance_m_t::const_iterator vote_instance_m_cit

Definition at line 93 of file governance-object.h.

◆ vote_instance_m_it

typedef vote_instance_m_t::iterator vote_instance_m_it

Definition at line 91 of file governance-object.h.

◆ vote_instance_m_t

typedef std::map<int,vote_instance_t> vote_instance_m_t

Definition at line 89 of file governance-object.h.

◆ vote_time_pair_t

typedef std::pair<CGovernanceVote, int64_t> vote_time_pair_t

Definition at line 55 of file governance-object.h.

Function Documentation

◆ operator<()

bool operator< ( const vote_time_pair_t p1,
const vote_time_pair_t p2 
)
inline

Definition at line 57 of file governance-object.h.

Variable Documentation

◆ GOVERNANCE_DELETION_DELAY

const int64_t GOVERNANCE_DELETION_DELAY = 10*60
static

Definition at line 42 of file governance-object.h.

Referenced by CGovernanceManager::UpdateCachesAndClean().

◆ GOVERNANCE_FEE_CONFIRMATIONS

const int64_t GOVERNANCE_FEE_CONFIRMATIONS = 6
static

Definition at line 39 of file governance-object.h.

Referenced by CGovernanceObject::IsCollateralValid().

◆ GOVERNANCE_FILTER_FP_RATE

const double GOVERNANCE_FILTER_FP_RATE = 0.001
static

Definition at line 30 of file governance-object.h.

Referenced by CGovernanceManager::RequestGovernanceObject().

◆ GOVERNANCE_FILTER_PROTO_VERSION

const int GOVERNANCE_FILTER_PROTO_VERSION = 70206
static

◆ GOVERNANCE_MIN_RELAY_FEE_CONFIRMATIONS

const int64_t GOVERNANCE_MIN_RELAY_FEE_CONFIRMATIONS = 1
static

Definition at line 40 of file governance-object.h.

Referenced by CGovernanceObject::IsCollateralValid().

◆ GOVERNANCE_OBJECT_PROPOSAL

const int GOVERNANCE_OBJECT_PROPOSAL = 1
static

◆ GOVERNANCE_OBJECT_TRIGGER

◆ GOVERNANCE_OBJECT_UNKNOWN

const int GOVERNANCE_OBJECT_UNKNOWN = 0
static

Definition at line 32 of file governance-object.h.

◆ GOVERNANCE_OBJECT_WATCHDOG

◆ GOVERNANCE_ORPHAN_EXPIRATION_TIME

const int64_t GOVERNANCE_ORPHAN_EXPIRATION_TIME = 10*60
static

◆ GOVERNANCE_PROPOSAL_FEE_TX

const CAmount GOVERNANCE_PROPOSAL_FEE_TX = (5.0*COIN)
static

◆ GOVERNANCE_TRIGGER_EXPIRATION_BLOCKS

const int GOVERNANCE_TRIGGER_EXPIRATION_BLOCKS = 576
static

Definition at line 46 of file governance-object.h.

Referenced by CGovernanceTriggerManager::CleanAndRemove().

◆ GOVERNANCE_UPDATE_MIN

const int64_t GOVERNANCE_UPDATE_MIN = 60*60
static

Definition at line 41 of file governance-object.h.

Referenced by CGovernanceObject::ProcessVote().

◆ GOVERNANCE_WATCHDOG_EXPIRATION_TIME

const int64_t GOVERNANCE_WATCHDOG_EXPIRATION_TIME = 2*60*60
static

◆ MAX_GOVERNANCE_OBJECT_DATA_SIZE

const int MAX_GOVERNANCE_OBJECT_DATA_SIZE = 16 * 1024
static

Definition at line 26 of file governance-object.h.

Referenced by CGovernanceObject::SerializationOp().

◆ MIN_GOVERNANCE_PEER_PROTO_VERSION

◆ SEEN_OBJECT_ERROR_IMMATURE

const int SEEN_OBJECT_ERROR_IMMATURE = 2
static

Definition at line 51 of file governance-object.h.

◆ SEEN_OBJECT_ERROR_INVALID

const int SEEN_OBJECT_ERROR_INVALID = 1
static

Definition at line 50 of file governance-object.h.

Referenced by CGovernanceTriggerManager::CleanAndRemove().

◆ SEEN_OBJECT_EXECUTED

const int SEEN_OBJECT_EXECUTED = 3
static

◆ SEEN_OBJECT_IS_VALID

const int SEEN_OBJECT_IS_VALID = 0
static

◆ SEEN_OBJECT_UNKNOWN

const int SEEN_OBJECT_UNKNOWN = 4
static

Definition at line 53 of file governance-object.h.

Referenced by CGovernanceTriggerManager::CleanAndRemove().