/**
*
*/
package video.lib;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.DecimalFormat;
import java.util.Timer;
/**
* @author yuezhu
*
*/
public abstract class Statistic implements ServiceInterface {
public static DecimalFormat dt = (DecimalFormat) DecimalFormat.getInstance();
protected String name;
protected double totalSize;
protected double lastSize;
protected long timeElapsed;
protected double avgThroughput;
protected double throughput;
protected boolean started;
protected Timer timer;
protected FileWriter writer;
protected long currentTime;
public Statistic(String name) {
totalSize = 0;
lastSize = 0;
timeElapsed = 0;
avgThroughput = 0;
throughput = 0;
started = false;
timer = new Timer();
dt.applyPattern("0.000");
this.name = name;
}
abstract public void doStatistic(RtpPacket packet);
public void openFile(String filename, boolean append) throws IOException {
File file = new File(filename);
if (file.exists()) {
file.delete();
}
writer = new FileWriter(filename, append);
// writeToFile("---------------------------------------------------------" + Configuration.getLineSeparator());
}
public void writeToFile(String content) throws IOException {
writer.write(content);
writer.flush();
}
public void closeFile() throws IOException {
// writeToFile("---------------------------------------------------------" + Configuration.getLineSeparator());
writer.close();
}
}