From 3ce48f6dbeb537e252edb0d62c88a28796e36674 Mon Sep 17 00:00:00 2001 From: SWK <sungwk82@diteam.co.kr> Date: 월, 26 12월 2022 15:04:42 +0900 Subject: [PATCH] ongoing60 #4403 CF AOI Review TACT 지연 개선 1. 신호 출력 방식 재개선 - 유지 시간이 없는 신호는 바로 출력 진행하도록 변경 2. 불필요 Delay 제거 및 시퀀스 변경 - 얼라인 측정 종료 처리 간 제어 신호 먼저 출력 후 카메라 Stop으로 변경 - 물류 정보 읽기 처리 후 1000ms Delay 삭제 - 얼라인 측정 시작(카메라 Live Start) 후 Delay 300ms -> 100ms(이미지 들어오는 시간 확보 필요) - ReadRawFile 처리 시작 전 500ms Delay 삭제 - Path Scheduling 완료 후 Review Ready 신호 출력 전 1000ms Delay 삭제 3. 버그 수정 - 이미지 저장 경로 생성 간 예외 처리 부분 버그 수정 4. 로그 시간 출력 불합리 개선 - 로그 시간이 파일 출력 시점으로 작성되어 로그 스래드 지연 시 시간이 맞지 않는 불합리 있음 - 로그 시간은 로그 발생 시점에 시간 저장, 해당 시간 이용하여 파일에 기록하도록 변경 --- ReviewHistory/include/akSTL/backup/akFileMgr.h | 80 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 80 insertions(+), 0 deletions(-) diff --git a/ReviewHistory/include/akSTL/backup/akFileMgr.h b/ReviewHistory/include/akSTL/backup/akFileMgr.h new file mode 100644 index 0000000..158d0b9 --- /dev/null +++ b/ReviewHistory/include/akSTL/backup/akFileMgr.h @@ -0,0 +1,80 @@ +#pragma once + + + +#include "akLinker.h" +#include <vector> + +struct akSTL_DLLSPEC _Attribute +{ + _Attribute() + { + memset(Title , 0, sizeof(char)*128); + memset(Attribute , 0, sizeof(char)*128); + memset(Value , 0, sizeof(char)*128); + } + char Title[128]; + char Attribute[128]; + char Value[128]; +}; + +struct akSTL_DLLSPEC _Title +{ + _Title(char* title) + { + strcpy(Title, title); + }; + bool compare(char* title) + { + if(strcmp(title, Title) == 0 && strlen(title) == strlen(Title)) + { + return true; + } + return false; + }; + void clear() + { + memset(Title, 0, sizeof(char)*128); + }; + char Title[128]; +}; + +namespace akSTL +{ + class akSTL_DLLSPEC CakFileMgr + { + public: + CakFileMgr(void); + ~CakFileMgr(void); + + //타이틀 설정(OpenFile()함수와 MakeFile()함수를 호출하면 타이틀셋팅은 Null이 된다) + void SetTitle(char* title); + + //쓰기 관련 + //타이틀을 정한다. + bool SetAttribute(char* Attribute, int value); + bool SetAttribute(char* Attribute, double value); + bool SetAttribute(char* Attribute, char* value); + bool SetAttribute(char* Attribute, float value); + //쓰기 버퍼에 저장된 데이터를 파일로 저장 + bool MakeFile(char* filepath); + + + //읽기 관련 + //파일 열기(쓰기준비중이였다면 쓰기 버퍼는 초기화 된다) + bool OpenFile(char* filepath); + bool GetAttribute(char* Attribute, int& value); + bool GetAttribute(char* Attribute, double& value); + bool GetAttribute(char* Attribute, char* value); + bool GetAttribute(char* Attribute, float& value); + + private: + //빠른 찾기를 위해서 저장된 데이터 정렬 + void DataSort(); + char m_Title[128]; + std::vector<_Attribute> m_data; + + char* m_buffer; + int m_fastIndex; + }; +} \ No newline at end of file -- Gitblit v1.9.3