<aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(0)"><spanclass="SelectionMark"> </span>Tout</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(1)"><spanclass="SelectionMark"> </span>Structures de données</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(2)"><spanclass="SelectionMark"> </span>Espaces de nommage</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(3)"><spanclass="SelectionMark"> </span>Fichiers</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(4)"><spanclass="SelectionMark"> </span>Fonctions</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(5)"><spanclass="SelectionMark"> </span>Variables</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(6)"><spanclass="SelectionMark"> </span>Définitions de type</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(7)"><spanclass="SelectionMark"> </span>Énumérations</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(8)"><spanclass="SelectionMark"> </span>Valeurs énumérées</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(9)"><spanclass="SelectionMark"> </span>Macros</a><aclass="SelectItem"href="javascript:void(0)"onclick="searchBox.OnSelectItem(10)"><spanclass="SelectionMark"> </span>Pages</a></div>
<ahref="fmod__output_8h.html">Aller à la documentation de ce fichier.</a><divclass="fragment"><divclass="line"><aname="l00001"></a><spanclass="lineno"> 1</span> <spanclass="comment">/* ==================================================================================================== */</span></div>
<divclass="line"><aname="l00004"></a><spanclass="lineno"> 4</span> <spanclass="comment">/* Use this header if you are wanting to develop your own output plugin to use with */</span></div>
<divclass="line"><aname="l00005"></a><spanclass="lineno"> 5</span> <spanclass="comment">/* FMOD's output system. With this header you can make your own output plugin that FMOD */</span></div>
<divclass="line"><aname="l00006"></a><spanclass="lineno"> 6</span> <spanclass="comment">/* can register and use. See the documentation and examples on how to make a working plugin. */</span></div>
<divclass="line"><aname="l00037"></a><spanclass="lineno"> 37</span> <spanclass="comment"> When creating an output, declare one of these and provide the relevant callbacks and name for FMOD to use when it opens and reads a file of this type.</span></div>
<divclass="line"><aname="l00040"></a><spanclass="lineno"> 40</span> <spanclass="comment"> Members marked with [in] mean the variable can be written to. The user can set the value.<br></span></div>
<divclass="line"><aname="l00041"></a><spanclass="lineno"> 41</span> <spanclass="comment"> Members marked with [out] mean the variable is modified by FMOD and is for reading purposes only. Do not change this value.<br></span></div>
<divclass="line"><aname="l00052"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a8f8f80d37794cde9472343e4487ba3eb"> 52</a></span> <spanclass="keyword">const</span><spanclass="keywordtype">char</span> *<aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a8f8f80d37794cde9472343e4487ba3eb">name</a>; <spanclass="comment">/* [in] Name of the output. */</span></div>
<divclass="line"><aname="l00053"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a5408ac5df4c170828874e1b10b4c35a0"> 53</a></span> <spanclass="keywordtype">unsigned</span><spanclass="keywordtype">int</span><aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a5408ac5df4c170828874e1b10b4c35a0">version</a>; <spanclass="comment">/* [in] Plugin writer's version number. */</span></div>
<divclass="line"><aname="l00054"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a4eded182e423bbc78b60656212249e42"> 54</a></span> <spanclass="keywordtype">int</span><aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a4eded182e423bbc78b60656212249e42">polling</a>; <spanclass="comment">/* [in] If TRUE (non zero), this tells FMOD to start a thread and call getposition / lock / unlock for feeding data. If 0, the output is probably callback based, so all the plugin needs to do is call readfrommixer to the appropriate pointer. */</span></div>
<divclass="line"><aname="l00055"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a72cabfb63651825590744b5bd8f7bf43"> 55</a></span> <aclass="code"href="fmod__output_8h.html#a6a18a9f4871ec535cfb0068a4df13669">FMOD_OUTPUT_GETNUMDRIVERSCALLBACK</a><aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a72cabfb63651825590744b5bd8f7bf43">getnumdrivers</a>; <spanclass="comment">/* [in] For sound device enumeration. This callback is to give System::getNumDrivers somthing to return. */</span></div>
<divclass="line"><aname="l00056"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a97066d3a44ac82915c7a60d01e42f4a3"> 56</a></span> <aclass="code"href="fmod__output_8h.html#a5e4554ce093c66dd8a05cfc6bcc7127a">FMOD_OUTPUT_GETDRIVERNAMECALLBACK</a><aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a97066d3a44ac82915c7a60d01e42f4a3">getdrivername</a>; <spanclass="comment">/* [in] For sound device enumeration. This callback is to give System::getDriverName somthing to return. */</span></div>
<divclass="line"><aname="l00057"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#aaba74fe3ea1ff41d67390b1cf234520e"> 57</a></span> <aclass="code"href="fmod__output_8h.html#a0891aaf312d2d6e7e8e4155723c93c40">FMOD_OUTPUT_GETDRIVERCAPSCALLBACK</a><aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#aaba74fe3ea1ff41d67390b1cf234520e">getdrivercaps</a>; <spanclass="comment">/* [in] For sound device enumeration. This callback is to give System::getDriverCaps somthing to return. */</span></div>
<divclass="line"><aname="l00058"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a74b216e06a4a19c14dcfc3cec7177a74"> 58</a></span>  FMOD_OUTPUT_INITCALLBACK <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a74b216e06a4a19c14dcfc3cec7177a74">init</a>; <spanclass="comment">/* [in] Initialization function for the output device. This is called from System::init. */</span></div>
<divclass="line"><aname="l00059"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a10cb3bfcfd4b7b6b061239a8a8aa7362"> 59</a></span>  FMOD_OUTPUT_CLOSECALLBACK <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a10cb3bfcfd4b7b6b061239a8a8aa7362">close</a>; <spanclass="comment">/* [in] Cleanup / close down function for the output device. This is called from System::close. */</span></div>
<divclass="line"><aname="l00060"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#ab2f093d83e2b4617a665206257ffd82f"> 60</a></span>  FMOD_OUTPUT_UPDATECALLBACK <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#ab2f093d83e2b4617a665206257ffd82f">update</a>; <spanclass="comment">/* [in] Update function that is called once a frame by the user. This is called from System::update. */</span></div>
<divclass="line"><aname="l00061"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#af5beaf423ce4e1cabf293b748507d0cf"> 61</a></span>  FMOD_OUTPUT_GETHANDLECALLBACK <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#af5beaf423ce4e1cabf293b748507d0cf">gethandle</a>; <spanclass="comment">/* [in] This is called from System::getOutputHandle. This is just to return a pointer to the internal system device object that the system may be using.*/</span></div>
<divclass="line"><aname="l00062"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#afc9cc6a29be45751e80082236948abbd"> 62</a></span>  FMOD_OUTPUT_GETPOSITIONCALLBACK <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#afc9cc6a29be45751e80082236948abbd">getposition</a>; <spanclass="comment">/* [in] This is called from the FMOD software mixer thread if 'polling' = true. This returns a position value in samples so that FMOD knows where and when to fill its buffer. */</span></div>
<divclass="line"><aname="l00063"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a210e8588535c2fe90c32577e69e14c95"> 63</a></span>  FMOD_OUTPUT_LOCKCALLBACK <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a210e8588535c2fe90c32577e69e14c95">lock</a>; <spanclass="comment">/* [in] This is called from the FMOD software mixer thread if 'polling' = true. This function provides a pointer to data that FMOD can write to when software mixing. */</span></div>
<divclass="line"><aname="l00064"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a7a0a41490ad93f989d8ce4aa4f68a2b9"> 64</a></span>  FMOD_OUTPUT_UNLOCKCALLBACK <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a7a0a41490ad93f989d8ce4aa4f68a2b9">unlock</a>; <spanclass="comment">/* [in] This is called from the FMOD software mixer thread if 'polling' = true. This optional function accepts the data that has been mixed and copies it or does whatever it needs to before sending it to the hardware. */</span></div>
<divclass="line"><aname="l00072"></a><spanclass="lineno"> 72</span> <spanclass="comment"> Output plugin structure that is passed into each callback.</span></div>
<divclass="line"><aname="l00075"></a><spanclass="lineno"> 75</span> <spanclass="comment"> Members marked with [in] mean the variable can be written to. The user can set the value.<br></span></div>
<divclass="line"><aname="l00076"></a><spanclass="lineno"> 76</span> <spanclass="comment"> Members marked with [out] mean the variable is modified by FMOD and is for reading purposes only. Do not change this value.<br></span></div>
<divclass="line"><aname="l00087"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___s_t_a_t_e.html#abf37c5e4c79ceff65a72e07b2873272e"> 87</a></span> <spanclass="keywordtype">void</span> *<aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___s_t_a_t_e.html#abf37c5e4c79ceff65a72e07b2873272e">plugindata</a>; <spanclass="comment">/* [in] Plugin writer created data the output author wants to attach to this object. */</span></div>
<divclass="line"><aname="l00088"></a><spanclass="lineno"><aclass="line"href="struct_f_m_o_d___o_u_t_p_u_t___s_t_a_t_e.html#ae98e9fcf61226a83642d929cbab494c6"> 88</a></span>  FMOD_OUTPUT_READFROMMIXER <aclass="code"href="struct_f_m_o_d___o_u_t_p_u_t___s_t_a_t_e.html#ae98e9fcf61226a83642d929cbab494c6">readfrommixer</a>; <spanclass="comment">/* [out] Function to update mixer and write the result to the provided pointer. Used from callback based output only. Polling based output uses lock/unlock/getposition. */</span></div>
<divclass="ttc"id="fmod__output_8h_html_a6a18a9f4871ec535cfb0068a4df13669"><divclass="ttname"><ahref="fmod__output_8h.html#a6a18a9f4871ec535cfb0068a4df13669">FMOD_OUTPUT_GETNUMDRIVERSCALLBACK</a></div><divclass="ttdeci">FMOD_RESULT(F_CALLBACK * FMOD_OUTPUT_GETNUMDRIVERSCALLBACK)(FMOD_OUTPUT_STATE *output_state, int *numdrivers)</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00020">fmod_output.h:20</a></div></div>
<divclass="ttc"id="fmod_8h_html_a95dca0e16a82baa3f9092bd30bfca337"><divclass="ttname"><ahref="fmod_8h.html#a95dca0e16a82baa3f9092bd30bfca337">FMOD_INITFLAGS</a></div><divclass="ttdeci">unsigned int FMOD_INITFLAGS</div><divclass="ttdef"><b>Definition:</b><ahref="fmod_8h_source.html#l00077">fmod.h:77</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a589959d1f80ee502e6fdde57b5a9a48f"><divclass="ttname"><ahref="fmod__output_8h.html#a589959d1f80ee502e6fdde57b5a9a48f">len2</a></div><divclass="ttdeci">unsigned int unsigned int void void unsigned int unsigned int * len2</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00028">fmod_output.h:28</a></div></div>
<divclass="ttc"id="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n_html_a5408ac5df4c170828874e1b10b4c35a0"><divclass="ttname"><ahref="struct_f_m_o_d___o_u_t_p_u_t___d_e_s_c_r_i_p_t_i_o_n.html#a5408ac5df4c170828874e1b10b4c35a0">FMOD_OUTPUT_DESCRIPTION::version</a></div><divclass="ttdeci">unsigned int version</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00053">fmod_output.h:53</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a5e4554ce093c66dd8a05cfc6bcc7127a"><divclass="ttname"><ahref="fmod__output_8h.html#a5e4554ce093c66dd8a05cfc6bcc7127a">FMOD_OUTPUT_GETDRIVERNAMECALLBACK</a></div><divclass="ttdeci">FMOD_RESULT(F_CALLBACK * FMOD_OUTPUT_GETDRIVERNAMECALLBACK)(FMOD_OUTPUT_STATE *output_state, int id, char *name, int namelen)</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00021">fmod_output.h:21</a></div></div>
<divclass="ttc"id="fmod_8h_html_a306eabbc4894a38289a9be0f538b20a6"><divclass="ttname"><ahref="fmod_8h.html#a306eabbc4894a38289a9be0f538b20a6">FMOD_CAPS</a></div><divclass="ttdeci">unsigned int FMOD_CAPS</div><divclass="ttdef"><b>Definition:</b><ahref="fmod_8h_source.html#l00078">fmod.h:78</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_ab7efb116db5b4aa94660dc283049d015"><divclass="ttname"><ahref="fmod__output_8h.html#ab7efb116db5b4aa94660dc283049d015">outputchannels</a></div><divclass="ttdeci">int FMOD_INITFLAGS int int outputchannels</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00023">fmod_output.h:23</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a660a087dd78d005096c0ab8bfa9402fe"><divclass="ttname"><ahref="fmod__output_8h.html#a660a087dd78d005096c0ab8bfa9402fe">pcm</a></div><divclass="ttdeci">unsigned int * pcm</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00027">fmod_output.h:27</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a040a88c9095b1eeecd8c5bfdd7355dd4"><divclass="ttname"><ahref="fmod__output_8h.html#a040a88c9095b1eeecd8c5bfdd7355dd4">ptr1</a></div><divclass="ttdeci">unsigned int unsigned int void ** ptr1</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00028">fmod_output.h:28</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_afcb5a4963216dabf7e5e7dd4e93e9123"><divclass="ttname"><ahref="fmod__output_8h.html#afcb5a4963216dabf7e5e7dd4e93e9123">dspnumbuffers</a></div><divclass="ttdeci">int FMOD_INITFLAGS int int FMOD_SOUND_FORMAT int int dspnumbuffers</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00023">fmod_output.h:23</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a0891aaf312d2d6e7e8e4155723c93c40"><divclass="ttname"><ahref="fmod__output_8h.html#a0891aaf312d2d6e7e8e4155723c93c40">FMOD_OUTPUT_GETDRIVERCAPSCALLBACK</a></div><divclass="ttdeci">FMOD_RESULT(F_CALLBACK * FMOD_OUTPUT_GETDRIVERCAPSCALLBACK)(FMOD_OUTPUT_STATE *output_state, int id, FMOD_CAPS *caps)</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00022">fmod_output.h:22</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a5bd98a35333cb58781d316f76ca8a75f"><divclass="ttname"><ahref="fmod__output_8h.html#a5bd98a35333cb58781d316f76ca8a75f">length</a></div><divclass="ttdeci">unsigned int unsigned int length</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00028">fmod_output.h:28</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_af809982b572901f0cf76f4ee1d75dce3"><divclass="ttname"><ahref="fmod__output_8h.html#af809982b572901f0cf76f4ee1d75dce3">offset</a></div><divclass="ttdeci">unsigned int offset</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00028">fmod_output.h:28</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a6cdf17aed1d70f0123aacd163923f1ef"><divclass="ttname"><ahref="fmod__output_8h.html#a6cdf17aed1d70f0123aacd163923f1ef">extradriverdata</a></div><divclass="ttdeci">int FMOD_INITFLAGS int int FMOD_SOUND_FORMAT int int void * extradriverdata</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00023">fmod_output.h:23</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a4b582fef474cc60a5f180dd8c89c150a"><divclass="ttname"><ahref="fmod__output_8h.html#a4b582fef474cc60a5f180dd8c89c150a">len1</a></div><divclass="ttdeci">unsigned int unsigned int void void unsigned int * len1</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00028">fmod_output.h:28</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_affc39513894007e179b6c9b29a5659bf"><divclass="ttname"><ahref="fmod__output_8h.html#affc39513894007e179b6c9b29a5659bf">ptr2</a></div><divclass="ttdeci">unsigned int unsigned int void void ** ptr2</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00028">fmod_output.h:28</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a78647810d4ff357995b75ed107d1b720"><divclass="ttname"><ahref="fmod__output_8h.html#a78647810d4ff357995b75ed107d1b720">outputformat</a></div><divclass="ttdeci">int FMOD_INITFLAGS int int FMOD_SOUND_FORMAT * outputformat</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00023">fmod_output.h:23</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_a283c99c0b149e7ce1c4a43f078347496"><divclass="ttname"><ahref="fmod__output_8h.html#a283c99c0b149e7ce1c4a43f078347496">dspbufferlength</a></div><divclass="ttdeci">int FMOD_INITFLAGS int int FMOD_SOUND_FORMAT int dspbufferlength</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00023">fmod_output.h:23</a></div></div>
<divclass="ttc"id="fmod__output_8h_html_ad3c0c2246f71a2b47bcb478328388bbc"><divclass="ttname"><ahref="fmod__output_8h.html#ad3c0c2246f71a2b47bcb478328388bbc">outputrate</a></div><divclass="ttdeci">int FMOD_INITFLAGS int * outputrate</div><divclass="ttdef"><b>Definition:</b><ahref="fmod__output_8h_source.html#l00023">fmod_output.h:23</a></div></div>