/[svn]/linuxsampler/trunk/src/engines/gig/EngineChannel.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/gig/EngineChannel.h

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

revision 1041 by schoenebeck, Wed Feb 7 17:45:19 2007 UTC revision 1646 by persson, Sun Jan 20 15:04:51 2008 UTC
# Line 3  Line 3 
3   *   LinuxSampler - modular, streaming capable sampler                     *   *   LinuxSampler - modular, streaming capable sampler                     *
4   *                                                                         *   *                                                                         *
5   *   Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck   *   *   Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck   *
6   *   Copyright (C) 2005 - 2007 Christian Schoenebeck                       *   *   Copyright (C) 2005 - 2008 Christian Schoenebeck                       *
7   *                                                                         *   *                                                                         *
8   *   This program is free software; you can redistribute it and/or modify  *   *   This program is free software; you can redistribute it and/or modify  *
9   *   it under the terms of the GNU General Public License as published by  *   *   it under the terms of the GNU General Public License as published by  *
# Line 127  namespace LinuxSampler { namespace gig { Line 127  namespace LinuxSampler { namespace gig {
127              std::vector<FxSend*>    fxSends;              std::vector<FxSend*>    fxSends;
128              int                     GlobalTranspose;          ///< amount of semi tones all notes should be transposed              int                     GlobalTranspose;          ///< amount of semi tones all notes should be transposed
129    
130                /// Command used by the instrument loader thread to
131                /// request an instrument change on a channel.
132                struct instrument_change_command_t {
133                    bool bChangeInstrument;                             ///< Set to true by the loader when the channel should change instrument.
134                    ::gig::Instrument* pInstrument;                     ///< The new instrument. Also used by the loader to read the previously loaded instrument.
135                    RTList< ::gig::DimensionRegion*>* pDimRegionsInUse; ///< List of dimension regions in use by the currently loaded instrument. Continuously updated by the audio thread.
136                };
137                SynchronizedConfig<instrument_change_command_t> InstrumentChangeCommand;
138                SynchronizedConfig<instrument_change_command_t>::Reader InstrumentChangeCommandReader;
139    
140                RTList< ::gig::DimensionRegion*>* pDimRegionsInUse;     ///< temporary pointer into the instrument change command, used by the audio thread
141    
142              void ResetControllers();              void ResetControllers();
143              void ClearEventLists();              void ClearEventLists();
144              void ImportEvents(uint Samples);              void ImportEvents(uint Samples);
# Line 138  namespace LinuxSampler { namespace gig { Line 150  namespace LinuxSampler { namespace gig {
150          private:          private:
151              void ResetInternal();              void ResetInternal();
152              void RemoveAllFxSends();              void RemoveAllFxSends();
153                instrument_change_command_t& ChangeInstrument(::gig::Instrument* pInstrument);
154      };      };
155    
156  }} // namespace LinuxSampler::gig  }} // namespace LinuxSampler::gig

Legend:
Removed from v.1041  
changed lines
  Added in v.1646

  ViewVC Help
Powered by ViewVC