File: fake__sounddevice.py

package info (click to toggle)
python-sounddevice 0.5.3-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 480 kB
  • sloc: python: 2,482; sh: 12; makefile: 10
file content (53 lines) | stat: -rw-r--r-- 926 bytes parent folder | download
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
"""Mock module for Sphinx autodoc."""


import ctypes.util


old_find_library = ctypes.util.find_library


def new_find_library(name):
    if 'portaudio' in name.lower():
        return NotImplemented
    return old_find_library(name)


# Monkey-patch ctypes to disable searching for PortAudio
ctypes.util.find_library = new_find_library


class ffi:

    NULL = NotImplemented
    I_AM_FAKE = True  # This is used for the documentation of "default"

    def dlopen(self, _):
        return FakeLibrary()


ffi = ffi()


class FakeLibrary:

    # from portaudio.h:

    paFloat32 = paInt32 = paInt24 = paInt16 = paInt8 = paUInt8 = NotImplemented
    paFramesPerBufferUnspecified = 0

    def Pa_Initialize(self):
        return 0

    def Pa_Terminate(self):
        return 0

    # from stdio.h:

    def fopen(*args, **kwargs):
        return NotImplemented

    def fclose(*args):
        pass

    stderr = NotImplemented