summaryrefslogtreecommitdiffhomepage
path: root/Opcode/OPC_SweepAndPrune.h
diff options
context:
space:
mode:
authorAki <please@ignore.pl>2022-01-30 17:44:05 +0100
committerAki <please@ignore.pl>2022-01-30 17:44:05 +0100
commitc01469dddabe404506ef3a64542e8423f9e11f2c (patch)
tree740f6e0e0811227a6e40aac51ba48057f1166b41 /Opcode/OPC_SweepAndPrune.h
parent51657e10769faa2617d546a06c42e4c62a19bb50 (diff)
downloadstarshatter-c01469dddabe404506ef3a64542e8423f9e11f2c.zip
starshatter-c01469dddabe404506ef3a64542e8423f9e11f2c.tar.gz
starshatter-c01469dddabe404506ef3a64542e8423f9e11f2c.tar.bz2
Converted Opcode and Ice into unix newlines format
Diffstat (limited to 'Opcode/OPC_SweepAndPrune.h')
-rw-r--r--Opcode/OPC_SweepAndPrune.h170
1 files changed, 85 insertions, 85 deletions
diff --git a/Opcode/OPC_SweepAndPrune.h b/Opcode/OPC_SweepAndPrune.h
index 5cf7956..cbb87ac 100644
--- a/Opcode/OPC_SweepAndPrune.h
+++ b/Opcode/OPC_SweepAndPrune.h
@@ -1,86 +1,86 @@
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-/*
- * OPCODE - Optimized Collision Detection
- * Copyright (C) 2001 Pierre Terdiman
- * Homepage: http://www.codercorner.com/Opcode.htm
- */
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-/**
- * Contains an implementation of the sweep-and-prune algorithm (moved from Z-Collide)
- * \file OPC_SweepAndPrune.h
- * \author Pierre Terdiman
- * \date January, 29, 2000
- */
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-// Include Guard
-#ifndef __OPC_SWEEPANDPRUNE_H__
-#define __OPC_SWEEPANDPRUNE_H__
-
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- /**
- * User-callback, called by OPCODE for each colliding pairs.
- * \param id0 [in] id of colliding object
- * \param id1 [in] id of colliding object
- * \param user_data [in] user-defined data
- * \return TRUE to continue enumeration
- */
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- typedef BOOL (*PairCallback) (udword id0, udword id1, void* user_data);
-
- class SAP_Element;
- class SAP_EndPoint;
- class SAP_Box;
-
- class OPCODE_API SAP_PairData
- {
- public:
- SAP_PairData();
- ~SAP_PairData();
-
- bool Init(udword nb_objects);
-
- void AddPair(udword id1, udword id2);
- void RemovePair(udword id1, udword id2);
-
- void DumpPairs(Pairs& pairs) const;
- void DumpPairs(PairCallback callback, void* user_data) const;
- private:
- udword mNbElements; //!< Total number of elements in the pool
- udword mNbUsedElements; //!< Number of used elements
- SAP_Element* mElementPool; //!< Array of mNbElements elements
- SAP_Element* mFirstFree; //!< First free element in the pool
-
- udword mNbObjects; //!< Max number of objects we can handle
- SAP_Element** mArray; //!< Pointers to pool
- // Internal methods
- SAP_Element* GetFreeElem(udword id, SAP_Element* next, udword* remap=null);
- inline_ void FreeElem(SAP_Element* elem);
- void Release();
- };
-
- class OPCODE_API SweepAndPrune
- {
- public:
- SweepAndPrune();
- ~SweepAndPrune();
-
- bool Init(udword nb_objects, const AABB** boxes);
- bool UpdateObject(udword i, const AABB& box);
-
- void GetPairs(Pairs& pairs) const;
- void GetPairs(PairCallback callback, void* user_data) const;
- private:
- SAP_PairData mPairs;
-
- udword mNbObjects;
- SAP_Box* mBoxes;
- SAP_EndPoint* mList[3];
- // Internal methods
- bool CheckListsIntegrity();
- };
-
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+/*
+ * OPCODE - Optimized Collision Detection
+ * Copyright (C) 2001 Pierre Terdiman
+ * Homepage: http://www.codercorner.com/Opcode.htm
+ */
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+/**
+ * Contains an implementation of the sweep-and-prune algorithm (moved from Z-Collide)
+ * \file OPC_SweepAndPrune.h
+ * \author Pierre Terdiman
+ * \date January, 29, 2000
+ */
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+// Include Guard
+#ifndef __OPC_SWEEPANDPRUNE_H__
+#define __OPC_SWEEPANDPRUNE_H__
+
+ ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ /**
+ * User-callback, called by OPCODE for each colliding pairs.
+ * \param id0 [in] id of colliding object
+ * \param id1 [in] id of colliding object
+ * \param user_data [in] user-defined data
+ * \return TRUE to continue enumeration
+ */
+ ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ typedef BOOL (*PairCallback) (udword id0, udword id1, void* user_data);
+
+ class SAP_Element;
+ class SAP_EndPoint;
+ class SAP_Box;
+
+ class OPCODE_API SAP_PairData
+ {
+ public:
+ SAP_PairData();
+ ~SAP_PairData();
+
+ bool Init(udword nb_objects);
+
+ void AddPair(udword id1, udword id2);
+ void RemovePair(udword id1, udword id2);
+
+ void DumpPairs(Pairs& pairs) const;
+ void DumpPairs(PairCallback callback, void* user_data) const;
+ private:
+ udword mNbElements; //!< Total number of elements in the pool
+ udword mNbUsedElements; //!< Number of used elements
+ SAP_Element* mElementPool; //!< Array of mNbElements elements
+ SAP_Element* mFirstFree; //!< First free element in the pool
+
+ udword mNbObjects; //!< Max number of objects we can handle
+ SAP_Element** mArray; //!< Pointers to pool
+ // Internal methods
+ SAP_Element* GetFreeElem(udword id, SAP_Element* next, udword* remap=null);
+ inline_ void FreeElem(SAP_Element* elem);
+ void Release();
+ };
+
+ class OPCODE_API SweepAndPrune
+ {
+ public:
+ SweepAndPrune();
+ ~SweepAndPrune();
+
+ bool Init(udword nb_objects, const AABB** boxes);
+ bool UpdateObject(udword i, const AABB& box);
+
+ void GetPairs(Pairs& pairs) const;
+ void GetPairs(PairCallback callback, void* user_data) const;
+ private:
+ SAP_PairData mPairs;
+
+ udword mNbObjects;
+ SAP_Box* mBoxes;
+ SAP_EndPoint* mList[3];
+ // Internal methods
+ bool CheckListsIntegrity();
+ };
+
#endif //__OPC_SWEEPANDPRUNE_H__ \ No newline at end of file