TracktionEngine
Public Member Functions | Static Public Member Functions | List of all members
tracktion::engine::ProjectItemID Class Reference

An ID representing one of the items in a Project. More...

Public Member Functions

 ProjectItemID () noexcept=default
 
 ProjectItemID (const ProjectItemID &) noexcept=default
 
ProjectItemIDoperator= (const ProjectItemID &) noexcept=default
 
 ~ProjectItemID () noexcept=default
 
 ProjectItemID (const juce::String &stringID) noexcept
 takes a string created by toString(). More...
 
 ProjectItemID (int itemID, int projectID) noexcept
 Creates an ID from the . More...
 
ProjectItemID withNewProjectID (int newProjectID) const
 
int getProjectID () const
 Returns the ID of the project this item belongs to. More...
 
int getItemID () const
 Returns the ID of the item within the project. More...
 
int64_t getRawID () const noexcept
 Returns a combined ID as an integer, useful for creating hashes. More...
 
bool isValid () const noexcept
 
bool isInvalid () const noexcept
 
juce::String toString () const
 
juce::String toStringSuitableForFilename () const
 
bool operator== (ProjectItemID other) const
 
bool operator!= (ProjectItemID other) const
 
bool operator< (ProjectItemID other) const
 

Static Public Member Functions

static ProjectItemID createNewID (int projectID) noexcept
 Generates a new ID for a given project. More...
 
static ProjectItemID fromProperty (const juce::ValueTree &, const juce::Identifier &)
 

Detailed Description

An ID representing one of the items in a Project.

A ProjectItemID consists of two parts: the ID of the project it belongs to, and an ID of the item within that project.

Constructor & Destructor Documentation

◆ ProjectItemID() [1/4]

tracktion::engine::ProjectItemID::ProjectItemID ( )
defaultnoexcept

◆ ProjectItemID() [2/4]

tracktion::engine::ProjectItemID::ProjectItemID ( const ProjectItemID )
defaultnoexcept

◆ ~ProjectItemID()

tracktion::engine::ProjectItemID::~ProjectItemID ( )
defaultnoexcept

◆ ProjectItemID() [3/4]

tracktion::engine::ProjectItemID::ProjectItemID ( const juce::String &  stringID)
explicitnoexcept

takes a string created by toString().

◆ ProjectItemID() [4/4]

tracktion::engine::ProjectItemID::ProjectItemID ( int  itemID,
int  projectID 
)
noexcept

Creates an ID from the .

Member Function Documentation

◆ operator=()

ProjectItemID& tracktion::engine::ProjectItemID::operator= ( const ProjectItemID )
defaultnoexcept

◆ createNewID()

static ProjectItemID tracktion::engine::ProjectItemID::createNewID ( int  projectID)
staticnoexcept

Generates a new ID for a given project.

Referenced by tracktion::engine::benchmark_utilities::loadEditFromValueTree().

◆ fromProperty()

static ProjectItemID tracktion::engine::ProjectItemID::fromProperty ( const juce::ValueTree &  ,
const juce::Identifier &   
)
static

◆ withNewProjectID()

ProjectItemID tracktion::engine::ProjectItemID::withNewProjectID ( int  newProjectID) const

◆ getProjectID()

int tracktion::engine::ProjectItemID::getProjectID ( ) const

Returns the ID of the project this item belongs to.

◆ getItemID()

int tracktion::engine::ProjectItemID::getItemID ( ) const

Returns the ID of the item within the project.

Referenced by tracktion::engine::WaveCompManager::getBaseTakeHash().

◆ getRawID()

int64_t tracktion::engine::ProjectItemID::getRawID ( ) const
noexcept

Returns a combined ID as an integer, useful for creating hashes.

◆ isValid()

bool tracktion::engine::ProjectItemID::isValid ( ) const
noexcept

◆ isInvalid()

bool tracktion::engine::ProjectItemID::isInvalid ( ) const
noexcept

◆ toString()

juce::String tracktion::engine::ProjectItemID::toString ( ) const

◆ toStringSuitableForFilename()

juce::String tracktion::engine::ProjectItemID::toStringSuitableForFilename ( ) const

◆ operator==()

bool tracktion::engine::ProjectItemID::operator== ( ProjectItemID  other) const

◆ operator!=()

bool tracktion::engine::ProjectItemID::operator!= ( ProjectItemID  other) const

◆ operator<()

bool tracktion::engine::ProjectItemID::operator< ( ProjectItemID  other) const

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