Correctly redo file moves/renames from revs 8437, 8441, 8442, 8444, 8446, 8448, 8850.
--HG-- branch : trunk rename : src/server/authserver/AuthCodes.cpp => src/server/authserver/Authentication/AuthCodes.cpp rename : src/server/authserver/AuthCodes.h => src/server/authserver/Authentication/AuthCodes.h rename : src/server/authserver/RealmList.cpp => src/server/authserver/Realms/RealmList.cpp rename : src/server/authserver/RealmList.h => src/server/authserver/Realms/RealmList.h rename : src/server/authserver/AuthSocket.cpp => src/server/authserver/Server/AuthSocket.cpp rename : src/server/authserver/AuthSocket.h => src/server/authserver/Server/AuthSocket.h rename : src/server/authserver/RealmAcceptor.h => src/server/authserver/Server/RealmAcceptor.h rename : src/server/authserver/RealmSocket.cpp => src/server/authserver/Server/RealmSocket.cpp rename : src/server/authserver/RealmSocket.h => src/server/authserver/Server/RealmSocket.h rename : src/server/game/AI/CombatAI.cpp => src/server/game/AI/CoreAI/CombatAI.cpp rename : src/server/game/AI/CombatAI.h => src/server/game/AI/CoreAI/CombatAI.h rename : src/server/game/AI/GuardAI.cpp => src/server/game/AI/CoreAI/GuardAI.cpp rename : src/server/game/AI/GuardAI.h => src/server/game/AI/CoreAI/GuardAI.h rename : src/server/game/AI/PassiveAI.cpp => src/server/game/AI/CoreAI/PassiveAI.cpp rename : src/server/game/AI/PassiveAI.h => src/server/game/AI/CoreAI/PassiveAI.h rename : src/server/game/AI/PetAI.cpp => src/server/game/AI/CoreAI/PetAI.cpp rename : src/server/game/AI/PetAI.h => src/server/game/AI/CoreAI/PetAI.h rename : src/server/game/AI/ReactorAI.cpp => src/server/game/AI/CoreAI/ReactorAI.cpp rename : src/server/game/AI/ReactorAI.h => src/server/game/AI/CoreAI/ReactorAI.h rename : src/server/game/AI/TotemAI.cpp => src/server/game/AI/CoreAI/TotemAI.cpp rename : src/server/game/AI/TotemAI.h => src/server/game/AI/CoreAI/TotemAI.h rename : src/server/game/AI/UnitAI.cpp => src/server/game/AI/CoreAI/UnitAI.cpp rename : src/server/game/AI/UnitAI.h => src/server/game/AI/CoreAI/UnitAI.h rename : src/server/game/Account/AccountMgr.cpp => src/server/game/Accounts/AccountMgr.cpp rename : src/server/game/Account/AccountMgr.h => src/server/game/Accounts/AccountMgr.h rename : src/server/game/AI/AuctionHouseBot/AuctionHouseBot.cpp => src/server/game/AuctionHouse/AuctionHouseBot/AuctionHouseBot.cpp rename : src/server/game/AI/AuctionHouseBot/AuctionHouseBot.h => src/server/game/AuctionHouse/AuctionHouseBot/AuctionHouseBot.h rename : src/server/game/BattleGrounds/BattleGroundAA.cpp => src/server/game/BattleGrounds/Zones/BattleGroundAA.cpp rename : src/server/game/BattleGrounds/BattleGroundAA.h => src/server/game/BattleGrounds/Zones/BattleGroundAA.h rename : src/server/game/BattleGrounds/BattleGroundAB.cpp => src/server/game/BattleGrounds/Zones/BattleGroundAB.cpp rename : src/server/game/BattleGrounds/BattleGroundAB.h => src/server/game/BattleGrounds/Zones/BattleGroundAB.h rename : src/server/game/BattleGrounds/BattleGroundAV.cpp => src/server/game/BattleGrounds/Zones/BattleGroundAV.cpp rename : src/server/game/BattleGrounds/BattleGroundAV.h => src/server/game/BattleGrounds/Zones/BattleGroundAV.h rename : src/server/game/BattleGrounds/BattleGroundBE.cpp => src/server/game/BattleGrounds/Zones/BattleGroundBE.cpp rename : src/server/game/BattleGrounds/BattleGroundBE.h => src/server/game/BattleGrounds/Zones/BattleGroundBE.h rename : src/server/game/BattleGrounds/BattleGroundDS.cpp => src/server/game/BattleGrounds/Zones/BattleGroundDS.cpp rename : src/server/game/BattleGrounds/BattleGroundDS.h => src/server/game/BattleGrounds/Zones/BattleGroundDS.h rename : src/server/game/BattleGrounds/BattleGroundEY.cpp => src/server/game/BattleGrounds/Zones/BattleGroundEY.cpp rename : src/server/game/BattleGrounds/BattleGroundEY.h => src/server/game/BattleGrounds/Zones/BattleGroundEY.h rename : src/server/game/BattleGrounds/BattleGroundIC.cpp => src/server/game/BattleGrounds/Zones/BattleGroundIC.cpp rename : src/server/game/BattleGrounds/BattleGroundIC.h => src/server/game/BattleGrounds/Zones/BattleGroundIC.h rename : src/server/game/BattleGrounds/BattleGroundNA.cpp => src/server/game/BattleGrounds/Zones/BattleGroundNA.cpp rename : src/server/game/BattleGrounds/BattleGroundNA.h => src/server/game/BattleGrounds/Zones/BattleGroundNA.h rename : src/server/game/BattleGrounds/BattleGroundRB.cpp => src/server/game/BattleGrounds/Zones/BattleGroundRB.cpp rename : src/server/game/BattleGrounds/BattleGroundRB.h => src/server/game/BattleGrounds/Zones/BattleGroundRB.h rename : src/server/game/BattleGrounds/BattleGroundRL.cpp => src/server/game/BattleGrounds/Zones/BattleGroundRL.cpp rename : src/server/game/BattleGrounds/BattleGroundRL.h => src/server/game/BattleGrounds/Zones/BattleGroundRL.h rename : src/server/game/BattleGrounds/BattleGroundRV.cpp => src/server/game/BattleGrounds/Zones/BattleGroundRV.cpp rename : src/server/game/BattleGrounds/BattleGroundRV.h => src/server/game/BattleGrounds/Zones/BattleGroundRV.h rename : src/server/game/BattleGrounds/BattleGroundSA.cpp => src/server/game/BattleGrounds/Zones/BattleGroundSA.cpp rename : src/server/game/BattleGrounds/BattleGroundSA.h => src/server/game/BattleGrounds/Zones/BattleGroundSA.h rename : src/server/game/BattleGrounds/BattleGroundWS.cpp => src/server/game/BattleGrounds/Zones/BattleGroundWS.cpp rename : src/server/game/BattleGrounds/BattleGroundWS.h => src/server/game/BattleGrounds/Zones/BattleGroundWS.h rename : src/server/game/Chat/Channel.cpp => src/server/game/Chat/Channels/Channel.cpp rename : src/server/game/Chat/Channel.h => src/server/game/Chat/Channels/Channel.h rename : src/server/game/Chat/ChannelMgr.cpp => src/server/game/Chat/Channels/ChannelMgr.cpp rename : src/server/game/Chat/ChannelMgr.h => src/server/game/Chat/Channels/ChannelMgr.h rename : src/server/game/Chat/Debugcmds.cpp => src/server/game/Chat/Commands/Debugcmds.cpp rename : src/server/game/Chat/Level0.cpp => src/server/game/Chat/Commands/Level0.cpp rename : src/server/game/Chat/Level1.cpp => src/server/game/Chat/Commands/Level1.cpp rename : src/server/game/Chat/Level2.cpp => src/server/game/Chat/Commands/Level2.cpp rename : src/server/game/Chat/Level3.cpp => src/server/game/Chat/Commands/Level3.cpp rename : src/server/shared/vmap/BIH.cpp => src/server/game/CollisionDetection/BIH.cpp rename : src/server/shared/vmap/BIH.h => src/server/game/CollisionDetection/BIH.h rename : src/server/shared/vmap/CMakeLists.txt => src/server/game/CollisionDetection/CMakeLists.txt rename : src/server/shared/vmap/IVMapManager.h => src/server/game/CollisionDetection/IVMapManager.h rename : src/server/shared/vmap/MapTree.cpp => src/server/game/CollisionDetection/MapTree.cpp rename : src/server/shared/vmap/MapTree.h => src/server/game/CollisionDetection/MapTree.h rename : src/server/shared/vmap/ModelInstance.cpp => src/server/game/CollisionDetection/ModelInstance.cpp rename : src/server/shared/vmap/ModelInstance.h => src/server/game/CollisionDetection/ModelInstance.h rename : src/server/shared/vmap/TileAssembler.cpp => src/server/game/CollisionDetection/TileAssembler.cpp rename : src/server/shared/vmap/TileAssembler.h => src/server/game/CollisionDetection/TileAssembler.h rename : src/server/shared/vmap/VMapDefinitions.h => src/server/game/CollisionDetection/VMapDefinitions.h rename : src/server/shared/vmap/VMapFactory.cpp => src/server/game/CollisionDetection/VMapFactory.cpp rename : src/server/shared/vmap/VMapFactory.h => src/server/game/CollisionDetection/VMapFactory.h rename : src/server/shared/vmap/VMapManager2.cpp => src/server/game/CollisionDetection/VMapManager2.cpp rename : src/server/shared/vmap/VMapManager2.h => src/server/game/CollisionDetection/VMapManager2.h rename : src/server/shared/vmap/VMapTools.h => src/server/game/CollisionDetection/VMapTools.h rename : src/server/shared/vmap/WorldModel.cpp => src/server/game/CollisionDetection/WorldModel.cpp rename : src/server/shared/vmap/WorldModel.h => src/server/game/CollisionDetection/WorldModel.h rename : src/server/game/Events/UnitEvents.h => src/server/game/Combat/UnitEvents.h rename : src/server/game/ConditionMgr/ConditionMgr.cpp => src/server/game/Conditions/ConditionMgr.cpp rename : src/server/game/ConditionMgr/ConditionMgr.h => src/server/game/Conditions/ConditionMgr.h rename : src/server/game/LookingForGroup/LFG.h => src/server/game/DungeonFinding/LFG.h rename : src/server/game/LookingForGroup/LFGMgr.cpp => src/server/game/DungeonFinding/LFGMgr.cpp rename : src/server/game/LookingForGroup/LFGMgr.h => src/server/game/DungeonFinding/LFGMgr.h rename : src/server/game/Entities/Object/Corpse.cpp => src/server/game/Entities/Corpse/Corpse.cpp rename : src/server/game/Entities/Object/Corpse.h => src/server/game/Entities/Corpse/Corpse.h rename : src/server/game/Entities/Object/DynamicObject.cpp => src/server/game/Entities/DynamicObject/DynamicObject.cpp rename : src/server/game/Entities/Object/DynamicObject.h => src/server/game/Entities/DynamicObject/DynamicObject.h rename : src/server/game/Entities/Item/Bag.cpp => src/server/game/Entities/Item/Container/Bag.cpp rename : src/server/game/Entities/Item/Bag.h => src/server/game/Entities/Item/Container/Bag.h rename : src/server/game/Map/ObjectPosSelector.cpp => src/server/game/Entities/Object/ObjectPosSelector.cpp rename : src/server/game/Map/ObjectPosSelector.h => src/server/game/Entities/Object/ObjectPosSelector.h rename : src/server/game/Entities/Object/UpdateData.cpp => src/server/game/Entities/Object/Updates/UpdateData.cpp rename : src/server/game/Entities/Object/UpdateData.h => src/server/game/Entities/Object/Updates/UpdateData.h rename : src/server/game/Entities/Object/UpdateFields.h => src/server/game/Entities/Object/Updates/UpdateFields.h rename : src/server/game/Entities/Object/UpdateMask.h => src/server/game/Entities/Object/Updates/UpdateMask.h rename : src/server/game/Movement/Transports.cpp => src/server/game/Entities/Transport/Transports.cpp rename : src/server/game/Movement/Transports.h => src/server/game/Entities/Transport/Transports.h rename : src/server/game/Events/GlobalEvents.cpp => src/server/game/Globals/GlobalEvents.cpp rename : src/server/game/Events/GlobalEvents.h => src/server/game/Globals/GlobalEvents.h rename : src/server/game/Entities/Object/ObjectAccessor.cpp => src/server/game/Globals/ObjectAccessor.cpp rename : src/server/game/Entities/Object/ObjectAccessor.h => src/server/game/Globals/ObjectAccessor.h rename : src/server/game/Entities/Object/ObjectMgr.cpp => src/server/game/Globals/ObjectMgr.cpp rename : src/server/game/Entities/Object/ObjectMgr.h => src/server/game/Globals/ObjectMgr.h rename : src/server/game/Map/Cell/Cell.h => src/server/game/Maps/Cell/Cell.h rename : src/server/game/Map/Cell/CellImpl.h => src/server/game/Maps/Cell/CellImpl.h rename : src/server/game/Map/Grid/GridDefines.h => src/server/game/Maps/Grid/GridDefines.h rename : src/server/game/Map/Grid/GridNotifiers.cpp => src/server/game/Maps/Grid/GridNotifiers.cpp rename : src/server/game/Map/Grid/GridNotifiers.h => src/server/game/Maps/Grid/GridNotifiers.h rename : src/server/game/Map/Grid/GridNotifiersImpl.h => src/server/game/Maps/Grid/GridNotifiersImpl.h rename : src/server/game/Map/Grid/GridStates.cpp => src/server/game/Maps/Grid/GridStates.cpp rename : src/server/game/Map/Grid/GridStates.h => src/server/game/Maps/Grid/GridStates.h rename : src/server/game/Map/Grid/ObjectGridLoader.cpp => src/server/game/Maps/Grid/ObjectGridLoader.cpp rename : src/server/game/Map/Grid/ObjectGridLoader.h => src/server/game/Maps/Grid/ObjectGridLoader.h rename : src/server/game/Map/Map.cpp => src/server/game/Maps/Map.cpp rename : src/server/game/Map/Map.h => src/server/game/Maps/Map.h rename : src/server/game/Map/MapInstanced.cpp => src/server/game/Maps/MapInstanced.cpp rename : src/server/game/Map/MapInstanced.h => src/server/game/Maps/MapInstanced.h rename : src/server/game/Map/MapManager.cpp => src/server/game/Maps/MapManager.cpp rename : src/server/game/Map/MapManager.h => src/server/game/Maps/MapManager.h rename : src/server/game/Map/MapRefManager.h => src/server/game/Maps/MapRefManager.h rename : src/server/game/Map/MapReference.h => src/server/game/Maps/MapReference.h rename : src/server/game/Map/MapUpdater.cpp => src/server/game/Maps/MapUpdater.cpp rename : src/server/game/Map/MapUpdater.h => src/server/game/Maps/MapUpdater.h rename : src/server/game/Map/ZoneScript.h => src/server/game/Maps/ZoneScript.h rename : src/server/game/Globals/Formulas.h => src/server/game/Miscellaneous/Formulas.h rename : src/server/game/Globals/Language.h => src/server/game/Miscellaneous/Language.h rename : src/server/game/Globals/SharedDefines.h => src/server/game/Miscellaneous/SharedDefines.h rename : src/server/game/Movement/MovementGenerators/MovementGenerator.cpp => src/server/game/Movement/MovementGenerator.cpp rename : src/server/game/Movement/MovementGenerators/MovementGenerator.h => src/server/game/Movement/MovementGenerator.h rename : src/server/game/Movement/MovementGenerators/MovementGeneratorImpl.h => src/server/game/Movement/MovementGeneratorImpl.h rename : src/server/game/Movement/Path.h => src/server/game/Movement/Waypoints/Path.h rename : src/server/game/Movement/WaypointManager.cpp => src/server/game/Movement/Waypoints/WaypointManager.cpp rename : src/server/game/Movement/WaypointManager.h => src/server/game/Movement/Waypoints/WaypointManager.h rename : src/server/game/OutdoorPvP/OutdoorPvPEP.cpp => src/server/game/OutdoorPvP/Zones/OutdoorPvPEP.cpp rename : src/server/game/OutdoorPvP/OutdoorPvPEP.h => src/server/game/OutdoorPvP/Zones/OutdoorPvPEP.h rename : src/server/game/OutdoorPvP/OutdoorPvPHP.cpp => src/server/game/OutdoorPvP/Zones/OutdoorPvPHP.cpp rename : src/server/game/OutdoorPvP/OutdoorPvPHP.h => src/server/game/OutdoorPvP/Zones/OutdoorPvPHP.h rename : src/server/game/OutdoorPvP/OutdoorPvPNA.cpp => src/server/game/OutdoorPvP/Zones/OutdoorPvPNA.cpp rename : src/server/game/OutdoorPvP/OutdoorPvPNA.h => src/server/game/OutdoorPvP/Zones/OutdoorPvPNA.h rename : src/server/game/OutdoorPvP/OutdoorPvPSI.cpp => src/server/game/OutdoorPvP/Zones/OutdoorPvPSI.cpp rename : src/server/game/OutdoorPvP/OutdoorPvPSI.h => src/server/game/OutdoorPvP/Zones/OutdoorPvPSI.h rename : src/server/game/OutdoorPvP/OutdoorPvPTF.cpp => src/server/game/OutdoorPvP/Zones/OutdoorPvPTF.cpp rename : src/server/game/OutdoorPvP/OutdoorPvPTF.h => src/server/game/OutdoorPvP/Zones/OutdoorPvPTF.h rename : src/server/game/OutdoorPvP/OutdoorPvPZM.cpp => src/server/game/OutdoorPvP/Zones/OutdoorPvPZM.cpp rename : src/server/game/OutdoorPvP/OutdoorPvPZM.h => src/server/game/OutdoorPvP/Zones/OutdoorPvPZM.h rename : src/server/game/PrecompiledHeaders/pchlinux.cpp => src/server/game/PrecompiledHeaders/NixCorePCH.cpp rename : src/server/game/PrecompiledHeaders/pchlinux.h => src/server/game/PrecompiledHeaders/NixCorePCH.h rename : src/server/game/ScriptMgr/ScriptedPch.cpp => src/server/game/PrecompiledHeaders/ScriptPCH.cpp rename : src/server/game/ScriptMgr/ScriptedPch.h => src/server/game/PrecompiledHeaders/ScriptPCH.h rename : src/server/game/PrecompiledHeaders/pchdef.cpp => src/server/game/PrecompiledHeaders/WinCorePCH.cpp rename : src/server/game/PrecompiledHeaders/pchdef.h => src/server/game/PrecompiledHeaders/WinCorePCH.h rename : src/server/game/ScriptMgr/ScriptLoader.cpp => src/server/game/Scripting/ScriptLoader.cpp rename : src/server/game/ScriptMgr/ScriptLoader.h => src/server/game/Scripting/ScriptLoader.h rename : src/server/game/ScriptMgr/ScriptMgr.cpp => src/server/game/Scripting/ScriptMgr.cpp rename : src/server/game/ScriptMgr/ScriptMgr.h => src/server/game/Scripting/ScriptMgr.h rename : src/server/game/ScriptMgr/ScriptSystem.cpp => src/server/game/Scripting/ScriptSystem.cpp rename : src/server/game/ScriptMgr/ScriptSystem.h => src/server/game/Scripting/ScriptSystem.h rename : src/server/game/Addons/AddonHandler.cpp => src/server/game/Server/Protocol/Handlers/AddonHandler.cpp rename : src/server/game/Addons/AddonHandler.h => src/server/game/Server/Protocol/Handlers/AddonHandler.h rename : src/server/game/BattleGrounds/ArenaTeamHandler.cpp => src/server/game/Server/Protocol/Handlers/ArenaTeamHandler.cpp rename : src/server/game/AuctionHouse/AuctionHouseHandler.cpp => src/server/game/Server/Protocol/Handlers/AuctionHouseHandler.cpp rename : src/server/game/BattleGrounds/BattleGroundHandler.cpp => src/server/game/Server/Protocol/Handlers/BattleGroundHandler.cpp rename : src/server/game/Calender/CalendarHandler.cpp => src/server/game/Server/Protocol/Handlers/CalendarHandler.cpp rename : src/server/game/Chat/ChannelHandler.cpp => src/server/game/Server/Protocol/Handlers/ChannelHandler.cpp rename : src/server/game/Entities/Player/CharacterHandler.cpp => src/server/game/Server/Protocol/Handlers/CharacterHandler.cpp rename : src/server/game/Chat/ChatHandler.cpp => src/server/game/Server/Protocol/Handlers/ChatHandler.cpp rename : src/server/game/Combat/CombatHandler.cpp => src/server/game/Server/Protocol/Handlers/CombatHandler.cpp rename : src/server/game/Entities/Player/DuelHandler.cpp => src/server/game/Server/Protocol/Handlers/DuelHandler.cpp rename : src/server/game/Groups/GroupHandler.cpp => src/server/game/Server/Protocol/Handlers/GroupHandler.cpp rename : src/server/game/Guilds/GuildHandler.cpp => src/server/game/Server/Protocol/Handlers/GuildHandler.cpp rename : src/server/game/Entities/Item/ItemHandler.cpp => src/server/game/Server/Protocol/Handlers/ItemHandler.cpp rename : src/server/game/LookingForGroup/LFGHandler.cpp => src/server/game/Server/Protocol/Handlers/LFGHandler.cpp rename : src/server/game/Loot/LootHandler.cpp => src/server/game/Server/Protocol/Handlers/LootHandler.cpp rename : src/server/game/Entities/Player/MiscHandler.cpp => src/server/game/Server/Protocol/Handlers/MiscHandler.cpp rename : src/server/game/Movement/MovementHandler.cpp => src/server/game/Server/Protocol/Handlers/MovementHandler.cpp rename : src/server/game/Entities/Creature/NPCHandler.cpp => src/server/game/Server/Protocol/Handlers/NPCHandler.cpp rename : src/server/game/Entities/Creature/NPCHandler.h => src/server/game/Server/Protocol/Handlers/NPCHandler.h rename : src/server/game/Entities/Pet/PetHandler.cpp => src/server/game/Server/Protocol/Handlers/PetHandler.cpp rename : src/server/game/Entities/Player/PetitionsHandler.cpp => src/server/game/Server/Protocol/Handlers/PetitionsHandler.cpp rename : src/server/game/Quests/QueryHandler.cpp => src/server/game/Server/Protocol/Handlers/QueryHandler.cpp rename : src/server/game/Quests/QuestHandler.cpp => src/server/game/Server/Protocol/Handlers/QuestHandler.cpp rename : src/server/game/Skills/SkillHandler.cpp => src/server/game/Server/Protocol/Handlers/SkillHandler.cpp rename : src/server/game/Spells/SpellHandler.cpp => src/server/game/Server/Protocol/Handlers/SpellHandler.cpp rename : src/server/game/Movement/TaxiHandler.cpp => src/server/game/Server/Protocol/Handlers/TaxiHandler.cpp rename : src/server/game/Entities/Player/TicketHandler.cpp => src/server/game/Server/Protocol/Handlers/TicketHandler.cpp rename : src/server/game/Entities/Player/TradeHandler.cpp => src/server/game/Server/Protocol/Handlers/TradeHandler.cpp rename : src/server/game/Entities/Player/VoiceChatHandler.cpp => src/server/game/Server/Protocol/Handlers/VoiceChatHandler.cpp rename : src/server/game/Opcodes/Opcodes.cpp => src/server/game/Server/Protocol/Opcodes.cpp rename : src/server/game/Opcodes/Opcodes.h => src/server/game/Server/Protocol/Opcodes.h rename : src/server/game/World/WorldLog.cpp => src/server/game/Server/Protocol/WorldLog.cpp rename : src/server/game/World/WorldLog.h => src/server/game/Server/Protocol/WorldLog.h rename : src/server/game/World/WorldSession.cpp => src/server/game/Server/WorldSession.cpp rename : src/server/game/World/WorldSession.h => src/server/game/Server/WorldSession.h rename : src/server/game/World/WorldSocket.cpp => src/server/game/Server/WorldSocket.cpp rename : src/server/game/World/WorldSocket.h => src/server/game/Server/WorldSocket.h rename : src/server/game/World/WorldSocketMgr.cpp => src/server/game/Server/WorldSocketMgr.cpp rename : src/server/game/World/WorldSocketMgr.h => src/server/game/Server/WorldSocketMgr.h rename : src/server/shared/Config/CMakeLists.txt => src/server/shared/Configuration/CMakeLists.txt rename : src/server/shared/Config/Config.cpp => src/server/shared/Configuration/Config.cpp rename : src/server/shared/Config/Config.h => src/server/shared/Configuration/Config.h rename : src/server/shared/Config/ConfigEnv.h => src/server/shared/Configuration/ConfigEnv.h rename : src/server/shared/Config/ConfigLibrary.vcproj => src/server/shared/Configuration/ConfigLibrary.vcproj rename : src/server/shared/Config/dotconfpp/dotconfpp.cpp => src/server/shared/Configuration/dotconfpp/dotconfpp.cpp rename : src/server/shared/Config/dotconfpp/dotconfpp.h => src/server/shared/Configuration/dotconfpp/dotconfpp.h rename : src/server/shared/Config/dotconfpp/mempool.cpp => src/server/shared/Configuration/dotconfpp/mempool.cpp rename : src/server/shared/Config/dotconfpp/mempool.h => src/server/shared/Configuration/dotconfpp/mempool.h rename : src/server/shared/Auth/SARC4.cpp => src/server/shared/Cryptography/ARC4.cpp rename : src/server/shared/Auth/SARC4.h => src/server/shared/Cryptography/ARC4.h rename : src/server/shared/Auth/AuthCrypt.cpp => src/server/shared/Cryptography/Authentication/AuthCrypt.cpp rename : src/server/shared/Auth/AuthCrypt.h => src/server/shared/Cryptography/Authentication/AuthCrypt.h rename : src/server/shared/Auth/BigNumber.cpp => src/server/shared/Cryptography/BigNumber.cpp rename : src/server/shared/Auth/BigNumber.h => src/server/shared/Cryptography/BigNumber.h rename : src/server/shared/Auth/CMakeLists.txt => src/server/shared/Cryptography/CMakeLists.txt rename : src/server/shared/Auth/Hmac.cpp => src/server/shared/Cryptography/HMACSHA1.cpp rename : src/server/shared/Auth/Hmac.h => src/server/shared/Cryptography/HMACSHA1.h rename : src/server/shared/Auth/md5.c => src/server/shared/Cryptography/MD5.c rename : src/server/shared/Auth/md5.h => src/server/shared/Cryptography/MD5.h rename : src/server/shared/Auth/Sha1.cpp => src/server/shared/Cryptography/SHA1.cpp rename : src/server/shared/Auth/Sha1.h => src/server/shared/Cryptography/SHA1.h rename : src/server/shared/Database/DBCFileLoader.cpp => src/server/shared/DataStores/DBCFileLoader.cpp rename : src/server/shared/Database/DBCFileLoader.h => src/server/shared/DataStores/DBCFileLoader.h rename : src/server/shared/Database/DBCStore.h => src/server/shared/DataStores/DBCStore.h rename : src/server/shared/Errors.h => src/server/shared/Debugging/Errors.h rename : src/server/shared/MemoryLeaks.cpp => src/server/shared/Debugging/MemoryLeaks.cpp rename : src/server/shared/MemoryLeaks.h => src/server/shared/Debugging/MemoryLeaks.h rename : src/server/shared/WheatyExceptionReport.cpp => src/server/shared/Debugging/WheatyExceptionReport.cpp rename : src/server/shared/WheatyExceptionReport.h => src/server/shared/Debugging/WheatyExceptionReport.h rename : src/server/shared/Log.cpp => src/server/shared/Logging/Log.cpp rename : src/server/shared/Log.h => src/server/shared/Logging/Log.h rename : src/server/shared/ByteBuffer.h => src/server/shared/Packets/ByteBuffer.h rename : src/server/shared/WorldPacket.h => src/server/shared/Packets/WorldPacket.h rename : src/server/shared/DelayExecutor.cpp => src/server/shared/Threading/DelayExecutor.cpp rename : src/server/shared/DelayExecutor.h => src/server/shared/Threading/DelayExecutor.h rename : src/server/shared/LockedQueue.h => src/server/shared/Threading/LockedQueue.h rename : src/server/shared/Threading.cpp => src/server/shared/Threading/Threading.cpp rename : src/server/shared/Threading.h => src/server/shared/Threading/Threading.h rename : src/server/shared/ProgressBar.cpp => src/server/shared/Utilities/ProgressBar.cpp rename : src/server/shared/ProgressBar.h => src/server/shared/Utilities/ProgressBar.h rename : src/server/shared/ServiceWin32.cpp => src/server/shared/Utilities/ServiceWin32.cpp rename : src/server/shared/ServiceWin32.h => src/server/shared/Utilities/ServiceWin32.h rename : src/server/shared/SignalHandler.h => src/server/shared/Utilities/SignalHandler.h rename : src/server/shared/Timer.h => src/server/shared/Utilities/Timer.h rename : src/server/shared/Util.cpp => src/server/shared/Utilities/Util.cpp rename : src/server/shared/Util.h => src/server/shared/Utilities/Util.h rename : src/server/worldserver/CliRunnable.cpp => src/server/worldserver/CommandLine/CliRunnable.cpp rename : src/server/worldserver/CliRunnable.h => src/server/worldserver/CommandLine/CliRunnable.h rename : src/server/worldserver/RASocket.cpp => src/server/worldserver/RemoteAccess/RASocket.cpp rename : src/server/worldserver/RASocket.h => src/server/worldserver/RemoteAccess/RASocket.h rename : src/server/worldserver/WorldRunnable.cpp => src/server/worldserver/WorldThread/WorldRunnable.cpp rename : src/server/worldserver/WorldRunnable.h => src/server/worldserver/WorldThread/WorldRunnable.h
This commit is contained in:
@@ -0,0 +1,536 @@
|
||||
/*
|
||||
* Copyright (C) 2005-2009 MaNGOS <http://getmangos.com/>
|
||||
*
|
||||
* Copyright (C) 2008-2010 Trinity <http://www.trinitycore.org/>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef _UTIL_H
|
||||
#define _UTIL_H
|
||||
|
||||
#include "Common.h"
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
typedef std::vector<std::string> Tokens;
|
||||
|
||||
Tokens StrSplit(const std::string &src, const std::string &sep);
|
||||
|
||||
void stripLineInvisibleChars(std::string &src);
|
||||
|
||||
std::string secsToTimeString(uint32 timeInSecs, bool shortText = false, bool hoursOnly = false);
|
||||
uint32 TimeStringToSecs(const std::string& timestring);
|
||||
std::string TimeToTimestampStr(time_t t);
|
||||
|
||||
inline uint32 secsToTimeBitFields(time_t secs)
|
||||
{
|
||||
tm* lt = localtime(&secs);
|
||||
return (lt->tm_year - 100) << 24 | lt->tm_mon << 20 | (lt->tm_mday - 1) << 14 | lt->tm_wday << 11 | lt->tm_hour << 6 | lt->tm_min;
|
||||
}
|
||||
|
||||
/* Return a random number in the range min..max; (max-min) must be smaller than 32768. */
|
||||
int32 irand(int32 min, int32 max);
|
||||
|
||||
/* Return a random number in the range min..max (inclusive). For reliable results, the difference
|
||||
* between max and min should be less than RAND32_MAX. */
|
||||
uint32 urand(uint32 min, uint32 max);
|
||||
|
||||
/* Return a random number in the range 0 .. RAND32_MAX. */
|
||||
int32 rand32();
|
||||
|
||||
/* Return a random double from 0.0 to 1.0 (exclusive). Floats support only 7 valid decimal digits.
|
||||
* A double supports up to 15 valid decimal digits and is used internally (RAND32_MAX has 10 digits).
|
||||
* With an FPU, there is usually no difference in performance between float and double. */
|
||||
double rand_norm(void);
|
||||
|
||||
/* Return a random double from 0.0 to 99.9999999999999. Floats support only 7 valid decimal digits.
|
||||
* A double supports up to 15 valid decimal digits and is used internaly (RAND32_MAX has 10 digits).
|
||||
* With an FPU, there is usually no difference in performance between float and double. */
|
||||
double rand_chance(void);
|
||||
|
||||
/* Return true if a random roll fits in the specified chance (range 0-100). */
|
||||
inline bool roll_chance_f(float chance)
|
||||
{
|
||||
return chance > rand_chance();
|
||||
}
|
||||
|
||||
/* Return true if a random roll fits in the specified chance (range 0-100). */
|
||||
inline bool roll_chance_i(int chance)
|
||||
{
|
||||
return chance > irand(0, 99);
|
||||
}
|
||||
|
||||
inline void ApplyModUInt32Var(uint32& var, int32 val, bool apply)
|
||||
{
|
||||
int32 cur = var;
|
||||
cur += (apply ? val : -val);
|
||||
if(cur < 0)
|
||||
cur = 0;
|
||||
var = cur;
|
||||
}
|
||||
|
||||
inline void ApplyModFloatVar(float& var, float val, bool apply)
|
||||
{
|
||||
var += (apply ? val : -val);
|
||||
if(var < 0)
|
||||
var = 0;
|
||||
}
|
||||
|
||||
inline void ApplyPercentModFloatVar(float& var, float val, bool apply)
|
||||
{
|
||||
if (val == -100.0f) // prevent set var to zero
|
||||
val = -99.99f;
|
||||
var *= (apply?(100.0f+val)/100.0f : 100.0f / (100.0f+val));
|
||||
}
|
||||
|
||||
bool Utf8toWStr(const std::string& utf8str, std::wstring& wstr);
|
||||
// in wsize==max size of buffer, out wsize==real string size
|
||||
bool Utf8toWStr(char const* utf8str, size_t csize, wchar_t* wstr, size_t& wsize);
|
||||
inline bool Utf8toWStr(const std::string& utf8str, wchar_t* wstr, size_t& wsize)
|
||||
{
|
||||
return Utf8toWStr(utf8str.c_str(), utf8str.size(), wstr, wsize);
|
||||
}
|
||||
|
||||
bool WStrToUtf8(std::wstring wstr, std::string& utf8str);
|
||||
// size==real string size
|
||||
bool WStrToUtf8(wchar_t* wstr, size_t size, std::string& utf8str);
|
||||
|
||||
size_t utf8length(std::string& utf8str); // set string to "" if invalid utf8 sequence
|
||||
void utf8truncate(std::string& utf8str,size_t len);
|
||||
|
||||
inline bool isBasicLatinCharacter(wchar_t wchar)
|
||||
{
|
||||
if(wchar >= L'a' && wchar <= L'z') // LATIN SMALL LETTER A - LATIN SMALL LETTER Z
|
||||
return true;
|
||||
if(wchar >= L'A' && wchar <= L'Z') // LATIN CAPITAL LETTER A - LATIN CAPITAL LETTER Z
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool isExtendedLatinCharacter(wchar_t wchar)
|
||||
{
|
||||
if(isBasicLatinCharacter(wchar))
|
||||
return true;
|
||||
if(wchar >= 0x00C0 && wchar <= 0x00D6) // LATIN CAPITAL LETTER A WITH GRAVE - LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
return true;
|
||||
if(wchar >= 0x00D8 && wchar <= 0x00DF) // LATIN CAPITAL LETTER O WITH STROKE - LATIN CAPITAL LETTER THORN
|
||||
return true;
|
||||
if(wchar == 0x00DF) // LATIN SMALL LETTER SHARP S
|
||||
return true;
|
||||
if(wchar >= 0x00E0 && wchar <= 0x00F6) // LATIN SMALL LETTER A WITH GRAVE - LATIN SMALL LETTER O WITH DIAERESIS
|
||||
return true;
|
||||
if(wchar >= 0x00F8 && wchar <= 0x00FE) // LATIN SMALL LETTER O WITH STROKE - LATIN SMALL LETTER THORN
|
||||
return true;
|
||||
if(wchar >= 0x0100 && wchar <= 0x012F) // LATIN CAPITAL LETTER A WITH MACRON - LATIN SMALL LETTER I WITH OGONEK
|
||||
return true;
|
||||
if(wchar == 0x1E9E) // LATIN CAPITAL LETTER SHARP S
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool isCyrillicCharacter(wchar_t wchar)
|
||||
{
|
||||
if(wchar >= 0x0410 && wchar <= 0x044F) // CYRILLIC CAPITAL LETTER A - CYRILLIC SMALL LETTER YA
|
||||
return true;
|
||||
if(wchar == 0x0401 || wchar == 0x0451) // CYRILLIC CAPITAL LETTER IO, CYRILLIC SMALL LETTER IO
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool isEastAsianCharacter(wchar_t wchar)
|
||||
{
|
||||
if(wchar >= 0x1100 && wchar <= 0x11F9) // Hangul Jamo
|
||||
return true;
|
||||
if(wchar >= 0x3041 && wchar <= 0x30FF) // Hiragana + Katakana
|
||||
return true;
|
||||
if(wchar >= 0x3131 && wchar <= 0x318E) // Hangul Compatibility Jamo
|
||||
return true;
|
||||
if(wchar >= 0x31F0 && wchar <= 0x31FF) // Katakana Phonetic Ext.
|
||||
return true;
|
||||
if(wchar >= 0x3400 && wchar <= 0x4DB5) // CJK Ideographs Ext. A
|
||||
return true;
|
||||
if(wchar >= 0x4E00 && wchar <= 0x9FC3) // Unified CJK Ideographs
|
||||
return true;
|
||||
if(wchar >= 0xAC00 && wchar <= 0xD7A3) // Hangul Syllables
|
||||
return true;
|
||||
if(wchar >= 0xFF01 && wchar <= 0xFFEE) // Halfwidth forms
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool isNumeric(wchar_t wchar)
|
||||
{
|
||||
return (wchar >= L'0' && wchar <=L'9');
|
||||
}
|
||||
|
||||
inline bool isNumeric(char c)
|
||||
{
|
||||
return (c >= '0' && c <='9');
|
||||
}
|
||||
|
||||
inline bool isNumericOrSpace(wchar_t wchar)
|
||||
{
|
||||
return isNumeric(wchar) || wchar == L' ';
|
||||
}
|
||||
|
||||
inline bool isBasicLatinString(std::wstring wstr, bool numericOrSpace)
|
||||
{
|
||||
for (size_t i = 0; i < wstr.size(); ++i)
|
||||
if(!isBasicLatinCharacter(wstr[i]) && (!numericOrSpace || !isNumericOrSpace(wstr[i])))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
inline bool isExtendedLatinString(std::wstring wstr, bool numericOrSpace)
|
||||
{
|
||||
for (size_t i = 0; i < wstr.size(); ++i)
|
||||
if(!isExtendedLatinCharacter(wstr[i]) && (!numericOrSpace || !isNumericOrSpace(wstr[i])))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
inline bool isCyrillicString(std::wstring wstr, bool numericOrSpace)
|
||||
{
|
||||
for (size_t i = 0; i < wstr.size(); ++i)
|
||||
if(!isCyrillicCharacter(wstr[i]) && (!numericOrSpace || !isNumericOrSpace(wstr[i])))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
inline bool isEastAsianString(std::wstring wstr, bool numericOrSpace)
|
||||
{
|
||||
for (size_t i = 0; i < wstr.size(); ++i)
|
||||
if(!isEastAsianCharacter(wstr[i]) && (!numericOrSpace || !isNumericOrSpace(wstr[i])))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
inline wchar_t wcharToUpper(wchar_t wchar)
|
||||
{
|
||||
if(wchar >= L'a' && wchar <= L'z') // LATIN SMALL LETTER A - LATIN SMALL LETTER Z
|
||||
return wchar_t(uint16(wchar)-0x0020);
|
||||
if(wchar == 0x00DF) // LATIN SMALL LETTER SHARP S
|
||||
return wchar_t(0x1E9E);
|
||||
if(wchar >= 0x00E0 && wchar <= 0x00F6) // LATIN SMALL LETTER A WITH GRAVE - LATIN SMALL LETTER O WITH DIAERESIS
|
||||
return wchar_t(uint16(wchar)-0x0020);
|
||||
if(wchar >= 0x00F8 && wchar <= 0x00FE) // LATIN SMALL LETTER O WITH STROKE - LATIN SMALL LETTER THORN
|
||||
return wchar_t(uint16(wchar)-0x0020);
|
||||
if(wchar >= 0x0101 && wchar <= 0x012F) // LATIN SMALL LETTER A WITH MACRON - LATIN SMALL LETTER I WITH OGONEK (only %2=1)
|
||||
{
|
||||
if(wchar % 2 == 1)
|
||||
return wchar_t(uint16(wchar)-0x0001);
|
||||
}
|
||||
if(wchar >= 0x0430 && wchar <= 0x044F) // CYRILLIC SMALL LETTER A - CYRILLIC SMALL LETTER YA
|
||||
return wchar_t(uint16(wchar)-0x0020);
|
||||
if(wchar == 0x0451) // CYRILLIC SMALL LETTER IO
|
||||
return wchar_t(0x0401);
|
||||
|
||||
return wchar;
|
||||
}
|
||||
|
||||
inline wchar_t wcharToUpperOnlyLatin(wchar_t wchar)
|
||||
{
|
||||
return isBasicLatinCharacter(wchar) ? wcharToUpper(wchar) : wchar;
|
||||
}
|
||||
|
||||
inline wchar_t wcharToLower(wchar_t wchar)
|
||||
{
|
||||
if(wchar >= L'A' && wchar <= L'Z') // LATIN CAPITAL LETTER A - LATIN CAPITAL LETTER Z
|
||||
return wchar_t(uint16(wchar)+0x0020);
|
||||
if(wchar >= 0x00C0 && wchar <= 0x00D6) // LATIN CAPITAL LETTER A WITH GRAVE - LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
return wchar_t(uint16(wchar)+0x0020);
|
||||
if(wchar >= 0x00D8 && wchar <= 0x00DE) // LATIN CAPITAL LETTER O WITH STROKE - LATIN CAPITAL LETTER THORN
|
||||
return wchar_t(uint16(wchar)+0x0020);
|
||||
if(wchar >= 0x0100 && wchar <= 0x012E) // LATIN CAPITAL LETTER A WITH MACRON - LATIN CAPITAL LETTER I WITH OGONEK (only %2=0)
|
||||
{
|
||||
if(wchar % 2 == 0)
|
||||
return wchar_t(uint16(wchar)+0x0001);
|
||||
}
|
||||
if(wchar == 0x1E9E) // LATIN CAPITAL LETTER SHARP S
|
||||
return wchar_t(0x00DF);
|
||||
if(wchar == 0x0401) // CYRILLIC CAPITAL LETTER IO
|
||||
return wchar_t(0x0451);
|
||||
if(wchar >= 0x0410 && wchar <= 0x042F) // CYRILLIC CAPITAL LETTER A - CYRILLIC CAPITAL LETTER YA
|
||||
return wchar_t(uint16(wchar)+0x0020);
|
||||
|
||||
return wchar;
|
||||
}
|
||||
|
||||
inline void wstrToUpper(std::wstring& str)
|
||||
{
|
||||
std::transform( str.begin(), str.end(), str.begin(), wcharToUpper );
|
||||
}
|
||||
|
||||
inline void wstrToLower(std::wstring& str)
|
||||
{
|
||||
std::transform( str.begin(), str.end(), str.begin(), wcharToLower );
|
||||
}
|
||||
|
||||
std::wstring GetMainPartOfName(std::wstring wname, uint32 declension);
|
||||
|
||||
bool utf8ToConsole(const std::string& utf8str, std::string& conStr);
|
||||
bool consoleToUtf8(const std::string& conStr,std::string& utf8str);
|
||||
bool Utf8FitTo(const std::string& str, std::wstring search);
|
||||
void utf8printf(FILE *out, const char *str, ...);
|
||||
void vutf8printf(FILE *out, const char *str, va_list* ap);
|
||||
|
||||
bool IsIPAddress(char const* ipaddress);
|
||||
uint32 CreatePIDFile(const std::string& filename);
|
||||
|
||||
void hexEncodeByteArray(uint8* bytes, uint32 arrayLen, std::string& result);
|
||||
#endif
|
||||
|
||||
//handler for operations on large flags
|
||||
#ifndef _FLAG96
|
||||
#define _FLAG96
|
||||
|
||||
#ifndef PAIR64_HIPART
|
||||
#define PAIR64_HIPART(x) (uint32)((uint64(x) >> 32) & UI64LIT(0x00000000FFFFFFFF))
|
||||
#define PAIR64_LOPART(x) (uint32)(uint64(x) & UI64LIT(0x00000000FFFFFFFF))
|
||||
#endif
|
||||
|
||||
class flag96
|
||||
{
|
||||
private:
|
||||
uint32 part[3];
|
||||
public:
|
||||
flag96(uint32 p1=0,uint32 p2=0,uint32 p3=0)
|
||||
{
|
||||
part[0]=p1;
|
||||
part[1]=p2;
|
||||
part[2]=p3;
|
||||
}
|
||||
|
||||
flag96(uint64 p1, uint32 p2)
|
||||
{
|
||||
part[0]=PAIR64_LOPART(p1);
|
||||
part[1]=PAIR64_HIPART(p1);
|
||||
part[2]=p2;
|
||||
}
|
||||
|
||||
inline bool IsEqual(uint32 p1=0, uint32 p2=0, uint32 p3=0) const
|
||||
{
|
||||
return (
|
||||
part[0]==p1 &&
|
||||
part[1]==p2 &&
|
||||
part[2]==p3);
|
||||
};
|
||||
|
||||
inline bool HasFlag(uint32 p1=0, uint32 p2=0, uint32 p3=0) const
|
||||
{
|
||||
return (
|
||||
part[0]&p1 ||
|
||||
part[1]&p2 ||
|
||||
part[2]&p3);
|
||||
};
|
||||
|
||||
inline void Set(uint32 p1=0, uint32 p2=0, uint32 p3=0)
|
||||
{
|
||||
part[0]=p1;
|
||||
part[1]=p2;
|
||||
part[2]=p3;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline bool operator < (type & right)
|
||||
{
|
||||
for (uint8 i=3; i > 0; --i)
|
||||
{
|
||||
if (part[i-1]<right.part[i-1])
|
||||
return 1;
|
||||
else if (part[i-1]>right.part[i-1])
|
||||
return 0;
|
||||
}
|
||||
return 0;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline bool operator < (type & right) const
|
||||
{
|
||||
for (uint8 i = 3; i > 0; --i)
|
||||
{
|
||||
if (part[i-1]<right.part[i-1])
|
||||
return 1;
|
||||
else if (part[i-1]>right.part[i-1])
|
||||
return 0;
|
||||
}
|
||||
return 0;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline bool operator != (type & right)
|
||||
{
|
||||
if (part[0]!=right.part[0]
|
||||
|| part[1]!=right.part[1]
|
||||
|| part[2]!=right.part[2])
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
template<class type>
|
||||
inline bool operator != (type & right) const
|
||||
{
|
||||
if (part[0]!=right.part[0]
|
||||
|| part[1]!=right.part[1]
|
||||
|| part[2]!=right.part[2])
|
||||
return true;
|
||||
return false;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline bool operator == (type & right)
|
||||
{
|
||||
if (part[0]!=right.part[0]
|
||||
|| part[1]!=right.part[1]
|
||||
|| part[2]!=right.part[2])
|
||||
return false;
|
||||
return true;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline bool operator == (type & right) const
|
||||
{
|
||||
if (part[0]!=right.part[0]
|
||||
|| part[1]!=right.part[1]
|
||||
|| part[2]!=right.part[2])
|
||||
return false;
|
||||
return true;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline void operator = (type & right)
|
||||
{
|
||||
part[0]=right.part[0];
|
||||
part[1]=right.part[1];
|
||||
part[2]=right.part[2];
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline flag96 operator & (type & right)
|
||||
{
|
||||
flag96 ret(part[0] & right.part[0],part[1] & right.part[1],part[2] & right.part[2]);
|
||||
return
|
||||
ret;
|
||||
};
|
||||
template<class type>
|
||||
inline flag96 operator & (type & right) const
|
||||
{
|
||||
flag96 ret(part[0] & right.part[0],part[1] & right.part[1],part[2] & right.part[2]);
|
||||
return
|
||||
ret;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline void operator &= (type & right)
|
||||
{
|
||||
*this=*this & right;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline flag96 operator | (type & right)
|
||||
{
|
||||
flag96 ret(part[0] | right.part[0],part[1] | right.part[1],part[2] | right.part[2]);
|
||||
return
|
||||
ret;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline flag96 operator | (type & right) const
|
||||
{
|
||||
flag96 ret(part[0] | right.part[0],part[1] | right.part[1],part[2] | right.part[2]);
|
||||
return
|
||||
ret;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline void operator |= (type & right)
|
||||
{
|
||||
*this=*this | right;
|
||||
};
|
||||
|
||||
inline void operator ~ ()
|
||||
{
|
||||
part[2]=~part[2];
|
||||
part[1]=~part[1];
|
||||
part[0]=~part[0];
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline flag96 operator ^ (type & right)
|
||||
{
|
||||
flag96 ret(part[0] ^ right.part[0],part[1] ^ right.part[1],part[2] ^ right.part[2]);
|
||||
return
|
||||
ret;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline flag96 operator ^ (type & right) const
|
||||
{
|
||||
flag96 ret(part[0] ^ right.part[0],part[1] ^ right.part[1],part[2] ^ right.part[2]);
|
||||
return
|
||||
ret;
|
||||
};
|
||||
|
||||
template<class type>
|
||||
inline void operator ^= (type & right)
|
||||
{
|
||||
*this=*this^right;
|
||||
};
|
||||
|
||||
inline operator bool() const
|
||||
{
|
||||
return(
|
||||
part[0] != 0 ||
|
||||
part[1] != 0 ||
|
||||
part[2] != 0);
|
||||
};
|
||||
|
||||
inline operator bool()
|
||||
{
|
||||
return(
|
||||
part[0] != 0 ||
|
||||
part[1] != 0 ||
|
||||
part[2] != 0);
|
||||
};
|
||||
|
||||
inline bool operator ! () const
|
||||
{
|
||||
return(
|
||||
part[0] == 0 &&
|
||||
part[1] == 0 &&
|
||||
part[2] == 0);
|
||||
};
|
||||
|
||||
inline bool operator ! ()
|
||||
{
|
||||
return(
|
||||
part[0] == 0 &&
|
||||
part[1] == 0 &&
|
||||
part[2] == 0);
|
||||
};
|
||||
|
||||
inline uint32 & operator[](uint8 el)
|
||||
{
|
||||
return (part[el]);
|
||||
};
|
||||
|
||||
inline const uint32 & operator[](uint8 el) const
|
||||
{
|
||||
return (part[el]);
|
||||
};
|
||||
};
|
||||
#endif
|
||||
Reference in New Issue
Block a user