#include "src/trace_processor/perfetto_sql/intrinsics/operators/window_operator.h"
#include <sqlite3.h>
#include <cstdint>
#include <memory>
#include "perfetto/base/logging.h"
#include "src/trace_processor/sqlite/bindings/sqlite_result.h"
#include "src/trace_processor/sqlite/module_lifecycle_manager.h"
#include "src/trace_processor/sqlite/sqlite_utils.h"
namespace perfetto::trace_processor {
namespace {
constexpr char kSchema[] = …;
}
enum Column { … };
int WindowOperatorModule::Create(sqlite3* db,
void* raw_ctx,
int argc,
const char* const* argv,
sqlite3_vtab** vtab,
char**) { … }
int WindowOperatorModule::Destroy(sqlite3_vtab* vtab) { … }
int WindowOperatorModule::Connect(sqlite3* db,
void* raw_ctx,
int argc,
const char* const* argv,
sqlite3_vtab** vtab,
char**) { … }
int WindowOperatorModule::Disconnect(sqlite3_vtab* vtab) { … }
int WindowOperatorModule::BestIndex(sqlite3_vtab*, sqlite3_index_info* info) { … }
int WindowOperatorModule::Open(sqlite3_vtab*, sqlite3_vtab_cursor** cursor) { … }
int WindowOperatorModule::Close(sqlite3_vtab_cursor* cursor) { … }
int WindowOperatorModule::Filter(sqlite3_vtab_cursor* cursor,
int is_row_id_constraint,
const char*,
int argc,
sqlite3_value** argv) { … }
int WindowOperatorModule::Next(sqlite3_vtab_cursor* cursor) { … }
int WindowOperatorModule::Eof(sqlite3_vtab_cursor* cursor) { … }
int WindowOperatorModule::Column(sqlite3_vtab_cursor* cursor,
sqlite3_context* ctx,
int N) { … }
int WindowOperatorModule::Rowid(sqlite3_vtab_cursor*, sqlite_int64*) { … }
int WindowOperatorModule::Update(sqlite3_vtab* tab,
int argc,
sqlite3_value** argv,
sqlite_int64*) { … }
}