//////////////////////////////////////////////////////////////////////////////// /** \file \brief \ru Интерфейс запроса масштаба. Интерфейс запроса сшивки. \en Interface of scale request. Interface of stitching request. \~ */ //////////////////////////////////////////////////////////////////////////////// #ifndef __CONV_REQUESTOR_H #define __CONV_REQUESTOR_H #include #include //------------------------------------------------------------------------------ /** \brief \ru Интерфейс выбора конфигурации. \en Interface of configuration selection. \~ \details \ru Вызывается при импорте однократно, если импортируемоя модель содержит более одной конфигурации. \en Called on import once if the model contains contains more than one configurations. \~ */ // --- class IConfigurationSelector : public MbRefItem { public: // \ru Конструктор по умолчанию. \en Default constructor. IConfigurationSelector() = default; // \ru Деструктор. \en Destructor. virtual ~IConfigurationSelector() = default; // \ru Добавить конфигурацию для выбора пользователем. \en Add configuration for selection by user. virtual void AddConfiguration ( const c3d::string_t& configurationName ) = 0; // \ru Добавить конфигурацию для выбора пользователем, не содержащую модель. \en Add configuration without model for selection by user. virtual void AddEmptyConfiguration( const c3d::string_t & configurationName ) { AddConfiguration( configurationName ); }; // \ru Указать индекс активной конфигурации. \en Specify the index of active configuration. virtual void SetActiveConfiguration ( const size_t index ) = 0; // \ru Получить индекс конфигурации выбранной пользователем. \en Get index of configuration chosen by user. virtual size_t GetConfiguration () const = 0; // \ru Индекс конфигурации для прекращения чтения по запросу пользователя. \en Index which should be returned if user canceled import. static const size_t configurationIdToCancel = SYS_MAX_T; }; //------------------------------------------------------------------------------ /** \brief \ru Интерфейс для сохранения списка имен атрибутов модели. \en Interface for collecting model attribute names. \~ \details \ru Вызывается во время импорта предварительных данных модели для задания списка имен атрибутов модели. \en Called during import of preliminary model data to specify a list of model attribute names . \~ \note \ru ЭКСПЕРИМЕНТАЛЬНАЯ. \en EXPEREIMENTAL. \~ */ // --- class IAttributeNamesCollector : public MbRefItem { public: virtual void AddAttributeName( const c3d::string_t& configurationName ) = 0; }; //------------------------------------------------------------------------------ /// /** \brief \ru Интерфейс запроса масштаба. \en Interface of scale request. \~ \details \ru Рекомендуется использовать методы интерфейса IConvertorProperty3D. \en Using methods of the IConvertorProperty3D interface recommended. \~ \note \ru Рекомендуется использовать методы интерфейса IConvertorProperty3D. \en Using methods of the IConvertorProperty3D interface recommended. \~ */ // --- class IScaleRequestor : public MbRefItem { public: virtual double ScaleRequest() = 0; }; //------------------------------------------------------------------------------ /** \brief \ru Интерфейс запроса сшивки. \en Interface of stitching request \~ \details \ru Рекомендуется использовать методы интерфейса IConvertorProperty3D. \en Using methods of the IConvertorProperty3D interface recommended. \~ \note \ru Рекомендуется использовать методы интерфейса IConvertorProperty3D. \en Using methods of the IConvertorProperty3D interface recommended. \~ */ // --- class IStitchRequestor : public MbRefItem { public: virtual bool StitchRequest() = 0; }; //------------------------------------------------------------------------------ /** \brief \ru Интерфейс запроса отладочного вывода. \en Debug output request interface \~ */ // --- class IConverterEventLogger : public MbRefItem { public: virtual bool WriteToLog( const char * ) = 0; }; #endif // __CONV_REQUESTOR_H