Panda3D
|
00001 // Filename: audioSound.cxx 00002 // Created by: skyler (June 6, 2001) 00003 // Prior system by: cary 00004 // 00005 //////////////////////////////////////////////////////////////////// 00006 // 00007 // PANDA 3D SOFTWARE 00008 // Copyright (c) Carnegie Mellon University. All rights reserved. 00009 // 00010 // All use of this software is subject to the terms of the revised BSD 00011 // license. You should have received a copy of this license along 00012 // with this source code in a file named "LICENSE." 00013 // 00014 //////////////////////////////////////////////////////////////////// 00015 00016 #include "audioSound.h" 00017 00018 TypeHandle AudioSound::_type_handle; 00019 00020 //////////////////////////////////////////////////////////////////// 00021 // Function: AudioSound::Destructor 00022 // Access: Published, Virtual 00023 // Description: 00024 //////////////////////////////////////////////////////////////////// 00025 AudioSound:: 00026 ~AudioSound() { 00027 } 00028 00029 //////////////////////////////////////////////////////////////////// 00030 // Function: AudioSound::Constructor 00031 // Access: Protected 00032 // Description: 00033 //////////////////////////////////////////////////////////////////// 00034 AudioSound:: 00035 AudioSound() { 00036 // Intentionally blank. 00037 } 00038 00039 00040 void AudioSound:: 00041 set_3d_attributes(PN_stdfloat px, PN_stdfloat py, PN_stdfloat pz, PN_stdfloat vx, PN_stdfloat vy, PN_stdfloat vz) { 00042 // Intentionally blank. 00043 } 00044 00045 void AudioSound:: 00046 get_3d_attributes(PN_stdfloat *px, PN_stdfloat *py, PN_stdfloat *pz, PN_stdfloat *vx, PN_stdfloat *vy, PN_stdfloat *vz) { 00047 // Intentionally blank. 00048 } 00049 00050 void AudioSound:: 00051 set_3d_min_distance(PN_stdfloat dist) { 00052 // Intentionally blank. 00053 } 00054 00055 PN_stdfloat AudioSound:: 00056 get_3d_min_distance() const { 00057 // Intentionally blank. 00058 return 0.0f; 00059 } 00060 00061 void AudioSound:: 00062 set_3d_max_distance(PN_stdfloat dist) { 00063 // Intentionally blank. 00064 } 00065 00066 PN_stdfloat AudioSound:: 00067 get_3d_max_distance() const { 00068 // Intentionally blank. 00069 return 0.0f; 00070 } 00071 00072 //////////////////////////////////////////////////////////////////// 00073 // Function: AudioSound::get_speaker_mix 00074 // Access: Published 00075 // Description: For use only with FMOD. 00076 //////////////////////////////////////////////////////////////////// 00077 PN_stdfloat AudioSound:: 00078 get_speaker_mix(int speaker) { 00079 // intentionally blank 00080 return 0.0; 00081 } 00082 00083 //////////////////////////////////////////////////////////////////// 00084 // Function: AudioSound::set_speaker_mix 00085 // Access: Published 00086 // Description: For use only with FMOD. 00087 //////////////////////////////////////////////////////////////////// 00088 void AudioSound:: 00089 set_speaker_mix(PN_stdfloat frontleft, PN_stdfloat frontright, PN_stdfloat center, PN_stdfloat sub, PN_stdfloat backleft, PN_stdfloat backright, PN_stdfloat sideleft, PN_stdfloat sideright) { 00090 // intentionally blank 00091 } 00092 00093 //////////////////////////////////////////////////////////////////// 00094 // Function: AudioSound::get_speaker_level 00095 // Access: Published 00096 // Description: For use only with Miles. 00097 //////////////////////////////////////////////////////////////////// 00098 PN_stdfloat AudioSound:: 00099 get_speaker_level(int index) { 00100 // intentionally blank 00101 return 0.0; 00102 } 00103 00104 //////////////////////////////////////////////////////////////////// 00105 // Function: AudioSound::set_speaker_levels 00106 // Access: Published 00107 // Description: For use only with Miles. 00108 //////////////////////////////////////////////////////////////////// 00109 void AudioSound:: 00110 set_speaker_levels(PN_stdfloat level1, PN_stdfloat level2, PN_stdfloat level3, PN_stdfloat level4, PN_stdfloat level5, PN_stdfloat level6, PN_stdfloat level7, PN_stdfloat level8, PN_stdfloat level9) { 00111 // intentionally blank 00112 } 00113 00114 //////////////////////////////////////////////////////////////////// 00115 // Function: AudioSound::configure_filters 00116 // Access: Published 00117 // Description: Configure the local DSP filter chain. 00118 // 00119 // There is no guarantee that any given configuration 00120 // will be supported by the implementation. The only 00121 // way to find out what's supported is to call 00122 // configure_filters. If it returns true, the 00123 // configuration is supported. 00124 //////////////////////////////////////////////////////////////////// 00125 bool AudioSound:: 00126 configure_filters(FilterProperties *config) { 00127 const FilterProperties::ConfigVector &conf = config->get_config(); 00128 if (conf.empty()) { 00129 return true; 00130 } else { 00131 return false; 00132 } 00133 } 00134 00135 //////////////////////////////////////////////////////////////////// 00136 // Function: AudioSound::get_priority 00137 // Access: Published 00138 // Description: 00139 //////////////////////////////////////////////////////////////////// 00140 int AudioSound:: 00141 get_priority() { 00142 // intentionally blank 00143 return 0; 00144 } 00145 00146 //////////////////////////////////////////////////////////////////// 00147 // Function: AudioSound::set_priority 00148 // Access: Published 00149 // Description: 00150 //////////////////////////////////////////////////////////////////// 00151 void AudioSound:: 00152 set_priority(int priority) { 00153 // intentionally blank 00154 ; 00155 } 00156 00157 //////////////////////////////////////////////////////////////////// 00158 // Function: AudioSound::output 00159 // Access: Published, Virtual 00160 // Description: 00161 //////////////////////////////////////////////////////////////////// 00162 void AudioSound:: 00163 output(ostream &out) const { 00164 out << get_type() << " " << get_name() << " " << status(); 00165 } 00166 00167 //////////////////////////////////////////////////////////////////// 00168 // Function: AudioSound::write 00169 // Access: Published, Virtual 00170 // Description: 00171 //////////////////////////////////////////////////////////////////// 00172 void AudioSound:: 00173 write(ostream &out) const { 00174 out << (*this) << "\n"; 00175 } 00176 00177 //////////////////////////////////////////////////////////////////// 00178 // Function: AudioSound::SoundStatus::output operator 00179 // Description: 00180 //////////////////////////////////////////////////////////////////// 00181 ostream & 00182 operator << (ostream &out, AudioSound::SoundStatus status) { 00183 switch (status) { 00184 case AudioSound::BAD: 00185 return out << "BAD"; 00186 00187 case AudioSound::READY: 00188 return out << "READY"; 00189 00190 case AudioSound::PLAYING: 00191 return out << "PLAYING"; 00192 } 00193 00194 return out << "**invalid AudioSound::SoundStatus(" << (int)status << ")**"; 00195 }