Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/Framework/Core/TrackPlayer.py
diff options
context:
space:
mode:
Diffstat (limited to 'Framework/Core/TrackPlayer.py')
-rwxr-xr-xFramework/Core/TrackPlayer.py88
1 files changed, 0 insertions, 88 deletions
diff --git a/Framework/Core/TrackPlayer.py b/Framework/Core/TrackPlayer.py
deleted file mode 100755
index a7e8f7e..0000000
--- a/Framework/Core/TrackPlayer.py
+++ /dev/null
@@ -1,88 +0,0 @@
-from TrackPlayerBase import TrackPlayerBase
-
-from Framework.Generation.Generator import Generator
-from Framework.Generation.Generator import GenerationParameters
-from Framework.CSound.CSoundConstants import CSoundConstants
-
-#------------------------------------------------------------------------------
-# A Track is a collection of events.
-# TrackPlayer allows the user to create, generate, manipulate and play Tracks
-#------------------------------------------------------------------------------
-class TrackPlayer( TrackPlayerBase ):
- #-----------------------------------
- # initialization
- #-----------------------------------
- def __init__( self, getTempoCallback, getBeatsPerPageCallback, playTickCallback, volumeFunctions, trackIDs ):
- TrackPlayerBase.__init__( self, getTempoCallback, getBeatsPerPageCallback, playTickCallback, volumeFunctions, trackIDs )
-
- self.trackDictionary = {} #maps trackIDs to lists of events
-
- #-----------------------------------
- # add/remove/update methods
- #-----------------------------------
- def addTrack( self, trackID, instrument, events = [] ):
- if ( len( events ) != 0 ) and ( trackID not in self.mutedTrackIDs ):
- self.addMultiple( events )
-
- self.trackDictionary[ trackID ] = events
- self.trackInstruments[ trackID ] = instrument
-
- def addToTrack( self, trackID, event ):
- self.add( event )
- self.trackDictionary[ trackID ].add( event )
-
- def addMultipleToTrack( self, trackID, events ):
- self.addMultiple( events )
- for event in events:
- self.trackDictionary[ trackID ].add( event )
-
- def removeTrack( self, trackID ):
- if self.trackDictionary.has_key( trackID ):
- self.removeMultiple( self.trackDictionary[ trackID ] )
- del self.trackDictionary[ trackID ]
-
- def removeFromTrack( self, trackID, event ):
- self.remove( event )
- self.trackDictionary[ trackID ].remove( event )
-
- def removeMultipleFromTrack( self, trackID, events ):
- self.removeMultiple( events )
- for event in events:
- self.trackDictionary[ trackID ].remove( event )
-
- def updateTrack( self, trackID, events = [] ):
- if self.trackDictionary.has_key( trackID ):
- self.removeTrack( trackID )
-
- # TODO: this stuff is temporary and should be done in Generator
- # i.e. generated notes should already have their instrument set to
- # self.trackInstruments[ trackID ]
- if self.trackInstruments.has_key( trackID ):
- instrument = self.trackInstruments[ trackID ]
- else:
- instrument = CSoundConstants.CELLO
- for event in events:
- event.instrument = instrument
-
- self.addTrack( trackID, instrument, events )
-
- #-----------------------------------
- # misc methods
- #-----------------------------------
- def getEvents( self, trackID ):
- return self.trackDictionary[ trackID ]
-
- def update( self ):
- self.clear()
-
- for trackID in self.getActiveTrackIDs():
- self.addMultiple( self.trackDictionary[ trackID ] )
-
- def generate( self, generationParameters = GenerationParameters() ):
- if len( self.selectedTrackIDs ) == 0:
- trackIDs = self.trackIDs
- else:
- trackIDs = self.selectedTrackIDs
-
- for trackID in trackIDs:
- self.updateTrack( trackID, self.generator.generate( generationParameters, trackID, self.trackDictionary ) ) \ No newline at end of file