// File: /workspace/github_c_makefile_star2_O0/stonezwr[P]SpiKL-IP/network.C
// Function: Network::WriteSynWeightsToFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, char*)
void Network::WriteSynWeightsToFile(const string& pre_g, const string& post_g, char * filename){
    NeuronGroup * pre = SearchForNeuronGroup(pre_g.c_str());
    NeuronGroup * post = SearchForNeuronGroup(post_g.c_str());
    if(pre == NULL){
        cout<<"Warning::Cannot find neuron group named: "<<pre_g
            <<" for writing the weights"<<endl;
        return;
    }
    if(post == NULL){
        cout<<"Warning::Cannot find neuron group named: "<<post_g
            <<" for writing the weights"<<endl;
        return;
    }
    ofstream f_out(filename);
    if(!f_out.is_open()){
        cout<<"WriteSynWeightsToFile(), cannot open the file : "<<filename<<endl;
        exit(EXIT_FAILURE);
    }

    int index = 0;
    pre->WriteSynWeightsToFile(f_out, index, post_g);
    f_out.close();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x270, %rsp            # imm = 0x270
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x248(%rbp)
movq -0x10(%rbp), %rdi
callq 0x4160
movq -0x248(%rbp), %rdi
movq %rax, %rsi
callq 0x1e9c0
movq %rax, -0x28(%rbp)
movq -0x18(%rbp), %rdi
callq 0x4160
movq -0x248(%rbp), %rdi
movq %rax, %rsi
callq 0x1e9c0
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x28(%rbp)
jne 0x22b77
movq 0x2a48c(%rip), %rdi     # 0x4cfc8
leaq 0x13617(%rip), %rsi     # 0x3615a
callq 0x4360
movq %rax, %rdi
movq -0x10(%rbp), %rsi
callq 0x4300
movq %rax, %rdi
leaq 0x13626(%rip), %rsi     # 0x36184
callq 0x4360
movq %rax, %rdi
movq 0x2a44b(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x22cb1
cmpq $0x0, -0x30(%rbp)
jne 0x22bc0
movq 0x2a443(%rip), %rdi     # 0x4cfc8
leaq 0x135ce(%rip), %rsi     # 0x3615a
callq 0x4360
movq %rax, %rdi
movq -0x18(%rbp), %rsi
callq 0x4300
movq %rax, %rdi
leaq 0x135dd(%rip), %rsi     # 0x36184
callq 0x4360
movq %rax, %rdi
movq 0x2a402(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x22cb1
movq -0x20(%rbp), %rsi
leaq -0x230(%rbp), %rdi
movq %rdi, -0x258(%rbp)
movl $0x10, %edx
callq 0x43e0
movq -0x258(%rbp), %rdi
callq 0x4270
movb %al, -0x249(%rbp)
jmp 0x22bf0
movb -0x249(%rbp), %al
testb $0x1, %al
jne 0x22c70
jmp 0x22bfc
movq 0x2a3c5(%rip), %rdi     # 0x4cfc8
leaq 0x13593(%rip), %rsi     # 0x3619d
callq 0x4360
movq %rax, -0x260(%rbp)
jmp 0x22c18
movq -0x260(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x4360
movq %rax, -0x268(%rbp)
jmp 0x22c31
movq -0x268(%rbp), %rdi
movq 0x2a379(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x22c46
movl $0x1, %edi
callq 0x4440
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x238(%rbp)
movl %eax, -0x23c(%rbp)
leaq -0x230(%rbp), %rdi
callq 0x4570
jmp 0x22cba
movl $0x0, -0x240(%rbp)
movq -0x28(%rbp), %rdi
movq -0x18(%rbp), %rcx
leaq -0x230(%rbp), %rsi
leaq -0x240(%rbp), %rdx
callq 0x101c0
jmp 0x22c97
leaq -0x230(%rbp), %rdi
callq 0x4530
jmp 0x22ca5
leaq -0x230(%rbp), %rdi
callq 0x4570
addq $0x270, %rsp            # imm = 0x270
popq %rbp
retq
movq -0x238(%rbp), %rdi
callq 0x46d0
nopw %cs:(%rax,%rax)