summaryrefslogtreecommitdiffstats
path: root/src/Blocks/GetHandlerCompileTimeTemplate.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Blocks/GetHandlerCompileTimeTemplate.h')
-rw-r--r--src/Blocks/GetHandlerCompileTimeTemplate.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/Blocks/GetHandlerCompileTimeTemplate.h b/src/Blocks/GetHandlerCompileTimeTemplate.h
new file mode 100644
index 000000000..658497bf2
--- /dev/null
+++ b/src/Blocks/GetHandlerCompileTimeTemplate.h
@@ -0,0 +1,54 @@
+
+#pragma once
+
+class cBlockTorchHandler;
+class cBlockLeverHandler;
+class cBlockButtonHandler;
+class cBlockTripwireHookHandler;
+class cBlockDoorHandler;
+class cBlockPistonHandler;
+
+template<BLOCKTYPE T>
+class GetHandlerCompileTime;
+
+template<>
+class GetHandlerCompileTime<E_BLOCK_TORCH>
+{
+public:
+ typedef cBlockTorchHandler type;
+};
+
+template<>
+class GetHandlerCompileTime<E_BLOCK_LEVER>
+{
+public:
+ typedef cBlockLeverHandler type;
+};
+
+template<>
+class GetHandlerCompileTime<E_BLOCK_STONE_BUTTON>
+{
+public:
+ typedef cBlockButtonHandler type;
+};
+
+template<>
+class GetHandlerCompileTime<E_BLOCK_TRIPWIRE_HOOK>
+{
+public:
+ typedef cBlockTripwireHookHandler type;
+};
+
+template<>
+class GetHandlerCompileTime<E_BLOCK_WOODEN_DOOR>
+{
+public:
+ typedef cBlockDoorHandler type;
+};
+
+template<>
+class GetHandlerCompileTime<E_BLOCK_PISTON>
+{
+public:
+ typedef cBlockPistonHandler type;
+};