ctr_Repair/trunk/ConsoleDataMigration/sources/ConsoleRestore/ActCompleter.h
N2614 2f7b370403 ApprovalIdをCAVE-Accountのシステムセーブデータに書き込む
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@784 385bec56-5757-e545-9c3a-d8741f4650f1
2014-04-10 02:43:06 +00:00

66 lines
1.8 KiB
C++

/*---------------------------------------------------------------------------*
Project: Horizon
File: ActCompleter.h
Copyright (C)2013 Nintendo Co., Ltd. All rights reserved.
These coded instructions, statements, and computer programs contain
proprietary information of Nintendo of America Inc. and/or Nintendo
Company Ltd., and are protected by Federal copyright law. They may
not be disclosed to third parties or copied or duplicated in any form,
in whole or in part, without the prior written consent of Nintendo.
$Rev$
*---------------------------------------------------------------------------*/
#ifndef ACTCOMPLETER_H_
#define ACTCOMPLETER_H_
#include <nn.h>
namespace ConsoleRestore
{
class ActCompleter
{
public:
enum CompleteMode {
ACT_COMPLETE_TRANSFER,
ACT_COMPLETE_TRANSFER_WITH_SALVEGE
};
enum SalvageCheck{
ACT_SALVAGE_WITHOUT_CHECK,
ACT_SALVAGE_WITH_CHECK
};
ActCompleter();
virtual ~ActCompleter();
static nn::Result GetResult();
static void Start(CompleteMode mode, SalvageCheck check);
static bool IsFinished();
static void Finish();
private:
static void Exec();
static void UnmountThreadFunc();
static nn::Result ExecImpl();
static nn::Result SaveApprovalId();
static nn::Result s_Result;
static const size_t STACK_SIZE = 0x1000;
static nn::os::Thread s_Thread;
static nn::os::Thread s_UnmountThread;
static nn::os::StackBuffer<STACK_SIZE> s_ThreadStack;
static nn::os::StackBuffer<STACK_SIZE> s_UnmountThreadStack;
static nn::os::Event s_BeginEvent;
static nn::os::Event s_EndEvent;
static u32 s_ApprovalId;
static CompleteMode s_Mode;
static SalvageCheck s_SalvageCheck;
};
} /* namespace ConsoleRestore */
#endif /* ACTCOMPLETER_H_ */