/[svn]/linuxsampler/trunk/src/diskthread.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/diskthread.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 10 by senoner, Tue Nov 11 23:30:47 2003 UTC revision 12 by schoenebeck, Sun Nov 16 19:01:50 2003 UTC
# Line 37  Line 37 
37   * thread within the voice class).   * thread within the voice class).
38   */   */
39  int DiskThread::OrderNewStream(Stream::reference_t* pStreamRef, gig::Sample* pSample, unsigned long SampleOffset) {  int DiskThread::OrderNewStream(Stream::reference_t* pStreamRef, gig::Sample* pSample, unsigned long SampleOffset) {
40      dmsg(("Disk Thread: new stream ordered\n"));      dmsg(4,("Disk Thread: new stream ordered\n"));
41      if (CreationQueue->write_space() < 1) return -1;      if (CreationQueue->write_space() < 1) return -1;
42    
43      pStreamRef->State   = Stream::state_active;      pStreamRef->State   = Stream::state_active;
# Line 59  int DiskThread::OrderNewStream(Stream::r Line 59  int DiskThread::OrderNewStream(Stream::r
59   * thread within the voice class).   * thread within the voice class).
60   */   */
61  int DiskThread::OrderDeletionOfStream(Stream::reference_t* pStreamRef) {  int DiskThread::OrderDeletionOfStream(Stream::reference_t* pStreamRef) {
62      dmsg(("Disk Thread: stream deletion ordered\n"));      dmsg(4,("Disk Thread: stream deletion ordered\n"));
63      if (DeletionQueue->write_space() < 1) return -1;      if (DeletionQueue->write_space() < 1) return -1;
64    
65      delete_command_t cmd;      delete_command_t cmd;
# Line 85  int DiskThread::OrderDeletionOfStream(St Line 85  int DiskThread::OrderDeletionOfStream(St
85   * @returns               pointer to created stream object, NULL otherwise   * @returns               pointer to created stream object, NULL otherwise
86   */   */
87  Stream* DiskThread::AskForCreatedStream(Stream::OrderID_t StreamOrderID) {  Stream* DiskThread::AskForCreatedStream(Stream::OrderID_t StreamOrderID) {
88      dmsg(("Disk Thread: been asked if stream already created, OrderID=%x ", StreamOrderID));      dmsg(4,("Disk Thread: been asked if stream already created, OrderID=%x ", StreamOrderID));
89      Stream* pStream = pCreatedStreams[StreamOrderID];      Stream* pStream = pCreatedStreams[StreamOrderID];
90      if (pStream) { dmsg(("(yes created)")) }      if (pStream) { dmsg(4,("(yes created)")) }
91      else         { dmsg(("(no not yet created)")) }      else         { dmsg(4,("(no not yet created)")) }
92      pCreatedStreams[StreamOrderID] = NULL; // free the slot for a new order      pCreatedStreams[StreamOrderID] = NULL; // free the slot for a new order
93      return pStream;      return pStream;
94  }  }
# Line 122  DiskThread::~DiskThread() { Line 122  DiskThread::~DiskThread() {
122  }  }
123    
124  int DiskThread::Main() {  int DiskThread::Main() {
125      dmsg(("Disk thread running\n"));      dmsg(3,("Disk thread running\n"));
126      while (true) {      while (true) {
127          IsIdle = true; // will be set to false if a stream got filled          IsIdle = true; // will be set to false if a stream got filled
128    
# Line 167  void DiskThread::CreateStream(create_com Line 167  void DiskThread::CreateStream(create_com
167          }          }
168      }      }
169      if (!newstream) {      if (!newstream) {
170          dmsg(("No unused stream found (OrderID:%x) - report if this happens, this is a bug!\n", Command.pStreamRef->OrderID));          dmsg(1,("No unused stream found (OrderID:%x) - report if this happens, this is a bug!\n", Command.pStreamRef->OrderID));
171          return;          return;
172      }      }
173      dmsg(("new Stream launched by disk thread (OrderID:%x,StreamHandle:%x)\n", Command.pStreamRef->OrderID, Command.pStreamRef->hStream));      dmsg(4,("new Stream launched by disk thread (OrderID:%x,StreamHandle:%x)\n", Command.pStreamRef->OrderID, Command.pStreamRef->hStream));
174      newstream->Launch(Command.pStreamRef, Command.pSample, Command.SampleOffset);      newstream->Launch(Command.pStreamRef, Command.pSample, Command.SampleOffset);
175      pCreatedStreams[Command.pStreamRef->OrderID] = newstream;      pCreatedStreams[Command.pStreamRef->OrderID] = newstream;
176  }  }

Legend:
Removed from v.10  
changed lines
  Added in v.12

  ViewVC Help
Powered by ViewVC