HulaLoop
Simple cross-platform audio loopback and recording.
Classes | Typedefs | Enumerations | Functions
hula Namespace Reference

Wrapper around translation functions for Qt. More...

Classes

class  CLI
 
class  Controller
 Central component of the audio backend. More...
 
class  Device
 Wrapper for OS specific device information. More...
 
struct  DeviceID
 Struct for the three types of device ID. More...
 
class  Export
 A class used to copy data from temp files and export files. More...
 
class  HulaAudioSettings
 Class containing all settings pertinent to the audio module. More...
 
struct  HulaImmediateArgs
 Args parsed from CLI flags. More...
 
class  HulaRingBuffer
 HulaLoop wrapper class for PortAudio ring buffer. More...
 
class  HulaSettings
 Singleton class containing all settings for the application. More...
 
class  InteractiveCLI
 Class containing the interactive CLI. More...
 
class  LinuxAudio
 An audio class that captures system wide audio on Linux. More...
 
class  OSAudio
 Abstract class that defines the required components for OS specfic audio classes. More...
 
class  OSXAudio
 A audio class that captures system wide audio on OSX. More...
 
class  QMLBridge
 Class for communicating between QML and C++. More...
 
class  Record
 Class for Recording audio and abstracting OS specific stuff. More...
 
class  SystemTrayIcon
 Class for communicating between QML and C++. More...
 
class  Transport
 Extra class for managing the state of the application and all audio related processes. More...
 
class  Updater
 
class  WindowsAudio
 A audio class that captures system wide audio on Windows. More...
 

Typedefs

typedef struct hula::HulaImmediateArgs HulaImmediateArgs
 Args parsed from CLI flags.
 

Enumerations

enum  DeviceType { RECORD = 1, PLAYBACK = 2, LOOPBACK = 4 }
 Denotes type of Device. More...
 
enum  Encoding { WAV, FLAC, CAF, AIFF }
 Specifiy the encoding type for the output file.
 
enum  TransportState {
  READY, RECORDING, STOPPED, PLAYING,
  PAUSED
}
 Available states for the recording/playback logic of the application.
 
enum  HulaCliStatus { HULA_CLI_SUCCESS, HULA_CLI_FAILURE, HULA_CLI_EXIT }
 Status returned by calls to processCommand. More...
 

Functions

void printDeviceList (Transport *t)
 Utility CLI function to print the device list to the console. More...
 
DevicefindDevice (Transport *t, const std::string &name, DeviceType type)
 Utility function for searching the list of devices. More...
 
void printSettings (const HulaImmediateArgs &args)
 Utility function for printing the current application settings.
 

Detailed Description

Wrapper around translation functions for Qt.

Enumeration Type Documentation

Denotes type of Device.

Meant to be bitwise or'd together to support multiple capabilities.

Status returned by calls to processCommand.

Indicate any action required of the caller.

Function Documentation

Device* hula::findDevice ( Transport t,
const std::string &  name,
DeviceType  type 
)
inline

Utility function for searching the list of devices.

Search is NOT limited to devices of DeviceType type. Since restricting type would mess up indexing, it is ignored for now.

Parameters
tTransport from which devices should be requested
nameName of the desired device
typeExpected type of the desired device
Returns
Pointer to newly allocated Device object if found
nullptr if not found
void hula::printDeviceList ( Transport t)
inline

Utility CLI function to print the device list to the console.

Parameters
tTransport from which devices should be requested