NCBI C++ ToolKit
Public Member Functions | Protected Attributes | List of all members
CFileAutoLoader Class Reference

Search Toolkit Book for CFileAutoLoader

CFileAutoLoader. More...

#include <gui/core/file_auto_loader.hpp>

+ Inheritance diagram for CFileAutoLoader:
+ Collaboration diagram for CFileAutoLoader:

Public Member Functions

 CFileAutoLoader ()
 CFileAutoLoader. More...
 
IFileFormatLoaderManagerGetCurrentManager ()
 
void ResentCurrentManager ()
 
CFormatGuess::EFormat SetFormatManager (const vector< wxString > &filenames)
 
IUILoadManager interface implementation
virtual void SetServiceLocator (IServiceLocator *srv_locator)
 Sets / unsets Service Locator. More...
 
virtual void SetParentWindow (wxWindow *parent)
 
virtual const IUIObjectGetDescriptor () const
 Returns the object describing this tool (UI meta data). More...
 
virtual void InitUI ()
 Initializes the Manager before using it in UI. More...
 
virtual void CleanUI ()
 CleanUI() is called after the host finished using the manager. More...
 
virtual wxPanel * GetCurrentPanel ()
 Return the panel corresponding to the current state of Tool Manager. More...
 
virtual bool CanDo (EAction action)
 Indicates whether given transition is possible in the current state. More...
 
virtual bool IsFinalState ()
 True if Tool Manager has reached its final state, i.e. More...
 
virtual bool IsCompletedState ()
 Manager goes into "Complete" state when "Finish" button is pressed and all input data is gatherred and validated. More...
 
virtual bool DoTransition (EAction action)
 Performs transition if possible and returns true, otherwise the function shall warn the user about the problem preventing the transition (such as insufficient or invalid input) and return false. More...
 
virtual IAppTaskGetTask ()
 Once parameters are gathered and validated this function is called to produce the final Task object that will be executed to do the actual computational work. More...
 
virtual IExecuteUnitGetExecuteUnit ()
 
virtual string GetFileLoaderId () const
 
virtual wxString GetFormatWildcard ()
 return file wildcard for the format (example - "*.txt;*.tab" ) More...
 
virtual bool ValidateFilenames (const vector< wxString > &filenames)
 checks given filenames and returns true if the manager can handle them, otherwise - shows an error message More...
 
virtual void SetFilenames (const vector< wxString > &filenames)
 initilize the manager with the given filenames More...
 
virtual void GetFilenames (vector< wxString > &filenames) const
 get actual filenames that will be opened More...
 
virtual bool IsInitialState ()
 return true if the current state of the loader UI is the first valid state (first step in a wizard-like sequence) More...
 
virtual bool RecognizeFormat (const wxString &filename)
 return true if the given file format is supported by this manager More...
 
virtual bool RecognizeFormat (CFormatGuess::EFormat)
 return true if the given file format is supported by this manager More...
 
virtual bool SingleFileLoader () const
 returns true if loader can handle only one file More...
 
IExtension interface implementation
virtual string GetExtensionIdentifier () const
 returns the unique human-readable identifier for the extension the id should use lowercase letters separated by underscores - "like_this" More...
 
virtual string GetExtensionLabel () const
 returns a displayable label for this extension ( please capitalize the key words - "My Extension" ) More...
 
- Public Member Functions inherited from CObject
 CObject (void)
 Constructor. More...
 
 CObject (const CObject &src)
 Copy constructor. More...
 
virtual ~CObject (void)
 Destructor. More...
 
CObjectoperator= (const CObject &src) THROWS_NONE
 Assignment operator. More...
 
bool CanBeDeleted (void) const THROWS_NONE
 Check if object can be deleted. More...
 
bool IsAllocatedInPool (void) const THROWS_NONE
 Check if object is allocated in memory pool (not system heap) More...
 
bool Referenced (void) const THROWS_NONE
 Check if object is referenced. More...
 
bool ReferencedOnlyOnce (void) const THROWS_NONE
 Check if object is referenced only once. More...
 
void AddReference (void) const
 Add reference to object. More...
 
void RemoveReference (void) const
 Remove reference to object. More...
 
void ReleaseReference (void) const
 Remove reference without deleting object. More...
 
virtual void DoNotDeleteThisObject (void)
 Mark this object as not allocated in heap – do not delete this object. More...
 
virtual void DoDeleteThisObject (void)
 Mark this object as allocated in heap – object can be deleted. More...
 
void * operator new (size_t size)
 Define new operator for memory allocation. More...
 
void * operator new[] (size_t size)
 Define new[] operator for 'array' memory allocation. More...
 
void operator delete (void *ptr)
 Define delete operator for memory deallocation. More...
 
void operator delete[] (void *ptr)
 Define delete[] operator for memory deallocation. More...
 
void * operator new (size_t size, void *place)
 Define new operator. More...
 
void operator delete (void *ptr, void *place)
 Define delete operator. More...
 
void * operator new (size_t size, CObjectMemoryPool *place)
 Define new operator using memory pool. More...
 
void operator delete (void *ptr, CObjectMemoryPool *place)
 Define delete operator. More...
 
virtual void DebugDump (CDebugDumpContext ddc, unsigned int depth) const
 Define method for dumping debug information. More...
 
- Public Member Functions inherited from CDebugDumpable
 CDebugDumpable (void)
 
virtual ~CDebugDumpable (void)
 
void DebugDumpText (ostream &out, const string &bundle, unsigned int depth) const
 
void DebugDumpFormat (CDebugDumpFormatter &ddf, const string &bundle, unsigned int depth) const
 
void DumpToConsole (void) const
 
- Public Member Functions inherited from IFileFormatLoaderManager
virtual bool CanGuessFormat () const
 returns true if loader's format can be guessed More...
 
- Public Member Functions inherited from IUIToolManager
virtual wxPanel * GetMaxPanel ()
 Return the panel that occupies max size on display, to calculate dialog window size. More...
 
virtual IUIToolManagerGetAlternateToolManager ()
 If a transition fails, it may make sense to switch to a different tool manger When a tool manager identifies a more appropriate manager for a task, it returns it here, otherwise NULL. More...
 
virtual IWizardPageGetFirstPage ()
 Returns first options page (if any) of the tool to be shown in wizard dialog. More...
 
virtual IWizardPageGetOptionsPage ()
 Returns page for tool options (long wizard path via "Options" button) More...
 
virtual void SetPrevPage (IWizardPage *)
 Sets a wizard page which should show before the first page of the tool. More...
 
virtual void SetNextPage (IWizardPage *)
 Sets a wizard page which should show after the last page of the tool. More...
 
virtual void RestoreDefaults ()
 Restores the default options for the current panel. More...
 
virtual void ResetState ()
 
virtual bool UsesSingleOMScope ()
 
virtual ~IUIToolManager ()
 
- Public Member Functions inherited from IExtension
virtual ~IExtension ()
 

Protected Attributes

CUIObject m_Descr
 
CIRef< IFileFormatLoaderManagerm_FormatManager
 

Additional Inherited Members

- Public Types inherited from CObject
enum  EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern }
 Control filling of newly allocated memory. More...
 
typedef CObjectCounterLocker TLockerType
 Default locker type for CRef. More...
 
typedef atomic< Uint8TCounter
 Counter type is CAtomiCounter. More...
 
typedef Uint8 TCount
 Alias for value type of counter. More...
 
- Public Types inherited from IUIToolManager
enum  EAction { eBack = 0 , eNext , eSkip }
 
- Static Public Member Functions inherited from CObject
static NCBI_XNCBI_EXPORT void ThrowNullPointerException (void)
 Define method to throw null pointer exception. More...
 
static NCBI_XNCBI_EXPORT void ThrowNullPointerException (const type_info &type)
 
static EAllocFillMode GetAllocFillMode (void)
 
static void SetAllocFillMode (EAllocFillMode mode)
 
static void SetAllocFillMode (const string &value)
 Set mode from configuration parameter value. More...
 
- Static Public Member Functions inherited from CDebugDumpable
static void EnableDebugDump (bool on)
 
- Static Public Attributes inherited from CObject
static const TCount eCounterBitsCanBeDeleted = 1 << 0
 Define possible object states. More...
 
static const TCount eCounterBitsInPlainHeap = 1 << 1
 Heap signature was found. More...
 
static const TCount eCounterBitsPlaceMask
 Mask for 'in heap' state flags. More...
 
static const int eCounterStep = 1 << 2
 Skip over the "in heap" bits. More...
 
static const TCount eCounterValid = TCount(1) << (sizeof(TCount) * 8 - 2)
 Minimal value for valid objects (reference counter is zero) Must be a single bit value. More...
 
static const TCount eCounterStateMask
 Valid object, and object in heap. More...
 
- Protected Member Functions inherited from CObject
virtual void DeleteThis (void)
 Virtual method "deleting" this object. More...
 

Detailed Description

CFileAutoLoader.

Definition at line 47 of file file_auto_loader.hpp.

Constructor & Destructor Documentation

◆ CFileAutoLoader()

CFileAutoLoader::CFileAutoLoader ( )

CFileAutoLoader.

Definition at line 46 of file file_auto_loader.cpp.

Member Function Documentation

◆ CanDo()

bool CFileAutoLoader::CanDo ( EAction  action)
virtual

Indicates whether given transition is possible in the current state.

Implements IUIToolManager.

Definition at line 80 of file file_auto_loader.cpp.

References m_FormatManager.

◆ CleanUI()

void CFileAutoLoader::CleanUI ( )
virtual

CleanUI() is called after the host finished using the manager.

This function shall free resources associated with the session and reset internal state.

Implements IUIToolManager.

Definition at line 69 of file file_auto_loader.cpp.

References m_FormatManager, and CRef< C, Locker >::Reset().

◆ DoTransition()

bool CFileAutoLoader::DoTransition ( EAction  action)
virtual

Performs transition if possible and returns true, otherwise the function shall warn the user about the problem preventing the transition (such as insufficient or invalid input) and return false.

Typically this function would take user input from the current panel, validate the input and go to the next state creating new UI panel if needed.

Implements IUIToolManager.

Definition at line 96 of file file_auto_loader.cpp.

References m_FormatManager.

◆ GetCurrentManager()

IFileFormatLoaderManager* CFileAutoLoader::GetCurrentManager ( )
inline

◆ GetCurrentPanel()

wxPanel * CFileAutoLoader::GetCurrentPanel ( )
virtual

Return the panel corresponding to the current state of Tool Manager.

Implements IUIToolManager.

Definition at line 74 of file file_auto_loader.cpp.

References m_FormatManager.

◆ GetDescriptor()

const IUIObject & CFileAutoLoader::GetDescriptor ( ) const
virtual

Returns the object describing this tool (UI meta data).

Implements IUIToolManager.

Definition at line 59 of file file_auto_loader.cpp.

References m_Descr, and m_FormatManager.

◆ GetExecuteUnit()

IExecuteUnit * CFileAutoLoader::GetExecuteUnit ( )
virtual

Reimplemented from IUIToolManager.

Definition at line 107 of file file_auto_loader.cpp.

References m_FormatManager.

◆ GetExtensionIdentifier()

string CFileAutoLoader::GetExtensionIdentifier ( ) const
virtual

returns the unique human-readable identifier for the extension the id should use lowercase letters separated by underscores - "like_this"

Implements IExtension.

Definition at line 228 of file file_auto_loader.cpp.

◆ GetExtensionLabel()

string CFileAutoLoader::GetExtensionLabel ( ) const
virtual

returns a displayable label for this extension ( please capitalize the key words - "My Extension" )

Implements IExtension.

Definition at line 235 of file file_auto_loader.cpp.

◆ GetFileLoaderId()

virtual string CFileAutoLoader::GetFileLoaderId ( ) const
inlinevirtual

IFileFormatLoaderManager - additional members

Implements IFileFormatLoaderManager.

Definition at line 73 of file file_auto_loader.hpp.

◆ GetFilenames()

void CFileAutoLoader::GetFilenames ( vector< wxString > &  filenames) const
virtual

get actual filenames that will be opened

Implements IFileFormatLoaderManager.

Definition at line 209 of file file_auto_loader.cpp.

References filenames, and m_FormatManager.

◆ GetFormatWildcard()

wxString CFileAutoLoader::GetFormatWildcard ( )
virtual

return file wildcard for the format (example - "*.txt;*.tab" )

Implements IFileFormatLoaderManager.

Definition at line 112 of file file_auto_loader.cpp.

References CFileExtensions::GetDialogFilter(), CFileExtensions::kFileTypeEnd, CFileExtensions::kFileTypeStart, t, and wxT.

◆ GetTask()

IAppTask * CFileAutoLoader::GetTask ( )
virtual

Once parameters are gathered and validated this function is called to produce the final Task object that will be executed to do the actual computational work.

Implements IUIToolManager.

Definition at line 102 of file file_auto_loader.cpp.

References m_FormatManager.

◆ InitUI()

void CFileAutoLoader::InitUI ( )
virtual

Initializes the Manager before using it in UI.

This function shall reset Internal state of the tool.

Implements IUIToolManager.

Definition at line 64 of file file_auto_loader.cpp.

◆ IsCompletedState()

bool CFileAutoLoader::IsCompletedState ( )
virtual

Manager goes into "Complete" state when "Finish" button is pressed and all input data is gatherred and validated.

Typically this is the last state after Final state. This state does not have an associated UI panel. When manager reaches the Completed state the framework hides the dialog and calls GetTask() function.

Implements IUIToolManager.

Definition at line 91 of file file_auto_loader.cpp.

References m_FormatManager.

◆ IsFinalState()

bool CFileAutoLoader::IsFinalState ( )
virtual

True if Tool Manager has reached its final state, i.e.

the last page (panel) in the sequence is displayed and "Finish" button is shown. The framework calls this function to decide whether Finish or Next button needs to be shown.

Implements IUIToolManager.

Definition at line 86 of file file_auto_loader.cpp.

References m_FormatManager.

◆ IsInitialState()

bool CFileAutoLoader::IsInitialState ( )
virtual

return true if the current state of the loader UI is the first valid state (first step in a wizard-like sequence)

Implements IFileFormatLoaderManager.

Definition at line 218 of file file_auto_loader.cpp.

References m_FormatManager.

◆ RecognizeFormat() [1/2]

virtual bool CFileAutoLoader::RecognizeFormat ( CFormatGuess::EFormat  fmt)
inlinevirtual

return true if the given file format is supported by this manager

Implements IFileFormatLoaderManager.

Definition at line 80 of file file_auto_loader.hpp.

◆ RecognizeFormat() [2/2]

bool CFileAutoLoader::RecognizeFormat ( const wxString &  filename)
virtual

return true if the given file format is supported by this manager

Implements IFileFormatLoaderManager.

Definition at line 223 of file file_auto_loader.cpp.

◆ ResentCurrentManager()

void CFileAutoLoader::ResentCurrentManager ( )
inline

Definition at line 91 of file file_auto_loader.hpp.

References m_FormatManager, and CRef< C, Locker >::Reset().

Referenced by CFileLoadManager::ResetState().

◆ SetFilenames()

void CFileAutoLoader::SetFilenames ( const vector< wxString > &  filenames)
virtual

initilize the manager with the given filenames

Implements IFileFormatLoaderManager.

Definition at line 196 of file file_auto_loader.cpp.

References filenames, and m_FormatManager.

◆ SetFormatManager()

CFormatGuess::EFormat CFileAutoLoader::SetFormatManager ( const vector< wxString > &  filenames)

◆ SetParentWindow()

void CFileAutoLoader::SetParentWindow ( wxWindow *  parent)
virtual

Implements IUIToolManager.

Definition at line 55 of file file_auto_loader.cpp.

◆ SetServiceLocator()

void CFileAutoLoader::SetServiceLocator ( IServiceLocator srv_locator)
virtual

Sets / unsets Service Locator.

Tool Manager can use the locator to obtain the services necessary services.

Implements IUIToolManager.

Definition at line 51 of file file_auto_loader.cpp.

◆ SingleFileLoader()

virtual bool CFileAutoLoader::SingleFileLoader ( ) const
inlinevirtual

returns true if loader can handle only one file

Reimplemented from IFileFormatLoaderManager.

Definition at line 81 of file file_auto_loader.hpp.

◆ ValidateFilenames()

bool CFileAutoLoader::ValidateFilenames ( const vector< wxString > &  filenames)
virtual

checks given filenames and returns true if the manager can handle them, otherwise - shows an error message

Implements IFileFormatLoaderManager.

Definition at line 180 of file file_auto_loader.cpp.

References CFormatGuess::eBam, CFormatGuess::eTable, filenames, m_FormatManager, SetFormatManager(), and wxT.

Member Data Documentation

◆ m_Descr

CUIObject CFileAutoLoader::m_Descr
protected

Definition at line 96 of file file_auto_loader.hpp.

Referenced by GetDescriptor().

◆ m_FormatManager

CIRef<IFileFormatLoaderManager> CFileAutoLoader::m_FormatManager
protected

The documentation for this class was generated from the following files:
Modified on Tue Dec 05 02:17:32 2023 by modify_doxy.py rev. 669887