8#ifndef PXR_BASE_TS_TS_TEST_SAMPLE_TIMES_H
9#define PXR_BASE_TS_TS_TEST_SAMPLE_TIMES_H
12#include "pxr/base/ts/api.h"
13#include "pxr/base/ts/tsTest_SplineData.h"
18PXR_NAMESPACE_OPEN_SCOPE
20class TsTest_SampleTimes
26 struct TS_API SampleTime
33 SampleTime(
double time);
34 SampleTime(
double time,
bool pre);
35 SampleTime(
const SampleTime &other);
36 SampleTime& operator=(
const SampleTime &other);
37 SampleTime& operator=(
double time);
38 bool operator<(
const SampleTime &other)
const;
39 bool operator==(
const SampleTime &other)
const;
40 bool operator!=(
const SampleTime &other)
const;
43 using SampleTimeSet = std::set<SampleTime>;
55 const std::vector<double> ×);
60 const std::vector<SampleTime> ×);
68 const TsTest_SplineData &splineData);
79 void AddUniformInterpolationTimes(
88 void AddExtrapolationTimes(
89 double extrapolationFactor);
96 void AddStandardTimes();
106 SampleTimeSet _GetKnotTimes()
const;
109 const bool _haveSplineData;
110 const TsTest_SplineData _splineData;
112 SampleTimeSet _times;
115PXR_NAMESPACE_CLOSE_SCOPE