Skip to content

Commit

Permalink
Release version 1.7
Browse files Browse the repository at this point in the history
Using tarball (with SHA1):
68cef0794d51090af9cd5366fe386c08d7b323c1 *3DVisualizer-1.7.tar.gz
  • Loading branch information
Doc-Ok authored and daBrado committed Mar 13, 2013
1 parent e0de296 commit 3889169
Show file tree
Hide file tree
Showing 15 changed files with 78 additions and 84 deletions.
5 changes: 5 additions & 0 deletions HISTORY
Original file line number Diff line number Diff line change
Expand Up @@ -66,3 +66,8 @@
variables simultaneously.
- Created new module for multi-valued image stacks.
- Created new (experimental) module for GoCAD voxet files.

3D Visualizer 1.7:
- Adapted shared visualization protocol to collaboration infrastructure
version 1.3.
- Fixed regression bug in non-shader version of volume renderer.
2 changes: 1 addition & 1 deletion README
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
========================================================================
README for 3D Visualizer version 1.6
README for 3D Visualizer version 1.7
Copyright (c) 2005-2009 Oliver Kreylos
========================================================================

Expand Down
4 changes: 2 additions & 2 deletions SharedVisualizationClient.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -369,8 +369,8 @@ void SharedVisualizationClient::receiveServerUpdate(ProtocolClient::RemoteClient

void SharedVisualizationClient::rejectedByServer(void)
{
/* Signal an error: */
Misc::throwStdErr("SharedVisualizationClient: Server does not support shared Visualizer protocol. Bummer.");
/* Write a warning message: */
std::cout<<"SharedVisualizationClient: Server does not support shared Visualizer protocol. Bummer."<<std::endl;
}

void SharedVisualizationClient::frame(ProtocolClient::RemoteClientState* rcs)
Expand Down
18 changes: 18 additions & 0 deletions SharedVisualizationServer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -336,3 +336,21 @@ void SharedVisualizationServer::afterServerUpdate(ProtocolServer::ClientState* c
}

}

/****************
DSO entry points:
****************/

extern "C" {

Collaboration::ProtocolServer* createObject(Collaboration::ProtocolServerLoader& objectLoader)
{
return new Collaboration::SharedVisualizationServer;
}

void destroyObject(Collaboration::ProtocolServer* object)
{
delete object;
}

}
30 changes: 10 additions & 20 deletions SharedVisualizationServerMain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,14 @@ with the 3D Data Visualizer; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
***********************************************************************/

#include "SharedVisualizationServer.h"

#include <string.h>
#include <stdlib.h>
#include <signal.h>
#include <iostream>
#include <Misc/Time.h>
#include <Collaboration/CollaborationServer.h>
#include <Collaboration/AgoraServer.h>
#include <Collaboration/EmineoServer.h>
#include <Collaboration/GrapheinServer.h>

#include "SharedVisualizationServer.h"

volatile bool runServerLoop=true;

Expand All @@ -41,9 +38,11 @@ void termSignalHandler(int)

int main(int argc,char* argv[])
{
/* Create a new configuration object: */
Collaboration::CollaborationServer::Configuration* cfg=new Collaboration::CollaborationServer::Configuration;

/* Parse the command line: */
int listenPortId=0;
Misc::Time tickTime(0.02); // Server update time interval in seconds
Misc::Time tickTime(cfg->getTickTime()); // Server update time interval in seconds
for(int i=1;i<argc;++i)
{
if(argv[i][0]=='-')
Expand All @@ -52,17 +51,17 @@ int main(int argc,char* argv[])
{
++i;
if(i<argc)
listenPortId=atoi(argv[i]);
cfg->setListenPortId(atoi(argv[i]));
else
std::cerr<<"CollaborationServerMain: ignored dangling -port option"<<std::endl;
std::cerr<<"SharedVisualizationServerMain: ignored dangling -port option"<<std::endl;
}
else if(strcasecmp(argv[i]+1,"tick")==0)
{
++i;
if(i<argc)
tickTime=Misc::Time(atof(argv[i]));
else
std::cerr<<"CollaborationServerMain: ignored dangling -tick option"<<std::endl;
std::cerr<<"SharedVisualizationServerMain: ignored dangling -tick option"<<std::endl;
}
}
}
Expand All @@ -75,18 +74,9 @@ int main(int argc,char* argv[])
sigaction(SIGPIPE,&sigPipeAction,0);

/* Create the collaboration server object: */
Collaboration::CollaborationServer server(listenPortId);
Collaboration::CollaborationServer server(cfg);
std::cout<<"SharedVisualizationServerMain: Started server on port "<<server.getListenPortId()<<std::endl;

/* Add an Agora protocol object: */
server.registerProtocol(new Collaboration::AgoraServer);

/* Add an Emineo protocol object: */
server.registerProtocol(new Collaboration::EmineoServer);

/* Add a Graphein protocol object: */
server.registerProtocol(new Collaboration::GrapheinServer);

/* Add a shared Visualizer protocol object: */
server.registerProtocol(new Collaboration::SharedVisualizationServer);

Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3DVisualizer 1.6
3DVisualizer 1.7
85 changes: 35 additions & 50 deletions Visualizer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,6 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#include <Vrui/Vrui.h>
#ifdef VISUALIZER_USE_COLLABORATION
#include <Collaboration/CollaborationClient.h>
#include <Collaboration/AgoraClient.h>
#ifdef VISUALIZER_USE_EMINEO
#include <Collaboration/EmineoClient.h>
#endif
#include <Collaboration/GrapheinClient.h>
#endif

#include <Abstract/DataSetRenderer.h>
Expand Down Expand Up @@ -588,38 +583,42 @@ Visualizer::Visualizer(int& argc,char**& argv,char**& appDefaults)
#ifdef VISUALIZER_USE_COLLABORATION
else if(strcasecmp(argv[i]+1,"share")==0)
{
if(i<argc-2)
try
{
try
/* Create a configuration object: */
Collaboration::CollaborationClient::Configuration* cfg=new Collaboration::CollaborationClient::Configuration;

/* Check if the next argument is a server name: */
if(i+2<argc&&strcasecmp(argv[i+1],"-server")==0)
{
/* Connect to the specified shared Visualizer server: */
collaborationClient=new Collaboration::CollaborationClient(argv[i+1],atoi(argv[i+2]));

/* Register the Agora protocol: */
collaborationClient->registerProtocol(new Collaboration::AgoraClient);

#ifdef VISUALIZER_USE_EMINEO
/* Register the Emineo protocol: */
collaborationClient->registerProtocol(new Collaboration::EmineoClient);
#endif

/* Register the Graphein protocol: */
collaborationClient->registerProtocol(new Collaboration::GrapheinClient);
i+=2;

/* Register a shared Visualizer plug-in: */
sharedVisualizationClient=new Collaboration::SharedVisualizationClient(this);
collaborationClient->registerProtocol(sharedVisualizationClient);
}
catch(std::runtime_error err)
{
std::cerr<<"Caught exception "<<err.what()<<" while creating shared Visualizer client"<<std::endl;
delete collaborationClient;
collaborationClient=0;
/* Split the server name into host name and port ID: */
char* colonPtr=0;
for(char* sPtr=argv[i];*sPtr!='\0';++sPtr)
if(*sPtr==':')
colonPtr=sPtr;
if(colonPtr!=0)
cfg->setServer(std::string(argv[i],colonPtr),atoi(colonPtr+1));
else
{
/* Use the default port: */
cfg->setServer(argv[i],26000);
}
}

/* Create the collaboration client: */
collaborationClient=new Collaboration::CollaborationClient(cfg);

/* Register the shared Visualizer protocol: */
collaborationClient->registerProtocol(new Collaboration::SharedVisualizationClient(this));
}
catch(std::runtime_error err)
{
std::cerr<<"Caught exception "<<err.what()<<" while creating shared Visualizer client"<<std::endl;
delete collaborationClient;
collaborationClient=0;
}
else
std::cerr<<"Ignoring dangling -share flag"<<std::endl;
i+=2;
}
#endif
}
Expand Down Expand Up @@ -703,32 +702,18 @@ Visualizer::Visualizer(int& argc,char**& argv,char**& appDefaults)
{
try
{
/* Try a special environment variable first: */
const char* clientName=getenv("SHAREDVISUALIZER_CLIENTNAME");

if(clientName==0)
{
/* Try the local host name next: */
clientName=getenv("HOSTNAME");
if(clientName==0)
clientName=getenv("HOST");
}

if(clientName==0)
{
/* Assign a default name: */
clientName="Anonymous Visualizer";
}

/* Connect to the server: */
collaborationClient->connect(clientName);
collaborationClient->connect();
}
catch(std::runtime_error err)
{
std::cerr<<"Caught exception "<<err.what()<<" while connecting to shared Visualizer server"<<std::endl;
delete collaborationClient;
collaborationClient=0;
}

/* Get a pointer to the shared Visualizer protocol: */
sharedVisualizationClient=dynamic_cast<Collaboration::SharedVisualizationClient*>(collaborationClient->getProtocol(Collaboration::SharedVisualizationClient::protocolName));
}
#endif

Expand Down
5 changes: 5 additions & 0 deletions Wrappers/VolumeRenderer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,11 @@ VolumeRenderer<DataSetWrapperParam>::VolumeRenderer(
renderer->setAutosaveGLState(true);
renderer->setTextureCaching(true);
renderer->setSharePalette(false);

/* Set the volume renderer's parameters: */
colorMap=variableManager->getColorMap(svi);
transparencyGamma=1.0f;

#endif
}

Expand Down
11 changes: 1 addition & 10 deletions makefile
Original file line number Diff line number Diff line change
Expand Up @@ -85,15 +85,11 @@ USE_SHADERS = 0
# spatially distributed shared data exploration.
USE_COLLABORATION = 0

# Flag whether the Vrui collaboration infrastructure has built-in
# support for 3D video using the Emineo rendering architecture.
USE_EMINEO = 0

# Version number for installation subdirectories. This is used to keep
# subsequent release versions of 3D Visualizer from clobbering each
# other. The value should be identical to the major.minor version
# number found in VERSION in the root package directory.
VERSION = 1.6
VERSION = 1.7

# Set up destination directories for compilation products:
OBJDIRBASE = o
Expand Down Expand Up @@ -248,11 +244,6 @@ $(OBJDIR)/Concrete/EarthRenderer.o: CFLAGS += -DEARTHRENDERER_IMAGEDIR='"$(INSTA
$(OBJDIR)/SingleChannelRaycaster.o: CFLAGS += -DVISUALIZER_SHADERDIR='"$(INSTALLDIR)/$(SHADERDIR)"'
$(OBJDIR)/TripleChannelRaycaster.o: CFLAGS += -DVISUALIZER_SHADERDIR='"$(INSTALLDIR)/$(SHADERDIR)"'
$(OBJDIR)/Visualizer.o: CFLAGS += -DVISUALIZER_MODULENAMETEMPLATE='"$(INSTALLDIR)/$(call PLUGINNAME,%s)"'
ifneq ($(USE_COLLABORATION),0)
ifneq ($(USE_EMINEO),0)
$(OBJDIR)/Visualizer.o: CFLAGS += -DVISUALIZER_USE_EMINEO
endif
endif

#
# Rule to build 3D Visualizer main program
Expand Down
File renamed without changes
File renamed without changes.

0 comments on commit 3889169

Please sign in to comment.