#ifndef LCAMERA_DEV_CAMERA_IDENTITY_H
#define LCAMERA_DEV_CAMERA_IDENTITY_H

#include <libcamera/camera.h>
#include <optional>
#include <string>
#include <vector>

namespace lcamera_dev {

struct CameraIdentityRecord
{
	std::string id;
	std::string model;
	std::string locationLabel;
};

CameraIdentityRecord buildIdentityRecord(
	const std::shared_ptr<libcamera::Camera>& camera);

std::vector<CameraIdentityRecord> buildIdentityRecords(
	const std::vector<std::shared_ptr<libcamera::Camera>>& cameras);
	
std::string locationPropertyToLabel(int32_t locationValue);

} // namespace lcamera_dev

#endif // LCAMERA_DEV_CAMERA_IDENTITY_H
