1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     os_EnvironmentSelect.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: 29475 $
14  *---------------------------------------------------------------------------*/
15 
16 #ifndef NN_OS_OS_ENVIRONMENTSELECT_H_
17 #define NN_OS_OS_ENVIRONMENTSELECT_H_
18 
19 #include <nn/types.h>
20 
21 #ifdef __cplusplus
22     namespace nn { namespace os {
23 
24         /*!--------------------------------------------------------------------------*
25           @brief        アプリケーションで使用できるメモリの合計最大量を取得します。
26 
27                         この値はプログラムの実行中に変化することはありません。
28 
29                         アプリケーションでは
30                         GetAppMemorySize() - GetUsingMemorySize() Byte の
31                         ヒープまたはデバイスメモリの組み合わせを追加で
32                         割り当てることができます。
33 
34           @return       アプリケーションで使用できるメモリの合計最大 Byte 数を返します。
35 
36          *---------------------------------------------------------------------------*/
37         size_t  GetAppMemorySize();
38 
39 
40 
41         /*!--------------------------------------------------------------------------*
42           @brief        プログラムに現在割り当てられているメモリの合計サイズを取得します。
43 
44                         プログラムに割り当てられているメモリには
45                         プログラムの static 領域、ヒープ、デバイスメモリなどが含まれます。
46 
47           @return       プログラムに現在割り当てられているメモリの合計 Byte 数を返します。
48 
49          *---------------------------------------------------------------------------*/
50         size_t  GetUsingMemorySize();
51 
52         size_t  GetMemoryQuotaSize();
53         size_t  GetUsingPrivateMemorySize();
54 
55     }}
56 #endif
57 
58 #if defined NN_PLATFORM_CTR
59     #include <nn/os/CTR/os_Environment.h>
60 
61     #ifdef __cplusplus
62         namespace nn { namespace os {
63             using namespace CTR;
64         }}
65     #endif
66 #else
67     #error platform not selected
68 #endif
69 
70 
71 #endif  // ifndef NN_OS_OS_ENVIRONMENTSELECT_H_
72