/ src / core / hle / service / cecd / cecd_s.cpp
cecd_s.cpp
 1  // Copyright 2015 Citra Emulator Project
 2  // Licensed under GPLv2 or any later version
 3  // Refer to the license.txt file included.
 4  
 5  #include "common/archives.h"
 6  #include "core/hle/service/cecd/cecd_s.h"
 7  
 8  SERIALIZE_EXPORT_IMPL(Service::CECD::CECD_S)
 9  
10  namespace Service::CECD {
11  
12  CECD_S::CECD_S(std::shared_ptr<Module> cecd)
13      : Module::Interface(std::move(cecd), "cecd:s", DefaultMaxSessions) {
14      static const FunctionInfo functions[] = {
15          // cecd:u shared commands
16          // clang-format off
17          {0x0001, &CECD_S::Open, "Open"},
18          {0x0002, &CECD_S::Read, "Read"},
19          {0x0003, &CECD_S::ReadMessage, "ReadMessage"},
20          {0x0004, &CECD_S::ReadMessageWithHMAC, "ReadMessageWithHMAC"},
21          {0x0005, &CECD_S::Write, "Write"},
22          {0x0006, &CECD_S::WriteMessage, "WriteMessage"},
23          {0x0007, &CECD_S::WriteMessageWithHMAC, "WriteMessageWithHMAC"},
24          {0x0008, &CECD_S::Delete, "Delete"},
25          {0x0009, &CECD_S::SetData, "SetData"},
26          {0x000A, &CECD_S::ReadData, "ReadData"},
27          {0x000B, &CECD_S::Start, "Start"},
28          {0x000C, &CECD_S::Stop, "Stop"},
29          {0x000D, &CECD_S::GetCecInfoBuffer, "GetCecInfoBuffer"},
30          {0x000E, &CECD_S::GetCecdState, "GetCecdState"},
31          {0x000F, &CECD_S::GetCecInfoEventHandle, "GetCecInfoEventHandle"},
32          {0x0010, &CECD_S::GetChangeStateEventHandle, "GetChangeStateEventHandle"},
33          {0x0011, &CECD_S::OpenAndWrite, "OpenAndWrite"},
34          {0x0012, &CECD_S::OpenAndRead, "OpenAndRead"},
35          {0x001E, nullptr, "GetEventLog"},
36          {0x001F, nullptr, "GetEventLogStart"},
37          // cecd:s commands
38          {0x0402, &CECD_S::GetCecInfoEventHandleSys, "GetCecInfoEventHandleSys"},
39          // clang-format on
40      };
41  
42      RegisterHandlers(functions);
43  }
44  
45  } // namespace Service::CECD