QMediaTimeRange 类

QMediaTimeRange 类表示一组零个或多个不相交的时间间隔。 更多...

头: #include <QMediaTimeRange>
CMake: find_package(Qt6 COMPONENTS Multimedia REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia

注意: 此类的所有函数 可重入 .

公共类型

struct Interval

公共函数

  QMediaTimeRange (QMediaTimeRange && other )
  QMediaTimeRange (const QMediaTimeRange & range )
  QMediaTimeRange (const QMediaTimeRange::Interval & interval )
  QMediaTimeRange (qint64 start , qint64 end )
  QMediaTimeRange ()
QMediaTimeRange & operator= (const QMediaTimeRange::Interval & interval )
QMediaTimeRange & operator= (QMediaTimeRange && other )
QMediaTimeRange & operator= (const QMediaTimeRange & other )
  ~QMediaTimeRange ()
void addInterval (const QMediaTimeRange::Interval & interval )
void addInterval (qint64 start , qint64 end )
void addTimeRange (const QMediaTimeRange & range )
void clear ()
bool contains (qint64 time ) const
qint64 earliestTime () const
QList<QMediaTimeRange::Interval> intervals () const
bool isContinuous () const
bool isEmpty () const
qint64 latestTime () const
void removeInterval (const QMediaTimeRange::Interval & interval )
void removeInterval (qint64 start , qint64 end )
void removeTimeRange (const QMediaTimeRange & range )
QMediaTimeRange & operator+= (const QMediaTimeRange & other )
QMediaTimeRange & operator+= (const QMediaTimeRange::Interval & interval )
QMediaTimeRange & operator-= (const QMediaTimeRange & other )
QMediaTimeRange & operator-= (const QMediaTimeRange::Interval & interval )
bool operator!= (const QMediaTimeRange & lhs , const QMediaTimeRange & rhs )
QMediaTimeRange operator+ (const QMediaTimeRange & r1 , const QMediaTimeRange & r2 )
QMediaTimeRange operator- (const QMediaTimeRange & r1 , const QMediaTimeRange & r2 )
bool operator== (const QMediaTimeRange & lhs , const QMediaTimeRange & rhs )

详细描述

earliestTime (), latestTime (), intervals () 和 isEmpty () methods are used to get information about the current time range.

addInterval (), removeInterval () 和 clear () methods are used to modify the current time range.

When adding or removing intervals from the time range, existing intervals within the range may be expanded, trimmed, deleted, merged or split to ensure that all intervals within the time range remain distinct and disjoint. As a consequence, all intervals added or removed from a time range must be normal .

另请参阅 QMediaTimeRange::Interval .

成员函数文档编制

QMediaTimeRange:: QMediaTimeRange ( QMediaTimeRange && other )

Constructs a time range by moving from other .

QMediaTimeRange:: QMediaTimeRange (const QMediaTimeRange & range )

Constructs a time range by copying another time range .

QMediaTimeRange:: QMediaTimeRange (const QMediaTimeRange::Interval & interval )

Constructs a time range that contains an initial interval, interval .

interval 不是 normal , the resulting time range will be empty.

另请参阅 addInterval ().

QMediaTimeRange:: QMediaTimeRange ( qint64 start , qint64 end )

Constructs a time range that contains an initial interval from start to end 包括在内。

If the interval is not normal , the resulting time range will be empty.

另请参阅 addInterval ().

QMediaTimeRange:: QMediaTimeRange ()

Constructs an empty time range.

QMediaTimeRange &QMediaTimeRange:: operator= (const QMediaTimeRange::Interval & interval )

Sets the time range to a single continuous interval, interval .

QMediaTimeRange &QMediaTimeRange:: operator= ( QMediaTimeRange && other )

移动 other into this time range.

QMediaTimeRange &QMediaTimeRange:: operator= (const QMediaTimeRange & other )

Takes a copy of the other time range and returns itself.

QMediaTimeRange:: ~QMediaTimeRange ()

析构函数。

void QMediaTimeRange:: addInterval (const QMediaTimeRange::Interval & interval )

Adds the specified interval to the time range.

Adding intervals which are not normal is invalid, and will be ignored.

If the specified interval is adjacent to, or overlaps existing intervals within the time range, these intervals will be merged.

This operation takes linear time.

另请参阅 removeInterval ().

void QMediaTimeRange:: addInterval ( qint64 start , qint64 end )

这是重载函数。

Adds the interval specified by start and end to the time range.

另请参阅 addInterval ().

void QMediaTimeRange:: addTimeRange (const QMediaTimeRange & range )

Adds each of the intervals in range to this time range.

相当于调用 addInterval () for each interval in range .

void QMediaTimeRange:: clear ()

Removes all intervals from the time range.

另请参阅 removeInterval ().

bool QMediaTimeRange:: contains ( qint64 time ) const

返回 true 若指定 time lies within the time range.

qint64 QMediaTimeRange:: earliestTime () const

Returns the earliest time within the time range.

For empty time ranges, this value is equal to zero.

另请参阅 latestTime ().

QList < QMediaTimeRange::Interval > QMediaTimeRange:: intervals () const

Returns the list of intervals covered by this time range.

bool QMediaTimeRange:: isContinuous () const

Returns true if the time range consists of a continuous interval. That is, there is one or fewer disjoint intervals within the time range.

bool QMediaTimeRange:: isEmpty () const

Returns true if there are no intervals within the time range.

另请参阅 intervals ().

qint64 QMediaTimeRange:: latestTime () const

Returns the latest time within the time range.

For empty time ranges, this value is equal to zero.

另请参阅 earliestTime ().

void QMediaTimeRange:: removeInterval (const QMediaTimeRange::Interval & interval )

移除指定 interval from the time range.

Removing intervals which are not normal is invalid, and will be ignored.

Intervals within the time range will be trimmed, split or deleted such that no intervals within the time range include any part of the target interval.

This operation takes linear time.

另请参阅 addInterval ().

void QMediaTimeRange:: removeInterval ( qint64 start , qint64 end )

这是重载函数。

Removes the interval specified by start and end from the time range.

另请参阅 removeInterval ().

void QMediaTimeRange:: removeTimeRange (const QMediaTimeRange & range )

Removes each of the intervals in range from this time range.

相当于调用 removeInterval () for each interval in range .

QMediaTimeRange &QMediaTimeRange:: operator+= (const QMediaTimeRange & other )

Adds each interval in other to the time range and returns the result.

QMediaTimeRange &QMediaTimeRange:: operator+= (const QMediaTimeRange::Interval & interval )

Adds the specified interval to the time range and returns the result.

QMediaTimeRange &QMediaTimeRange:: operator-= (const QMediaTimeRange & other )

Removes each interval in other from the time range and returns the result.

QMediaTimeRange &QMediaTimeRange:: operator-= (const QMediaTimeRange::Interval & interval )

移除指定 interval from the time range and returns the result.

相关非成员

bool operator!= (const QMediaTimeRange & lhs , const QMediaTimeRange & rhs )

Returns true if one or more intervals in lhs are not present in rhs .

QMediaTimeRange operator+ (const QMediaTimeRange & r1 , const QMediaTimeRange & r2 )

Returns a time range containing the union between r1 and r2 .

QMediaTimeRange operator- (const QMediaTimeRange & r1 , const QMediaTimeRange & r2 )

Returns a time range containing r2 减去 r1 .

bool operator== (const QMediaTimeRange & lhs , const QMediaTimeRange & rhs )

Returns true if all intervals in lhs are present in rhs .