Vuo 2.4.4
Loading...
Searching...
No Matches
VuoRunningCompositionLibraries.hh
Go to the documentation of this file.
1
10#pragma once
11
19{
20public:
21 typedef std::function<void(void)> CallbackType;
22
25 void enqueueResourceLibraryToLoad(const string &path, const set<string> &dependenciesInLibrary, bool isUnloadable);
26 void enqueueResourceLibraryToUnload(const string &path);
28 void enqueueCacheLibraryToLoad(const string &path, const set<string> &dependenciesInLibrary, bool isUnloadable, CallbackType doAfterLoadAttempted);
29 set<string> enqueueCacheLibraryToUnload(const string &path);
30 void enqueueLibraryContainingDependencyToUnload(const string &dependency);
31 vector<string> dequeueLibrariesToLoad(vector<CallbackType> &doAfterLoadAttempted);
32 vector<string> dequeueLibrariesToUnload(void);
33 vector<string> getNonUnloadableLibrariesLoaded(void);
34 vector<string> getUnloadableLibrariesLoaded(void);
35 vector<string> getUnloadableResourceLibrariesLoaded(void);
36 vector<string> getUnloadableCacheLibrariesLoaded(void);
37 map<string, set<string>> getCacheLibrariesEnqueuedToUnload(void);
38 set<string> getDependenciesLoaded(void);
39 void addExternalLibraries(const set<string> &paths);
40 void addExternalFrameworks(const set<string> &paths);
41 set<string> getExternalLibraries(void);
42 set<string> getExternalFrameworks(void);
43 void setDeleteResourceLibraries(bool shouldDeleteResourceLibraries);
44
45private:
46 vector<string> resourcePathsToLoad;
47 vector<string> cachePathsToLoad;
48 vector<string> resourcePathsLoaded;
49 vector<string> cachePathsLoaded;
50 set<string> resourcePathsToUnload;
51 set<string> cachePathsToUnload;
52 map<string, bool> canUnloadPathToLoad;
53 map<string, bool> canUnloadPathLoaded;
54 map<string, set<string> > dependenciesToLoad;
55 map<string, set<string> > dependenciesLoaded;
56 set<string> externalLibraries;
57 set<string> externalFrameworks;
58 bool shouldDeleteResourceLibraries;
59 map<string, CallbackType> cachePathLoadedCallbacks;
60};