]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - snd_main.h
changed handling of forbidden world writes - they are now only a
[xonotic/darkplaces.git] / snd_main.h
index 0eea2fdd1769f90c78a4f1c566fbf1147f5721f2..07cc6e114afe269b2b9b160fd06c621d3858fd31 100644 (file)
@@ -66,9 +66,8 @@ struct sfx_s
 
                                                                                // One lock is automatically granted while the sfx is
                                                                                // playing (and removed when stopped). Locks can also be
-       int                                     locks;                  // added by S_PrecacheSound and S_ServerSounds.
-                                                                               // A SFX with no lock and no SFXFLAG_PERMANENTLOCK is
-                                                                               // freed at level change by S_ServerSounds.
+       int                                     locks;                  // added by S_PrecacheSound.
+                                                                               // A SFX with no lock, no SFXFLAG_PERMANENTLOCK, and not precached after a level change is freed
 
        unsigned int            flags;                  // cf SFXFLAG_* defines
        unsigned int            loopstart;              // in sample frames. equals total_length if not looped
@@ -185,5 +184,32 @@ qboolean SndSys_LockRenderBuffer (void);
 // Release the exclusive lock on "snd_renderbuffer"
 void SndSys_UnlockRenderBuffer (void);
 
+// if the sound system can generate events, send them
+void SndSys_SendKeyEvents(void);
+
+// exported for capturevideo so ogg can see all channels
+typedef struct portable_samplepair_s
+{
+       int sample[SND_LISTENERS];
+} portable_sampleframe_t;
+// LordHavoc: was 512, expanded to 2048
+#define        PAINTBUFFER_SIZE 2048
+
+typedef struct listener_s
+{
+       int channel_unswapped; // for un-swapping
+       float yawangle;
+       float dotscale;
+       float dotbias;
+       float ambientvolume;
+}
+listener_t;
+typedef struct speakerlayout_s
+{
+       const char *name;
+       unsigned int channels;
+       listener_t listeners[SND_LISTENERS];
+}
+speakerlayout_t;
 
 #endif