54c1befd1ac95aab8c80c7e2e400a90d01849237 angie Fri Jan 9 16:41:47 2015 -0800 New CGI hgAi (Annotation Integrator) that uses new ReactJS/ImmutableJS framework.hgAi.c has three modes of operation: - HTML output for simple main page with a <div> container to be filled in by javascript - JSON responses to ajax requests from javascript (using hg/lib/cartJson.c) - text output for queries on track data hgAi.jsx is the React/JSX UI view code, compiled to bundle/reactHgAi.js. hgAiModel.js is a subclass of js/model/lib/ImModel.js that gets initial state from the server and then responds to user actions. diff --git src/hg/lib/hCommon.c src/hg/lib/hCommon.c index 8bd3c7d..88ac7e2 100644 --- src/hg/lib/hCommon.c +++ src/hg/lib/hCommon.c @@ -11,30 +11,31 @@ #include "errAbort.h" static char *_hgcName = "../cgi-bin/hgc"; /* Path to click processing program. */ static char *_hgTracksName = "../cgi-bin/hgTracks"; /* Path back to genome browser. */ static char *_hgTrackUiName = "../cgi-bin/hgTrackUi"; /* Path to extended ui program. */ static char *_hgFileUiName = "../cgi-bin/hgFileUi"; /* Path to downloladable files CGI. */ static char *_hgTextName = "../cgi-bin/hgText"; /* Path back to the text browser. */ static char *_hgTablesName = "../cgi-bin/hgTables"; /* Path back to the table browser. */ static char *_hgVaiName = "../cgi-bin/hgVai"; /* Path back to the variant annotation integrator. */ static char *_hgCustomName = "../cgi-bin/hgCustom"; /* Path back to the custom tracks manager. */ static char *_hgHubConnectName = "../cgi-bin/hgHubConnect"; /* Path back to the track hub manager. */ static char *_hgSessionName = "../cgi-bin/hgSession"; /* Path to session manager. */ static char *_hgPalName = "../cgi-bin/hgPal"; /* Path back to the protein aligner */ static char *_hgVarAnnogratorName = "../cgi-bin/hgVarAnnogrator"; /* Path to variant annot intgr */ +static char *_hgAiName = "../cgi-bin/hgAi"; /* Path to annotation intgrator */ char *hgPalName() /* Relative URL to click processing program. */ { return _hgPalName; } char *hgcName() /* Relative URL to click processing program. */ { return _hgcName; } char *hgTracksName() /* Relative URL to browser. */ @@ -84,30 +85,36 @@ return _hgHubConnectName; } char *hgSessionName() /* Relative URL to session manager. */ { return _hgSessionName; } char *hgVarAnnogratorName() /* Relative URL to variant annotation integrator program. */ { return _hgVarAnnogratorName; } +char *hgAiName() +/* Relative URL to annotation integrator program. */ +{ +return _hgAiName; +} + static void finishCloneName(char *fragName, char *e, char cloneName[128]) /* Finish conversion from frag to clone or clone.ver name. */ { int size; if (e == NULL) e = fragName + strlen(fragName); size = e - fragName; if (size >= 128) errAbort("name too long %s\n", fragName); memcpy(cloneName, fragName, size); cloneName[size] = 0; } void fragToCloneName(char *fragName, char cloneName[128])