/usr/include/CLAM/LadspaWrapper.hxx is in libclam-dev 1.4.0-6.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | #ifndef _LadspaWrapper_hxx_
#define _LadspaWrapper_hxx_
#include "DataTypes.hxx"
#include "OutControl.hxx"
#include "InControl.hxx"
#include "Processing.hxx"
#include "RunTimeLibraryLoader.hxx"
#include <ladspa.h>
#include <string>
namespace CLAM
{
class AudioInPort;
class AudioOutPort;
class LadspaWrapper : public Processing
{
private:
typedef void * SOPointer;
LADSPA_Handle _instance;
const LADSPA_Descriptor * _descriptor;
SOPointer _sharedObject;
std::string _libraryFileName;
std::vector< AudioInPort* > _inputPorts;
std::vector< AudioOutPort* > _outputPorts;
std::vector< FloatInControl* > _inputControls;
std::vector< FloatOutControl* > _outputControls;
std::vector< LADSPA_Data > _outputControlValues;
unsigned _bufferSize;
std::string _factoryKey;
void RemovePortsAndControls();
void ConfigurePortsAndControls();
void ConfigureControlsPointers();
void DoUpdatePortsPointers();
public:
LadspaWrapper( const Config & c = Config());
LadspaWrapper( const std::string& libraryFileName, unsigned index, const std::string& factoryKey );
bool ConcreteStart();
bool ConcreteStop();
bool ConcreteConfigure(const ProcessingConfig&);
bool Do();
virtual ~LadspaWrapper();
const char * GetClassName() const;
bool LoadLibraryFunction(const std::string& libraryFileName, unsigned index, const std::string& factoryKey);
};
} //namespace CLAM
#endif
|