3#include "Bridge/Bridge.h"
4#include "Bridge/FieldFunctions.h"
6#include "../Source/RenderContext.h"
7#include "../Source/CogsTerrainBase.h"
13 struct ClipmapParameters;
14 struct TerrainMetrics;
18#ifdef COGSCORE_TERRAIN_BUILD
19#define COGSCORE_TERRAIN_API extern "C" __declspec(dllexport)
21#define COGSCORE_TERRAIN_API extern "C" __declspec(dllimport)
24#define COGSCORE_TERRAIN_API
27COGSCORE_TERRAIN_API
void initializeTerrain();
29COGSCORE_TERRAIN_API
void* createSharedContext(BridgeContext * ctx);
30COGSCORE_TERRAIN_API
void initializeSharedContext(BridgeContext * ctx,
void* sharedContext);
31COGSCORE_TERRAIN_API
void releaseSharedContext(BridgeContext * ctx,
void* sharedContext);
33COGSCORE_TERRAIN_API
void setWorldOptions(BridgeContext * ctx, EntityId
id,
const Cogs::WorldOptions* options);
34COGSCORE_TERRAIN_API
void setUpdateOptions(BridgeContext * ctx, EntityId
id,
const Cogs::UpdateOptions* options);
35COGSCORE_TERRAIN_API
void setRenderOptions(BridgeContext * ctx, EntityId
id,
const Cogs::RenderOptions* options);
36COGSCORE_TERRAIN_API
void setDebugOptions(BridgeContext * ctx, EntityId
id,
const Cogs::DebugOptions* options);
37COGSCORE_TERRAIN_API
void setOceanOptions(BridgeContext * ctx, EntityId
id,
const Cogs::OceanOptions* options);
39COGSCORE_TERRAIN_API
void setShadingOptions(BridgeContext * ctx, EntityId
id,
const Cogs::ShadingOptions* options);
40COGSCORE_TERRAIN_API
void setRasterSources(BridgeContext * ctx, EntityId
id,
42 const size_t numTerrain,
44 const size_t numImagery);
46COGSCORE_TERRAIN_API
void setClipmapParameters(BridgeContext * ctx, EntityId
id,
const Cogs::ClipmapParameters* parameters);
48COGSCORE_TERRAIN_API
void invalidateRasterSource(BridgeContext * ctx, EntityId
id,
const long rasterSourceId,
const bool clearContents);
50COGSCORE_TERRAIN_API
void queryTerrain(BridgeContext * ctx, EntityId
id,
Cogs::TerrainQuery* query, Cogs::TerrainQueryCallback callback);
52COGSCORE_TERRAIN_API
float getNearestSample(BridgeContext * ctx, EntityId
id);
54COGSCORE_TERRAIN_API
void processQueries(BridgeContext * ctx, EntityId
id);
56COGSCORE_TERRAIN_API
void triggerTerrainUpdate(BridgeContext * ctx, EntityId
id);
58COGSCORE_TERRAIN_API
void setCustomParameters(BridgeContext * ctx, EntityId
id,
const unsigned char* data,
int count);
60COGSCORE_TERRAIN_API
void setImageryEnabled(BridgeContext * ctx, EntityId
id,
const bool* data,
int count);
62COGSCORE_TERRAIN_API
void getTerrainMetrics(BridgeContext * ctx, EntityId
id,
Cogs::TerrainMetrics* metrics);
64COGSCORE_TERRAIN_API
void setMaxTilesPerFrame(BridgeContext * ctx, EntityId
id,
int count);
66COGSCORE_TERRAIN_API
void disposeRasterSource(BridgeContext * ctx, int64_t
id);
68COGSCORE_TERRAIN_API
void invalidateRasterTile(BridgeContext * ctx, int64_t
id,
int level,
int x,
int y,
int flags);
Contains all Cogs related functionality.