Files
CydandClaude Fable 5 fdd9ac9d97 Initial import: Tesla Release 4.10 (Tesla:BattleTech & Tesla:Red Planet)
Archival snapshot of the Virtual World Entertainment Tesla cockpit
software, 1994-1996: MUNGA engine and L4 pod layer source (Borland
C++ 5.0), BT/RP game code, and game content (models, audio, maps,
gauges, Division renderer data). Includes third-party libraries:
Division dVS/DPL graphics, HMI SOS audio, WATTCP networking.

Files are preserved byte-for-byte (.gitattributes disables all
line-ending conversion). README.md documents the layout, target
hardware, and toolchain.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 13:21:58 -05:00

148 lines
3.9 KiB
C++

//===========================================================================//
// File: l4vidper.hpp //
// Project: MUNGA Brick: Video Renderer Manager //
// Contents: Interface specification Video performance monitoring renderables//
//---------------------------------------------------------------------------//
// Date Who Modification //
// -------- --- ---------------------------------------------------------- //
// 03/05/96 GAC initial code //
//---------------------------------------------------------------------------//
// Copyright (C) 1995, Virtual World Entertainment, Inc. //
// All Rights reserved worldwide //
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL //
//===========================================================================//
#if !defined(L4VIDPER_HPP)
# define L4VIDPER_HPP
# if !defined(L4VIDRND_HPP)
# include "l4vidrnd.hpp"
# endif
# if !defined(ROTATION_HPP)
# include <rotation.hpp>
# endif
# if !defined(RETICLE_HPP)
# include <reticle.hpp>
# endif
# if !defined(SIMULATE_HPP)
# include <simulate.hpp>
# endif
# if !defined(LINMTRX_HPP)
# include <linmtrx.hpp>
# endif
#include <dpl.h>
#include <dplutils.h>
#include <dpl_2d.h>
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// StripChartRenderable
//
class StripChartRenderable:
public VideoRenderable
{
public:
StripChartRenderable(
Entity *entity, // Entity to attach the renderable to
ExecutionType execution_type, // How/when to execute the renderable
dpl_VIEW *this_view, // the view associated with our eye
float left,
float right,
float top,
float bottom,
int max_samples, // The number of samples to hold
int max_value, // The maximum value allowed
int min_value, // the minimum value allowed
int *value_to_chart, // the value we will be graphing
int update_interval); // How frequently (in frames) to update the graphics
~StripChartRenderable();
Logical
TestInstance() const;
void
Execute();
protected:
dpl_VIEW
*myView;
dpl2d_DISPLAY
*mySystemDisplayList,
*myDisplayList;
int
myMaxSamples,
myMaxValue,
myMinValue,
*myValue,
*myValueStorage,
myUpdateInterval,
myFrameCount,
myCurrentSample;
float
myLeft,
myRight,
myTop,
myBottom;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// RendererChartRenderable
//
class RendererChartRenderable:
public VideoRenderable
{
public:
RendererChartRenderable(
Entity *entity, // Entity to attach the renderable to
ExecutionType execution_type, // How/when to execute the renderable
dpl_VIEW *this_view, // the view associated with our eye
float left,
float right,
float top,
float bottom,
int max_samples, // The number of samples to hold
int max_value, // The maximum value allowed
int min_value, // the minimum value allowed
int update_interval); // How frequently (in frames) to update the graphics
~RendererChartRenderable();
Logical
TestInstance() const;
void
Execute();
protected:
dpl_VIEW
*myView;
dpl2d_DISPLAY
*mySystemDisplayList,
*myDisplayList;
int
*myCullStorage,
*myDrawStorage,
*myFrameStorage,
*myPixelPlanesStorage,
*myPrimativeStorage,
myMaxSamples,
myMaxValue,
myMinValue,
myUpdateInterval,
myFrameCount,
myCurrentSample;
float
myLeft,
myRight,
myTop,
myBottom;
};
#endif