tweaks to build libs as DLLs under windows

This commit is contained in:
Josh Coalson
2002-10-16 22:18:32 +00:00
parent fc701471a4
commit 55bc58704e
23 changed files with 617 additions and 545 deletions

View File

@@ -20,6 +20,8 @@
#ifndef FLACPP__ALL_H
#define FLACPP__ALL_H
#include "export.h"
#include "encoder.h"
#include "decoder.h"
#include "metadata.h"

View File

@@ -20,6 +20,8 @@
#ifndef FLACPP__DECODER_H
#define FLACPP__DECODER_H
#include "export.h"
#include "FLAC/file_decoder.h"
#include "FLAC/seekable_stream_decoder.h"
#include "FLAC/stream_decoder.h"
@@ -74,9 +76,9 @@ namespace FLAC {
/** This class wraps the ::FLAC__StreamDecoder.
*/
class Stream {
class FLACPP_API Stream {
public:
class State {
class FLACPP_API State {
public:
inline State(::FLAC__StreamDecoderState state): state_(state) { }
inline operator ::FLAC__StreamDecoderState() const { return state_; }
@@ -160,9 +162,9 @@ namespace FLAC {
/** This class wraps the ::FLAC__SeekableStreamDecoder.
*/
class SeekableStream {
class FLACPP_API SeekableStream {
public:
class State {
class FLACPP_API State {
public:
inline State(::FLAC__SeekableStreamDecoderState state): state_(state) { }
inline operator ::FLAC__SeekableStreamDecoderState() const { return state_; }
@@ -255,9 +257,9 @@ namespace FLAC {
/** This class wraps the ::FLAC__FileDecoder.
*/
class File {
class FLACPP_API File {
public:
class State {
class FLACPP_API State {
public:
inline State(::FLAC__FileDecoderState state): state_(state) { }
inline operator ::FLAC__FileDecoderState() const { return state_; }

View File

@@ -20,6 +20,8 @@
#ifndef FLACPP__ENCODER_H
#define FLACPP__ENCODER_H
#include "export.h"
#include "FLAC/file_encoder.h"
#include "FLAC/seekable_stream_encoder.h"
#include "FLAC/stream_encoder.h"
@@ -75,9 +77,9 @@ namespace FLAC {
/** This class wraps the ::FLAC__StreamEncoder.
*/
class Stream {
class FLACPP_API Stream {
public:
class State {
class FLACPP_API State {
public:
inline State(::FLAC__StreamEncoderState state): state_(state) { }
inline operator ::FLAC__StreamEncoderState() const { return state_; }
@@ -168,9 +170,9 @@ namespace FLAC {
/** This class wraps the ::FLAC__SeekableStreamEncoder.
*/
class SeekableStream {
class FLACPP_API SeekableStream {
public:
class State {
class FLACPP_API State {
public:
inline State(::FLAC__SeekableStreamEncoderState state): state_(state) { }
inline operator ::FLAC__SeekableStreamEncoderState() const { return state_; }
@@ -262,9 +264,9 @@ namespace FLAC {
/** This class wraps the ::FLAC__FileEncoder.
*/
class File {
class FLACPP_API File {
public:
class State {
class FLACPP_API State {
public:
inline State(::FLAC__FileEncoderState state): state_(state) { }
inline operator ::FLAC__FileEncoderState() const { return state_; }

View File

@@ -20,6 +20,8 @@
#ifndef FLACPP__METADATA_H
#define FLACPP__METADATA_H
#include "export.h"
#include "FLAC/metadata.h"
// ===============================================================
@@ -87,7 +89,7 @@ namespace FLAC {
/** Base class for all metadata block types.
*/
class Prototype {
class FLACPP_API Prototype {
protected:
//@{
/** Constructs a copy of the given object. This form
@@ -214,13 +216,13 @@ namespace FLAC {
{ return 0 != object_; }
/** Create a deep copy of an object and return it. */
Prototype *clone(const Prototype *);
FLACPP_API Prototype *clone(const Prototype *);
/** STREAMINFO metadata block.
* See <A HREF="../format.html#metadata_block_streaminfo">format specification</A>.
*/
class StreamInfo : public Prototype {
class FLACPP_API StreamInfo : public Prototype {
public:
StreamInfo();
@@ -288,7 +290,7 @@ namespace FLAC {
/** PADDING metadata block.
* See <A HREF="../format.html#metadata_block_padding">format specification</A>.
*/
class Padding : public Prototype {
class FLACPP_API Padding : public Prototype {
public:
Padding();
@@ -335,7 +337,7 @@ namespace FLAC {
/** APPLICATION metadata block.
* See <A HREF="../format.html#metadata_block_application">format specification</A>.
*/
class Application : public Prototype {
class FLACPP_API Application : public Prototype {
public:
Application();
//
@@ -388,7 +390,7 @@ namespace FLAC {
/** SEEKTABLE metadata block.
* See <A HREF="../format.html#metadata_block_seektable">format specification</A>.
*/
class SeekTable : public Prototype {
class FLACPP_API SeekTable : public Prototype {
public:
SeekTable();
@@ -448,7 +450,7 @@ namespace FLAC {
/** VORBIS_COMMENT metadata block.
* See <A HREF="../format.html#metadata_block_vorbis_comment">format specification</A>.
*/
class VorbisComment : public Prototype {
class FLACPP_API VorbisComment : public Prototype {
public:
/** Convenience class for encapsulating Vorbis comment
* entries. An entry is a vendor string or a comment
@@ -474,7 +476,7 @@ namespace FLAC {
* Always check is_valid() after the constructor or operator=
* to make sure memory was properly allocated.
*/
class Entry {
class FLACPP_API Entry {
public:
Entry();
Entry(const char *field, unsigned field_length);
@@ -590,7 +592,7 @@ namespace FLAC {
*/
//! See FLAC__metadata_get_streaminfo().
bool get_streaminfo(const char *filename, StreamInfo &streaminfo);
FLACPP_API bool get_streaminfo(const char *filename, StreamInfo &streaminfo);
/* \} */
@@ -627,9 +629,9 @@ namespace FLAC {
/** This class is a wrapper around the FLAC__metadata_simple_iterator
* structures and methods; see ::FLAC__Metadata_SimpleIterator.
*/
class SimpleIterator {
class FLACPP_API SimpleIterator {
public:
class Status {
class FLACPP_API Status {
public:
inline Status(::FLAC__Metadata_SimpleIteratorStatus status): status_(status) { }
inline operator ::FLAC__Metadata_SimpleIteratorStatus() const { return status_; }
@@ -704,9 +706,9 @@ namespace FLAC {
/** This class is a wrapper around the FLAC__metadata_chain
* structures and methods; see ::FLAC__Metadata_Chain.
*/
class Chain {
class FLACPP_API Chain {
public:
class Status {
class FLACPP_API Status {
public:
inline Status(::FLAC__Metadata_ChainStatus status): status_(status) { }
inline operator ::FLAC__Metadata_ChainStatus() const { return status_; }
@@ -737,7 +739,7 @@ namespace FLAC {
/** This class is a wrapper around the FLAC__metadata_iterator
* structures and methods; see ::FLAC__Metadata_Iterator.
*/
class Iterator {
class FLACPP_API Iterator {
public:
Iterator();
virtual ~Iterator();