1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     dlp_FakeClientIpcClient.h
4 
5   Copyright (C)2009 Nintendo Co., Ltd.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13   $Rev: 24145 $
14  *---------------------------------------------------------------------------*/
15 
16 //
17 // このファイルを編集しないでください。
18 // このファイルは自動生成されます。
19 //
20 
21 #ifndef NN_DLP_CTR_DLP_FAKECLIENTIPCCLIENT_H_
22 #define NN_DLP_CTR_DLP_FAKECLIENTIPCCLIENT_H_
23 
24 #include <nn/Handle.h>
25 #include <nn/Result.h>
26 #include <nn/types.h>
27 #include <nn/dlp/CTR/dlp_Type.h>
28 #include <nn/dlp/CTR/dlp_FakeClient.h>
29 
30 
31 
32 namespace nn {
33 namespace dlp {
34 namespace CTR {
35 namespace detail {
36 
37     class FakeClientIpc
38     {
39     public:
40         enum Tag
41         {
42             TAG_IPC_ERROR,
43             TAG_INITIALIZE,
44             TAG_FINALIZE,
45             TAG_GET_EVENT_DESC,
46             TAG_GET_CHANNELS,
47             TAG_START_SCAN,
48             TAG_STOP_SCAN,
49             TAG_GET_SERVER_INFO,
50             TAG_GET_TITLE_INFO,
51             TAG_GET_TITLE_INFO_IN_ORDER,
52             TAG_START_FAKE_SESSION,
53             TAG_GET_MY_STATUS,
54             TAG_GET_CONNECTING_NODES,
55             TAG_GET_NODE_INFO,
56             TAG_GET_LINK_LEVEL,
57             TAG_STOP_FAKE_SESSION,
58             TAG_IPC_END
59         };
60 
61     public:
62         static Handle s_Session;
63 
64     public:
FakeClientIpc()65         FakeClientIpc() {}
66 
67     public:
68         static nn::Result Initialize( nn::Handle hSharedMemory, size_t bufSize, u8 scanNum, nn::Handle handle );
69         static nn::Result Finalize();
70         static nn::Result GetEventDesc( nn::dlp::CTR::EventDesc* pEventDesc );
71         static nn::Result GetChannels( bit16* pChannels );
72         static nn::Result StartScan( bit16 channels, bit64 programId, const u8 pMac[] );
73         static nn::Result StopScan();
74         static nn::Result GetServerInfo( nn::dlp::CTR::ServerInfo* pServerInfo, const u8 pMac[] );
75         static nn::Result GetTitleInfo( nn::dlp::CTR::TitleInfo* pTitleInfo, const u8 pMac[], bit64 programId );
76         static nn::Result GetTitleInfoInOrder( nn::dlp::CTR::TitleInfo* pTitleInfo, bool isReset );
77         static nn::Result StartFakeSession( const u8 pMac[], bit64 programId );
78         static nn::Result GetMyStatus( nn::dlp::CTR::ClientStatus* pStatus );
79         static nn::Result GetConnectingNodes( u8* pNum, u16 pNodeIds[], u16 size );
80         static nn::Result GetNodeInfo( nn::dlp::CTR::NodeInfo* pNodeInfo, u16 nodeId );
81         static nn::Result GetLinkLevel( nn::uds::CTR::LinkLevel* pLinkLevel );
82         static nn::Result StopFakeSession();
83     };
84 
85 } // end of namespace detail
86 } // end of namespace CTR
87 } // end of namespace dlp
88 } // end of namespace nn
89 
90 
91 
92 #endif  // ifndef NN_DLP_CTR_DLP_FAKECLIENTIPCCLIENT_H_
93