openDecal/Managed/Decal.Adapter/Decal.Adapter.Wrappers/D3DService.cs
erik d1442e3747 Initial commit: Complete open-source Decal rebuild
All 5 phases of the open-source Decal rebuild:

Phase 1: 14 decompiled .NET projects (Interop.*, Adapter, FileService, DecalUtil)
Phase 2: 10 native DLLs rewritten as C# COM servers with matching GUIDs
  - DecalDat, DHS, SpellFilter, DecalInput, DecalNet, DecalFilters
  - Decal.Core, DecalControls, DecalRender, D3DService
Phase 3: C++ shims for Inject.DLL (D3D9 hooking) and LauncherHook.DLL
Phase 4: DenAgent WinForms tray application
Phase 5: WiX installer and build script

25 C# projects building with 0 errors.
Native C++ projects require VS 2022 + Windows SDK (x86).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 18:27:56 +01:00

86 lines
2.6 KiB
C#

using Decal.Interop.D3DService;
namespace Decal.Adapter.Wrappers;
public class D3DService : GenericDisposableWrapper<CService>
{
internal D3DService(CService obj)
: base(obj)
{
}
protected override void Dispose(bool userCalled)
{
base.Dispose(userCalled);
}
public D3DObj NewD3DObj()
{
return new D3DObj(base.Wrapped.NewD3DObj());
}
public D3DObj PointToObject(int guid, int color)
{
return new D3DObj(base.Wrapped.PointToObject(guid, color));
}
public D3DObj PointToCoords(float lat, float lng, float alt, int color)
{
return new D3DObj(base.Wrapped.PointToCoords(lat, lng, alt, color));
}
public D3DObj MarkObjectWithIcon(int guid, int icon)
{
return new D3DObj(base.Wrapped.MarkObjectWithIcon(guid, icon));
}
public D3DObj MarkObjectWithShape(int guid, D3DShape shape, int color)
{
return new D3DObj(base.Wrapped.MarkObjectWithShape(guid, (eShape)shape, color));
}
public D3DObj MarkObjectWithShapeFromFile(int guid, string filename, int color)
{
return new D3DObj(base.Wrapped.MarkObjectWithShapeFromFile(guid, filename, color));
}
public D3DObj MarkObjectWith2DText(int guid, string szText, string szFont, int options)
{
return new D3DObj(base.Wrapped.MarkObjectWith2DText(guid, szText, szFont, options));
}
public D3DObj MarkObjectWith3DText(int guid, string szText, string szFont, int options)
{
return new D3DObj(base.Wrapped.MarkObjectWith3DText(guid, szText, szFont, options));
}
public D3DObj MarkCoordsWithIcon(float lat, float lng, float alt, int icon)
{
return new D3DObj(base.Wrapped.MarkCoordsWithIcon(lat, lng, alt, icon));
}
public D3DObj MarkCoordsWithIconFromFile(float lat, float lng, float alt, string file)
{
return new D3DObj(base.Wrapped.MarkCoordsWithIconFromFile(lat, lng, alt, file));
}
public D3DObj MarkCoordsWithShape(float lat, float lng, float alt, D3DShape shape, int color)
{
return new D3DObj(base.Wrapped.MarkCoordsWithShape(lat, lng, alt, (eShape)shape, color));
}
public D3DObj MarkCoordsWithShapeFromFile(float lat, float lng, float alt, string file, int color)
{
return new D3DObj(base.Wrapped.MarkCoordsWithShapeFromFile(lat, lng, alt, file, color));
}
public D3DObj MarkCoordsWith2DText(float lat, float lng, float alt, string szText, string szFont, int options)
{
return new D3DObj(base.Wrapped.MarkCoordsWith2DText(lat, lng, alt, szText, szFont, options));
}
public D3DObj MarkCoordsWith3DText(float lat, float lng, float alt, string szText, string szFont, int options)
{
return new D3DObj(base.Wrapped.MarkCoordsWith3DText(lat, lng, alt, szText, szFont, options));
}
}