#include "src/trace_processor/perfetto_sql/intrinsics/operators/slice_mipmap_operator.h"
#include <sqlite3.h>
#include <algorithm>
#include <cstddef>
#include <cstdint>
#include <iterator>
#include <memory>
#include <string>
#include <utility>
#include "perfetto/base/logging.h"
#include "perfetto/base/status.h"
#include "perfetto/ext/base/status_or.h"
#include "perfetto/public/compiler.h"
#include "src/trace_processor/containers/implicit_segment_forest.h"
#include "src/trace_processor/sqlite/bindings/sqlite_result.h"
#include "src/trace_processor/sqlite/module_lifecycle_manager.h"
#include "src/trace_processor/sqlite/sql_source.h"
#include "src/trace_processor/sqlite/sqlite_utils.h"
namespace perfetto::trace_processor {
namespace {
constexpr char kSliceSchema[] = …;
enum ColumnIndex : size_t { … };
constexpr size_t kArgCount = …;
bool IsArgColumn(size_t index) { … }
}
int SliceMipmapOperator::Create(sqlite3* db,
void* raw_ctx,
int argc,
const char* const* argv,
sqlite3_vtab** vtab,
char** zErr) { … }
int SliceMipmapOperator::Destroy(sqlite3_vtab* vtab) { … }
int SliceMipmapOperator::Connect(sqlite3* db,
void* raw_ctx,
int argc,
const char* const* argv,
sqlite3_vtab** vtab,
char**) { … }
int SliceMipmapOperator::Disconnect(sqlite3_vtab* vtab) { … }
int SliceMipmapOperator::BestIndex(sqlite3_vtab*, sqlite3_index_info* info) { … }
int SliceMipmapOperator::Open(sqlite3_vtab*, sqlite3_vtab_cursor** cursor) { … }
int SliceMipmapOperator::Close(sqlite3_vtab_cursor* cursor) { … }
int SliceMipmapOperator::Filter(sqlite3_vtab_cursor* cursor,
int,
const char*,
int argc,
sqlite3_value** argv) { … }
int SliceMipmapOperator::Next(sqlite3_vtab_cursor* cursor) { … }
int SliceMipmapOperator::Eof(sqlite3_vtab_cursor* cursor) { … }
int SliceMipmapOperator::Column(sqlite3_vtab_cursor* cursor,
sqlite3_context* ctx,
int N) { … }
int SliceMipmapOperator::Rowid(sqlite3_vtab_cursor*, sqlite_int64*) { … }
}