import re,string,os,sys,shelve,copy,math
from types import *
import OMCSNetFast,OMCSNetTools,Settings
class OMCSNetAPI:


    theOMCSNetFast = None
    theOMCSNetTools = None
    def __init__(self):

        self.theOMCSNetFast = OMCSNetFast.OMCSNetFast()
        self.theOMCSNetTools = OMCSNetTools.OMCSNetTools(self.theOMCSNetFast)
        return
    def find_analogous_nodes(self,nodename):

        return self.theOMCSNetTools.find_analogous_nodes(nodename)
    def find_paths_from_a_to_b(self,node1name,node2name,sentences_p=0,max_node_visits=10000,max_number_of_results = 200,restrict_predicates=''):

        return self.theOMCSNetTools.find_paths_from_a_to_b(node1name,node2name,sentences_p,max_node_visits,max_number_of_results)
    def get_context(self,nodelist,max_node_visits=1000,max_number_of_results=200):

        return self.theOMCSNetTools.get_context(nodelist,max_node_visits,max_number_of_results)
    def get_edges_by_origin_nodename(self,nodename,sentence_p=1,default=[]):

        return self.theOMCSNetFast.get_edges_by_origin_nodename(nodename,sentence_p,default)
    def get_edges_by_destination_nodename(self,nodename,sentence_p=1,default=[]):

        return self.theOMCSNetFast.get_edges_by_destination_nodename(nodename,sentence_p,default)
if __name__ == '__main__':
    o = OMCSNetAPI()
    o.get_edges_by_origin_nodename('dog',sentence_p=1,default=[])
    o.get_edges_by_destination_nodename('dog',sentence_p=1,default=[])