/*---------------------------------------------------------------------------* Copyright (C) 2013-2014 Nintendo. 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. *---------------------------------------------------------------------------*/ #ifndef NN_EC_AOC_H_ #define NN_EC_AOC_H_ #include #include namespace nn { namespace ec { //! @addtogroup nn_ec_class //! @{ /*! @brief Class for handling downloadable content information. @see Programming Manual */ class Aoc : public RootObject, private NonCopyable { public: NN_EC_DECLARE_ACCESSOR; NN_EC_DECLARE_IMPL; public: /*! @brief Instantiates the object. */ Aoc(); /*! @brief Destroys the object. */ ~Aoc(); /*! @brief Gets the index list of the content. @return Returns the content index list. */ const u16* GetContentIndexes() const; /*! @brief Gets the number of content items. @return Returns the number of content items. */ u32 GetNumContents() const; /*! @brief Gets the data size. @return Returns the data size. */ const DataSize* GetDataSize() const; /*! @brief Determines whether it is installed. @return Returns true if it is installed, or false otherwise. */ bool IsInstalled() const; /*! @brief Determines whether overlapping purchases are allowed. If overlapping purchases are allowed, users can buy items with multiple pieces of content even if they already own some of the content. @n However, if all of the content in an item has been purchased already, the purchase is not possible even if overlapping purchases are allowed. @return Returns true if overlapping purchases are allowed, or false otherwise. @see Item::IsPartiallyPurchased */ bool AllowsOverlap() const; /*! @brief Gets the unique ID. @return Returns the unique ID. */ u32 GetUniqueId() const; /*! @brief Gets the variation. @return Returns the variation. */ u8 GetVariation() const; private: // NN_EC_IMPL; }; //! @} }} // namespace nn::ec #endif // NN_EC_AOC_H_