RPR GetTrackState
From CockosWiki
Main Page > REAPER Documentation > ReaScript > ReaScript API, Functions > RPR GetTrackState
Main Page > REAPER Documentation > REAPER API > REAPER API Functions > RPR GetTrackState
Contents |
GetTrackState()
const char* GetTrackState(MediaTrack* track, int* flags)
Gets track state, returns track name. flags will be set to:
- &1=folder
- &2=selected
- &4=has fx enabled
- &8=muted
- &16=soloed
- &32=SIP'd (with &16)
- &64=rec armed
Parameters
MediaTrack* track, int* flags
Returns
An array, containing const char* Track Name MediaTrack* track, int* flags
Examples
C++
Perl
<pre> # # Track properties - Show state info.pl # use strict; use warnings; use constant CURR_PROJ => 0; my $Track_ID; my $Flags; my $Name; my $Selected; my $Folder; my $Mute; my $Solo; my $FX; my $Arm; my $Summary; # Get track count my $Track_Count = RPR_CountTracks(CURR_PROJ); my $Track_Index = 0; while ($Track_Index < $Track_Count) { # Get track ID for current index $Track_ID = RPR_GetTrack(CURR_PROJ, $Track_Index); # Get current track name and flags ($Name, $Track_ID, $Flags) = RPR_GetTrackState($Track_ID, 0); # Check selection status if ($Flags & 2) { $Selected = 'Yes'; } else { $Selected = 'No'; } # Check folder status if ($Flags & 1) { $Folder = 'Yes'; } else { $Folder = 'No'; } # Check mute status if ($Flags & 8) { $Mute = 'Yes'; } else { $Mute = 'No'; } # Check solo status if ($Flags & 16) { # Check solo mode if ($Flags & 32) { $Solo = 'Yes (in place)'; } else { $Solo = 'Yes (ignore routing)'; } } else { $Solo = 'No'; } # Check effects status if ($Flags & 4) { $FX = 'Enabled'; } else { $FX = 'Disabled'; } # Check arm status if ($Flags & 64) { $Arm = 'Yes'; } else { $Arm = 'No'; } # Create track summary string $Summary = "Name:\t$Name\n" . "Selected:\t$Selected\n" . "Folder:\t$Folder\n" . "Arm:\t$Arm\n" . "Mute:\t$Mute\n" . "Solo:\t$Solo\n" . "FX:\t$FX\n"; # Show summary in message box RPR_ShowMessageBox($Summary, "Track $Track_Index", 0); $Track_Index++; }
Python
See Also
track: GetLastTouchedTrack, GetMediaItemTake_Track, GetMediaItem_Track, GetMediaTrackInfo_Value, GetNumTracks, GetSelectedTrack, GetSelectedTrackEnvelope, GetSetMediaTrackInfo_String, GetSetTrackState, GetTrack, GetTrackAutomationMode, GetTrackEnvelope, GetTrackEnvelopeByName, GetTrackGUID, GetTrackMIDINoteName, GetTrackMIDINoteNameEx, GetTrackMediaItem, GetTrackNumMediaItems, GetTrackState, GetTrackUIVolPan, HasTrackMIDIPrograms, HasTrackMIDIProgramsEx, InsertTrackAtIndex, MoveMediaItemToTrack, MuteAllTracks, PlayTrackPreview, PlayTrackPreview2, SetMediaTrackInfo_Value, SetTrackAutomationMode, SetTrackMIDINoteName, SetTrackMIDINoteNameEx, SetTrackSelected, SoloAllTracks, StopTrackPreview, StopTrackPreview2, TrackFX_FormatParamValue, TrackFX_GetCount, TrackFX_GetFXName, TrackFX_GetNumParams, TrackFX_GetParam, TrackFX_GetParamName, TrackFX_SetParam, TrackList_AdjustWindows, TrackList_UpdateAllExternalSurfaces, Track_GetPeakInfo, AddMediaItemToTrack, BypassFxAllTracks, CSurf_NumTracks, CSurf_OnTrackSelection, CSurf_SetTrackListChange, CSurf_TrackFromID, CSurf_TrackToID, CountSelectedTracks, CountTrackEnvelopes, CountTrackMediaItems, CountTracks, DeleteTrack, DeleteTrackMediaItem, EnumTrackMIDIProgramNames, EnumTrackMIDIProgramNamesEx,
(Section automatically generated, edits may be overwritten.)
Stuff
Main Page > REAPER Documentation > ReaScript > ReaScript API, Functions > RPR GetTrackState
Main Page > REAPER Documentation > REAPER API > REAPER API Functions > RPR GetTrackState