|
|
virtual std::unique_ptr< DataReader > | create (const FileExtension &key) const override |
|
virtual std::unique_ptr< DataReader > | create (std::string_view key) const override |
|
| DataReaderFactory (const DataReaderFactory &)=delete |
|
| DataReaderFactory (DataReaderFactory &&)=delete |
|
template<typename T> |
| std::vector< FileExtension > | getExtensionsForType () const |
|
template<typename... Ts> |
| std::vector< FileExtension > | getExtensionsForTypes () const |
|
template<typename... Ts> |
| auto | getExtensionsForTypesView () const |
| template<typename T> |
| std::unique_ptr< DataReaderType< T > > | getReaderForTypeAndExtension (const FileExtension &ext, const std::filesystem::path &fallbackFilePathOrExtension) const |
|
template<typename T> |
| std::unique_ptr< DataReaderType< T > > | getReaderForTypeAndExtension (const FileExtension &extension) const |
|
template<typename T> |
| std::unique_ptr< DataReaderType< T > > | getReaderForTypeAndExtension (const LCString &extension) const |
| template<typename T> |
| std::unique_ptr< DataReaderType< T > > | getReaderForTypeAndExtension (const std::filesystem::path &filePathOrExtension) const |
| | Return a reader matching the file extension of DataReader of type T. Does case insensitive comparison between the last part of filePathOrExtension and each registered extension. Does not check for "." before the extension, so it is valid to pass for example "png".
|
| virtual bool | hasKey (const FileExtension &key) const override |
| virtual bool | hasKey (std::string_view key) const override |
|
template<typename T> |
| bool | hasReaderForTypeAndExtension (const FileExtension &ext) const |
|
template<typename T> |
| bool | hasReaderForTypeAndExtension (const LCString &extension) const |
|
template<typename T> |
| bool | hasReaderForTypeAndExtension (const std::filesystem::path &filePathOrExtension) const |
|
DataReaderFactory & | operator= (const DataReaderFactory &)=delete |
|
DataReaderFactory & | operator= (DataReaderFactory &&)=delete |
|
template<typename T> |
| std::shared_ptr< T > | readDataForTypeAndExtension (const std::filesystem::path &filePath, std::optional< FileExtension > ext=std::nullopt) const |
|
bool | registerObject (DataReader *reader) |
|
bool | unRegisterObject (DataReader *reader) |
|
virtual std::unique_ptr< DataReader > | create (const FileExtension &key, Args... args) const=0 |
|
virtual std::shared_ptr< DataReader > | createShared (const FileExtension &key, Args... args) const |
|
Factory & | operator= (const Factory &)=delete |
|
virtual std::unique_ptr< DataReader > | create (std::string_view key, Args... args) const=0 |
|
virtual std::shared_ptr< DataReader > | createShared (std::string_view key, Args... args) const |
|
Factory & | operator= (const Factory &)=delete |
|
void | addObserver (FactoryObserver< DataReader > *observer) |
|
bool | isObservedBy (FactoryObserver< DataReader > *observer) const |
| Observable< FactoryObserver< DataReader > > & | operator= (const Observable< FactoryObserver< DataReader > > &other) |
|
void | removeObserver (FactoryObserver< DataReader > *observer) |
| virtual void | startBlockingNotifications () override final |
| virtual void | stopBlockingNotifications () override final |