Ignore:
Timestamp:
Mar 8, 2011 2:43:17 PM (13 years ago)
Author:
ldelgass
Message:
  • First pass at making dataSetName optional in commands, pass 'all' to methods

in this case (can pass literal 'all' or leave name out). Currently implemented
for delete subcommands.

  • Return bool from rendering legend if color map not found - fixes crash
  • Delete DataSets? after graphics objects, since they hold pointers to their

DataSet?. (TODO: use TR1 shared pointers?)

  • Make hash keys (std::string) const reference parameters in methods
  • Add some debug traces to destructors
  • Fix indentation in CmdProc?.cpp
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/packages/vizservers/vtkvis/RpVtkRendererCmd.cpp

    r2115 r2123  
    172172    {"name", 1, AxisNameOp, 4, 4, "axis title"},
    173173    {"units", 1, AxisUnitsOp, 4, 4, "axis units"},
    174     {"visible", 1, AxisVisibleOp, 4, 4, "axis bool"},
     174    {"visible", 1, AxisVisibleOp, 4, 4, "axis bool"}
    175175};
    176176static int nAxisOps = NumCmdSpecs(axisOps);
     
    298298    {"reset", 2, CameraResetOp, 2, 3, "?all?"},
    299299    {"rotate", 2, CameraRotateOp, 5, 5, "angle angle angle"},
    300     {"zoom", 1, CameraZoomOp, 3, 3, "zoomAmount"},
     300    {"zoom", 1, CameraZoomOp, 3, 3, "zoomAmount"}
    301301};
    302302static int nCameraOps = NumCmdSpecs(cameraOps);
     
    490490                  Tcl_Obj *const *objv)
    491491{
    492     const char *name = Tcl_GetString(objv[2]);
    493     g_renderer->deleteContour2D(name);
     492    if (objc == 3) {
     493        const char *name = Tcl_GetString(objv[2]);
     494        g_renderer->deleteContour2D(name);
     495    } else {
     496        g_renderer->deleteContour2D("all");
     497    }
    494498    return TCL_OK;
    495499}
     
    551555static Rappture::CmdSpec contour2dOps[] = {
    552556    {"add", 1, Contour2DAddOp, 5, 5, "oper value dataSetName"},
    553     {"delete", 1, Contour2DDeleteOp, 3, 3, "dataSetName"},
     557    {"delete", 1, Contour2DDeleteOp, 2, 3, "?dataSetName?"},
    554558    {"lighting", 3, Contour2DLightingOp, 4, 4, "bool dataSetName"},
    555559    {"linecolor", 5, Contour2DLineColorOp, 6, 6, "r g b dataSetName"},
    556560    {"linewidth", 5, Contour2DLineWidthOp, 4, 4, "width dataSetName"},
    557     {"visible", 1, Contour2DVisibleOp, 4, 4, "bool dataSetName"},
     561    {"visible", 1, Contour2DVisibleOp, 4, 4, "bool dataSetName"}
    558562};
    559563static int nContour2dOps = NumCmdSpecs(contour2dOps);
     
    627631                Tcl_Obj *const *objv)
    628632{
    629     const char *name = Tcl_GetString(objv[2]);
    630     TRACE("Deleting dataset %s", name);
    631     g_renderer->deleteDataSet(name);
     633    if (objc == 3) {
     634        const char *name = Tcl_GetString(objv[2]);
     635        TRACE("Deleting dataset %s", name);
     636        g_renderer->deleteDataSet(name);
     637    } else {
     638        g_renderer->deleteDataSet("all");
     639    }
    632640    return TCL_OK;
    633641}
     
    736744static Rappture::CmdSpec dataSetOps[] = {
    737745    {"add", 1, DataSetAddOp, 6, 6, "name data follows nBytes"},
    738     {"delete", 1, DataSetDeleteOp, 3, 3, "name"},
     746    {"delete", 1, DataSetDeleteOp, 2, 3, "?name?"},
    739747    {"getvalue", 1, DataSetGetValueOp, 6, 7, "oper x y ?z? name"},
    740748    {"opacity", 1, DataSetOpacityOp, 4, 4, "value name"},
     
    778786        vtkSmartPointer<vtkUnsignedCharArray>::New();
    779787
    780     g_renderer->renderColorMap(name, title, width, height, imgData);
     788    if (!g_renderer->renderColorMap(name, title, width, height, imgData)) {
     789        Tcl_AppendResult(interp, "Color map \"",
     790                name, "\" was not found", (char*)NULL);
     791        return TCL_ERROR;
     792    }
    781793
    782794#ifdef DEBUG
     
    814826                  Tcl_Obj *const *objv)
    815827{
    816     const char *name = Tcl_GetString(objv[2]);
    817     g_renderer->deletePseudoColor(name);
     828    if (objc == 3) {
     829        const char *name = Tcl_GetString(objv[2]);
     830        g_renderer->deletePseudoColor(name);
     831    } else {
     832        g_renderer->deletePseudoColor("all");
     833    }
    818834    return TCL_OK;
    819835}
     
    889905    {"add", 1, PseudoColorAddOp, 3, 3, "dataSetName"},
    890906    {"colormap", 1, PseudoColorColorMapOp, 4, 4, "colorMapName dataSetName"},
    891     {"delete", 1, PseudoColorDeleteOp, 3, 3, "dataSetName"},
     907    {"delete", 1, PseudoColorDeleteOp, 2, 3, "?dataSetName?"},
    892908    {"edges", 1, PseudoColorEdgeVisibilityOp, 4, 4, "bool dataSetName"},
    893909    {"lighting", 3, PseudoColorLightingOp, 4, 4, "bool dataSetName"},
     
    925941                 Tcl_Obj *const *objv)
    926942{
    927     const char *name = Tcl_GetString(objv[2]);
    928     g_renderer->deletePolyData(name);
     943    if (objc == 3) {
     944        const char *name = Tcl_GetString(objv[2]);
     945        g_renderer->deletePolyData(name);
     946    } else {
     947        g_renderer->deletePolyData("all");
     948    }
    929949    return TCL_OK;
    930950}
     
    10281048    {"add", 1, PolyDataAddOp, 3, 3, "dataSetName"},
    10291049    {"color", 1, PolyDataColorOp, 6, 6, "r g b dataSetName"},
    1030     {"delete", 1, PolyDataDeleteOp, 3, 3, "dataSetName"},
     1050    {"delete", 1, PolyDataDeleteOp, 2, 3, "?dataSetName?"},
    10311051    {"edges", 1, PolyDataEdgeVisibilityOp, 4, 4, "bool dataSetName"},
    10321052    {"lighting", 3, PolyDataLightingOp, 4, 4, "bool dataSetName"},
Note: See TracChangeset for help on using the changeset viewer.