# 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
     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,
                             'tcf': tuflowloader.TuflowLoader,
                             'dat': datloader.DatLoader,

# 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

     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,
                             'tcf': tuflowloader.TuflowLoader,
                             'dat': datloader.DatLoader,

                             'ied': datloader.DatLoader}