# Path: ship/utils/utilfunctions.py
# def formatFloat(value, no_of_dps, ignore_empty_str=True):
# def checkFileType(file_path, ext):
# def isNumeric(s):
# def encodeStr(value):
# def isString(value):
# def isList(value):
# def arrayToString(self, str_array):
# def findSubstringInList(substr, the_list):
# def findMax(val1, val2):
# def fileExtensionWithoutPeriod(filepath, name_only=False):
# def findWholeWord(w):
# def convertRunOptionsToSEDict(options):
# def getSEResolvedFilename(filename, se_vals):
# def enum(*sequential, **named):
#     def __init__(self):
#     def isEmpty(self):
#     def enqueue(self, item):
#     def dequeue(self):
#     def size(self):
#     def __init__(self, max_size=-1):
#     def isEmpty(self):
#     def add(self, item):
#     def pop(self):
#     def peek(self):
#     def size(self):
# class FileQueue(object):
# class LoadStack(object):
# 
# Path: ship/utils/fileloaders/tuflowloader.py
# class TuflowLoader(ALoader):
#     def __init__(self):
#     def _resetLoader(self):
#     def loadFile(self, tcf_path, arg_dict={}):
#     def loadModel(self, tcf_path, arg_dict={}):
#     def loadControlFile(self, model_file):
#     def _orderModel(self, tcf_path):
#     def buildControlFiles(self, _load_list, model):
#     def _fetchTuflowModel(self, root):
#     def _readControlFile(self, raw_contents, root, control_part):
#         def createUnknown(unknown_store, l):
#         def addLogicAssociate(lpart, logic_stack):
#     def parseDefineLogic(self, line, parent, key):
#     def parseIfLogic(self, line, parent, root, key):
#     def _addModelVariable(self, part):
#     def getFile(self, path):
# 
# Path: ship/utils/fileloaders/iefloader.py
# class IefLoader(ATool, ALoader):
#     def __init__(self):
#     def loadFile(self, file_path, arg_dict={}):
#     def _addHeaderLine(self, event_header, value):
#     def _addDetailsLine(self, event_details, contents, index):
#     def _addSnapshotLine(self, snapshot, contents, index):
#     def _addIedLine(self, ied_data, contents, index):
#     def _loadDescription(self, description, contents, index):
#     def _loadFile(self, filepath):
# 
# Path: ship/utils/fileloaders/datloader.py
# class DatLoader(ATool, ALoader):
#     def __init__(self):
#     def loadFile(self, file_path, arg_dict={}):
#     def buildDat(self, contents, arg_dict={}):
#     def createUnknownSection(self):
#     def getUnits(self):
#     def updateSubContents(self):
#     def __loadFile(self, filepath):


from ship.utils import utilfunctions as uuf
from ship.utils.fileloaders import tuflowloader
from ship.utils.fileloaders import iefloader
from ship.utils.fileloaders import datloader
import logging
     simple to load any type of file from one place.

 Author:  
     Duncan Runnacles

 Created:  
     01 Apr 2016

 Copyright:  
     Duncan Runnacles 2016

 TODO:

 Updates:

"""
from __future__ import unicode_literals


logger = logging.getLogger(__name__)
"""logging references with a __name__ set to this module."""


class FileLoader(object):
    """
    """

    def __init__(self):
        """
        """

# Path: ship/utils/utilfunctions.py
# def formatFloat(value, no_of_dps, ignore_empty_str=True):
# def checkFileType(file_path, ext):
# def isNumeric(s):
# def encodeStr(value):
# def isString(value):
# def isList(value):
# def arrayToString(self, str_array):
# def findSubstringInList(substr, the_list):
# def findMax(val1, val2):
# def fileExtensionWithoutPeriod(filepath, name_only=False):
# def findWholeWord(w):
# def convertRunOptionsToSEDict(options):
# def getSEResolvedFilename(filename, se_vals):
# def enum(*sequential, **named):
#     def __init__(self):
#     def isEmpty(self):
#     def enqueue(self, item):
#     def dequeue(self):
#     def size(self):
#     def __init__(self, max_size=-1):
#     def isEmpty(self):
#     def add(self, item):
#     def pop(self):
#     def peek(self):
#     def size(self):
# class FileQueue(object):
# class LoadStack(object):
# 
# Path: ship/utils/fileloaders/tuflowloader.py
# class TuflowLoader(ALoader):
#     def __init__(self):
#     def _resetLoader(self):
#     def loadFile(self, tcf_path, arg_dict={}):
#     def loadModel(self, tcf_path, arg_dict={}):
#     def loadControlFile(self, model_file):
#     def _orderModel(self, tcf_path):
#     def buildControlFiles(self, _load_list, model):
#     def _fetchTuflowModel(self, root):
#     def _readControlFile(self, raw_contents, root, control_part):
#         def createUnknown(unknown_store, l):
#         def addLogicAssociate(lpart, logic_stack):
#     def parseDefineLogic(self, line, parent, key):
#     def parseIfLogic(self, line, parent, root, key):
#     def _addModelVariable(self, part):
#     def getFile(self, path):
# 
# Path: ship/utils/fileloaders/iefloader.py
# class IefLoader(ATool, ALoader):
#     def __init__(self):
#     def loadFile(self, file_path, arg_dict={}):
#     def _addHeaderLine(self, event_header, value):
#     def _addDetailsLine(self, event_details, contents, index):
#     def _addSnapshotLine(self, snapshot, contents, index):
#     def _addIedLine(self, ied_data, contents, index):
#     def _loadDescription(self, description, contents, index):
#     def _loadFile(self, filepath):
# 
# Path: ship/utils/fileloaders/datloader.py
# class DatLoader(ATool, ALoader):
#     def __init__(self):
#     def loadFile(self, file_path, arg_dict={}):
#     def buildDat(self, contents, arg_dict={}):
#     def createUnknownSection(self):
#     def getUnits(self):
#     def updateSubContents(self):
#     def __loadFile(self, filepath):


# Path: ship/utils/fileloaders/fileloader.py
from ship.utils import utilfunctions as uuf
from ship.utils.fileloaders import tuflowloader
from ship.utils.fileloaders import iefloader
from ship.utils.fileloaders import datloader
import logging

     simple to load any type of file from one place.

 Author:  
     Duncan Runnacles

 Created:  
     01 Apr 2016

 Copyright:  
     Duncan Runnacles 2016

 TODO:

 Updates:

"""
from __future__ import unicode_literals


logger = logging.getLogger(__name__)
"""logging references with a __name__ set to this module."""


class FileLoader(object):
    """
    """

    def __init__(self):
        """
        """

        self._known_files = {'ief': iefloader.IefLoader,