summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/clientmap.cpp3
-rw-r--r--src/content_abm.cpp2
-rw-r--r--src/content_cao.cpp3
-rw-r--r--src/database.h5
-rw-r--r--src/environment.cpp3
-rw-r--r--src/inventorymanager.cpp3
-rw-r--r--src/map.cpp3
-rw-r--r--src/mapblock.cpp3
-rw-r--r--src/object_properties.cpp4
-rw-r--r--src/pathfinder.cpp64
-rw-r--r--src/rollback_interface.cpp3
-rw-r--r--src/server.h3
-rw-r--r--src/util/basic_macros.h9
13 files changed, 50 insertions, 58 deletions
diff --git a/src/clientmap.cpp b/src/clientmap.cpp
index faa1461f6..27f9dea38 100644
--- a/src/clientmap.cpp
+++ b/src/clientmap.cpp
@@ -30,10 +30,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "settings.h"
#include "camera.h" // CameraModes
#include "util/mathconstants.h"
+#include "util/basic_macros.h"
#include <algorithm>
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-
ClientMap::ClientMap(
Client *client,
IGameDef *gamedef,
diff --git a/src/content_abm.cpp b/src/content_abm.cpp
index 8694ef981..ee444ae77 100644
--- a/src/content_abm.cpp
+++ b/src/content_abm.cpp
@@ -29,8 +29,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "scripting_game.h"
#include "log.h"
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-
void add_legacy_abms(ServerEnvironment *env, INodeDefManager *nodedef) {
}
diff --git a/src/content_cao.cpp b/src/content_cao.cpp
index 6b35d5881..a02d5168e 100644
--- a/src/content_cao.cpp
+++ b/src/content_cao.cpp
@@ -27,6 +27,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "util/numeric.h" // For IntervalLimiter
#include "util/serialize.h"
#include "util/mathconstants.h"
+#include "util/basic_macros.h"
#include "client/tile.h"
#include "environment.h"
#include "collision.h"
@@ -49,8 +50,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
class Settings;
struct ToolCapabilities;
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-
UNORDERED_MAP<u16, ClientActiveObject::Factory> ClientActiveObject::m_types;
SmoothTranslator::SmoothTranslator():
diff --git a/src/database.h b/src/database.h
index 0cf75232f..459789306 100644
--- a/src/database.h
+++ b/src/database.h
@@ -24,10 +24,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <string>
#include "irr_v3d.h"
#include "irrlichttypes.h"
-
-#ifndef PP
- #define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-#endif
+#include "util/basic_macros.h"
class Database
{
diff --git a/src/environment.cpp b/src/environment.cpp
index 3d4a2efc1..707d89659 100644
--- a/src/environment.cpp
+++ b/src/environment.cpp
@@ -44,10 +44,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "map.h"
#include "emerge.h"
#include "util/serialize.h"
+#include "util/basic_macros.h"
#include "threading/mutex_auto_lock.h"
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-
#define LBM_NAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyz0123456789_:"
// A number that is much smaller than the timeout for particle spawners should/could ever be
diff --git a/src/inventorymanager.cpp b/src/inventorymanager.cpp
index 3d8513492..f36a2fa4e 100644
--- a/src/inventorymanager.cpp
+++ b/src/inventorymanager.cpp
@@ -26,8 +26,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "craftdef.h"
#include "rollback_interface.h"
#include "util/strfnd.h"
-
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
+#include "util/basic_macros.h"
#define PLAYER_TO_SA(p) p->getEnv()->getScriptIface()
diff --git a/src/map.cpp b/src/map.cpp
index 7bb8c4a13..c3b62ded0 100644
--- a/src/map.cpp
+++ b/src/map.cpp
@@ -33,6 +33,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "gamedef.h"
#include "util/directiontables.h"
#include "util/mathconstants.h"
+#include "util/basic_macros.h"
#include "rollback_interface.h"
#include "environment.h"
#include "reflowscan.h"
@@ -56,8 +57,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "database-postgresql.h"
#endif
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-
/*
Map
diff --git a/src/mapblock.cpp b/src/mapblock.cpp
index f8747f52b..f8c3197bc 100644
--- a/src/mapblock.cpp
+++ b/src/mapblock.cpp
@@ -35,8 +35,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#endif
#include "util/string.h"
#include "util/serialize.h"
-
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
+#include "util/basic_macros.h"
static const char *modified_reason_strings[] = {
"initial",
diff --git a/src/object_properties.cpp b/src/object_properties.cpp
index 89ca26274..f4e4953ba 100644
--- a/src/object_properties.cpp
+++ b/src/object_properties.cpp
@@ -21,11 +21,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "irrlichttypes_bloated.h"
#include "exceptions.h"
#include "util/serialize.h"
+#include "util/basic_macros.h"
#include <sstream>
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-#define PP2(x) "("<<(x).X<<","<<(x).Y<<")"
-
ObjectProperties::ObjectProperties():
hp_max(1),
physical(false),
diff --git a/src/pathfinder.cpp b/src/pathfinder.cpp
index 57a008ead..073670c6d 100644
--- a/src/pathfinder.cpp
+++ b/src/pathfinder.cpp
@@ -29,6 +29,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "map.h"
#include "log.h"
#include "irr_aabb3d.h"
+#include "util/basic_macros.h"
//#define PATHFINDER_DEBUG
//#define PATHFINDER_CALC_TIME
@@ -47,9 +48,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
/* Typedefs and macros */
/******************************************************************************/
-/** shortcut to print a 3d pos */
-#define PPOS(pos) "(" << pos.X << "," << pos.Y << "," << pos.Z << ")"
-
#define LVL "(" << level << ")" <<
#ifdef PATHFINDER_DEBUG
@@ -531,25 +529,25 @@ void GridNodeContainer::initNode(v3s16 ipos, PathGridnode *p_node)
if ((current.param0 == CONTENT_IGNORE) ||
(below.param0 == CONTENT_IGNORE)) {
- DEBUG_OUT("Pathfinder: " << PPOS(realpos) <<
+ DEBUG_OUT("Pathfinder: " << PP(realpos) <<
" current or below is invalid element" << std::endl);
if (current.param0 == CONTENT_IGNORE) {
elem.type = 'i';
- DEBUG_OUT(PPOS(ipos) << ": " << 'i' << std::endl);
+ DEBUG_OUT(PP(ipos) << ": " << 'i' << std::endl);
}
return;
}
//don't add anything if it isn't an air node
if (ndef->get(current).walkable || !ndef->get(below).walkable) {
- DEBUG_OUT("Pathfinder: " << PPOS(realpos)
+ DEBUG_OUT("Pathfinder: " << PP(realpos)
<< " not on surface" << std::endl);
if (ndef->get(current).walkable) {
elem.type = 's';
- DEBUG_OUT(PPOS(ipos) << ": " << 's' << std::endl);
+ DEBUG_OUT(PP(ipos) << ": " << 's' << std::endl);
} else {
elem.type = '-';
- DEBUG_OUT(PPOS(ipos) << ": " << '-' << std::endl);
+ DEBUG_OUT(PP(ipos) << ": " << '-' << std::endl);
}
return;
}
@@ -557,7 +555,7 @@ void GridNodeContainer::initNode(v3s16 ipos, PathGridnode *p_node)
elem.valid = true;
elem.pos = realpos;
elem.type = 'g';
- DEBUG_OUT(PPOS(ipos) << ": " << 'a' << std::endl);
+ DEBUG_OUT(PP(ipos) << ": " << 'a' << std::endl);
if (m_pathf->m_prefetch) {
elem.directions[DIR_XP] = m_pathf->calcCost(realpos, v3s16( 1, 0, 0));
@@ -686,14 +684,14 @@ std::vector<v3s16> Pathfinder::getPath(ServerEnvironment *env,
if (!startpos.valid) {
VERBOSE_TARGET << "invalid startpos" <<
- "Index: " << PPOS(StartIndex) <<
- "Realpos: " << PPOS(getRealPos(StartIndex)) << std::endl;
+ "Index: " << PP(StartIndex) <<
+ "Realpos: " << PP(getRealPos(StartIndex)) << std::endl;
return retval;
}
if (!endpos.valid) {
VERBOSE_TARGET << "invalid stoppos" <<
- "Index: " << PPOS(EndIndex) <<
- "Realpos: " << PPOS(getRealPos(EndIndex)) << std::endl;
+ "Index: " << PP(EndIndex) <<
+ "Realpos: " << PP(getRealPos(EndIndex)) << std::endl;
return retval;
}
@@ -809,7 +807,7 @@ PathCost Pathfinder::calcCost(v3s16 pos, v3s16 dir)
//check limits
if (!m_limits.isPointInside(pos2)) {
- DEBUG_OUT("Pathfinder: " << PPOS(pos2) <<
+ DEBUG_OUT("Pathfinder: " << PP(pos2) <<
" no cost -> out of limits" << std::endl);
return retval;
}
@@ -819,7 +817,7 @@ PathCost Pathfinder::calcCost(v3s16 pos, v3s16 dir)
//did we get information about node?
if (node_at_pos2.param0 == CONTENT_IGNORE ) {
VERBOSE_TARGET << "Pathfinder: (1) area at pos: "
- << PPOS(pos2) << " not loaded";
+ << PP(pos2) << " not loaded";
return retval;
}
@@ -830,7 +828,7 @@ PathCost Pathfinder::calcCost(v3s16 pos, v3s16 dir)
//did we get information about node?
if (node_below_pos2.param0 == CONTENT_IGNORE ) {
VERBOSE_TARGET << "Pathfinder: (2) area at pos: "
- << PPOS((pos2 + v3s16(0, -1, 0))) << " not loaded";
+ << PP((pos2 + v3s16(0, -1, 0))) << " not loaded";
return retval;
}
@@ -838,7 +836,7 @@ PathCost Pathfinder::calcCost(v3s16 pos, v3s16 dir)
retval.valid = true;
retval.value = 1;
retval.direction = 0;
- DEBUG_OUT("Pathfinder: "<< PPOS(pos)
+ DEBUG_OUT("Pathfinder: "<< PP(pos)
<< " cost same height found" << std::endl);
}
else {
@@ -991,8 +989,8 @@ bool Pathfinder::updateAllCosts(v3s16 ipos,
v3s16 ipos2 = ipos + directions[i];
if (!isValidIndex(ipos2)) {
- DEBUG_OUT(LVL " Pathfinder: " << PPOS(ipos2) <<
- " out of range, max=" << PPOS(m_limits.MaxEdge) << std::endl);
+ DEBUG_OUT(LVL " Pathfinder: " << PP(ipos2) <<
+ " out of range, max=" << PP(m_limits.MaxEdge) << std::endl);
continue;
}
@@ -1000,7 +998,7 @@ bool Pathfinder::updateAllCosts(v3s16 ipos,
if (!g_pos2.valid) {
VERBOSE_TARGET << LVL "Pathfinder: no data for new position: "
- << PPOS(ipos2) << std::endl;
+ << PP(ipos2) << std::endl;
continue;
}
@@ -1017,7 +1015,7 @@ bool Pathfinder::updateAllCosts(v3s16 ipos,
if ((g_pos2.totalcost < 0) ||
(g_pos2.totalcost > new_cost)) {
DEBUG_OUT(LVL "Pathfinder: updating path at: "<<
- PPOS(ipos2) << " from: " << g_pos2.totalcost << " to "<<
+ PP(ipos2) << " from: " << g_pos2.totalcost << " to "<<
new_cost << std::endl);
if (updateAllCosts(ipos2, invert(directions[i]),
new_cost, level)) {
@@ -1027,13 +1025,13 @@ bool Pathfinder::updateAllCosts(v3s16 ipos,
else {
DEBUG_OUT(LVL "Pathfinder:"
" already found shorter path to: "
- << PPOS(ipos2) << std::endl);
+ << PP(ipos2) << std::endl);
}
}
else {
DEBUG_OUT(LVL "Pathfinder:"
" not moving to invalid direction: "
- << PPOS(directions[i]) << std::endl);
+ << PP(directions[i]) << std::endl);
}
}
}
@@ -1147,8 +1145,8 @@ bool Pathfinder::updateCostHeuristic( v3s16 ipos,
v3s16 ipos2 = ipos + direction;
if (!isValidIndex(ipos2)) {
- DEBUG_OUT(LVL " Pathfinder: " << PPOS(ipos2) <<
- " out of range, max=" << PPOS(m_limits.MaxEdge) << std::endl);
+ DEBUG_OUT(LVL " Pathfinder: " << PP(ipos2) <<
+ " out of range, max=" << PP(m_limits.MaxEdge) << std::endl);
direction = getDirHeuristic(directions, g_pos);
continue;
}
@@ -1157,7 +1155,7 @@ bool Pathfinder::updateCostHeuristic( v3s16 ipos,
if (!g_pos2.valid) {
VERBOSE_TARGET << LVL "Pathfinder: no data for new position: "
- << PPOS(ipos2) << std::endl;
+ << PP(ipos2) << std::endl;
direction = getDirHeuristic(directions, g_pos);
continue;
}
@@ -1171,16 +1169,16 @@ bool Pathfinder::updateCostHeuristic( v3s16 ipos,
(m_min_target_distance < new_cost)) {
DEBUG_OUT(LVL "Pathfinder:"
" already longer than best already found path "
- << PPOS(ipos2) << std::endl);
+ << PP(ipos2) << std::endl);
return false;
}
if ((g_pos2.totalcost < 0) ||
(g_pos2.totalcost > new_cost)) {
DEBUG_OUT(LVL "Pathfinder: updating path at: "<<
- PPOS(ipos2) << " from: " << g_pos2.totalcost << " to "<<
+ PP(ipos2) << " from: " << g_pos2.totalcost << " to "<<
new_cost << " srcdir=" <<
- PPOS(invert(direction))<< std::endl);
+ PP(invert(direction))<< std::endl);
if (updateCostHeuristic(ipos2, invert(direction),
new_cost, level)) {
retval = true;
@@ -1189,19 +1187,19 @@ bool Pathfinder::updateCostHeuristic( v3s16 ipos,
else {
DEBUG_OUT(LVL "Pathfinder:"
" already found shorter path to: "
- << PPOS(ipos2) << std::endl);
+ << PP(ipos2) << std::endl);
}
}
else {
DEBUG_OUT(LVL "Pathfinder:"
" not moving to invalid direction: "
- << PPOS(direction) << std::endl);
+ << PP(direction) << std::endl);
}
}
else {
DEBUG_OUT(LVL "Pathfinder:"
" skipping srcdir: "
- << PPOS(direction) << std::endl);
+ << PP(direction) << std::endl);
}
direction = getDirHeuristic(directions, g_pos);
}
@@ -1409,7 +1407,7 @@ void Pathfinder::printPath(std::vector<v3s16> path)
unsigned int current = 0;
for (std::vector<v3s16>::iterator i = path.begin();
i != path.end(); ++i) {
- std::cout << std::setw(3) << current << ":" << PPOS((*i)) << std::endl;
+ std::cout << std::setw(3) << current << ":" << PP((*i)) << std::endl;
current++;
}
}
diff --git a/src/rollback_interface.cpp b/src/rollback_interface.cpp
index bffe0a82c..7345c4a7d 100644
--- a/src/rollback_interface.cpp
+++ b/src/rollback_interface.cpp
@@ -22,6 +22,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "util/serialize.h"
#include "util/string.h"
#include "util/numeric.h"
+#include "util/basic_macros.h"
#include "map.h"
#include "gamedef.h"
#include "nodedef.h"
@@ -32,8 +33,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "inventory.h"
#include "mapblock.h"
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-
RollbackNode::RollbackNode(Map *map, v3s16 p, IGameDef *gamedef)
{
diff --git a/src/server.h b/src/server.h
index 4425d139b..cab7e2445 100644
--- a/src/server.h
+++ b/src/server.h
@@ -31,6 +31,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "subgame.h"
#include "util/numeric.h"
#include "util/thread.h"
+#include "util/basic_macros.h"
#include "environment.h"
#include "chat_interface.h"
#include "clientiface.h"
@@ -41,8 +42,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <map>
#include <vector>
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-
class IWritableItemDefManager;
class IWritableNodeDefManager;
class IWritableCraftDefManager;
diff --git a/src/util/basic_macros.h b/src/util/basic_macros.h
index c100b4f25..bd4b890eb 100644
--- a/src/util/basic_macros.h
+++ b/src/util/basic_macros.h
@@ -50,4 +50,13 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#define STATIC_ASSERT(expr, msg) \
UNUSED_ATTRIBUTE typedef char msg[!!(expr) * 2 - 1]
+// Macros to facilitate writing position vectors to a stream
+// Usage:
+// v3s16 pos(1,2,3);
+// mystream << "message " << PP(pos) << std::endl;
+
+#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
+
+#define PP2(x) "("<<(x).X<<","<<(x).Y<<")"
+
#endif