31 lines
982 B
C++
31 lines
982 B
C++
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
|
// This file is part of the "cAudio Engine"
|
|
// For conditions of distribution and use, see copyright notice in cAudio.h
|
|
|
|
#ifndef IDATASOURCEFACTORY_H
|
|
#define IDATASOURCEFACTORY_H
|
|
|
|
#include "IDataSource.h"
|
|
|
|
namespace cAudio
|
|
{
|
|
//! Interface for creating data sources for use with the engine.
|
|
class IDataSourceFactory
|
|
{
|
|
public:
|
|
IDataSourceFactory() { }
|
|
virtual ~IDataSourceFactory() { }
|
|
|
|
//! Creates a data source instance for use with the engine.
|
|
/**
|
|
\param filename: Filename of the file to get a stream for.
|
|
\param streamingRequested: True if the user requested streaming capabilities from the data source.
|
|
\return A pointer to a data source instance or NULL on failure to allocate. */
|
|
virtual IDataSource* CreateDataSource(const char* filename, bool streamingRequested) = 0;
|
|
protected:
|
|
private:
|
|
};
|
|
};
|
|
|
|
#endif //! IDATASOURCEFACTORY_H
|