Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members

MClientAudioInputPort Class Reference

A client audio input port.

#include <MClientAudioInputPort.h>

Inheritance diagram for MClientAudioInputPort:

MAudioInputPort MClientPort MPort MExternalAudioInputPort List of all members.

Public Slots

virtual bool Connect (MAudioOutputPort *port)
virtual bool Disconnect (MAudioOutputPort *port)

Public Member Functions

virtual MClientClient () const
virtual float * Buffer ()
virtual bool IsCalculated ()
virtual unsigned int NumberOfPluginConnections ()
void CalculateBuffer ()
void SetNotCalculated ()

Protected Member Functions

 MClientAudioInputPort (jack_port_t *jack_port, MClient *client)

Protected Attributes

bool _calculated
vector< MPluginAudioOutputPort * > _pluginConnection

Friends

MClientAudioInputPortMClient::addAudioInput (jack_port_t *jackPort)

Constructor & Destructor Documentation

MClientAudioInputPort::MClientAudioInputPort jack_port_t *  jack_port,
MClient client
[protected]
 

Creates a client port corresponding to the jack_port handle and belonging to the client client.


Member Function Documentation

MClient * MClientAudioInputPort::Client  )  const [virtual]
 

The client owning the port.

Implements MClientPort.

float * MClientAudioInputPort::Buffer  )  [virtual]
 

The buffer associated with the port.

This buffer is provided filled up with audio data that correspond to a mix from the incoming connections ( connections from client ports as well as plugin ports ).

Note:
The address of the buffer is the same as the address provided by JACK.

Reimplemented from MClientPort.

Reimplemented in MExternalAudioInputPort.

bool MClientAudioInputPort::IsCalculated  )  [virtual]
 

Was the port buffer already calculated for this cycle ?

unsigned int MClientAudioInputPort::NumberOfPluginConnections  )  [virtual]
 

The number of plugin ports connected to this port.

void MClientAudioInputPort::CalculateBuffer  ) 
 

Calculates the input buffer of the port by mixing the actual input provided by JACK with the inputs coming from the plugin connections.

This needs to be done at each JACK cycle and will be performed by the port itself when the first call to Buffer( ) is made.

Postcondition:
IsCalculated( ) == TRUE

void MClientAudioInputPort::SetNotCalculated  ) 
 

Sets the port buffer as not calculated.

Postcondition:
IsCalculated( ) == FALSE

bool MClientAudioInputPort::Connect MAudioOutputPort port  )  [virtual, slot]
 

See also:
MAudioInputPort::Connect( MAudioOutputPort * port )
This is the actual connection process of the port.

A MClientAudioInput port can be connected to :

Implements MAudioInputPort.

Reimplemented in MExternalAudioInputPort.

bool MClientAudioInputPort::Disconnect MAudioOutputPort port  )  [virtual, slot]
 

See also:
MAudioInputPort::Disconnect( MAudioOutputPort * port )

Implements MAudioInputPort.

Reimplemented in MExternalAudioInputPort.


Member Data Documentation

bool MClientAudioInputPort::_calculated [protected]
 

Was the port buffer already calculated for this cycle ?

vector< MPluginAudioOutputPort * > MClientAudioInputPort::_pluginConnection [protected]
 

The plugin ports connected to this port.


The documentation for this class was generated from the following files:
Generated on Mon Jan 31 12:43:31 2005 for la Marmite by Doxygen 1.4.1