/*****************************************************************************
 *
 *  mediainfoformat.cpp -- Base class for mediainfoformat interfaces.
 *
 *  Copyright (C) 2010 Starbuck <starbuck@labdv.com>
 *  All rights reserved.
 *
 *  This file is part of the JobManager module of the DVDx 4 application.
 *
 *  GNU Lesser General Public License Usage
 *  This file may be used under the terms of the GNU Lesser General
 *  Public License version 2.1 as published by the Free Software
 *  Foundation and appearing in the file LICENSE.LGPL included in the
 *  packaging of this file.  Please review the following information to
 *  ensure the GNU Lesser General Public License version 2.1 requirements
 *  will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
 *
 *  GNU General Public License Usage
 *  Alternatively, this file may be used under the terms of the GNU
 *  General Public License version 3.0 as published by the Free Software
 *  Foundation and appearing in the file LICENSE.GPL included in the
 *  packaging of this file.  Please review the following information to
 *  ensure the GNU General Public License version 3.0 requirements will be
 *  met: http://www.gnu.org/copyleft/gpl.html.
 *
 *****************************************************************************/

#include "mediainfoformat.h"
#include <QString>

MediaInfoFormat::MediaInfoFormat()
{
	m_bitrateFlag = false;
	m_bitrate = 0.0;

	m_durationFlag = false;
	m_duration = 0.0;

	m_formatNameFlag = false;
	m_formatName.clear();

	m_formatLongNameFlag = false;
	m_formatLongName.clear();

	m_nbStreamsFlag = false;
	m_nbStreams = 0;

	m_sizeFlag = false;
	m_size = 0;

	m_startTimeFlag = false;
	m_startTime = 0.0;
}

double MediaInfoFormat::bitrate()
{
	return m_bitrate;
}

double MediaInfoFormat::duration()
{
	return m_duration;
}

QString MediaInfoFormat::formatName()
{
	return m_formatName;
}

QString MediaInfoFormat::formatLongName()
{
	return m_formatLongName;
}

bool MediaInfoFormat::isAvailableBitrate()
{
	return m_durationFlag;
}

bool MediaInfoFormat::isAvailableFormatName()
{
	return m_formatNameFlag;
}

bool MediaInfoFormat::isAvailableFormatLongName()
{
	return m_formatLongNameFlag;
}

bool MediaInfoFormat::isAvailableNbStreams()
{
	return m_nbStreamsFlag;
}

bool MediaInfoFormat::isAvailableSize()
{
	return m_sizeFlag;
}

bool MediaInfoFormat::isAvailableStartTime()
{
	return m_startTimeFlag;
}

int MediaInfoFormat::nbStreams()
{
	return m_nbStreams;
}

qint64 MediaInfoFormat::size()
{
	return m_size;
}

double MediaInfoFormat::startTime()
{
	return m_startTime;
}

void MediaInfoFormat::setBitrate(double value)
{
	m_bitrate = value;
}

void MediaInfoFormat::setDuration(double value)
{
	m_duration = value;
}

void MediaInfoFormat::setFormatName(QString value)
{
	m_formatName = value;
}

void MediaInfoFormat::setFormatLongName(QString value)
{
	m_formatLongName = value;
}

void MediaInfoFormat::setNbStreams(int value)
{
	m_nbStreams = value;
}

void MediaInfoFormat::setSize(qint64 value)
{
	m_size = value;
}

void MediaInfoFormat::setStartTime(double value)
{
	m_startTime = value;
}
