yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
story_event_graph_query.h
Go to the documentation of this file.
1#ifndef YAZE_CORE_STORY_EVENT_GRAPH_QUERY_H
2#define YAZE_CORE_STORY_EVENT_GRAPH_QUERY_H
3
4#include <string>
5#include <string_view>
6#include <vector>
7
9
10namespace yaze::core {
11
19 std::string query;
20
21 bool include_locked = true;
22 bool include_available = true;
23 bool include_completed = true;
24 bool include_blocked = true;
25};
26
27// Returns true if `status` is included by the filter toggles.
29 const StoryEventNodeFilter& filter);
30
31// Returns true if the free-text query matches the node (case-insensitive).
32// Query is split by whitespace into tokens; all tokens must match somewhere.
34 std::string_view query);
35
36// Combined status + query match.
38 const StoryEventNodeFilter& filter);
39
40// Exposed for caching/debugging: builds a normalized (lowercased) searchable
41// string containing the node's primary metadata (id/name/flags/locations/etc).
42std::string BuildStoryEventNodeSearchText(const StoryEventNode& node);
43
44} // namespace yaze::core
45
46#endif // YAZE_CORE_STORY_EVENT_GRAPH_QUERY_H
47
bool StoryEventNodeMatchesFilter(const StoryEventNode &node, const StoryEventNodeFilter &filter)
bool StoryEventNodeMatchesQuery(const StoryEventNode &node, std::string_view query)
std::string BuildStoryEventNodeSearchText(const StoryEventNode &node)
bool StoryNodeStatusAllowed(StoryNodeStatus status, const StoryEventNodeFilter &filter)
StoryNodeStatus
Completion status of a story event node for rendering.
Filter options for StoryEventGraph node search in UI.
A node in the Oracle story event graph.