// File: tobias93[P]piano/rtaudio/RtAudio.cpp
// Function: RtApi::clearStreamInfo()
void RtApi :: clearStreamInfo()
{
  stream_.mode = UNINITIALIZED;
  stream_.state = STREAM_CLOSED;
  stream_.sampleRate = 0;
  stream_.bufferSize = 0;
  stream_.nBuffers = 0;
  stream_.userFormat = 0;
  stream_.userInterleaved = true;
  stream_.streamTime = 0.0;
  stream_.apiHandle = 0;
  stream_.deviceBuffer = 0;
  stream_.callbackInfo.callback = 0;
  stream_.callbackInfo.userData = 0;
  stream_.callbackInfo.isRunning = false;
  stream_.callbackInfo.errorCallback = 0;
  for ( int i=0; i<2; i++ ) {
    stream_.device[i] = 11111;
    stream_.doConvertBuffer[i] = false;
    stream_.deviceInterleaved[i] = true;
    stream_.doByteSwap[i] = false;
    stream_.nUserChannels[i] = 0;
    stream_.nDeviceChannels[i] = 0;
    stream_.channelOffset[i] = 0;
    stream_.deviceFormat[i] = 0;
    stream_.latency[i] = 0;
    stream_.userBuffer[i] = 0;
    stream_.convertInfo[i].channels = 0;
    stream_.convertInfo[i].inJump = 0;
    stream_.convertInfo[i].outJump = 0;
    stream_.convertInfo[i].inFormat = 0;
    stream_.convertInfo[i].outFormat = 0;
    stream_.convertInfo[i].inOffset.clear();
    stream_.convertInfo[i].outOffset.clear();
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movl $0xffffffb5, 0x1b8(%rax) # imm = 0xFFFFFFB5
movl $0xffffffce, 0x1bc(%rax) # imm = 0xFFFFFFCE
movl $0x0, 0x1e0(%rax)
movl $0x0, 0x1e4(%rax)
movl $0x0, 0x1e8(%rax)
movq $0x0, 0x218(%rax)
movb $0x1, 0x1da(%rax)
xorps %xmm0, %xmm0
movsd %xmm0, 0x330(%rax)
movq $0x0, 0x1b0(%rax)
movq $0x0, 0x1d0(%rax)
movq $0x0, 0x268(%rax)
movq $0x0, 0x270(%rax)
movb $0x0, 0x288(%rax)
movq $0x0, 0x278(%rax)
movl $0x0, -0xc(%rbp)
cmpl $0x2, -0xc(%rbp)
jge 0xa3c2
movq -0x18(%rbp), %rdi
movslq -0xc(%rbp), %rax
movl $0x2b67, 0x1a8(%rdi,%rax,4) # imm = 0x2B67
movslq -0xc(%rbp), %rax
movb $0x0, 0x1d8(%rdi,%rax)
movslq -0xc(%rbp), %rax
movb $0x1, 0x1db(%rdi,%rax)
movslq -0xc(%rbp), %rax
movb $0x0, 0x1dd(%rdi,%rax)
movslq -0xc(%rbp), %rax
movl $0x0, 0x1ec(%rdi,%rax,4)
movslq -0xc(%rbp), %rax
movl $0x0, 0x1f4(%rdi,%rax,4)
movslq -0xc(%rbp), %rax
movl $0x0, 0x1fc(%rdi,%rax,4)
movslq -0xc(%rbp), %rax
movq $0x0, 0x220(%rdi,%rax,8)
movslq -0xc(%rbp), %rax
movq $0x0, 0x208(%rdi,%rax,8)
movslq -0xc(%rbp), %rax
movq $0x0, 0x1c0(%rdi,%rax,8)
movq %rdi, %rax
addq $0x1a8, %rax            # imm = 0x1A8
addq $0xe8, %rax
movslq -0xc(%rbp), %rcx
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movl $0x0, (%rax)
movq %rdi, %rax
addq $0x1a8, %rax            # imm = 0x1A8
addq $0xe8, %rax
movslq -0xc(%rbp), %rcx
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movl $0x0, 0x4(%rax)
movq %rdi, %rax
addq $0x1a8, %rax            # imm = 0x1A8
addq $0xe8, %rax
movslq -0xc(%rbp), %rcx
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movl $0x0, 0x8(%rax)
movq %rdi, %rax
addq $0x1a8, %rax            # imm = 0x1A8
addq $0xe8, %rax
movslq -0xc(%rbp), %rcx
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movq $0x0, 0x10(%rax)
movq %rdi, %rax
addq $0x1a8, %rax            # imm = 0x1A8
addq $0xe8, %rax
movslq -0xc(%rbp), %rcx
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movq $0x0, 0x18(%rax)
addq $0x1a8, %rdi            # imm = 0x1A8
addq $0xe8, %rdi
movslq -0xc(%rbp), %rax
imulq $0x50, %rax, %rax
addq %rax, %rdi
addq $0x20, %rdi
callq 0xff00
movq -0x18(%rbp), %rdi
addq $0x1a8, %rdi            # imm = 0x1A8
addq $0xe8, %rdi
movslq -0xc(%rbp), %rax
imulq $0x50, %rax, %rax
addq %rax, %rdi
addq $0x38, %rdi
callq 0xff00
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0xa228
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)