Development ============= This section describes the low-level implementation of the program. At the low level, SNAF follows the Object Oriented Programming (OOP) strategy and construct a series of Python objects. NeoJunction Class -------------------- Instantiate and execute the methods associated with each NeoJunction object:: nj = snaf.NeoJunction(uid='ENSG00000104938:E2.3-E3.1',count=25,check_gtex=False) nj.detect_type() nj.retrieve_junction_seq() nj.in_silico_translation() nj.binding_prediction(hlas=hlas,binding_method='netMHCpan') nj.immunogenicity_prediction() nj.derive_candidates(stage=3,verbosity=1,contain_uid=False) nj.visualize(outdir='.',name='check_nj_visualization.pdf') JunctionCountMatrixQuery Class -------------------------------- This is basically a wrapper class that we will be dealing with most of the time for T antigen, as the input is a dataframe with all the splicing junction and samples, this object provide the user interface to process the output from AltAnalyze. SurfaceAntigen Class ------------------------ For B surface antigen, we can again instantiate and execute the methods:: uid = 'ENSG00000185499:E7.2-E9.1' sa = surface.SurfaceAntigen(uid,False) sa.detect_type() sa.retrieve_junction_seq() sa.recovery_full_length_protein() sa.find_orf() sa.orf_check(n_stride=2) sa.align_uniprot(tmhmm=True,software_path='/data/salomonis2/LabFiles/Frank-Li/python3/TMHMM/tmhmm-2.0c/bin/tmhmm') sa.visualize(index=12,fragment=None)