/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
 * This file is part of the LibreOffice project.
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * This file incorporates work covered by the following license notice:
 *
 *   Licensed to the Apache Software Foundation (ASF) under one or more
 *   contributor license agreements. See the NOTICE file distributed
 *   with this work for additional information regarding copyright
 *   ownership. The ASF licenses this file to you under the Apache
 *   License, Version 2.0 (the "License"); you may not use this file
 *   except in compliance with the License. You may obtain a copy of
 *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
 */
#ifndef __com_sun_star_chart2_XAnyDescriptionAccess_idl__
#define __com_sun_star_chart2_XAnyDescriptionAccess_idl__

#include <com/sun/star/chart/XComplexDescriptionAccess.idl>


 module com {  module sun {  module star {  module chart2 {


/** Offers any access to column and row descriptions.
This allows to set date values as categories.

<p>Can be obtained from interface XChartDocument via method getData().</p>

@since OOo 3.4
*/

interface XAnyDescriptionAccess : ::com::sun::star::chart::XComplexDescriptionAccess
{

    /** retrieves the descriptions for all rows.

        @returns
            a sequence of sequences of anys representing the descriptions
            of all rows. The outer index represents different rows.
            The inner index represents the different levels (usually there is only one).
            The any might be strings for category text axis or doubles for date axis.
     */
    sequence< sequence< any > > getAnyRowDescriptions();


    /** sets the descriptions for all rows.

        @param rRowDescriptions
            a sequence of sequences of anys representing the descriptions of all
            rows. The outer index represents different rows.
            The inner index represents the different levels (usually there is only one).
            The any might be strings for category text axis or doubles for date axis.
    */
    void setAnyRowDescriptions( [in] sequence< sequence< any > > rRowDescriptions );


    /** retrieves the descriptions for all columns.

        @returns
            a sequence of sequences of anys representing the descriptions
            of all columns. The outer index represents different columns.
            The inner index represents the different levels (usually there is only one).
            The any might be strings for category text axis or doubles for date axis.
     */
    sequence< sequence< any > > getAnyColumnDescriptions();


    /** sets the descriptions for all columns.

        @param rColumnDescriptions
            a sequence of sequences of anys which represent the descriptions of
            all columns. The outer index represents different columns.
            The inner index represents the different levels (usually there is only one).
            The any might be strings for category text axis or doubles for date axis.
     */
    void setAnyColumnDescriptions( [in] sequence< sequence< any > > rColumnDescriptions );
};


}; }; }; };

#endif

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
