diff options
author | Mattes D <github@xoft.cz> | 2014-02-03 07:02:25 +0100 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2014-02-03 07:02:25 +0100 |
commit | b090547c17e919509a85c5810ba7795062987dae (patch) | |
tree | 4f73807d49f697e087b98ffb46ba1453345129a0 /src/ChunkDef.h | |
parent | Fixed multiple invalid permission nodes (diff) | |
parent | Added IsBlockWaterOrIce() (diff) | |
download | cuberite-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.h | 34 |
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; |