# Path: alfpy/graphdna.py
# def _2DSGraphVector(seq):
# def _2DMGraphVector(seq, n):
# def _2DNGraphVector(genomeseq):
# def create_2DSGraphVectors(seq_records):
# def create_2DMGraphVectors(seq_records, n):
# def create_2DNGraphVectors(seq_records):
#     def __init__(self, vector, disttype='euclid_norm'):
# def main():
# class Distance(distance.Distance):
# 
# Path: alfpy/utils/distmatrix.py
# def create(id_list, distance):
# def read_highcharts_matrix(id_list, data):
#     def __init__(self, id_list, data):
#     def normalize(self):
#     def __iter__(self):
#     def writer(self, handle, f, decimal_places):
#     def display(self, f="phylip", decimal_places=7):
#     def write_to_file(self, handle, f="phylip", decimal_places=7):
#     def highcharts(self):
#     def format(self, decimal_places=7):
#     def min(self):
#     def max(self):
#     def is_zero(self):
#     def __repr__(self):
# class Matrix():
# 
# Path: alfpy/utils/seqrecords.py
# class SeqRecords:
#     def __init__(self, id_list=None, seq_list=None):
#     def add(self, seqid, seq):
#     def fasta(self, wrap=70):
#     def length_list(self):
#     def __iter__(self):
#     def __len__(self):
#     def __repr__(self):
# def read_fasta(handle):
# def main():
# 
# Path: alfpy/version.py



import argparse
import sys
from alfpy import graphdna
from alfpy.utils import distmatrix
from alfpy.utils import seqrecords
from alfpy.version import __version__
    group = parser.add_argument_group("OTHER OPTIONS")
    group.add_argument("-h", "--help", action="help",
                       help="show this help message and exit")
    group.add_argument('--version', action='version',
                       version='%(prog)s {}'.format(__version__))

    if len(sys.argv[1:]) == 0:
        # parser.print_help()
        parser.print_usage()
        parser.exit()
    return parser


def validate_args(parser):
    args = parser.parse_args()
    if args.vector == '2DMV' and args.ndim is None:
        parser.error("--vector 2DMV requires the --ndim")
    # TODO: mk as a range
    # stackoverflow.com/questions/18700634/python-argparse-integer-condition-12
    return args


def main():
    parser = get_parser()
    args = validate_args(parser)

    seq_records = seqrecords.read_fasta(args.fasta)
    if args.vector == '2DSV':
        vector = graphdna.create_2DSGraphVectors(seq_records)
    elif args.vector == '2DNV':

# Path: alfpy/graphdna.py
# def _2DSGraphVector(seq):
# def _2DMGraphVector(seq, n):
# def _2DNGraphVector(genomeseq):
# def create_2DSGraphVectors(seq_records):
# def create_2DMGraphVectors(seq_records, n):
# def create_2DNGraphVectors(seq_records):
#     def __init__(self, vector, disttype='euclid_norm'):
# def main():
# class Distance(distance.Distance):
# 
# Path: alfpy/utils/distmatrix.py
# def create(id_list, distance):
# def read_highcharts_matrix(id_list, data):
#     def __init__(self, id_list, data):
#     def normalize(self):
#     def __iter__(self):
#     def writer(self, handle, f, decimal_places):
#     def display(self, f="phylip", decimal_places=7):
#     def write_to_file(self, handle, f="phylip", decimal_places=7):
#     def highcharts(self):
#     def format(self, decimal_places=7):
#     def min(self):
#     def max(self):
#     def is_zero(self):
#     def __repr__(self):
# class Matrix():
# 
# Path: alfpy/utils/seqrecords.py
# class SeqRecords:
#     def __init__(self, id_list=None, seq_list=None):
#     def add(self, seqid, seq):
#     def fasta(self, wrap=70):
#     def length_list(self):
#     def __iter__(self):
#     def __len__(self):
#     def __repr__(self):
# def read_fasta(handle):
# def main():
# 
# Path: alfpy/version.py



# Path: bin/calc_graphdna.py
import argparse
import sys
from alfpy import graphdna
from alfpy.utils import distmatrix
from alfpy.utils import seqrecords
from alfpy.version import __version__

    group = parser.add_argument_group("OTHER OPTIONS")
    group.add_argument("-h", "--help", action="help",
                       help="show this help message and exit")
    group.add_argument('--version', action='version',
                       version='%(prog)s {}'.format(__version__))

    if len(sys.argv[1:]) == 0:
        # parser.print_help()
        parser.print_usage()
        parser.exit()
    return parser


def validate_args(parser):
    args = parser.parse_args()
    if args.vector == '2DMV' and args.ndim is None:
        parser.error("--vector 2DMV requires the --ndim")
    # TODO: mk as a range
    # stackoverflow.com/questions/18700634/python-argparse-integer-condition-12
    return args


def main():
    parser = get_parser()
    args = validate_args(parser)

    seq_records = seqrecords.read_fasta(args.fasta)
    if args.vector == '2DSV':
        vector = graphdna.create_2DSGraphVectors(seq_records)
    elif args.vector == '2DNV':

        vector = graphdna.create_2DNGraphVectors(seq_records)