/************************************************************** * * 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 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * *************************************************************/ #ifndef com_sun_star_chart2_XDataInterpreter_idl #define com_sun_star_chart2_XDataInterpreter_idl #ifndef __com_sun_star_uno_XInterface_idl__ #include #endif #ifndef __com_sun_star_beans_PropertyValue_idl__ #include #endif #include #include #include module com { module sun { module star { module chart2 { /** offers tooling to interpret different data sources in a structural and chart-type-dependent way. */ interface XDataInterpreter : ::com::sun::star::uno::XInterface { /** Interprets the given data. @param aArguments Arguments that tell the template how to slice the given range. The properties should be defined in a separate service.

For standard parameters that may be used, see the service StandardDiagramCreationParameters.

@param aSeriesToReUse use all the data series given here for the result before creating new ones. */ InterpretedData interpretDataSource( [in] data::XDataSource xSource, [in] sequence< com::sun::star::beans::PropertyValue > aArguments, [in] sequence< XDataSeries > aSeriesToReUse ); /** Re-interprets the data given in aInterpretedData while keeping the number of data series and the categories. */ InterpretedData reinterpretDataSeries( [in] InterpretedData aInterpretedData ); /** parses the given data and states, if a reinterpretDataSeries call can be done without data loss. @return , if the data given in aInterpretedData has a similar structure than the one required is used as output of the data interpreter. */ boolean isDataCompatible( [in] InterpretedData aInterpretedData ); /** Try to reverse the operation done in interpretDataSource.

In case aInterpretedData is the result of interpretDataSource( xSource ), the result of this method should be xSource.

*/ data::XDataSource mergeInterpretedData( [in] InterpretedData aInterpretedData ); }; } ; // chart2 } ; // com } ; // sun } ; // star #endif