Photosine 0.5
Loading...
Searching...
No Matches

#include <PhotosineProjectValueTree.h>

Classes

struct  PropertyIDs
class  TrackType

Public Member Functions

 PhotosineProjectValueTree ()
 PhotosineProjectValueTree (juce::ValueTree projectToOpen)
 ~PhotosineProjectValueTree ()
juce::String getTimelineName (juce::Identifier timelineID)
juce::ValueTree newTrack (TrackType trackType)
void initializeTestTree ()
Absolute Locations
juce::ValueTree getProjectValueTree ()
juce::ValueTree getTimelineValueTree (juce::Identifier timelineID)
juce::ValueTree getTrackValueTree (juce::Identifier timelineID, juce::Identifier trackID)
juce::ValueTree getTrackValueTree (juce::ValueTree timelineTree, juce::Identifier trackID)
juce::ValueTree getPluginValueTree (juce::Identifier timelineID, juce::Identifier trackID, juce::Identifier pluginID)
juce::ValueTree getPluginValueTree (juce::ValueTree trackTree, juce::Identifier pluginID)
Selected items
juce::ValueTree getSelectedPlugin ()
void setSelectedPlugin (juce::Identifier newSelection, juce::UndoManager *undoManager=nullptr)
void setSelectedPlugin (juce::ValueTree newSelection, juce::UndoManager *undoManager=nullptr)
juce::ValueTree getSelectedPluginList ()
juce::ValueTree getSelectedTrack ()
void setSelectedTrack (juce::Identifier newSelection)
void setSelectedTrack (juce::ValueTree newSelection)
juce::ValueTree getSelectedClip ()
void setSelectedClip (juce::Identifier newSelection)
void setSelectedClip (juce::ValueTree newSelection)
juce::ValueTree getSelectedTimeline ()
void setSelectedTimeline (juce::Identifier newSelection)
void setSelectedTimeline (juce::ValueTree newSelection)
juce::ValueTree getSelectedTimelineTracks ()
juce::ValueTree getSelectedTimelineVideoTracks ()
juce::ValueTree getSelectedTimelineAudioTracks ()
juce::ValueTree getSelectedTimelineDataTracks ()
juce::Identifier getSelectedPluginID ()
juce::Identifier getSelectedTrackID ()
juce::Identifier getSelectedTimelineID ()
juce::Identifier getNextUnselectedPlugin ()
FPS/Timecode
Time::FrameRate getProjectFPS ()
void setProjectFPS (Time::FrameRate fps)
Time::FrameRate getTimelineFPS ()
void setTimelineFPS (Time::FrameRate fps)
Time::Timecode getTimelineStart ()
void setTimelineStart (Time::Timecode start)
Time::Timecode getTimelineEnd ()
void setTimelineEnd (Time::Timecode end)
Time::Timecode getTimelineViewStart ()
void setTimelineViewStart (Time::Timecode start)
Time::Timecode getTimelineViewEnd ()
void setTimelineViewEnd (Time::Timecode end)
Time::Timecode getPlayheadPosition ()
void setPlayheadPosition (Time::Timecode playheadPosition)
Media Pool
juce::ValueTree getMediaPool ()
juce::ValueTree addFileToMediaPool (juce::File fileToAdd)
juce::ValueTree createNewTimelineAndAdd (juce::String timelineName)
juce::String getMediaTypeForFile (juce::File mediaFile)
juce::File getFileFromMediaPool (juce::Identifier mediaID)
juce::File getFileFromMediaPool (juce::ValueTree mediaTree)
juce::Image getThumbnailForMediaItem (juce::Identifier mediaID)
juce::Image getThumbnailForMediaItem (juce::ValueTree mediaTree)
juce::ValueTree getMediaItem (juce::Identifier mediaID)
juce::Identifier getMediaIDForTimeline (juce::Identifier timelineID)
juce::Identifier getMediaIDForTimeline (juce::ValueTree timelineTree)
juce::Identifier getTimelineIDForMedia (juce::Identifier mediaID)
juce::Identifier getTimelineIDForMedia (juce::ValueTree mediaTree)
juce::Array< juce::ValueTree > getVideoMedia ()
juce::Array< juce::ValueTree > getAudioMedia ()
juce::Array< juce::ValueTree > getTimelineMedia ()
juce::String getMediaItemType (juce::ValueTree mediaItem)

Public Attributes

struct PhotosineProjectValueTree::PropertyIDs IDs

Private Member Functions

void createEmptyValueTree ()
 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (PhotosineProjectValueTree)

Private Attributes

juce::ValueTree projectValueTree
Supported Extensions
juce::StringArray videoExtensions { ".mp4", ".mov" }
juce::StringArray audioExtensions { ".wav", ".aiff", ".mp3" }
juce::StringArray imageExtensions { ".png", ".jpg", ".jpeg", ".tiff" }

Detailed Description

Class that contains the project value tree and all of its related functions.

Constructor & Destructor Documentation

◆ PhotosineProjectValueTree() [1/2]

PhotosineProjectValueTree::PhotosineProjectValueTree ( )

Default constructor

◆ PhotosineProjectValueTree() [2/2]

PhotosineProjectValueTree::PhotosineProjectValueTree ( juce::ValueTree projectToOpen)

Open existing project from juce::ValueTree

◆ ~PhotosineProjectValueTree()

PhotosineProjectValueTree::~PhotosineProjectValueTree ( )

Member Function Documentation

◆ addFileToMediaPool()

juce::ValueTree PhotosineProjectValueTree::addFileToMediaPool ( juce::File fileToAdd)

Adds a juce::File to the media pool and determines its type.

◆ createEmptyValueTree()

void PhotosineProjectValueTree::createEmptyValueTree ( )
private

Used to create a new project.

◆ createNewTimelineAndAdd()

juce::ValueTree PhotosineProjectValueTree::createNewTimelineAndAdd ( juce::String timelineName)

Creates a new timeline and adds it to the media pool.

◆ getAudioMedia()

juce::Array< juce::ValueTree > PhotosineProjectValueTree::getAudioMedia ( )

Returns an array of all audio media value trees.

◆ getFileFromMediaPool() [1/2]

juce::File PhotosineProjectValueTree::getFileFromMediaPool ( juce::Identifier mediaID)

Returns a file from the media pool given its unique ID.

◆ getFileFromMediaPool() [2/2]

juce::File PhotosineProjectValueTree::getFileFromMediaPool ( juce::ValueTree mediaTree)

Returns a file from the media pool given its unique ID.

◆ getMediaIDForTimeline() [1/2]

juce::Identifier PhotosineProjectValueTree::getMediaIDForTimeline ( juce::Identifier timelineID)

Returns the media-based ID of a timeline ID.

◆ getMediaIDForTimeline() [2/2]

juce::Identifier PhotosineProjectValueTree::getMediaIDForTimeline ( juce::ValueTree timelineTree)

Returns the media-based ID of a timeline ID.

◆ getMediaItem()

juce::ValueTree PhotosineProjectValueTree::getMediaItem ( juce::Identifier mediaID)

Returns the value tree of a media item given its media ID.

◆ getMediaItemType()

juce::String PhotosineProjectValueTree::getMediaItemType ( juce::ValueTree mediaItem)

Returns the type of a media item value tree.

◆ getMediaPool()

juce::ValueTree PhotosineProjectValueTree::getMediaPool ( )

Returns the value tree of the project media pool.

◆ getMediaTypeForFile()

juce::String PhotosineProjectValueTree::getMediaTypeForFile ( juce::File mediaFile)

Returns the media type of a file.

◆ getNextUnselectedPlugin()

juce::Identifier PhotosineProjectValueTree::getNextUnselectedPlugin ( )

Get the next possibly selectable plugin from the currently selected track of the currently selected timeline.

◆ getPlayheadPosition()

Time::Timecode PhotosineProjectValueTree::getPlayheadPosition ( )

Returns the playhead Timecode of the currently selected timeline. See: PlayheadComponent

◆ getPluginValueTree() [1/2]

juce::ValueTree PhotosineProjectValueTree::getPluginValueTree ( juce::Identifier timelineID,
juce::Identifier trackID,
juce::Identifier pluginID )

Returns a plugin value tree given a timeline ID, a track ID, and a plugin ID.

◆ getPluginValueTree() [2/2]

juce::ValueTree PhotosineProjectValueTree::getPluginValueTree ( juce::ValueTree trackTree,
juce::Identifier pluginID )

Returns a plugin value tree given a track tree, and a plugin ID.

◆ getProjectFPS()

Time::FrameRate PhotosineProjectValueTree::getProjectFPS ( )

Returns the project FrameRate.

◆ getProjectValueTree()

juce::ValueTree PhotosineProjectValueTree::getProjectValueTree ( )

Returns projectValueTree

◆ getSelectedClip()

juce::ValueTree PhotosineProjectValueTree::getSelectedClip ( )

Returns the currently selected clip of the currently selected track of the currently selected timeline.

◆ getSelectedPlugin()

juce::ValueTree PhotosineProjectValueTree::getSelectedPlugin ( )

Returns the value tree of the currently selected plugin of the currently selected track of the currently selected timeline.

◆ getSelectedPluginID()

juce::Identifier PhotosineProjectValueTree::getSelectedPluginID ( )

Returns the ID of the currently selected plugin of the currently selected track of the currently selected timeline.

◆ getSelectedPluginList()

juce::ValueTree PhotosineProjectValueTree::getSelectedPluginList ( )

Returns the value tree of the currently selected track's plugin list. (currently selected track of the currently selected timeline)

◆ getSelectedTimeline()

juce::ValueTree PhotosineProjectValueTree::getSelectedTimeline ( )

Returns the currently selected timeline.

◆ getSelectedTimelineAudioTracks()

juce::ValueTree PhotosineProjectValueTree::getSelectedTimelineAudioTracks ( )

Returns the parent value tree of all audio tracks in the selected timeline.

◆ getSelectedTimelineDataTracks()

juce::ValueTree PhotosineProjectValueTree::getSelectedTimelineDataTracks ( )

Returns the parent value tree of all data tracks in the selected timeline.

◆ getSelectedTimelineID()

juce::Identifier PhotosineProjectValueTree::getSelectedTimelineID ( )

Returns the ID of the currently selected timeline.

◆ getSelectedTimelineTracks()

juce::ValueTree PhotosineProjectValueTree::getSelectedTimelineTracks ( )

Returns the parent track container of the currently selected timeline. Not to be confused with getSelectedTrack(), getSelectedTimelineVideoTracks(), getSelectedTimelineAudioTracks(), or getSelectedTimelineDataTracks(). This tree DOES NOT contain tracks directly. This is a tree with multiple child trees which THEN contain tracks.

◆ getSelectedTimelineVideoTracks()

juce::ValueTree PhotosineProjectValueTree::getSelectedTimelineVideoTracks ( )

Returns the parent value tree of all video tracks in the selected timeline.

◆ getSelectedTrack()

juce::ValueTree PhotosineProjectValueTree::getSelectedTrack ( )

Returns the value tree of the currently selected track of the currently selected timeline.

◆ getSelectedTrackID()

juce::Identifier PhotosineProjectValueTree::getSelectedTrackID ( )

Returns the ID of the currently selected track of the currently selected timeline.

◆ getThumbnailForMediaItem() [1/2]

juce::Image PhotosineProjectValueTree::getThumbnailForMediaItem ( juce::Identifier mediaID)

Returns a thumbnail for an item in the media pool given its unique ID.

◆ getThumbnailForMediaItem() [2/2]

juce::Image PhotosineProjectValueTree::getThumbnailForMediaItem ( juce::ValueTree mediaTree)

Returns a thumbnail for an item in the media pool given its unique ID.

◆ getTimelineEnd()

Time::Timecode PhotosineProjectValueTree::getTimelineEnd ( )

Returns the end Timecode of the currently selected timeline.

◆ getTimelineFPS()

Time::FrameRate PhotosineProjectValueTree::getTimelineFPS ( )

Returns the FrameRate of the currently selected timeline.

◆ getTimelineIDForMedia() [1/2]

juce::Identifier PhotosineProjectValueTree::getTimelineIDForMedia ( juce::Identifier mediaID)

Returns the timeline ID of a media-based ID

◆ getTimelineIDForMedia() [2/2]

juce::Identifier PhotosineProjectValueTree::getTimelineIDForMedia ( juce::ValueTree mediaTree)

Returns the timeline ID of a media-based ID

◆ getTimelineMedia()

juce::Array< juce::ValueTree > PhotosineProjectValueTree::getTimelineMedia ( )

Returns an array of all timeline value trees.

◆ getTimelineName()

juce::String PhotosineProjectValueTree::getTimelineName ( juce::Identifier timelineID)

Returns the name of a timeline.

◆ getTimelineStart()

Time::Timecode PhotosineProjectValueTree::getTimelineStart ( )

Sets the start Timecode of the currently selected timeline.

◆ getTimelineValueTree()

juce::ValueTree PhotosineProjectValueTree::getTimelineValueTree ( juce::Identifier timelineID)

Returns a timeline value tree given an ID.

◆ getTimelineViewEnd()

Time::Timecode PhotosineProjectValueTree::getTimelineViewEnd ( )

Returns the end Timecode of the currently viewed section of the currently selected timeline.

◆ getTimelineViewStart()

Time::Timecode PhotosineProjectValueTree::getTimelineViewStart ( )

Returns the start Timecode of the currently viewed section of the currently selected timeline.

◆ getTrackValueTree() [1/2]

juce::ValueTree PhotosineProjectValueTree::getTrackValueTree ( juce::Identifier timelineID,
juce::Identifier trackID )

Returns a track value tree given a timeline ID, and a track ID.

◆ getTrackValueTree() [2/2]

juce::ValueTree PhotosineProjectValueTree::getTrackValueTree ( juce::ValueTree timelineTree,
juce::Identifier trackID )

Returns a track value tree given a timeline tree, and a track ID.

◆ getVideoMedia()

juce::Array< juce::ValueTree > PhotosineProjectValueTree::getVideoMedia ( )

Returns an array of all video media value trees.

◆ initializeTestTree()

void PhotosineProjectValueTree::initializeTestTree ( )

◆ JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR()

PhotosineProjectValueTree::JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR ( PhotosineProjectValueTree )
private

◆ newTrack()

juce::ValueTree PhotosineProjectValueTree::newTrack ( TrackType trackType)

Create and return a value tree for a new track. You have to add it yourself.

◆ setPlayheadPosition()

void PhotosineProjectValueTree::setPlayheadPosition ( Time::Timecode playheadPosition)

Sets the playhead Timecode of the currently selected timeline. See: PlayheadComponent

◆ setProjectFPS()

void PhotosineProjectValueTree::setProjectFPS ( Time::FrameRate fps)

Sets project FrameRate.

◆ setSelectedClip() [1/2]

void PhotosineProjectValueTree::setSelectedClip ( juce::Identifier newSelection)

Sets the currently selected clip of the currently selected track of the currently selected timeline.

◆ setSelectedClip() [2/2]

void PhotosineProjectValueTree::setSelectedClip ( juce::ValueTree newSelection)

Sets the currently selected clip of the currently selected track of the currently selected timeline.

◆ setSelectedPlugin() [1/2]

void PhotosineProjectValueTree::setSelectedPlugin ( juce::Identifier newSelection,
juce::UndoManager * undoManager = nullptr )

Sets the currently selected plugin of the currently selected track of the currently selected timeline.

◆ setSelectedPlugin() [2/2]

void PhotosineProjectValueTree::setSelectedPlugin ( juce::ValueTree newSelection,
juce::UndoManager * undoManager = nullptr )

Sets the currently selected plugin of the currently selected track of the currently selected timeline.

◆ setSelectedTimeline() [1/2]

void PhotosineProjectValueTree::setSelectedTimeline ( juce::Identifier newSelection)

Sets the currently selected timeline.

◆ setSelectedTimeline() [2/2]

void PhotosineProjectValueTree::setSelectedTimeline ( juce::ValueTree newSelection)

Sets the currently selected timeline.

◆ setSelectedTrack() [1/2]

void PhotosineProjectValueTree::setSelectedTrack ( juce::Identifier newSelection)

Sets the currently selected track of the currently selected timeline.

◆ setSelectedTrack() [2/2]

void PhotosineProjectValueTree::setSelectedTrack ( juce::ValueTree newSelection)

Sets the currently selected track of the currently selected timeline.

◆ setTimelineEnd()

void PhotosineProjectValueTree::setTimelineEnd ( Time::Timecode end)

Sets the end Timecode of the currently selected timeline.

◆ setTimelineFPS()

void PhotosineProjectValueTree::setTimelineFPS ( Time::FrameRate fps)

Sets the FrameRate of the currently selected timeline.

◆ setTimelineStart()

void PhotosineProjectValueTree::setTimelineStart ( Time::Timecode start)

Returs the start Timecode of the currently selected timeline.

◆ setTimelineViewEnd()

void PhotosineProjectValueTree::setTimelineViewEnd ( Time::Timecode end)

Sets the end Timecode of the currently viewed section of the currently selected timeline.

◆ setTimelineViewStart()

void PhotosineProjectValueTree::setTimelineViewStart ( Time::Timecode start)

Sets the start Timecode of the currently viewed section of the currently selected timeline.

Member Data Documentation

◆ audioExtensions

juce::StringArray PhotosineProjectValueTree::audioExtensions { ".wav", ".aiff", ".mp3" }
private

◆ IDs

struct PhotosineProjectValueTree::PropertyIDs PhotosineProjectValueTree::IDs

◆ imageExtensions

juce::StringArray PhotosineProjectValueTree::imageExtensions { ".png", ".jpg", ".jpeg", ".tiff" }
private

◆ projectValueTree

juce::ValueTree PhotosineProjectValueTree::projectValueTree
private

Primary instance of project value tree

◆ videoExtensions

juce::StringArray PhotosineProjectValueTree::videoExtensions { ".mp4", ".mov" }
private

The documentation for this class was generated from the following files: