tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications

« « « Anklang Documentation
Loading...
Searching...
No Matches
tracktion_ProjectSearchIndex.h
Go to the documentation of this file.
1 /*
2 ,--. ,--. ,--. ,--.
3 ,-' '-.,--.--.,--,--.,---.| |,-.,-' '-.`--' ,---. ,--,--, Copyright 2024
4 '-. .-'| .--' ,-. | .--'| /'-. .-',--.| .-. || \ Tracktion Software
5 | | | | \ '-' \ `--.| \ \ | | | |' '-' '| || | Corporation
6 `---' `--' `--`--'`---'`--'`--' `---' `--' `---' `--''--' www.tracktion.com
7
8 Tracktion Engine uses a GPL/commercial licence - see LICENCE.md for details.
9*/
10
11namespace tracktion { inline namespace engine
12{
13
14struct IndexedWord;
15class SearchOperation;
16
17//==============================================================================
19{
20public:
22
23 void addClip (const ProjectItem::Ptr&);
24 void findMatches (SearchOperation&, juce::Array<ProjectItemID>& results);
25
26 void writeToStream (juce::OutputStream&);
27 void readFromStream (juce::InputStream&);
28
29 IndexedWord* findWordMatch (const juce::String& word) const;
30
31 Project& project;
33
35};
36
37//==============================================================================
40
41//==============================================================================
43{
44public:
45 SearchOperation (SearchOperation* in1 = nullptr,
46 SearchOperation* in2 = nullptr);
47 virtual ~SearchOperation();
48
49 virtual juce::Array<int> getMatches (ProjectSearchIndex&) = 0;
50
51protected:
53
55};
56
57}} // namespace tracktion { inline namespace engine
#define JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(className)
SearchOperation * createSearchForKeywords(const juce::String &keywords)
Turns a keyword string into a search condition tree.