43 lines
1.4 KiB
C++
43 lines
1.4 KiB
C++
/*
|
|
* This file and the companion PluginStatics.cpp contain static structures used
|
|
* by DFHack plugins. Linking them here, into the dfhack library, instead of
|
|
* into the plugins themselves allows the plugins to be freely unloaded and
|
|
* reloaded without fear of causing cached references to static data becoming
|
|
* corrupted.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "DataIdentity.h"
|
|
|
|
namespace DFHack {
|
|
|
|
// xlsxreader definitions
|
|
struct DFHACK_EXPORT xlsx_file_handle_identity : public compound_identity {
|
|
xlsx_file_handle_identity()
|
|
:compound_identity(0, nullptr, nullptr, "xlsx_file_handle") {};
|
|
DFHack::identity_type type() override { return IDTYPE_OPAQUE; }
|
|
};
|
|
|
|
struct DFHACK_EXPORT xlsx_sheet_handle_identity : public compound_identity {
|
|
xlsx_sheet_handle_identity()
|
|
:compound_identity(0, nullptr, nullptr, "xlsx_sheet_handle") {};
|
|
DFHack::identity_type type() override { return IDTYPE_OPAQUE; }
|
|
};
|
|
|
|
struct DFHACK_EXPORT xlsx_file_handle {
|
|
typedef struct xlsxio_read_struct* xlsxioreader;
|
|
const xlsxioreader handle;
|
|
xlsx_file_handle(xlsxioreader handle): handle(handle) {}
|
|
static xlsx_file_handle_identity _identity;
|
|
};
|
|
|
|
struct DFHACK_EXPORT xlsx_sheet_handle {
|
|
typedef struct xlsxio_read_sheet_struct* xlsxioreadersheet;
|
|
const xlsxioreadersheet handle;
|
|
xlsx_sheet_handle(xlsxioreadersheet handle): handle(handle) {}
|
|
static xlsx_sheet_handle_identity _identity;
|
|
};
|
|
|
|
}
|