Created core.h/core.cpp, added to makefiles. Started moving core structures from main to core beginning with COutPoint.

This commit is contained in:
Eric Lombrozo 2013-01-08 03:02:51 -08:00
parent 663224c232
commit effc2770f5
8 changed files with 66 additions and 41 deletions

View File

@ -154,6 +154,7 @@ HEADERS += src/qt/bitcoingui.h \
src/hash.h \ src/hash.h \
src/uint256.h \ src/uint256.h \
src/serialize.h \ src/serialize.h \
src/core.h \
src/main.h \ src/main.h \
src/net.h \ src/net.h \
src/key.h \ src/key.h \
@ -234,6 +235,7 @@ SOURCES += src/qt/bitcoin.cpp \
src/netbase.cpp \ src/netbase.cpp \
src/key.cpp \ src/key.cpp \
src/script.cpp \ src/script.cpp \
src/core.cpp \
src/main.cpp \ src/main.cpp \
src/init.cpp \ src/init.cpp \
src/net.cpp \ src/net.cpp \

6
src/core.cpp Normal file
View File

@ -0,0 +1,6 @@
// Copyright (c) 2009-2010 Satoshi Nakamoto
// Copyright (c) 2009-2013 The Bitcoin developers
// Distributed under the MIT/X11 software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include "core.h"

53
src/core.h Normal file
View File

@ -0,0 +1,53 @@
// Copyright (c) 2009-2010 Satoshi Nakamoto
// Copyright (c) 2009-2013 The Bitcoin developers
// Distributed under the MIT/X11 software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#ifndef BITCOIN_CORE_H
#define BITCOIN_CORE_H
#include "uint256.h"
#include "serialize.h"
#include "util.h"
#include <stdio.h>
/** An outpoint - a combination of a transaction hash and an index n into its vout */
class COutPoint
{
public:
uint256 hash;
unsigned int n;
COutPoint() { SetNull(); }
COutPoint(uint256 hashIn, unsigned int nIn) { hash = hashIn; n = nIn; }
IMPLEMENT_SERIALIZE( READWRITE(FLATDATA(*this)); )
void SetNull() { hash = 0; n = (unsigned int) -1; }
bool IsNull() const { return (hash == 0 && n == (unsigned int) -1); }
friend bool operator<(const COutPoint& a, const COutPoint& b)
{
return (a.hash < b.hash || (a.hash == b.hash && a.n < b.n));
}
friend bool operator==(const COutPoint& a, const COutPoint& b)
{
return (a.hash == b.hash && a.n == b.n);
}
friend bool operator!=(const COutPoint& a, const COutPoint& b)
{
return !(a == b);
}
std::string ToString() const
{
return strprintf("COutPoint(%s, %u)", hash.ToString().substr(0,10).c_str(), n);
}
void print() const
{
printf("%s\n", ToString().c_str());
}
};
#endif

View File

@ -5,6 +5,7 @@
#ifndef BITCOIN_MAIN_H #ifndef BITCOIN_MAIN_H
#define BITCOIN_MAIN_H #define BITCOIN_MAIN_H
#include "core.h"
#include "bignum.h" #include "bignum.h"
#include "sync.h" #include "sync.h"
#include "net.h" #include "net.h"
@ -267,47 +268,6 @@ public:
/** An outpoint - a combination of a transaction hash and an index n into its vout */
class COutPoint
{
public:
uint256 hash;
unsigned int n;
COutPoint() { SetNull(); }
COutPoint(uint256 hashIn, unsigned int nIn) { hash = hashIn; n = nIn; }
IMPLEMENT_SERIALIZE( READWRITE(FLATDATA(*this)); )
void SetNull() { hash = 0; n = (unsigned int) -1; }
bool IsNull() const { return (hash == 0 && n == (unsigned int) -1); }
friend bool operator<(const COutPoint& a, const COutPoint& b)
{
return (a.hash < b.hash || (a.hash == b.hash && a.n < b.n));
}
friend bool operator==(const COutPoint& a, const COutPoint& b)
{
return (a.hash == b.hash && a.n == b.n);
}
friend bool operator!=(const COutPoint& a, const COutPoint& b)
{
return !(a == b);
}
std::string ToString() const
{
return strprintf("COutPoint(%s, %u)", hash.ToString().c_str(), n);
}
void print() const
{
printf("%s\n", ToString().c_str());
}
};
/** An input of a transaction. It contains the location of the previous /** An input of a transaction. It contains the location of the previous
* transaction's output that it claims and a signature that matches the * transaction's output that it claims and a signature that matches the

View File

@ -73,6 +73,7 @@ OBJS= \
obj/init.o \ obj/init.o \
obj/bitcoind.o \ obj/bitcoind.o \
obj/keystore.o \ obj/keystore.o \
obj/core.o \
obj/main.o \ obj/main.o \
obj/net.o \ obj/net.o \
obj/protocol.o \ obj/protocol.o \

View File

@ -81,6 +81,7 @@ OBJS= \
obj/init.o \ obj/init.o \
obj/bitcoind.o \ obj/bitcoind.o \
obj/keystore.o \ obj/keystore.o \
obj/core.o \
obj/main.o \ obj/main.o \
obj/net.o \ obj/net.o \
obj/protocol.o \ obj/protocol.o \

View File

@ -84,6 +84,7 @@ OBJS= \
obj/init.o \ obj/init.o \
obj/bitcoind.o \ obj/bitcoind.o \
obj/keystore.o \ obj/keystore.o \
obj/core.o \
obj/main.o \ obj/main.o \
obj/net.o \ obj/net.o \
obj/protocol.o \ obj/protocol.o \

View File

@ -123,6 +123,7 @@ OBJS= \
obj/init.o \ obj/init.o \
obj/bitcoind.o \ obj/bitcoind.o \
obj/keystore.o \ obj/keystore.o \
obj/core.o \
obj/main.o \ obj/main.o \
obj/net.o \ obj/net.o \
obj/protocol.o \ obj/protocol.o \