lipsync/Boare.Lib.Vsq/TempoTableEntry.cs
2024-05-20 00:17:44 +00:00

76 lines
1.8 KiB
C#

/*
* TempoTableEntry.cs
* Copyright (c) 2008-2009 kbinani
*
* This file is part of Boare.Lib.Vsq.
*
* Boare.Lib.Vsq is free software; you can redistribute it and/or
* modify it under the terms of the BSD License.
*
* Boare.Lib.Vsq is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*/
#if JAVA
package org.kbinani.vsq;
import java.io.*;
#else
using System;
namespace Boare.Lib.Vsq {
using boolean = System.Boolean;
#endif
#if JAVA
public class TempoTableEntry implements Comparable<TempoTableEntry>, Cloneable, Serializable {
#else
[Serializable]
public class TempoTableEntry : IComparable<TempoTableEntry>, ICloneable {
#endif
public int Clock;
public int Tempo;
public double Time;
public Object clone() {
return new TempoTableEntry( Clock, Tempo, Time );
}
#if !JAVA
public object Clone() {
return clone();
}
#endif
public TempoTableEntry( int clock, int _tempo, double _time ) {
this.Clock = clock;
this.Tempo = _tempo;
this.Time = _time;
}
public TempoTableEntry() {
}
public int compareTo( TempoTableEntry entry ) {
return this.Clock - entry.Clock;
}
#if !JAVA
public int CompareTo( TempoTableEntry entry ) {
return compareTo( entry );
}
#endif
public boolean Equals( TempoTableEntry entry ) {
if ( this.Clock == entry.Clock ) {
return true;
} else {
return false;
}
}
}
#if !JAVA
}
#endif