mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-10-28 00:56:58 +00:00
refactor: streamline IW4 asset loading
This commit is contained in:
@@ -1,44 +0,0 @@
|
||||
#include "SndCurveDumper.h"
|
||||
|
||||
#include <cassert>
|
||||
#include <iomanip>
|
||||
|
||||
SndCurveDumper::SndCurveDumper(std::ostream& stream)
|
||||
: SndCurveDumper(stream, DEFAULT_PRECISION)
|
||||
{
|
||||
}
|
||||
|
||||
SndCurveDumper::SndCurveDumper(std::ostream& stream, const size_t precision)
|
||||
: AbstractTextDumper(stream),
|
||||
m_precision(precision),
|
||||
m_current_knot(0u),
|
||||
m_total_knots(0u)
|
||||
{
|
||||
}
|
||||
|
||||
void SndCurveDumper::Init(const size_t totalKnots)
|
||||
{
|
||||
m_total_knots = totalKnots;
|
||||
m_current_knot = 0;
|
||||
|
||||
m_stream << "SNDCURVE\n\n";
|
||||
m_stream << totalKnots;
|
||||
}
|
||||
|
||||
void SndCurveDumper::WriteKnot(const float x, const float y)
|
||||
{
|
||||
assert(m_current_knot < m_total_knots);
|
||||
|
||||
m_stream << "\n" << std::fixed << std::setprecision(m_precision) << x << " " << y;
|
||||
|
||||
m_current_knot++;
|
||||
}
|
||||
|
||||
void SndCurveDumper::WriteKnot(const double x, const double y)
|
||||
{
|
||||
assert(m_current_knot < m_total_knots);
|
||||
|
||||
m_stream << x << " " << y << "\n";
|
||||
|
||||
m_current_knot++;
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#include "Dumping/AbstractTextDumper.h"
|
||||
|
||||
#include <ostream>
|
||||
|
||||
class SndCurveDumper : AbstractTextDumper
|
||||
{
|
||||
static constexpr auto DEFAULT_PRECISION = 4;
|
||||
|
||||
size_t m_precision;
|
||||
size_t m_current_knot;
|
||||
size_t m_total_knots;
|
||||
|
||||
public:
|
||||
explicit SndCurveDumper(std::ostream& stream);
|
||||
SndCurveDumper(std::ostream& stream, size_t precision);
|
||||
|
||||
void Init(size_t totalKnots);
|
||||
void WriteKnot(float x, float y);
|
||||
void WriteKnot(double x, double y);
|
||||
};
|
||||
Reference in New Issue
Block a user