summaryrefslogtreecommitdiffstats
path: root/src/ChunkDef.h
diff options
context:
space:
mode:
authorMattes D <github@xoft.cz>2014-02-03 07:02:25 +0100
committerMattes D <github@xoft.cz>2014-02-03 07:02:25 +0100
commitb090547c17e919509a85c5810ba7795062987dae (patch)
tree4f73807d49f697e087b98ffb46ba1453345129a0 /src/ChunkDef.h
parentFixed multiple invalid permission nodes (diff)
parentAdded IsBlockWaterOrIce() (diff)
downloadcuberite-b090547c17e919509a85c5810ba7795062987dae.tar
cuberite-b090547c17e919509a85c5810ba7795062987dae.tar.gz
cuberite-b090547c17e919509a85c5810ba7795062987dae.tar.bz2
cuberite-b090547c17e919509a85c5810ba7795062987dae.tar.lz
cuberite-b090547c17e919509a85c5810ba7795062987dae.tar.xz
cuberite-b090547c17e919509a85c5810ba7795062987dae.tar.zst
cuberite-b090547c17e919509a85c5810ba7795062987dae.zip
Diffstat (limited to 'src/ChunkDef.h')
-rw-r--r--src/ChunkDef.h34
1 files changed, 31 insertions, 3 deletions
diff --git a/src/ChunkDef.h b/src/ChunkDef.h
index 09bd766da..1c4aa6aca 100644
--- a/src/ChunkDef.h
+++ b/src/ChunkDef.h
@@ -497,7 +497,7 @@ public:
-/// Generic template that can store any kind of data together with a triplet of 3 coords:
+/** Generic template that can store any kind of data together with a triplet of 3 coords*/
template <typename X> class cCoordWithData
{
public:
@@ -517,12 +517,40 @@ public:
}
} ;
-// Illegal in C++03: typedef std::list< cCoordWithData<X> > cCoordWithDataList<X>;
typedef cCoordWithData<int> cCoordWithInt;
typedef cCoordWithData<BLOCKTYPE> cCoordWithBlock;
+
typedef std::list<cCoordWithInt> cCoordWithIntList;
typedef std::vector<cCoordWithInt> cCoordWithIntVector;
-typedef std::vector<cCoordWithBlock> cCoordWithBlockVector;
+
+
+
+
+
+/** Generic template that can store two types of any kind of data together with a triplet of 3 coords */
+template <typename X, typename Z> class cCoordWithDoubleData
+{
+public:
+ int x;
+ int y;
+ int z;
+ X Data;
+ Z DataTwo;
+
+ cCoordWithDoubleData(int a_X, int a_Y, int a_Z) :
+ x(a_X), y(a_Y), z(a_Z)
+ {
+ }
+
+ cCoordWithDoubleData(int a_X, int a_Y, int a_Z, const X & a_Data, const Z & a_DataTwo) :
+ x(a_X), y(a_Y), z(a_Z), Data(a_Data), DataTwo(a_DataTwo)
+ {
+ }
+};
+
+typedef cCoordWithDoubleData <BLOCKTYPE, bool> cCoordWithBlockAndBool;
+
+typedef std::vector<cCoordWithBlockAndBool> cCoordWithBlockAndBoolVector;