KLingo Project Documentation 1.0.0
Unreal Engine 5.6 C++ Project Documentation
로딩중...
검색중...
일치하는것 없음
APopupTesterActor 클래스 참조

#include <APopupTesterActor.h>

+ APopupTesterActor에 대한 상속 다이어그램 :
+ APopupTesterActor에 대한 협력 다이어그램:

Public 멤버 함수

 APopupTesterActor ()
 
void GererateMD5 ()
 
void InterviewPopup ()
 
void OKCancelMsgBox ()
 
void OKMsgBox ()
 
void OnCancel ()
 
void OnOK ()
 
void PopupInputMsg ()
 
void PopupLevelSelect ()
 
void ReadQuest ()
 
void TestEvaluationPopup ()
 
void TestPopupHistory ()
 
void ToastMsg ()
 

Public 속성

FString MD5 = TEXT("test_audio")
 

상세한 설명

APopupTesterActor.h 파일의 10 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ APopupTesterActor()

APopupTesterActor::APopupTesterActor ( )

APopupTesterActor.cpp 파일의 26 번째 라인에서 정의되었습니다.

27{
28 PrimaryActorTick.bCanEverTick = false;
29}

멤버 함수 문서화

◆ GererateMD5()

void APopupTesterActor::GererateMD5 ( )

APopupTesterActor.cpp 파일의 31 번째 라인에서 정의되었습니다.

32{
34}
#define PRINT_STRING(fmt,...)
Definition GameLogging.h:45
static FString GererateMD5(const FString &InText)

다음을 참조함 : UCommonFunctionLibrary::GererateMD5(), MD5, PRINT_STRING.

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ InterviewPopup()

void APopupTesterActor::InterviewPopup ( )

APopupTesterActor.cpp 파일의 72 번째 라인에서 정의되었습니다.

73{
74 if (auto Popup = UPopupManager::ShowPopupAs<UPopup_InterviewHello>(GetWorld(), EPopupType::InterviewHello))
75 {
76 // 테스트용 더미 데이터 생성
78
79 // 질문 1
81 Q1.Id = 1;
82 Q1.TypeCode = 0;
83 Q1.Eng = TEXT("What is your current country of residence?");
84 Q1.Kor = TEXT("현재 거주 국가는 어디인가요?");
85 Q1.EngKey = TEXT("country");
86 Q1.KorKey = TEXT("국가");
87 Q1.CreatedAt = TEXT("2025-01-15");
88 TestData.Questions.Add(Q1);
89
90 // 질문 2
92 Q2.Id = 2;
93 Q2.TypeCode = 0;
94 Q2.Eng = TEXT("How did you find out about this program?");
95 Q2.Kor = TEXT("이 프로그램을 어떻게 알게 되었나요?");
96 Q2.EngKey = TEXT("discovery");
97 Q2.KorKey = TEXT("발견경로");
98 Q2.CreatedAt = TEXT("2025-01-15");
99 TestData.Questions.Add(Q2);
100
101 // 질문 3
103 Q3.Id = 3;
104 Q3.TypeCode = 0;
105 Q3.Eng = TEXT("What are your goals for learning Korean?");
106 Q3.Kor = TEXT("한국어 학습의 목표는 무엇인가요?");
107 Q3.EngKey = TEXT("goals");
108 Q3.KorKey = TEXT("목표");
109 Q3.CreatedAt = TEXT("2025-01-15");
110 TestData.Questions.Add(Q3);
111
112 // 팝업 초기화
113 Popup->InitPopup(TestData);
114
115 PRINTLOG(TEXT("[PopupTester] Interview popup opened with %d questions"), TestData.Questions.Num());
116 }
117}
#define PRINTLOG(fmt,...)
Definition GameLogging.h:30
TArray< FInterviewQuestionData > Questions

다음을 참조함 : FInterviewQuestionData::CreatedAt, FInterviewQuestionData::Eng, FInterviewQuestionData::EngKey, FInterviewQuestionData::Id, FInterviewQuestionData::Kor, FInterviewQuestionData::KorKey, PRINTLOG, FResponseInterviewHello::Questions, FInterviewQuestionData::TypeCode.

◆ OKCancelMsgBox()

void APopupTesterActor::OKCancelMsgBox ( )

APopupTesterActor.cpp 파일의 41 번째 라인에서 정의되었습니다.

42{
43 UPopupManager::Get(GetWorld())->ShowMsgBox(TEXT("알림"), TEXT("OK_CANCEL 설명문"),
45 FOnMsgBoxOkDelegate::CreateUObject(this, &APopupTesterActor::OnOK),
46 FOnMsgBoxCancelDelegate::CreateUObject(this, &APopupTesterActor::OnCancel));
47}

다음을 참조함 : OK_CANCEL, OnCancel(), OnOK().

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ OKMsgBox()

void APopupTesterActor::OKMsgBox ( )

APopupTesterActor.cpp 파일의 49 번째 라인에서 정의되었습니다.

50{
51 UPopupManager::Get(GetWorld())->ShowMsgBox(TEXT("알림"), TEXT("OK 설명문"),
53 FOnMsgBoxOkDelegate::CreateUObject(this, &APopupTesterActor::OnOK));
54}

다음을 참조함 : OK, OnOK().

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ OnCancel()

void APopupTesterActor::OnCancel ( )

APopupTesterActor.cpp 파일의 198 번째 라인에서 정의되었습니다.

199{
200 PRINT_STRING(TEXT("I'M Cancel"));
201}

다음을 참조함 : PRINT_STRING.

다음에 의해서 참조됨 : OKCancelMsgBox().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ OnOK()

void APopupTesterActor::OnOK ( )

APopupTesterActor.cpp 파일의 193 번째 라인에서 정의되었습니다.

194{
195 PRINT_STRING(TEXT("I'M OK"));
196}

다음을 참조함 : PRINT_STRING.

다음에 의해서 참조됨 : OKCancelMsgBox(), OKMsgBox().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ PopupInputMsg()

void APopupTesterActor::PopupInputMsg ( )

APopupTesterActor.cpp 파일의 56 번째 라인에서 정의되었습니다.

57{
58 if (auto Popup = UPopupManager::ShowPopupAs<UPopup_InputMsg>(GetWorld(), EPopupType::Login))
59 {
60 Popup->InitPopup(EPopupType::Login);
61 }
62}

◆ PopupLevelSelect()

void APopupTesterActor::PopupLevelSelect ( )

APopupTesterActor.cpp 파일의 175 번째 라인에서 정의되었습니다.

176{
177 if (auto Popup = UPopupManager::ShowPopupAs<UPopup_LevelSelect>(GetWorld(), EPopupType::LevelSelect))
178 {
179 Popup->InitPopup();
180 PRINTLOG(TEXT("[PopupTester] Level Select popup opened"));
181 }
182}

다음을 참조함 : PRINTLOG.

◆ ReadQuest()

void APopupTesterActor::ReadQuest ( )

APopupTesterActor.cpp 파일의 64 번째 라인에서 정의되었습니다.

65{
66 if (auto Popup = UPopupManager::ShowPopupAs<UPopup_ReadQuest>(GetWorld(), EPopupType::ReadQuest))
67 {
68 Popup->InitRead(ULingoGameHelper::GetLingoGameState(GetWorld())->ReadScenarioData);
69 }
70}
static class ALingoGameState * GetLingoGameState(const UObject *WorldContextObject)

다음을 참조함 : ULingoGameHelper::GetLingoGameState().

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ TestEvaluationPopup()

void APopupTesterActor::TestEvaluationPopup ( )

APopupTesterActor.cpp 파일의 119 번째 라인에서 정의되었습니다.

120{
121 // 테스트 데이터 생성
123
124 // Total Result 설정
125 TestData.total_result.final_score = 62;
126 TestData.total_result.grade = TEXT("D");
127 TestData.total_result.feedback_summary = TEXT("Your strengths lie in Reading and Listening, but there is a need for significant improvement in Speaking. How can you enhance your speaking skills to better articulate your thoughts?");
128
129 // Scenario Results 설정
130 FScenarioResult ReadingResult;
131 ReadingResult.scenario_type = EScenarioType::READING;
132 ReadingResult.display_name = TEXT("읽기 영역");
133 ReadingResult.final_score = 93;
134 ReadingResult.grade = TEXT("A");
135 ReadingResult.feedback_summary.title = TEXT("Excellent Reading Skills");
136 ReadingResult.feedback_summary.message = TEXT("Your reading comprehension is outstanding, demonstrating a strong grasp of the material.");
137 ReadingResult.action_item = TEXT("Continue practicing by reading a variety of texts to maintain your high level of comprehension.");
138 TestData.scenario_results.Add(ReadingResult);
139
140 FScenarioResult ListeningResult;
141 ListeningResult.scenario_type = EScenarioType::LISTENING;
142 ListeningResult.display_name = TEXT("듣기 영역");
143 ListeningResult.final_score = 79;
144 ListeningResult.grade = TEXT("C");
145 ListeningResult.feedback_summary.title = TEXT("Good Listening Skills");
146 ListeningResult.feedback_summary.message = TEXT("You have a good ability to understand spoken English, but there is room for improvement in capturing finer details.");
147 ListeningResult.action_item = TEXT("Listen to English podcasts or watch English shows to improve your listening skills.");
148 TestData.scenario_results.Add(ListeningResult);
149
150 FScenarioResult WritingResult;
151 WritingResult.scenario_type = EScenarioType::WRITING;
152 WritingResult.display_name = TEXT("쓰기 영역");
153 WritingResult.final_score = 58;
154 WritingResult.grade = TEXT("D");
155 WritingResult.feedback_summary.title = TEXT("Writing Needs Improvement");
156 WritingResult.feedback_summary.message = TEXT("Your writing lacks clarity and coherence, which affects the overall quality of your work.");
157 WritingResult.action_item = TEXT("Practice writing short essays on various topics to improve structure and clarity.");
158 TestData.scenario_results.Add(WritingResult);
159
160 FScenarioResult SpeakingResult;
161 SpeakingResult.scenario_type = EScenarioType::SPEAKING;
162 SpeakingResult.display_name = TEXT("말하기 영역");
163 SpeakingResult.final_score = 58;
164 SpeakingResult.grade = TEXT("D");
165 SpeakingResult.feedback_summary.title = TEXT("Speaking Needs Improvement");
166 SpeakingResult.feedback_summary.message = TEXT("Your responses often lack relevance to the topic, affecting the flow and context of your speech.");
167 SpeakingResult.action_item = TEXT("Engage in speaking exercises, such as role-playing or conversation practice, to stay on topic and improve relevance.");
168 TestData.scenario_results.Add(SpeakingResult);
169
170 // 팝업 표시
171 if (auto Popup = UPopupManager::ShowPopupAs<UPopup_Evaluation>( GetWorld(), EPopupType::Evaluation))
172 Popup->InitPopup(TestData);
173}
Evaluation 결과 응답 구조체입니다.
TArray< FScenarioResult > scenario_results
시나리오별 결과 구조체입니다.
FFeedbackSummary feedback_summary
EScenarioType scenario_type
FString feedback_summary

다음을 참조함 : FScenarioResult::action_item, FScenarioResult::display_name, FScenarioResult::feedback_summary, FTotalResult::feedback_summary, FScenarioResult::final_score, FTotalResult::final_score, FScenarioResult::grade, FTotalResult::grade, FFeedbackSummary::message, FResponseEvaluationResult::scenario_results, FScenarioResult::scenario_type, FFeedbackSummary::title, FResponseEvaluationResult::total_result.

◆ TestPopupHistory()

void APopupTesterActor::TestPopupHistory ( )

APopupTesterActor.cpp 파일의 184 번째 라인에서 정의되었습니다.

185{
186 if (auto Popup = UPopupManager::ShowPopupAs<UPopup_History>(GetWorld(), EPopupType::History))
187 {
188 Popup->InitPopup();
189 PRINTLOG(TEXT("[PopupTester] Chat History popup opened"));
190 }
191}

다음을 참조함 : PRINTLOG.

◆ ToastMsg()

void APopupTesterActor::ToastMsg ( )

APopupTesterActor.cpp 파일의 36 번째 라인에서 정의되었습니다.

37{
38 UDialogManager::Get(GetWorld())->ShowToast(TEXT("토스트 메세지 샘플"));
39}

멤버 데이터 문서화

◆ MD5

FString APopupTesterActor::MD5 = TEXT("test_audio")

APopupTesterActor.h 파일의 48 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : GererateMD5().


이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: