code: def add_protocols(session, verbose):
    
  
    # 1. DEFINITIONS
    enroll_session = [1]
    client_probe_session = [2]
    impostor_probe_session = [3]
    protocols = ['A']
  
    # 2. ADDITIONS TO THE SQL DATABASE
    protocolPurpose_list = [('eval', 'enrol'), ('eval', 'probe')]
    for proto in protocols:
      p = Protocol(proto)
      # Add protocol
      if verbose: print("Adding protocol %s..." % (proto))
      session.add(p)
      session.flush()
      session.refresh(p)
  
      # Add protocol purposes
      for key in range(len(protocolPurpose_list)):
        purpose = protocolPurpose_list[key]
        print p.id, purpose[0], purpose[1]
        pu = ProtocolPurpose(p.id, purpose[0], purpose[1])
        if verbose>1: print("  Adding protocol purpose ('%s','%s')..." % (purpose[0], purpose[1]))
        session.add(pu)
        session.flush()
        session.refresh(pu)
  
        # Add files attached with this protocol purpose
        if(key == 0): #test enrol
          q = session.query(File).join(Client).filter(Client.stype == 'Genuine').filter(File.session_id.in_(enroll_session))
          for k in q:
            if verbose>1: print("    Adding protocol file '%s'..." % (k.path))
            pu.files.append(k)
  
        elif(key == 1): #test probe
          q = session.query(File).join(Client).filter(Client.stype == 'Genuine').filter(File.session_id.in_(client_probe_session))
          for k in q:
            if verbose>1: print("    Adding protocol file '%s'..." % (k.path))
            pu.files.append(k)
          q = session.query(File).join(Client).filter(Client.stype == 'Impostor').filter(File.session_id.in_(impostor_probe_session))
          for k in q:
            if verbose>1: print("    Adding protocol file '%s'..." % (k.path))
            pu.files.append(k)
docs: Adds protocols