lensfun: Database functions

Classes | Enumerations | Functions

# Database functions

Create, destroy and search database for objects. More...

## Classes
struct | lfDatabase
| A lens database object. More...
## Enumerations
enum | { LF_SEARCH_LOOSE = 1 }
| Flags controlling the behavior of database searches. More...
## Functions
lfDatabase * | lf_db_new (void)
| Create a new empty database object.
void | lf_db_destroy (lfDatabase *db)
| Destroy the database object.
lfError | lf_db_load (lfDatabase *db)
lfError | lf_db_load_file (lfDatabase *db, const char *filename)
lfError | lf_db_load_data (lfDatabase *db, const char *errcontext, const char *data, size_t data_size)
lfError | lf_db_save_all (const lfDatabase *db, const char *filename)
lfError | lf_db_save_file (const lfDatabase *db, const char *filename, const lfMount *const *mounts, const lfCamera *const *cameras, const lfLens *const *lenses)
char * | lf_db_save (const lfMount *const *mounts, const lfCamera *const *cameras, const lfLens *const *lenses)
const lfCamera ** | lf_db_find_cameras (const lfDatabase *db, const char *maker, const char *model)
const lfCamera ** | lf_db_find_cameras_ext (const lfDatabase *db, const char *maker, const char *model, int sflags)
const lfCamera *const | lf_db_get_cameras (const lfDatabase *db)
const lfLens ** | lf_db_find_lenses_hd (const lfDatabase *db, const lfCamera *camera, const char *maker, const char *lens, int sflags)
const lfLens ** | lf_db_find_lenses (const lfDatabase *db, const lfLens *lens, int sflags)
const lfLens *const | lf_db_get_lenses (const lfDatabase *db)
const lfMount * | lf_db_find_mount (const lfDatabase *db, const char *mount)
const char * | lf_db_mount_name (const lfDatabase *db, const char *mount)
const lfMount *const | lf_db_get_mounts (const lfDatabase *db)

## Detailed Description

Create, destroy and search database for objects.

## Enumeration Type Documentation

anonymous enum

Flags controlling the behavior of database searches.

Enumerator:

  LF_SEARCH_LOOSE | This flag selects a looser search algorithm resulting in more results (still sorted by score). If it is not present, all results where at least one of the input words is missing will be discarded.

## Function Documentation

void lf_db_destroy | ( | lfDatabase * | db ) |

Destroy the database object.

This is the only way to correctly destroy the database object.

Parameters:

  db | The database to destroy.

See also:
  lfDatabase::~lfDatabase

Examples:
  example.c.

const lfCamera** lf_db_find_cameras | ( | const lfDatabase * | db,
|  | const char * | maker,
|  | const char * | model
| ) |  |

See also:
  lfDatabase::FindCameras

const lfCamera** lf_db_find_cameras_ext | ( | const lfDatabase * | db,
|  | const char * | maker,
|  | const char * | model,
|  | int | sflags
| ) |  |

See also:
  lfDatabase::FindCamerasExt

const lfLens** lf_db_find_lenses | ( | const lfDatabase * | db,
|  | const lfLens * | lens,
|  | int | sflags
| ) |  |

See also:
  lfDatabase::FindLenses(const lfCamera *, const lfLens *)

const lfLens** lf_db_find_lenses_hd | ( | const lfDatabase * | db,
|  | const lfCamera * | camera,
|  | const char * | maker,
|  | const char * | lens,
|  | int | sflags
| ) |  |

See also:
  lfDatabase::FindLenses(const lfCamera *, const char *, const char *)

const lfMount* lf_db_find_mount | ( | const lfDatabase * | db,
|  | const char * | mount
| ) |  |

See also:
  lfDatabase::FindMount

const lfCamera* const lf_db_get_cameras | ( | const lfDatabase * | db ) |

See also:
  lfDatabase::GetCameras

Examples:
  example.c.

const lfLens* const lf_db_get_lenses | ( | const lfDatabase * | db ) |

See also:
  lfDatabase::GetLenses

Examples:
  example.c.

const lfMount* const lf_db_get_mounts | ( | const lfDatabase * | db ) |

See also:
  lfDatabase::GetMounts

Examples:
  example.c.

lfError lf_db_load | ( | lfDatabase * | db ) |

See also:
  lfDatabase::Load()

Examples:
  example.c.

lfError lf_db_load_data | ( | lfDatabase * | db,
|  | const char * | errcontext,
|  | const char * | data,
|  | size_t | data_size
| ) |  |

See also:
  lfDatabase::Load(const char *, const char *, size_t)

lfError lf_db_load_file | ( | lfDatabase * | db,
|  | const char * | filename
| ) |  |

See also:
  lfDatabase::Load(const char *)

const char* lf_db_mount_name | ( | const lfDatabase * | db,
|  | const char * | mount
| ) |  |

See also:
  lfDatabase::MountName

Examples:
  example.c, and tfun.cpp.

lfDatabase* lf_db_new | ( | void | ) |

Create a new empty database object.

Usually the application will want to do this at startup, after which it would be a good idea to call lf_db_load().

Returns:
  A new empty database object.

See also:
  lfDatabase::lfDatabase

Examples:
  example.c, tfun.cpp, and tmod.cpp.

char* lf_db_save | ( | const lfMount *const * | mounts,
|  | const lfCamera *const * | cameras,
|  | const lfLens *const * | lenses
| ) |  |

See also:
  lfDatabase::Save(const lfMount *const *, const lfCamera *const *, const lfLens *const *)

lfError lf_db_save_all | ( | const lfDatabase * | db,
|  | const char * | filename
| ) |  |

See also:
  lfDatabase::Save(const char *)

lfError lf_db_save_file | ( | const lfDatabase * | db,
|  | const char * | filename,
|  | const lfMount *const * | mounts,
|  | const lfCamera *const * | cameras,
|  | const lfLens *const * | lenses
| ) |  |

See also:
  lfDatabase::Save(const char *, const lfMount *const *, const lfCamera *const *, const lfLens *const *)

Examples:
  example.c.