10#include <SQLiteCpp/SQLiteCpp.h>
117 SQLite::Database& db, std::string startTimestamp, std::string endTimestamp);
293bool store_otp_secret(SQLite::Database& db,
const std::string&
id,
const std::string& secret);
void create_table_recovery_codes(SQLite::Database &db)
recovery_codes 테이블을 생성합니다.
Definition db_management.cpp:579
bool insert_data_verticalLineEquations(SQLite::Database &db, VerticalLineEquation verticalLineEquation)
verticalLineEquations 테이블에 데이터를 삽입합니다.
Definition db_management.cpp:423
void delete_all_data_detections(SQLite::Database &db)
Detections 테이블의 모든 데이터를 삭제합니다.
Definition db_management.cpp:93
void create_table_detections(SQLite::Database &db)
Detections 테이블을 생성합니다.
Definition db_management.cpp:17
bool delete_all_data_baseLines(SQLite::Database &db)
baseLines 테이블의 모든 데이터를 삭제합니다.
Definition db_management.cpp:354
std::vector< CrossLine > select_all_data_lines(SQLite::Database &db)
Lines 테이블의 모든 데이터를 조회합니다.
Definition db_management.cpp:165
VerticalLineEquation select_data_verticalLineEquations(SQLite::Database &db, int index)
verticalLineEquations 테이블에서 특정 인덱스의 데이터를 조회합니다.
Definition db_management.cpp:394
void create_table_baseLines(SQLite::Database &db)
baseLines 테이블을 생성합니다.
Definition db_management.cpp:243
bool store_otp_secret(SQLite::Database &db, const std::string &id, const std::string &secret)
accounts 테이블에 OTP 시크릿을 저장합니다.
Account * select_data_accounts(SQLite::Database &db, std::string id, std::string passwd)
accounts 테이블에서 id와 passwd로 계정 정보를 조회합니다.
bool insert_data_lines(SQLite::Database &db, CrossLine crossLine)
Lines 테이블에 데이터를 삽입합니다.
Definition db_management.cpp:134
std::vector< BaseLine > select_all_data_baseLines(SQLite::Database &db)
baseLines 테이블의 모든 데이터를 조회합니다.
Definition db_management.cpp:262
bool delete_all_data_verticalLineEquations(SQLite::Database &db)
verticalLineEquations 테이블의 모든 데이터를 삭제합니다.
Definition db_management.cpp:452
void create_table_accounts(SQLite::Database &db)
accounts 테이블을 생성합니다.
Definition db_management.cpp:473
std::vector< std::string > get_hashed_recovery_codes(SQLite::Database &db, const std::string &id)
recovery_codes 테이블에서 사용되지 않은 해시 복구 코드 목록을 조회합니다.
Definition db_management.cpp:697
std::vector< Detection > select_data_for_timestamp_range_detections(SQLite::Database &db, std::string startTimestamp, std::string endTimestamp)
주어진 시간 범위 내의 Detection 데이터를 조회합니다.
bool store_recovery_codes(SQLite::Database &db, const std::string &id, const std::vector< std::string > &codes)
recovery_codes 테이블에 복구 코드를 저장합니다.
bool insert_data_accounts(SQLite::Database &db, Account account)
accounts 테이블에 계정 정보를 삽입합니다.
Definition db_management.cpp:526
bool delete_all_data_lines(SQLite::Database &db)
Lines 테이블의 모든 데이터를 삭제합니다.
Definition db_management.cpp:219
bool delete_data_lines(SQLite::Database &db, int indexNum)
Lines 테이블에서 특정 인덱스의 데이터를 삭제합니다.
Definition db_management.cpp:195
bool insert_data_baseLines(SQLite::Database &db, BaseLine baseline)
baseLines 테이블에 데이터를 삽입합니다.
Definition db_management.cpp:292
Account * get_account_by_id(SQLite::Database &db, const std::string &id)
accounts 테이블에서 id로 계정 정보를 조회합니다.
bool insert_data_detections(SQLite::Database &db, Detection detection)
Detections 테이블에 데이터를 삽입합니다.
Definition db_management.cpp:34
void create_table_verticalLineEquations(SQLite::Database &db)
verticalLineEquations 테이블을 생성합니다.
Definition db_management.cpp:378
bool invalidate_recovery_code(SQLite::Database &db, const std::string &id, const std::string &code)
입력한 복구 코드가 일치하면 해당 코드를 used=1로 무효화합니다.
void create_table_lines(SQLite::Database &db)
Lines 테이블을 생성합니다.
Definition db_management.cpp:114
bool verify_recovery_code(SQLite::Database &db, const std::string &id, const std::string &code)
입력한 복구 코드가 DB에 저장된 해시와 일치하는지 검증합니다.
Definition db_management.cpp:641
bool update_data_baseLines(SQLite::Database &db, BaseLine baseline)
baseLines 테이블의 데이터를 수정합니다.
Definition db_management.cpp:325
사용자 계정 정보를 저장하는 구조체
Definition db_management.hpp:74
std::string id
사용자 ID
Definition db_management.hpp:75
std::string otp_secret
OTP 시크릿
Definition db_management.hpp:77
std::string passwd
비밀번호(해시)
Definition db_management.hpp:76
bool use_otp
OTP 사용 여부
Definition db_management.hpp:78
기준선 좌표 정보를 저장하는 구조체
Definition db_management.hpp:48
int y2
두 번째 점 y
Definition db_management.hpp:55
int matrixNum2
두 번째 매트릭스 번호
Definition db_management.hpp:53
int y1
첫 번째 점 y
Definition db_management.hpp:52
int matrixNum1
첫 번째 매트릭스 번호
Definition db_management.hpp:50
int x2
두 번째 점 x
Definition db_management.hpp:54
int x1
첫 번째 점 x
Definition db_management.hpp:51
int index
기준선 인덱스
Definition db_management.hpp:49
감지선 정보를 저장하는 구조체
Definition db_management.hpp:33
std::string name
라인 이름
Definition db_management.hpp:39
int x1
시작점 x
Definition db_management.hpp:35
int y1
시작점 y
Definition db_management.hpp:36
int index
라인 인덱스
Definition db_management.hpp:34
std::string mode
감지 모드
Definition db_management.hpp:40
int y2
끝점 y
Definition db_management.hpp:38
int x2
끝점 x
Definition db_management.hpp:37
감지 이미지와 타임스탬프를 저장하는 구조체
Definition db_management.hpp:23
std::string timestamp
감지 시각
Definition db_management.hpp:25
std::vector< unsigned char > imageBlob
이미지 데이터 (BLOB)
Definition db_management.hpp:24
복구 코드 정보를 저장하는 구조체
Definition db_management.hpp:86
std::string id
사용자 ID
Definition db_management.hpp:87
std::string code
복구 코드(해시)
Definition db_management.hpp:88
int used
사용 여부(0: 미사용, 1: 사용)
Definition db_management.hpp:89
수직선 방정식(ax+b=0) 정보를 저장하는 구조체
Definition db_management.hpp:63
double b
절편 b
Definition db_management.hpp:66
double a
기울기 a
Definition db_management.hpp:65
int index
수직선 인덱스
Definition db_management.hpp:64