Moving stuff around, part 2

develop
Petr Mrázek 2010-05-26 06:48:23 +02:00
parent 9bd6bb5b2d
commit b710ed687a
207 changed files with 486 additions and 927 deletions

@ -16,25 +16,17 @@ IF(NOT DEFINED CMAKE_BUILD_TYPE)
SET(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.")
ENDIF(NOT DEFINED CMAKE_BUILD_TYPE)
SET(SO_MAJOR_VERSION "0")
SET(SO_MINOR_VERSION "0")
SET(SO_BUILD_VERSION "1")
SET(SO_VERSION "${SO_MAJOR_VERSION}.${SO_MINOR_VERSION}.${SO_BUILD_VERSION}")
SET( LIBRARY_OUTPUT_PATH ${dfhack_SOURCE_DIR}/output CACHE PATH "Output directory for the dfhack library" )
SET( EXECUTABLE_OUTPUT_PATH ${dfhack_SOURCE_DIR}/output CACHE PATH "Output directory for the dfhack tools" )
SET( CMAKE_SWIG_OUTDIR ${dfhack_SOURCE_DIR}/output CACHE PATH "Global output directory for swig generated language wrappers" )
include_directories (${CMAKE_SOURCE_DIR}/dfhack/include/)
include_directories (${CMAKE_SOURCE_DIR}/dfhack/shm/)
include_directories (${CMAKE_SOURCE_DIR}/dfhack/depends/md5/)
include_directories (${CMAKE_SOURCE_DIR}/dfhack/depends/tinyxml/)
include_directories (${CMAKE_SOURCE_DIR}/dfhack/depends/argstream/)
include_directories (${CMAKE_SOURCE_DIR}/library/include/)
include_directories (${CMAKE_SOURCE_DIR}/library/shm/)
include_directories (${CMAKE_SOURCE_DIR}/library/depends/md5/)
include_directories (${CMAKE_SOURCE_DIR}/library/depends/tinyxml/)
include_directories (${CMAKE_SOURCE_DIR}/library/depends/argstream/)
add_subdirectory (dfhack)
add_subdirectory (library)
#add_subdirectory (dfhack/python)
add_subdirectory (dfhack/shm)
add_subdirectory (tools/examples)
add_subdirectory (tools/playground)
add_subdirectory (tools/supported)

@ -55,41 +55,40 @@ Contributing to DFHack
Several things should be kept in mind when contributing to DFHack.
Keep the same coding style. DFhack uses ANSI formatting and four spaces as
indentation. Line endings are UNIX. Code not following this won't make
me happy, because I'll have to fix it.
**** Coding style ****
DFhack uses ANSI formatting and four spaces as indentation. Line endings are
UNIX. The files use UTF-8 encoding. Code not following this won't make me happy,
because I'll have to fix it. There's a good chance I'll make *you* fix it ;)
**** How to get new code into DFHack ****
* How to get new code into DFHack
You can send patches or make a clone of the github repo and ask me on the
IRC channel to pull your code in. I'll review it and see if there are any
problems. I'll fix them if they are minor.
Fixes are higher in priority. If you want to work on something, but don't
know what, check out http://github.com/peterix/dfhack/issues -- this is also
the place for new ideas.
* Layout for tools
dfhack/ The folder for core dfhack. The libraries are in there.
tools/ This is used for stable and supported tools. These get distributed
in binary releases and should be tested.
examples/ This folder has some examples that show how to use certain parts
of dfhack.
playground/ And finally, here should be placed any quick hacks and testing
tools.
Don't put untested or experimental things in tools/.
* Layout for core dfhack
dfhack/ -- the main library lives here
dfhack/include -- header files for the main library belong here
dfhack/modules -- source of the client modules goes here
dfhack/include/modules -- headers for client modules
dfhack/shm -- the server part along with its modules
dfhack/python -- folder for the pytthon bindings
dfhack/depends -- dependencies. an XML parser, an MD5 implementation
and terminal arguments parser.
* Modules - what are they?
a good place to dump new ideas and/or bugs that need fixing.
**** Layout for tools ****
Tools live in the tools/ folder. There, they are split into three categories:
distributed: these tools get distributed with binary releases and are installed
by doing 'make install' on linux. They are supposed to be stable
and supported. Experimental, useless, buggy or untested stuff
doesn't belong here.
examples : examples are tools that aren't very useful, but show how DF
and DFHack work. They should use only DFHack API functions.
No actual hacking or 'magic offsets' are allowed.
playground : This is a catch-all folder for tools that aren't ready to be
examples or be distributed in binary releases. All new tools
should start here. They can contain actual hacking, magic values
and other nasty business.
**** Modules - what are they? ****
DFHack uses modules to partition sets of features into manageable chunks.
A module can have both client and server side.
@ -110,30 +109,33 @@ server, it allows accelerating the reading of map blocks.
Communication between modules happens by using shared memory. This is
pretty fast, but needs quite a bit of care to not break.
* Dependencies
**** Dependencies ****
Internal : either part of the codebase or statically linked.
External : linked as dynamic loaded libraries (.dll, .so, etc.)
If you want to add dependencies, think twice about it. All dependencies
for core dfhack should be either public domain or require attribution
at most.
Dependencies for tools can be either that, or any Free Software licenses.
If you want to add dependencies, think twice about it. All internal dependencies
for core dfhack should be either public domain or require attribution at most.
Internal dependencies for tools can be either that, or any Free Software
licenses.
* Current internal dependencies
** Current internal dependencies **
tinyxml : used by core dfhack to read offset definitions from Memory.xml
md5 : an implementation of the MD5 hash algorithm. Used for identifying
DF binaries on Linux.
argstream: Allows reading terminal application arguments. GPL!
* Current external dependencies
** Current external dependencies **
wide-character ncurses : used for the veinlook tool on Linux.
python 2.6 : required for building and using the python bindings.
* Build-time dependencies
** Build-time dependencies **
cmake: you need cmake to generate the build system and some configuration
headers
Tools
-----
All the DFHack tools are terminal programs. This might seem strange to Windows
@ -162,6 +164,7 @@ be useful and are cross-platform just like the library itself.
- Your tool here: Write one ;)
Memory offset definitions
-------------------------

@ -1,73 +0,0 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
damages arising from the use of this software.
Permission is granted to anyone to use this software for any
purpose, including commercial applications, and to alter it and
redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must
not claim that you wrote the original software. If you use this
software in a product, an acknowledgment in the product documentation
would be appreciated but is not required.
2. Altered source versions must be plainly marked as such, and
must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
*/
#ifndef DFHACK_C_API
#define DFHACK_C_API
#include "Export.h"
#include "integers.h"
typedef void DFHackObject;
#ifdef __cplusplus
extern "C" {
#endif
DFHACK_EXPORT DFHackObject* API_Alloc(const char* path_to_xml);
DFHACK_EXPORT void API_Free(DFHackObject* api);
DFHACK_EXPORT int API_Attach(DFHackObject* api);
DFHACK_EXPORT int API_Detach(DFHackObject* api);
DFHACK_EXPORT int API_isAttached(DFHackObject* api);
DFHACK_EXPORT int API_Suspend(DFHackObject* api);
DFHACK_EXPORT int API_Resume(DFHackObject* api);
DFHACK_EXPORT int API_isSuspended(DFHackObject* api);
DFHACK_EXPORT int API_ForceResume(DFHackObject* api);
DFHACK_EXPORT int API_AsyncSuspend(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getMemoryInfo(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getProcess(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getWindow(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getCreatures(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getMaps(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getGui(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getPosition(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getMaterials(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getTranslation(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getVegetation(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getBuildings(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getConstructions(DFHackObject* api);
DFHACK_EXPORT DFHackObject* API_getItems(DFHackObject* api);
//these are DANGEROUS...can crash/segfault DF, turn the seas to blood, call up the Antichrist, etc
DFHACK_EXPORT void API_ReadRaw(DFHackObject* api, const uint32_t offset, const uint32_t size, uint8_t* target);
DFHACK_EXPORT void API_WriteRaw(DFHackObject* api, const uint32_t offset, const uint32_t size, uint8_t* source);
#ifdef __cplusplus
}
#endif
#endif

@ -1,219 +0,0 @@
%module pydfhack
%include "std_string.i"
%include "std_vector.i"
%include "std_map.i"
%include "stdint.i"
%include "typemaps.i"
/* This goes to the header of the wrapper code */
%{
#define LINUX_BUILD
#define SWIG_WRAPPER
#include "DFTypes.h"
#include "DFHackAPI.h"
using namespace std;
using namespace DFHack;
%}
/* make swig not react to the macro */
%define DFHACK_EXPORT
/* Parse the header file to generate wrappers */
%include "DFTypes.h"
/* templates have to be instantiated for swig */
%template(MatglossVector) std::vector<DFHack::t_matgloss>;
%template(PlantMatglossVector) std::vector<DFHack::t_matglossPlant>;
%template(VeinVector) std::vector <DFHack::t_vein>;
%template(IceVeinVector) std::vector <DFHack::t_frozenliquidvein>;
/*
This causes swig to generate BS uncompilable code
%template(GeologyAssign) std::vector < std::vector <uint16_t> >;
*/
/*
SWIG typemaps recipe
%apply double *OUTPUT { double *result }; // 'double *result' is to be treated as OUTPUT
%clear double *result; // Remove all typemaps for double *result
INPUT
int *INPUT
short *INPUT
long *INPUT
unsigned int *INPUT
unsigned short *INPUT
unsigned long *INPUT
double *INPUT
float *INPUT
OUTPUT
int *OUTPUT
short *OUTPUT
long *OUTPUT
unsigned int *OUTPUT
unsigned short *OUTPUT
unsigned long *OUTPUT
double *OUTPUT
float *OUTPUT
INOUT
int *INOUT
short *INOUT
long *INOUT
unsigned int *INOUT
unsigned short *INOUT
unsigned long *INOUT
double *INOUT
float *INOUT
*/
namespace DFHack
{
class memory_info;
class Process;
class API
{
class Private;
Private * const d;
public:
API(const std::string path_to_xml);
~API();
bool Attach();
bool Detach();
bool isAttached();
bool ReadPauseState();
bool ReadViewScreen(t_viewscreen &);
uint32_t ReadMenuState();
bool Suspend();
bool AsyncSuspend();
bool Resume();
bool ForceResume();
bool isSuspended();
bool ReadStoneMatgloss(std::vector<t_matgloss> & OUTPUT);
bool ReadWoodMatgloss (std::vector<t_matgloss> & OUTPUT);
bool ReadMetalMatgloss(std::vector<t_matgloss> & OUTPUT);
bool ReadPlantMatgloss(std::vector<t_matgloss> & OUTPUT);
/*
* SWIG reports that it can't wrap the second method here
*/
bool ReadPlantMatgloss (std::vector<t_matglossPlant> & OUTPUT);
bool ReadCreatureMatgloss(std::vector<t_matgloss> & OUTPUT);
bool ReadGeology( std::vector < std::vector <uint16_t> >& OUTPUT );
bool InitMap();
bool DestroyMap();
%apply uint32_t& OUTPUT { uint32_t& x };
%apply uint32_t& OUTPUT { uint32_t& y };
%apply uint32_t& OUTPUT { uint32_t& z };
void getSize(uint32_t& x, uint32_t& y, uint32_t& z);
bool isValidBlock(uint32_t blockx, uint32_t blocky, uint32_t blockz);
uint32_t getBlockPtr (uint32_t blockx, uint32_t blocky, uint32_t blockz);
bool ReadBlock40d(uint32_t blockx, uint32_t blocky, uint32_t blockz, mapblock40d * OUTPUT);
bool ReadTileTypes(uint32_t blockx, uint32_t blocky, uint32_t blockz, tiletypes40d *OUTPUT);
bool WriteTileTypes(uint32_t blockx, uint32_t blocky, uint32_t blockz, tiletypes40d *INPUT);
bool ReadDesignations(uint32_t blockx, uint32_t blocky, uint32_t blockz, designations40d *OUTPUT);
bool WriteDesignations (uint32_t blockx, uint32_t blocky, uint32_t blockz, designations40d *INPUT);
bool ReadOccupancy(uint32_t blockx, uint32_t blocky, uint32_t blockz, occupancies40d *OUTPUT);
bool WriteOccupancy(uint32_t blockx, uint32_t blocky, uint32_t blockz, occupancies40d *INPUT);
bool ReadDirtyBit(uint32_t blockx, uint32_t blocky, uint32_t blockz, bool &OUTPUT);
bool WriteDirtyBit(uint32_t blockx, uint32_t blocky, uint32_t blockz, bool dirtybit);
bool ReadRegionOffsets(uint32_t blockx, uint32_t blocky, uint32_t blockz, biome_indices40d *OUTPUT);
bool ReadVeins(uint32_t blockx, uint32_t blocky, uint32_t blockz, std::vector <t_vein> & veins, std::vector <t_frozenliquidvein>& ices);
%apply uint32_t& OUTPUT { uint32_t & numObjs };
bool InitReadConstructions( uint32_t & numObjs );
bool ReadConstruction(const int32_t index, t_construction & OUTPUT);
void FinishReadConstructions();
bool InitReadBuildings ( uint32_t & numObjs );
bool ReadBuilding(const int32_t index, t_building & OUTPUT);
void FinishReadBuildings();
bool InitReadVegetation( uint32_t & numObjs );
bool ReadVegetation(const int32_t index, t_tree_desc & OUTPUT);
void FinishReadVegetation();
bool InitReadCreatures( uint32_t & numObjs );
int32_t ReadCreatureInBox(int32_t index, t_creature & OUTPUT,
const uint16_t x1, const uint16_t y1,const uint16_t z1,
const uint16_t x2, const uint16_t y2,const uint16_t z2);
bool ReadCreature(const int32_t index, t_creature & OUTPUT);
void FinishReadCreatures();
/*
A conundrum really.
*/
void ReadRaw (const uint32_t offset, const uint32_t size, uint8_t *target);
void WriteRaw (const uint32_t offset, const uint32_t size, uint8_t *source);
bool InitViewAndCursor();
bool InitReadNotes( uint32_t & numnotes );
bool ReadNote(const int32_t index, t_note & OUTPUT);
void FinishReadNotes();
bool InitReadSettlements( uint32_t & numObjs );
bool ReadSettlement(const int32_t index, t_settlement & OUTPUT);
bool ReadCurrentSettlement(t_settlement & settlement);
void FinishReadSettlements();
bool InitReadHotkeys( );
bool ReadHotkeys(t_hotkey hotkeys[]);
%apply int32_t& OUTPUT { int32_t& x };
%apply int32_t& OUTPUT { int32_t& y };
%apply int32_t& OUTPUT { int32_t& z };
bool getViewCoords (int32_t &x, int32_t &y, int32_t &z);
bool setViewCoords (const int32_t x, const int32_t y, const int32_t z);
bool getCursorCoords (int32_t &x, int32_t &y, int32_t &z);
bool setCursorCoords (const int32_t x, const int32_t y, const int32_t z);
bool getCurrentCursorCreature(uint32_t &OUTPUT);
bool InitViewSize();
%apply int32_t& OUTPUT { int32_t& width };
%apply int32_t& OUTPUT { int32_t& height };
bool getWindowSize(int32_t & width, int32_t & height);
bool getItemIndexesInBox(std::vector<uint32_t> &indexes,
const uint16_t x1, const uint16_t y1, const uint16_t z1,
const uint16_t x2, const uint16_t y2, const uint16_t z2);
bool InitReadNameTables (std::vector< std::vector<std::string> > & translations , std::vector< std::vector<std::string> > & foreign_languages);
void FinishReadNameTables();
std::string TranslateName(const t_name & name,const std::vector< std::vector<std::string> > & translations ,const std::vector< std::vector<std::string> > & foreign_languages, bool inEnglish=true);
void WriteLabors(const uint32_t index, uint8_t labors[NUM_CREATURE_LABORS]);
bool InitReadItems(uint32_t & numitems);
bool ReadItem(const uint32_t index, t_item & OUTPUT);
void FinishReadItems();
memory_info *getMemoryInfo();
Process * getProcess();
DFWindow * getWindow();
bool ReadItemTypes(std::vector< std::vector< t_itemType > > & itemTypes);
};
};
%enddef DFHACK_EXPORT

@ -1,11 +1,11 @@
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include <shms.h>
#include <mod-core.h>
#include <mod-maps.h>
#include <mod-creature40d.h>
#include "private/APIPrivate.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "modules/Materials.h"
#include "modules/Creatures.h"

@ -1,21 +1,19 @@
# don't use this file directly. use the one in the root folder of the project
SET(PROJECT_HDRS
include/DFCommonInternal.h
include/DFError.h
include/DFHackAPI.h
include/DFMemInfo.h
include/DFMemInfoManager.h
include/DFProcessEnumerator.h
include/DFProcess.h
include/DFTileTypes.h
include/DFTypes.h
include/DFVector.h
include/DFWindow.h
#include/DFHackAPI_C.h
include/DFTypes_C.h
include/DFContext_C.h
include/integers.h
include/dfhack/DFCommonInternal.h
include/dfhack/DFError.h
include/dfhack/DFMemInfo.h
include/dfhack/DFMemInfoManager.h
include/dfhack/DFProcessEnumerator.h
include/dfhack/DFProcess.h
include/dfhack/DFTileTypes.h
include/dfhack/DFTypes.h
include/dfhack/DFVector.h
include/dfhack/DFWindow.h
include/dfhack-c/DFTypes_C.h
include/dfhack-c/DFContext_C.h
include/dfhack/DFIntegers.h
shm/shms.h
)
@ -27,7 +25,6 @@ DFContext.cpp
APIPrivate.cpp
DFTileTypes.cpp
DFVector.cpp
#DFHackAPI_C.cpp
DFContext_C.cpp
DFTypes_C.cpp
@ -109,7 +106,7 @@ ELSE( CMAKE_SIZEOF_VOID_P MATCHES 4 )
SET( HAVE_64_BIT 1 )
ENDIF( CMAKE_SIZEOF_VOID_P MATCHES 4 )
CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/dfhack/config.h.cmake ${CMAKE_SOURCE_DIR}/dfhack/include/config.h )
CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/library/config.h.cmake ${CMAKE_SOURCE_DIR}/library/include/config.h )
ADD_DEFINITIONS(-DBUILD_DFHACK_LIB)

@ -22,13 +22,13 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "DFProcess.h"
#include "DFProcessEnumerator.h"
#include "DFContext.h"
#include "DFContext.h"
#include "DFError.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFProcessEnumerator.h"
#include "dfhack/DFContext.h"
#include "dfhack/DFContext.h"
#include "dfhack/DFError.h"
#include <shms.h>
#include <mod-core.h>

@ -22,15 +22,15 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "DFProcess.h"
#include "DFProcessEnumerator.h"
#include "DFMemInfoManager.h"
#include "DFError.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFProcessEnumerator.h"
#include "dfhack/DFMemInfoManager.h"
#include "dfhack/DFError.h"
#include "DFContext.h"
#include "DFContextManager.h"
#include "dfhack/DFContext.h"
#include "dfhack/DFContextManager.h"
#include <shms.h>
#include <mod-core.h>

@ -22,22 +22,22 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "Tranquility.h"
#include "Export.h"
#include "dfhack/DFPragma.h"
#include "dfhack/DFExport.h"
#include <string>
#include <vector>
#include <map>
#include "integers.h"
#include "DFTileTypes.h"
#include "DFTypes.h"
#include "DFWindow.h"
#include "DFContextManager.h"
#include "DFContext.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTileTypes.h"
#include "dfhack/DFTypes.h"
#include "dfhack/DFWindow.h"
#include "dfhack/DFContextManager.h"
#include "dfhack/DFContext.h"
using namespace std;
using namespace DFHack;
#include "DFContext_C.h"
#include "dfhack-c/DFContext_C.h"
#ifdef __cplusplus
extern "C" {

@ -22,12 +22,12 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
#include <string>
#include <vector>
#include <map>
#include "integers.h"
#include "DFIntegers.h"
#include "DFTileTypes.h"
#include "DFTypes.h"
#include "DFWindow.h"

@ -22,10 +22,10 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "DFMemInfo.h"
#include "DFError.h"
#include "DFProcess.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFError.h"
#include "dfhack/DFProcess.h"
using namespace DFHack;

@ -22,10 +22,10 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "DFMemInfo.h"
#include "DFMemInfoManager.h"
#include "DFError.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFMemInfoManager.h"
#include "dfhack/DFError.h"
using namespace DFHack;

@ -21,11 +21,11 @@ must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
*/
#include "DFCommonInternal.h"
#include "DFProcess.h"
#include "DFWindow.h"
#include "DFMemInfo.h"
#include "DFError.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFWindow.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFError.h"
#include <errno.h>
#include <sys/shm.h>

@ -21,13 +21,12 @@ must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
*/
#include "DFCommonInternal.h"
#include "DFProcess.h"
#include "DFWindow.h"
#include "DFMemInfo.h"
#include "DFError.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFWindow.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFError.h"
#include <errno.h>
#include <DFError.h>
#include <sys/ptrace.h>
#include <stdio.h>
using namespace DFHack;

@ -21,11 +21,11 @@ must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
*/
#include "DFCommonInternal.h"
#include "DFProcess.h"
#include "DFWindow.h"
#include "DFMemInfo.h"
#include "DFError.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFWindow.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFError.h"
#include <errno.h>
#include <sys/ptrace.h>
using namespace DFHack;

@ -22,11 +22,11 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "DFProcessEnumerator.h"
#include "DFProcess.h"
#include "DFMemInfo.h"
#include "DFMemInfoManager.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFProcessEnumerator.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFMemInfoManager.h"
#include <sys/shm.h>
#include <sys/types.h>
#include <sys/ipc.h>

@ -22,8 +22,8 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "DFTileTypes.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFTileTypes.h"
using namespace DFHack;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -22,7 +22,7 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "integers.h"
#include "dfhack/DFIntegers.h"
#include <stdlib.h>
#include "string.h"
#include <vector>
@ -30,9 +30,9 @@ distribution.
using namespace std;
#include "DFCommonInternal.h"
#include "DFTypes.h"
#include "DFTypes_C.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFTypes.h"
#include "dfhack-c/DFTypes_C.h"
#include "modules/Materials.h"
using namespace DFHack;

@ -22,10 +22,10 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "Tranquility.h"
#include "DFCommonInternal.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "dfhack/DFPragma.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
using namespace DFHack;

@ -21,8 +21,8 @@ must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
*/
#include "DFCommonInternal.h"
#include "DFWindow.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFWindow.h"
#include <X11/Xlib.h> //need for X11 functions
#include <X11/keysym.h>

@ -45,7 +45,7 @@
//----------------------------------------------------------------------
//STL includes
#include <string>
#include <integers.h>
#include <dfhack/DFIntegers.h>
//----------------------------------------------------------------------
//typedefs
typedef unsigned char *POINTER;

@ -0,0 +1,27 @@
#ifndef DFHACK_API_H
#define DFHACK_API_H
#include "dfhack/DFIntegers.h"
#include "dfhack/DFGlobal.h"
#include "dfhack/DFError.h"
#include "dfhack/DFTypes.h"
#include "dfhack/DFContextManager.h"
#include "dfhack/DFContext.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFTypes.h"
#include "modules/Buildings.h"
#include "modules/Materials.h"
#include "modules/Position.h"
#include "modules/Constructions.h"
#include "modules/Creatures.h"
#include "modules/Translation.h"
#include "modules/World.h"
#include "modules/Items.h"
#include "modules/Vegetation.h"
#include "modules/Maps.h"
#include "dfhack/DFMiscUtils.h"
#endif

@ -0,0 +1,43 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
damages arising from the use of this software.
Permission is granted to anyone to use this software for any
purpose, including commercial applications, and to alter it and
redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must
not claim that you wrote the original software. If you use this
software in a product, an acknowledgment in the product documentation
would be appreciated but is not required.
2. Altered source versions must be plainly marked as such, and
must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
*/
#ifndef DFHACK_C_API
#define DFHACK_C_API
typedef void DFHackObject;
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack-c/DFContext_C.h"
#include "dfhack-c/DFTypes_C.h"
#ifdef __cplusplus
extern "C" {
#endif
// some global stuff here
#ifdef __cplusplus
}
#endif
#endif

@ -25,8 +25,8 @@ distribution.
#ifndef DFHACK_C_CONTEXT
#define DFHACK_C_CONTEXT
#include "Export.h"
#include "integers.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
typedef void DFHackObject;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,9 +25,9 @@ distribution.
#ifndef TYPES_C_API
#define TYPES_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTypes.h"
#include "modules/Materials.h"
using namespace DFHack;

@ -25,7 +25,7 @@ distribution.
#ifndef DFCOMMONINTERNAL_H_INCLUDED
#define DFCOMMONINTERNAL_H_INCLUDED
// this makes everything that includes this file export symbols when using DFHACK_EXPORT (see Export.h)
// this makes everything that includes this file export symbols when using DFHACK_EXPORT (see DFExport.h)
#ifndef BUILD_DFHACK_LIB
#define BUILD_DFHACK_LIB
#endif
@ -44,7 +44,7 @@ distribution.
#include "DFGlobal.h"
// one file for telling the MSVC compiler where it can shove its pointless warnings
#include "Tranquility.h"
#include "DFPragma.h"
// basic stl containers and IO stuff
#include <string>
@ -55,7 +55,7 @@ distribution.
using namespace std;
// C99 integer types
#include "integers.h"
#include "DFIntegers.h"
// C includes
#include <assert.h>
#include <string.h>

@ -26,7 +26,7 @@ distribution.
#ifndef CONTEXT_H_INCLUDED
#define CONTEXT_H_INCLUDED
#include "Export.h"
#include "DFExport.h"
namespace DFHack
{
class Creatures;

@ -25,12 +25,12 @@ distribution.
#ifndef CONTEXTMANAGER_H_INCLUDED
#define CONTEXTMANAGER_H_INCLUDED
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
#include <string>
#include <vector>
#include <map>
#include "integers.h"
#include "DFIntegers.h"
#include "DFTileTypes.h"
#include "DFTypes.h"
#include "DFWindow.h"

@ -25,7 +25,7 @@ distribution.
#ifndef ERROR_H_INCLUDED
#define ERROR_H_INCLUDED
#include "Export.h"
#include "DFExport.h"
#include <string>
#include <sstream>
#include <exception>

@ -1,6 +1,6 @@
#ifndef DFHACK_GLOBAL
#define DFHACK_GLOBAL
#include "Export.h"
#include "DFExport.h"
// globals, if any, should be placed here.

@ -25,9 +25,8 @@ distribution.
#ifndef MEMINFO_H_INCLUDED
#define MEMINFO_H_INCLUDED
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
#include <map>
#include <vector>
#include <string>
@ -45,9 +44,9 @@ namespace DFHack
*/
struct t_type
{
t_type(uint32_t assign, uint32_t type, string classname)
t_type(uint32_t assign, uint32_t type, std::string classname)
:classname(classname),assign(assign),type(type){};
string classname;
std::string classname;
uint32_t assign;
uint32_t type;
};
@ -80,7 +79,7 @@ namespace DFHack
}
subs.clear();
}
string classname;
std::string classname;
uint32_t vtable;
uint32_t assign;// index to typeclass array if multiclass. return value if not.
uint32_t type_offset; // offset of type data for multiclass
@ -106,52 +105,52 @@ namespace DFHack
void RebaseAddresses(const int32_t new_base);
void RebaseAll(const int32_t new_base);
uint32_t getBase () const;
void setBase (const string&);
void setBase (const std::string&);
void setBase (const uint32_t);
int32_t getOffset (const string&);
uint32_t getAddress (const string&);
uint32_t getHexValue (const string&);
int32_t getOffset (const std::string&);
uint32_t getAddress (const std::string&);
uint32_t getHexValue (const std::string&);
int32_t getOffset (const char *);
uint32_t getAddress (const char *);
uint32_t getHexValue (const char *);
string getString (const string&);
string getProfession(const uint32_t) const;
string getJob(const uint32_t) const;
string getSkill (const uint32_t) const;
string getTrait (const uint32_t, const uint32_t) const;
string getTraitName(const uint32_t) const;
string getLabor (const uint32_t);
std::string getString (const std::string&);
std::string getProfession(const uint32_t) const;
std::string getJob(const uint32_t) const;
std::string getSkill (const uint32_t) const;
std::string getTrait (const uint32_t, const uint32_t) const;
std::string getTraitName(const uint32_t) const;
std::string getLabor (const uint32_t);
void setVersion(const char *);
void setVersion(const string&);
string getVersion();
void setVersion(const std::string&);
std::string getVersion();
void setOS(const char *);
void setOS(const string&);
void setOS(const std::string&);
void setOS(const OSType);
OSType getOS() const;
void setOffset (const string &, const int32_t);
void setAddress (const string &, const uint32_t);
void setHexValue (const string &, const uint32_t);
void setOffset (const std::string &, const int32_t);
void setAddress (const std::string &, const uint32_t);
void setHexValue (const std::string &, const uint32_t);
void setOffset (const string &, const char *);
void setAddress (const string &, const char *);
void setHexValue (const string &, const char *);
void setString (const string &, const char *);
void setOffset (const std::string &, const char *);
void setAddress (const std::string &, const char *);
void setHexValue (const std::string &, const char *);
void setString (const std::string &, const char *);
void setOffset (const string &, const string &);
void setAddress (const string &, const string &);
void setHexValue (const string &, const string &);
void setString (const string &, const string &);
void setOffset (const std::string &, const std::string &);
void setAddress (const std::string &, const std::string &);
void setHexValue (const std::string &, const std::string &);
void setString (const std::string &, const std::string &);
void setProfession(const string &, const string &);
void setJob(const string &, const string &);
void setSkill(const string &, const string &);
void setTrait(const string &,const string &,const string &,const string &,const string &,const string &,const string &,const string &);
void setLabor(const string &, const string &);
void setProfession(const std::string &, const std::string &);
void setJob(const std::string &, const std::string &);
void setSkill(const std::string &, const std::string &);
void setTrait(const std::string &,const std::string &,const std::string &,const std::string &,const std::string &,const std::string &,const std::string &,const std::string &);
void setLabor(const std::string &, const std::string &);
void RebaseVTable(const int32_t offset);
void setParentProcess(Process * _p);
@ -169,23 +168,23 @@ namespace DFHack
/*
* Get a ClassID when you know the classname. can fail if the class is not in the cache
*/
bool resolveClassnameToClassID (const string classname, int32_t & classID);
bool resolveClassnameToClassID (const std::string classname, int32_t & classID);
/*
* Get a vptr from a classname. Can fail if the type is not in the cache
* limited to normal classes, variable-dependent types will resolve to the base class
*/
bool resolveClassnameToVPtr ( const string classname, uint32_t & vptr );
bool resolveClassnameToVPtr ( const std::string classname, uint32_t & vptr );
/*
* Get a classname from a previous classID. Can fail if the type is not in the cache (you use bogus classID)
*/
bool resolveClassIDToClassname (const int32_t classID, string & classname);
bool resolveClassIDToClassname (const int32_t classID, std::string & classname);
/*
* Get the internal classID->classname mapping (for speed). DO NOT MANIPULATE THE VECTOR!
*/
const vector<string> * getClassIDMapping();
const vector<std::string> * getClassIDMapping();
};
}
#endif // MEMINFO_H_INCLUDED

@ -25,7 +25,7 @@ distribution.
#ifndef MEMINFO_MANAGER_H_INCLUDED
#define MEMINFO_MANAGER_H_INCLUDED
#include "Tranquility.h"
#include "DFPragma.h"
namespace DFHack
{

@ -3,16 +3,16 @@
#include <iostream>
#include <iomanip>
#include <climits>
#include <integers.h>
#include <dfhack/DFIntegers.h>
#include <vector>
#include <sstream>
#include <ctime>
#include <cstdio>
using namespace std;
#include <DFProcess.h>
#include <DFMemInfo.h>
#include <DFVector.h>
#include <dfhack/DFProcess.h>
#include <dfhack/DFMemInfo.h>
#include <dfhack/DFVector.h>
/*
* This is a header full of ugly, volatile things.

@ -25,8 +25,8 @@ distribution.
#ifndef PROCESS_H_INCLUDED
#define PROCESS_H_INCLUDED
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
#include <iostream>
namespace DFHack

@ -25,8 +25,8 @@ distribution.
#ifndef PROCESSMANAGER_H_INCLUDED
#define PROCESSMANAGER_H_INCLUDED
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
class TiXmlElement;

@ -25,7 +25,7 @@ distribution.
#ifndef TILETYPES_H_INCLUDED
#define TILETYPES_H_INCLUDED
#include "Tranquility.h"
#include "DFPragma.h"
namespace DFHack
{

@ -25,8 +25,8 @@ distribution.
#ifndef TYPES_H_INCLUDED
#define TYPES_H_INCLUDED
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
namespace DFHack
{

@ -25,8 +25,8 @@ distribution.
#ifndef DFVECTOR_H_INCLUDED
#define DFVECTOR_H_INCLUDED
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
namespace DFHack
{
class Process;

@ -25,8 +25,8 @@ distribution.
#ifndef KEYS_H_INCLUDED
#define KEYS_H_INCLUDED
#include "Tranquility.h"
#include "Export.h"
#include "DFPragma.h"
#include "DFExport.h"
namespace DFHack
{

@ -3,7 +3,7 @@
/*
* Buildings - also includes zones and stockpiles
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
struct t_building

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,11 +25,11 @@ distribution.
#ifndef BUILDINGS_C_API
#define BUILDINGS_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTypes.h"
#include "modules/Buildings.h"
#include "DFHackAPI_C.h"
#include "DFHack_C.h"
using namespace DFHack;

@ -3,7 +3,7 @@
/*
* DF constructions
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
// type of item the construction is made of

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,11 +25,11 @@ distribution.
#ifndef CONSTRUCTIONS_C_API
#define CONSTRUCTIONS_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTypes.h"
#include "modules/Constructions.h"
#include "DFHackAPI_C.h"
#include "DFHack_C.h"
using namespace DFHack;

@ -3,7 +3,7 @@
/*
* Creatures
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
/*

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,12 +25,12 @@ distribution.
#ifndef CREATURES_C_API
#define CREATURES_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "DFHack_C.h"
#include "dfhack/DFTypes.h"
#include "modules/Materials.h"
#include "modules/Creatures.h"
#include "DFHackAPI_C.h"
using namespace DFHack;

@ -4,7 +4,7 @@
/*
* Gui: Query the DF's GUI state
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,10 +25,9 @@ distribution.
#ifndef GUI_C_API
#define GUI_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "DFHackAPI_C.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTypes.h"
using namespace DFHack;

@ -3,7 +3,7 @@
/*
* Creatures
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,15 +25,15 @@ distribution.
#ifndef ITEMS_C_API
#define ITEMS_C_API
#include "Export.h"
#include "integers.h"
#include "DFCommonInternal.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFCommonInternal.h"
using namespace DFHack;
#include "DFTypes.h"
#include "dfhack/DFTypes.h"
#include "modules/Items.h"
#include "DFHackAPI_C.h"
#include "DFHack_C.h"
#ifdef __cplusplus
extern "C" {

@ -5,7 +5,7 @@
#ifndef CL_MOD_MAPS
#define CL_MOD_MAPS
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
/***************************************************************************

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,17 +25,17 @@ distribution.
#ifndef MAPS_C_API
#define MAPS_C_API
#include "Export.h"
#include "integers.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include <vector>
#include <map>
#include <string>
using namespace std;
#include "DFTypes.h"
#include "dfhack/DFTypes.h"
#include "modules/Maps.h"
#include "DFHackAPI_C.h"
#include "DFHack_C.h"
using namespace DFHack;

@ -3,7 +3,7 @@
/*
* Creatures
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
class DFContextPrivate;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,12 +25,12 @@ distribution.
#ifndef MATERIALS_C_API
#define MATERIALS_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTypes.h"
#include "modules/Materials.h"
#include "DFHackAPI_C.h"
#include "DFTypes_C.h"
#include "DFHack_C.h"
#include "dfhack-c/DFTypes_C.h"
using namespace DFHack;

@ -3,7 +3,7 @@
/*
* View position and size and cursor position
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
#define NUM_HOTKEYS 16

@ -25,9 +25,8 @@ distribution.
#ifndef POSITION_C_API
#define POSITION_C_API
#include "Export.h"
#include "DFHackAPI_C.h"
#include "dfhack/DFExport.h"
#include "DFHack_C.h"
#ifdef __cplusplus
extern "C" {

@ -3,7 +3,7 @@
/*
* DF translation tables and name translation
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
class DFContextPrivate;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,11 +25,11 @@ distribution.
#ifndef TRANSLATION_C_API
#define TRANSLATION_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTypes.h"
#include "modules/Translation.h"
#include "DFHackAPI_C.h"
#include "DFHack_C.h"
using namespace DFHack;

@ -3,7 +3,7 @@
/*
* DF vegetation - stuff that grows and gets cut down or trampled by dwarves
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{
/*

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -25,11 +25,11 @@ distribution.
#ifndef VEGETATION_C_API
#define VEGETATION_C_API
#include "Export.h"
#include "integers.h"
#include "DFTypes.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "dfhack/DFTypes.h"
#include "modules/Vegetation.h"
#include "DFHackAPI_C.h"
#include "DFHack_C.h"
using namespace DFHack;

@ -4,7 +4,7 @@
/*
* World: all kind of stuff related to the current world state
*/
#include "Export.h"
#include "dfhack/DFExport.h"
namespace DFHack
{

@ -22,13 +22,13 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "modules/Translation.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "DFTypes.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
#include "dfhack/DFTypes.h"
#include "modules/Buildings.h"
using namespace DFHack;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -22,15 +22,15 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "integers.h"
#include "dfhack/DFIntegers.h"
#include <string>
#include <map>
#include "stdio.h"
using namespace std;
#include "DFCommonInternal.h"
#include "DFTypes.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFTypes.h"
#include "modules/Buildings.h"
#include "modules/Buildings_C.h"

@ -22,13 +22,13 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "modules/Translation.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "DFTypes.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
#include "dfhack/DFTypes.h"
#include "modules/Constructions.h"
using namespace DFHack;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -22,10 +22,10 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "integers.h"
#include "dfhack/DFIntegers.h"
#include "DFCommonInternal.h"
#include "DFTypes.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFTypes.h"
#include "modules/Constructions.h"
#include "modules/Constructions_C.h"

@ -22,14 +22,14 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "DFError.h"
#include "DFTypes.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
#include "dfhack/DFError.h"
#include "dfhack/DFTypes.h"
// we connect to those
#include <shms.h>

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -22,19 +22,19 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "Export.h"
#include "integers.h"
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
#include "DFTypes.h"
#include "dfhack/DFTypes.h"
#include "modules/Materials.h"
#include "modules/Creatures.h"
#include "modules/Creatures_C.h"
#include "DFHackAPI_C.h"
#include "DFHack_C.h"
using namespace DFHack;

@ -22,12 +22,12 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "modules/Gui.h"
#include "DFProcess.h"
#include "DFMemInfo.h"
#include "DFTypes.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFTypes.h"
using namespace DFHack;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -21,11 +21,13 @@ must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
*/
#include <vector>
#include <string>
#include "DFHack_C.h"
#include "modules/Gui_C.h"
#include "integers.h"
#include "dfhack/DFIntegers.h"
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "modules/Gui.h"
using namespace DFHack;

@ -22,12 +22,12 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "DFTypes.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "dfhack/DFTypes.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
#include "modules/Materials.h"
#include "modules/Items.h"

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -22,19 +22,22 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "Export.h"
#include "integers.h"
#include <map>
#include <vector>
#include "DFTypes.h"
#include <string>
#include "dfhack/DFExport.h"
#include "dfhack/DFIntegers.h"
#include "DFHack_C.h"
#include "dfhack/DFTypes.h"
using namespace std;
using namespace DFHack;
#include "DFProcess.h"
#include "dfhack/DFProcess.h"
#include "modules/Materials.h"
#include "modules/Items.h"
#include "DFTypes_C.h"
#include "dfhack-c/DFTypes_C.h"
#include "modules/Items_C.h"

@ -22,16 +22,16 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include <shms.h>
#include <mod-core.h>
#include <mod-maps.h>
#include "../private/APIPrivate.h"
#include "modules/Maps.h"
#include "DFError.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "dfhack/DFError.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
#define SHMMAPSHDR ((Server::Maps::shm_maps_hdr *)d->d->shm_start)
#define SHMCMD(num) ((shm_cmd *)d->d->shm_start)[num]->pingpong

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -22,15 +22,15 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "integers.h"
#include "dfhack/DFIntegers.h"
#include <vector>
#include <map>
#include <string>
using namespace std;
#include "DFCommonInternal.h"
#include "DFTypes.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFTypes.h"
#include "modules/Maps.h"
#include "modules/Maps_C.h"

@ -22,13 +22,13 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "DFTypes.h"
#include "dfhack/DFTypes.h"
#include "modules/Materials.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
using namespace DFHack;

@ -1,6 +1,6 @@
/*
www.sourceforge.net/projects/dfhack
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
Copyright (c) 2009 Petr Mrázek (peterix), Kenneth Ferland (Impaler[WrG]), dorf, doomchild
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -22,17 +22,17 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "integers.h"
#include "dfhack/DFIntegers.h"
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
#include "DFCommonInternal.h"
#include "DFTypes.h"
#include "dfhack/DFCommonInternal.h"
#include "dfhack/DFTypes.h"
#include "modules/Materials.h"
#include "DFTypes_C.h"
#include "dfhack-c/DFTypes_C.h"
#include "modules/Materials_C.h"
using namespace DFHack;

@ -22,11 +22,11 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "modules/Position.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
using namespace DFHack;
struct Position::Private

@ -22,10 +22,12 @@ must not be misrepresented as being the original software.
distribution.
*/
#include <vector>
#include <string>
#include "modules/Position_C.h"
#include "integers.h"
#include "dfhack/DFIntegers.h"
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "modules/Position.h"
using namespace DFHack;

@ -22,13 +22,13 @@ must not be misrepresented as being the original software.
distribution.
*/
#include "DFCommonInternal.h"
#include "dfhack/DFCommonInternal.h"
#include "../private/APIPrivate.h"
#include "modules/Translation.h"
#include "DFMemInfo.h"
#include "DFProcess.h"
#include "DFVector.h"
#include "DFTypes.h"
#include "dfhack/DFMemInfo.h"
#include "dfhack/DFProcess.h"
#include "dfhack/DFVector.h"
#include "dfhack/DFTypes.h"
#include "modules/Translation.h"
using namespace DFHack;

Some files were not shown because too many files have changed in this diff Show More