| 560 | } |
| 561 | |
| 562 | result Sfxr::loadParamsFile(File *aFile) |
| 563 | { |
| 564 | int version=0; |
| 565 | aFile->read((unsigned char*)&version, sizeof(int)); |
| 566 | if(version!=100 && version!=101 && version!=102) |
| 567 | { |
| 568 | return FILE_LOAD_FAILED; |
| 569 | } |
| 570 | |
| 571 | aFile->read((unsigned char*)&mParams.wave_type, sizeof(int)); |
| 572 | |
| 573 | |
| 574 | mParams.sound_vol=0.5f; |
| 575 | if(version==102) |
| 576 | aFile->read((unsigned char*)&mParams.sound_vol, sizeof(float)); |
| 577 | |
| 578 | aFile->read((unsigned char*)&mParams.p_base_freq, sizeof(float)); |
| 579 | aFile->read((unsigned char*)&mParams.p_freq_limit, sizeof(float)); |
| 580 | aFile->read((unsigned char*)&mParams.p_freq_ramp, sizeof(float)); |
| 581 | if(version>=101) |
| 582 | aFile->read((unsigned char*)&mParams.p_freq_dramp, sizeof(float)); |
| 583 | aFile->read((unsigned char*)&mParams.p_duty, sizeof(float)); |
| 584 | aFile->read((unsigned char*)&mParams.p_duty_ramp, sizeof(float)); |
| 585 | |
| 586 | aFile->read((unsigned char*)&mParams.p_vib_strength, sizeof(float)); |
| 587 | aFile->read((unsigned char*)&mParams.p_vib_speed, sizeof(float)); |
| 588 | aFile->read((unsigned char*)&mParams.p_vib_delay, sizeof(float)); |
| 589 | |
| 590 | aFile->read((unsigned char*)&mParams.p_env_attack, sizeof(float)); |
| 591 | aFile->read((unsigned char*)&mParams.p_env_sustain, sizeof(float)); |
| 592 | aFile->read((unsigned char*)&mParams.p_env_decay, sizeof(float)); |
| 593 | aFile->read((unsigned char*)&mParams.p_env_punch, sizeof(float)); |
| 594 | |
| 595 | aFile->read((unsigned char*)&mParams.filter_on, sizeof(bool)); |
| 596 | aFile->read((unsigned char*)&mParams.p_lpf_resonance, sizeof(float)); |
| 597 | aFile->read((unsigned char*)&mParams.p_lpf_freq, sizeof(float)); |
| 598 | aFile->read((unsigned char*)&mParams.p_lpf_ramp, sizeof(float)); |
| 599 | aFile->read((unsigned char*)&mParams.p_hpf_freq, sizeof(float)); |
| 600 | aFile->read((unsigned char*)&mParams.p_hpf_ramp, sizeof(float)); |
| 601 | |
| 602 | aFile->read((unsigned char*)&mParams.p_pha_offset, sizeof(float)); |
| 603 | aFile->read((unsigned char*)&mParams.p_pha_ramp, sizeof(float)); |
| 604 | |
| 605 | aFile->read((unsigned char*)&mParams.p_repeat_speed, sizeof(float)); |
| 606 | |
| 607 | if(version>=101) |
| 608 | { |
| 609 | aFile->read((unsigned char*)&mParams.p_arp_speed, sizeof(float)); |
| 610 | aFile->read((unsigned char*)&mParams.p_arp_mod, sizeof(float)); |
| 611 | } |
| 612 | |
| 613 | return 0; |
| 614 | } |
| 615 | |
| 616 | Sfxr::~Sfxr() |
| 617 | { |