172 lines
5.7 KiB
Dart
172 lines
5.7 KiB
Dart
// GENERATED CODE - DO NOT MODIFY BY HAND
|
|
// This code was generated by ObjectBox. To update it run the generator again:
|
|
// With a Flutter package, run `flutter pub run build_runner build`.
|
|
// With a Dart package, run `dart run build_runner build`.
|
|
// See also https://docs.objectbox.io/getting-started#generate-objectbox-code
|
|
|
|
// ignore_for_file: camel_case_types, depend_on_referenced_packages
|
|
// coverage:ignore-file
|
|
|
|
import 'dart:typed_data';
|
|
|
|
import 'package:flat_buffers/flat_buffers.dart' as fb;
|
|
import 'package:objectbox/internal.dart'; // generated code can access "internal" functionality
|
|
import 'package:objectbox/objectbox.dart';
|
|
import 'package:objectbox_flutter_libs/objectbox_flutter_libs.dart';
|
|
|
|
import 'package:photos/models/embedding.dart';
|
|
|
|
export 'package:objectbox/objectbox.dart'; // so that callers only have to import this file
|
|
|
|
final _entities = <ModelEntity>[
|
|
ModelEntity(
|
|
id: const IdUid(1, 4067035246682038114),
|
|
name: 'Embedding',
|
|
lastPropertyId: const IdUid(4, 7974898435327252398),
|
|
flags: 0,
|
|
properties: <ModelProperty>[
|
|
ModelProperty(
|
|
id: const IdUid(1, 2902120230153008095),
|
|
name: 'fileID',
|
|
type: 6,
|
|
flags: 129,
|
|
),
|
|
ModelProperty(
|
|
id: const IdUid(2, 5644004076892986076),
|
|
name: 'model',
|
|
type: 9,
|
|
flags: 0,
|
|
),
|
|
ModelProperty(
|
|
id: const IdUid(3, 4818114203635230783),
|
|
name: 'embedding',
|
|
type: 29,
|
|
flags: 0,
|
|
),
|
|
ModelProperty(
|
|
id: const IdUid(4, 7974898435327252398),
|
|
name: 'updationTime',
|
|
type: 6,
|
|
flags: 0,
|
|
),
|
|
],
|
|
relations: <ModelRelation>[],
|
|
backlinks: <ModelBacklink>[],
|
|
),
|
|
];
|
|
|
|
/// Shortcut for [Store.new] that passes [getObjectBoxModel] and for Flutter
|
|
/// apps by default a [directory] using `defaultStoreDirectory()` from the
|
|
/// ObjectBox Flutter library.
|
|
///
|
|
/// Note: for desktop apps it is recommended to specify a unique [directory].
|
|
///
|
|
/// See [Store.new] for an explanation of all parameters.
|
|
Future<Store> openStore({
|
|
String? directory,
|
|
int? maxDBSizeInKB,
|
|
int? fileMode,
|
|
int? maxReaders,
|
|
bool queriesCaseSensitiveDefault = true,
|
|
String? macosApplicationGroup,
|
|
}) async =>
|
|
Store(
|
|
getObjectBoxModel(),
|
|
directory: directory ?? (await defaultStoreDirectory()).path,
|
|
maxDBSizeInKB: maxDBSizeInKB,
|
|
fileMode: fileMode,
|
|
maxReaders: maxReaders,
|
|
queriesCaseSensitiveDefault: queriesCaseSensitiveDefault,
|
|
macosApplicationGroup: macosApplicationGroup,
|
|
);
|
|
|
|
/// Returns the ObjectBox model definition for this project for use with
|
|
/// [Store.new].
|
|
ModelDefinition getObjectBoxModel() {
|
|
final model = ModelInfo(
|
|
entities: _entities,
|
|
lastEntityId: const IdUid(1, 4067035246682038114),
|
|
lastIndexId: const IdUid(0, 0),
|
|
lastRelationId: const IdUid(0, 0),
|
|
lastSequenceId: const IdUid(0, 0),
|
|
retiredEntityUids: const [],
|
|
retiredIndexUids: const [],
|
|
retiredPropertyUids: const [],
|
|
retiredRelationUids: const [],
|
|
modelVersion: 5,
|
|
modelVersionParserMinimum: 5,
|
|
version: 1,
|
|
);
|
|
|
|
final bindings = <Type, EntityDefinition>{
|
|
Embedding: EntityDefinition<Embedding>(
|
|
model: _entities[0],
|
|
toOneRelations: (Embedding object) => [],
|
|
toManyRelations: (Embedding object) => {},
|
|
getId: (Embedding object) => object.fileID,
|
|
setId: (Embedding object, int id) {
|
|
if (object.fileID != id) {
|
|
throw ArgumentError('Field Embedding.fileID is read-only '
|
|
'(final or getter-only) and it was declared to be self-assigned. '
|
|
'However, the currently inserted object (.fileID=${object.fileID}) '
|
|
"doesn't match the inserted ID (ID $id). "
|
|
'You must assign an ID before calling [box.put()].');
|
|
}
|
|
},
|
|
objectToFB: (Embedding object, fb.Builder fbb) {
|
|
final modelOffset = fbb.writeString(object.model);
|
|
final embeddingOffset = fbb.writeListFloat64(object.embedding);
|
|
fbb.startTable(5);
|
|
fbb.addInt64(0, object.fileID);
|
|
fbb.addOffset(1, modelOffset);
|
|
fbb.addOffset(2, embeddingOffset);
|
|
fbb.addInt64(3, object.updationTime);
|
|
fbb.finish(fbb.endTable());
|
|
return object.fileID;
|
|
},
|
|
objectFromFB: (Store store, ByteData fbData) {
|
|
final buffer = fb.BufferContext(fbData);
|
|
final rootOffset = buffer.derefObject(0);
|
|
final fileIDParam =
|
|
const fb.Int64Reader().vTableGet(buffer, rootOffset, 4, 0);
|
|
final modelParam = const fb.StringReader(asciiOptimization: true)
|
|
.vTableGet(buffer, rootOffset, 6, '');
|
|
final embeddingParam =
|
|
const fb.ListReader<double>(fb.Float64Reader(), lazy: false)
|
|
.vTableGet(buffer, rootOffset, 8, []);
|
|
final updationTimeParam =
|
|
const fb.Int64Reader().vTableGetNullable(buffer, rootOffset, 10);
|
|
final object = Embedding(
|
|
fileID: fileIDParam,
|
|
model: modelParam,
|
|
embedding: embeddingParam,
|
|
updationTime: updationTimeParam,
|
|
);
|
|
|
|
return object;
|
|
},
|
|
),
|
|
};
|
|
|
|
return ModelDefinition(model, bindings);
|
|
}
|
|
|
|
/// [Embedding] entity fields to define ObjectBox queries.
|
|
class Embedding_ {
|
|
/// see [Embedding.fileID]
|
|
static final fileID =
|
|
QueryIntegerProperty<Embedding>(_entities[0].properties[0]);
|
|
|
|
/// see [Embedding.model]
|
|
static final model =
|
|
QueryStringProperty<Embedding>(_entities[0].properties[1]);
|
|
|
|
/// see [Embedding.embedding]
|
|
static final embedding =
|
|
QueryDoubleVectorProperty<Embedding>(_entities[0].properties[2]);
|
|
|
|
/// see [Embedding.updationTime]
|
|
static final updationTime =
|
|
QueryIntegerProperty<Embedding>(_entities[0].properties[3]);
|
|
}
|