| /************************************************************** |
| * |
| * 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_reflection_XInterfaceTypeDescription2_idl__ |
| #define __com_sun_star_reflection_XInterfaceTypeDescription2_idl__ |
| |
| #include "com/sun/star/reflection/XInterfaceTypeDescription.idl" |
| |
| module com { module sun { module star { module reflection { |
| |
| interface XTypeDescription; |
| |
| /** Reflects an interface type, supporting multiple inheritance. |
| |
| <p>This type supersedes <type>XInterfaceTypeDescription</type>, which only |
| supported single inheritance.</p> |
| |
| @since OpenOffice 2.0 |
| */ |
| interface XInterfaceTypeDescription2: XInterfaceTypeDescription { |
| /** Returns a sequence of all directly inherited (mandatory) base interface |
| types. |
| |
| @returns |
| a sequence of all directly inherited (mandatory) base interface types, |
| in the correct order; each element of the returned sequence will be the |
| reflection of either an interface type (of type <type |
| scope="com::sun::star::reflection">XInterfaceTypeDescription</type>) or |
| a typedef (of type <type |
| scope="com::sun::star::reflection">XIndirectTypeDescription</type>) |
| that—directly or indirectly—denotes an interface type |
| */ |
| sequence<XTypeDescription> getBaseTypes(); |
| |
| /** Returns a sequence of all directly inherited optional base interface |
| types. |
| |
| @returns |
| a sequence of all directly inherited optional base interface types, in |
| the correct order; each element of the returned sequence will be the |
| reflection of either an interface type (of type <type |
| scope="com::sun::star::reflection">XInterfaceTypeDescription</type>) or |
| a typedef (of type <type |
| scope="com::sun::star::reflection">XIndirectTypeDescription</type>) |
| that—directly or indirectly—denotes an interface type |
| */ |
| sequence<XTypeDescription> getOptionalBaseTypes(); |
| }; |
| |
| }; }; }; }; |
| |
| #endif |