Skip to content
Snippets Groups Projects
Commit 32f77833 authored by edgrif's avatar edgrif
Browse files

Add new 'all matches with same name' option for blixem args.

parent 674376a7
No related branches found
No related tags found
No related merge requests found
......@@ -27,9 +27,9 @@
*
* Exported functions: See ZMap/zmapView.h
* HISTORY:
* Last edited: Oct 28 09:41 2009 (edgrif)
* Last edited: Dec 16 10:33 2009 (edgrif)
* Created: Thu May 13 15:28:26 2004 (edgrif)
* CVS info: $Id: zmapView.c,v 1.173 2009-12-14 16:37:59 mh17 Exp $
* CVS info: $Id: zmapView.c,v 1.174 2009-12-16 11:04:07 edgrif Exp $
*-------------------------------------------------------------------
*/
......@@ -2886,17 +2886,20 @@ static void commandCB(ZMapWindow window, void *caller_data, void *window_data)
ZMapWindowCallbackCommandAlign align_cmd = (ZMapWindowCallbackCommandAlign)cmd_any ;
gboolean status ;
GList *local_sequences = NULL ;
ZMapViewBlixemFlags flags = BLIXEM_NO_FLAG;
ZMapViewBlixemAlignSet align_type = BLIXEM_NO_MATCHES ;
/* GHASTLY....ALL CHOICE BIT SHOULD BE IN WINDOW.... */
if (align_cmd->single_match)
align_type = BLIXEM_FEATURE_SINGLE_MATCH ;
else if (align_cmd->single_feature)
align_type = BLIXEM_FEATURE_ALL_MATCHES ;
else if (align_cmd->feature_set)
align_type = BLIXEM_FEATURESET_MATCHES ;
else if (align_cmd->multi_sets)
align_type = BLIXEM_MULTI_FEATURESET_MATCHES ;
else if (align_cmd->all_sets)
align_type = BLIXEM_ALL_FEATURESET_MATCHES ;
if (align_cmd->obey_protein_featuresets)
flags |= BLIXEM_OBEY_PROTEIN_SETS;
if (align_cmd->obey_dna_featuresets)
flags |= BLIXEM_OBEY_DNA_SETS;
if(align_cmd->single_feature)
flags = BLIXEM_SINGLE_FEATURE;
if ((status = zmapViewBlixemLocalSequences(view, align_cmd->feature, &local_sequences)))
{
if (!view->sequence_server)
......@@ -2926,11 +2929,12 @@ static void commandCB(ZMapWindow window, void *caller_data, void *window_data)
{
/* Create the step list that will be used to fetch the sequences. */
view->step_list = zmapViewStepListCreate(NULL, processGetSeqRequests, NULL) ;
zmapViewStepListAddStep(view->step_list, ZMAP_SERVERREQ_GETSEQUENCE, REQUEST_ONFAIL_CANCEL_THREAD) ;
zmapViewStepListAddStep(view->step_list, ZMAP_SERVERREQ_GETSEQUENCE,
REQUEST_ONFAIL_CANCEL_THREAD) ;
/* Add the request to the step list. */
req_any = zMapServerRequestCreate(ZMAP_SERVERREQ_GETSEQUENCE,
align_cmd->feature, local_sequences, flags) ;
align_cmd->feature, local_sequences, align_type) ;
request = zmapViewStepListAddServerReq(view->step_list,
view_con, ZMAP_SERVERREQ_GETSEQUENCE, req_any) ;
......@@ -2943,7 +2947,8 @@ static void commandCB(ZMapWindow window, void *caller_data, void *window_data)
{
GPid blixem_pid ;
if ((status = zmapViewCallBlixem(view, align_cmd->feature, NULL, flags, &blixem_pid, &(view->kill_blixems))))
if ((status = zmapViewCallBlixem(view, align_cmd->feature, NULL, align_type,
&blixem_pid, &(view->kill_blixems))))
view->spawned_processes = g_list_append(view->spawned_processes, GINT_TO_POINTER(blixem_pid)) ;
}
......
......@@ -24,9 +24,9 @@
*
* Description:
* HISTORY:
* Last edited: Oct 1 15:33 2009 (edgrif)
* Last edited: Dec 14 13:18 2009 (edgrif)
* Created: Thu May 13 15:06:21 2004 (edgrif)
* CVS info: $Id: zmapView_P.h,v 1.52 2009-10-02 09:19:32 edgrif Exp $
* CVS info: $Id: zmapView_P.h,v 1.53 2009-12-16 11:05:58 edgrif Exp $
*-------------------------------------------------------------------
*/
#ifndef ZMAP_VIEW_P_H
......@@ -41,14 +41,15 @@
#include <ZMap/zmapXRemote.h>
typedef enum
{
BLIXEM_NO_FLAG = 0,
BLIXEM_OBEY_DNA_SETS = 1 << 0,
BLIXEM_OBEY_PROTEIN_SETS = 1 << 1,
BLIXEM_SINGLE_FEATURE = 1 << 2,
} ZMapViewBlixemFlags;
BLIXEM_NO_MATCHES,
BLIXEM_FEATURE_SINGLE_MATCH, /* Single match of a single sequence. */
BLIXEM_FEATURE_ALL_MATCHES, /* All matches of a single sequence. */
BLIXEM_FEATURESET_MATCHES, /* All matches of all sequences of a set. */
BLIXEM_MULTI_FEATURESET_MATCHES, /* All matches of all sequences in several sets. */
BLIXEM_ALL_FEATURESET_MATCHES /* All matches of all sequences in all sets. */
} ZMapViewBlixemAlignSet ;
......@@ -301,7 +302,7 @@ gboolean zmapAnyConnBusy(GList *connection_list) ;
char *zmapViewGetStatusAsStr(ZMapViewState state) ;
gboolean zmapViewBlixemLocalSequences(ZMapView view, ZMapFeature feature, GList **local_sequences_out) ;
gboolean zmapViewCallBlixem(ZMapView view, ZMapFeature feature, GList *local_sequences,
ZMapViewBlixemFlags flags, GPid *child_pid, gboolean *kill_on_exit) ;
ZMapViewBlixemAlignSet align_set, GPid *child_pid, gboolean *kill_on_exit) ;
ZMapFeatureContext zmapViewMergeInContext(ZMapView view, ZMapFeatureContext context);
gboolean zmapViewDrawDiffContext(ZMapView view, ZMapFeatureContext *diff_context);
void zmapViewEraseFromContext(ZMapView replace_me, ZMapFeatureContext context_inout);
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment