summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Helfrich <helfrich9000@gmail.com>2008-01-18 17:32:26 +0000
committerBrian Helfrich <helfrich9000@gmail.com>2008-01-18 17:32:26 +0000
commitcf97b794990e253e6c23b64bb3829327eb3ad3f4 (patch)
tree0888ce1870c249906f42d3e28041531efd4a2e9d
parent7cf75f4a8acb9ba084ca640f8b2c79d9fa08dfc1 (diff)
downloadnanoengineer-cf97b794990e253e6c23b64bb3829327eb3ad3f4.tar.gz
nanoengineer-cf97b794990e253e6c23b64bb3829327eb3ad3f4.zip
Project changes - now makes libraries.
-rw-r--r--cad/plugins/NanoVision-1/include/Nanorex/Utility/NXLogger.h20
-rw-r--r--cad/plugins/NanoVision-1/src/Interface/Interface.pro34
-rw-r--r--cad/plugins/NanoVision-1/src/Interface/NXEntityManager.cpp7
-rw-r--r--cad/plugins/NanoVision-1/src/Interface/NXEntityManagerTest.cpp4
-rw-r--r--cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.cpp12
-rw-r--r--cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.h9
-rw-r--r--cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.pro15
-rw-r--r--cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.cpp36
-rw-r--r--cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.h31
-rw-r--r--cad/plugins/NanoVision-1/src/Testing/CppUnit/CppUnit.pro52
-rw-r--r--cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.kdevelop5
-rw-r--r--cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.pro9
-rw-r--r--cad/plugins/NanoVision-1/src/Utility/NXPluginGroup.cpp4
-rw-r--r--cad/plugins/NanoVision-1/src/Utility/Utility.pro33
14 files changed, 203 insertions, 68 deletions
diff --git a/cad/plugins/NanoVision-1/include/Nanorex/Utility/NXLogger.h b/cad/plugins/NanoVision-1/include/Nanorex/Utility/NXLogger.h
index eb590db03..b833d52d4 100644
--- a/cad/plugins/NanoVision-1/include/Nanorex/Utility/NXLogger.h
+++ b/cad/plugins/NanoVision-1/include/Nanorex/Utility/NXLogger.h
@@ -106,33 +106,33 @@ class NXLogger {
// Convenience macros
#define NXLOG_DEBUG(source, message) { \
- NXLogger* logger = NXLogger::Instance(); \
+ Nanorex::NXLogger* logger = Nanorex::NXLogger::Instance(); \
if (logger != 0) \
- logger->log(NXLogLevel_Debug, source, message); \
+ logger->log(Nanorex::NXLogLevel_Debug, source, message); \
};
#define NXLOG_CONFIG(source, message) { \
- NXLogger* logger = NXLogger::Instance(); \
+ Nanorex::NXLogger* logger = Nanorex::NXLogger::Instance(); \
if (logger != 0) \
- logger->log(NXLogLevel_Config, source, message); \
+ logger->log(Nanorex::NXLogLevel_Config, source, message); \
};
#define NXLOG_INFO(source, message) { \
- NXLogger* logger = NXLogger::Instance(); \
+ Nanorex::NXLogger* logger = Nanorex::NXLogger::Instance(); \
if (logger != 0) \
- logger->log(NXLogLevel_Info, source, message); \
+ logger->log(Nanorex::NXLogLevel_Info, source, message); \
};
#define NXLOG_WARNING(source, message) { \
- NXLogger* logger = NXLogger::Instance(); \
+ Nanorex::NXLogger* logger = Nanorex::NXLogger::Instance(); \
if (logger != 0) \
- logger->log(NXLogLevel_Warning, source, message); \
+ logger->log(Nanorex::NXLogLevel_Warning, source, message); \
};
#define NXLOG_SEVERE(source, message) { \
- NXLogger* logger = NXLogger::Instance(); \
+ Nanorex::NXLogger* logger = Nanorex::NXLogger::Instance(); \
if (logger != 0) \
- logger->log(NXLogLevel_Severe, source, message); \
+ logger->log(Nanorex::NXLogLevel_Severe, source, message); \
};
diff --git a/cad/plugins/NanoVision-1/src/Interface/Interface.pro b/cad/plugins/NanoVision-1/src/Interface/Interface.pro
new file mode 100644
index 000000000..67f17e2c7
--- /dev/null
+++ b/cad/plugins/NanoVision-1/src/Interface/Interface.pro
@@ -0,0 +1,34 @@
+
+
+
+LIBS += -lopenbabel \
+ -L../../lib \
+ -lNanorexUtility
+
+
+HEADERS += \
+../../../include/Nanorex/Interface/NXNumbers.h \
+ ../../../include/Nanorex/Interface/NXEntityManager.h \
+ ../../../include/Nanorex/Interface/NXMoleculeSet.h \
+ ../../../include/Nanorex/Interface/NXNanoVisionResultCodes.h \
+ ../../../include/Nanorex/Interface/NXDataImportExportPlugin.h \
+ ../../../include/Nanorex/Interface/NXMoleculeData.h
+
+INCLUDEPATH += /usr/local/include/openbabel-2.0/ \
+ ../../include
+
+SOURCES += NXDataImportExportPlugin.cpp \
+NXEntityManager.cpp \
+NXMoleculeData.cpp \
+NXMoleculeSet.cpp \
+NXNumbers.cpp
+TEMPLATE = lib
+
+CONFIG += dll
+
+TARGET = NanorexInterface
+
+DESTDIR = ../../lib
+
+TARGETDEPS += ../../lib/libNanorexUtility.so
+
diff --git a/cad/plugins/NanoVision-1/src/Interface/NXEntityManager.cpp b/cad/plugins/NanoVision-1/src/Interface/NXEntityManager.cpp
index f81e02432..244fd0035 100644
--- a/cad/plugins/NanoVision-1/src/Interface/NXEntityManager.cpp
+++ b/cad/plugins/NanoVision-1/src/Interface/NXEntityManager.cpp
@@ -23,10 +23,10 @@ NXEntityManager::~NXEntityManager() {
* Loads and initializes all the import/export plugins.
*/
void NXEntityManager::loadDataImportExportPlugins(NXProperties* properties) {
-/*
+
int pluginIndex = 0;
std::string msg, pluginFormats;
- std::string pluginKey = "entityManager.importExport.0";
+ std::string pluginKey = "NXEntityManager.importExport.0";
std::string pluginLibrary =
std::string(properties->getProperty(pluginKey + ".plugin"));
@@ -75,12 +75,11 @@ void NXEntityManager::loadDataImportExportPlugins(NXProperties* properties) {
}
pluginIndex++;
pluginKey =
- std::string("entityManager.importExport.") +
+ std::string("NXEntityManager.importExport.") +
NXUtility::itos(pluginIndex);
pluginLibrary =
std::string(properties->getProperty(pluginKey + ".plugin"));
}
- */
}
diff --git a/cad/plugins/NanoVision-1/src/Interface/NXEntityManagerTest.cpp b/cad/plugins/NanoVision-1/src/Interface/NXEntityManagerTest.cpp
index f1e21a0f3..028d4bc2e 100644
--- a/cad/plugins/NanoVision-1/src/Interface/NXEntityManagerTest.cpp
+++ b/cad/plugins/NanoVision-1/src/Interface/NXEntityManagerTest.cpp
@@ -233,16 +233,12 @@ void NXEntityManagerTest::atomTraversalTest2() {
NXMoleculeSet* rootMoleculeSet = entityManager->getRootMoleculeSet();
OBMol* molecule = rootMoleculeSet->newMolecule();
OBAtom* atom = molecule->NewAtom();
- printf("\n>%d\n", atom->GetIdx());
atom = molecule->NewAtom();
- printf("\n>%d\n", atom->GetIdx());
// Traverse the molecule's atoms
OBAtomIterator iter = molecule->BeginAtoms();
- printf("\n>>%d\n", (*iter)->GetIdx());
CPPUNIT_ASSERT((*iter)->GetIdx() == 1);
iter++;
- printf("\n>>%d\n", (*iter)->GetIdx());
CPPUNIT_ASSERT((*iter)->GetIdx() == 2);
iter++;
/*
diff --git a/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.cpp b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.cpp
index 4aeb392f3..f6a14d2d6 100644
--- a/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.cpp
+++ b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.cpp
@@ -22,9 +22,9 @@ HDF5_SimResultsImportExport::~HDF5_SimResultsImportExport() {
/* FUNCTION: importFromFile */
Nanorex::NXCommandResult* HDF5_SimResultsImportExport::importFromFile
- (NXMSInt moleculeSetId, const std::string& filename) {
- nanohive::CommandResult* result = new nanohive::CommandResult();
- result->setResult(nanohive::NH_CMD_SUCCESS);
+ (Nanorex::NXMSInt moleculeSetId, const std::string& filename) {
+ Nanorex::NXCommandResult* result = new Nanorex::NXCommandResult();
+ result->setResult(Nanorex::NX_CMD_SUCCESS);
string message = "Reading: ";
message.append(filename);
@@ -37,9 +37,9 @@ Nanorex::NXCommandResult* HDF5_SimResultsImportExport::importFromFile
/* FUNCTION: exportToFile */
Nanorex::NXCommandResult* HDF5_SimResultsImportExport::exportToFile
- (NXMSInt moleculeSetId, const std::string& filename) {
- nanohive::CommandResult* result = new nanohive::CommandResult();
- result->setResult(nanohive::NH_CMD_SUCCESS);
+ (Nanorex::NXMSInt moleculeSetId, const std::string& filename) {
+ Nanorex::NXCommandResult* result = new Nanorex::NXCommandResult();
+ result->setResult(Nanorex::NX_CMD_SUCCESS);
return result;
diff --git a/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.h b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.h
index 0d17fca40..9a1faa3ea 100644
--- a/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.h
+++ b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.h
@@ -4,11 +4,10 @@
#define NX_HDF5_SIMRESULTSIMPORTEXPORT_H
#include "Nanorex/Utility/NXLogger.h"
-//#include "NanoHiveUtil/Utility.h"
-//#include "NanoHiveUtil/Geometry.h"
+#include "Nanorex/Utility/NXCommandResult.h"
#include "Nanorex/Interface/NXNumbers.h"
+#include "Nanorex/Interface/NXNanoVisionResultCodes.h"
#include "Nanorex/Interface/NXEntityManager.h"
-//#include "NanoHiveInterface/NH_Commands.h"
#include "Nanorex/Interface/NXDataImportExportPlugin.h"
#ifdef WIN32
@@ -50,9 +49,9 @@ class HDF5_SimResultsImportExport : public Nanorex::NXDataImportExportPlugin {
~HDF5_SimResultsImportExport();
// NXDataImportExportPlugin implementation
- Nanorex::NXCommandResult* importFromFile(NXMSInt moleculeSetId,
+ Nanorex::NXCommandResult* importFromFile(Nanorex::NXMSInt moleculeSetId,
const std::string& filename);
- Nanorex::NXCommandResult* exportToFile(NXMSInt moleculeSetId,
+ Nanorex::NXCommandResult* exportToFile(Nanorex::NXMSInt moleculeSetId,
const std::string& filename);
private:
diff --git a/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.pro b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.pro
new file mode 100644
index 000000000..327dfd345
--- /dev/null
+++ b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExport.pro
@@ -0,0 +1,15 @@
+SOURCES += HDF5_SimResultsImportExport.cpp
+HEADERS += HDF5_SimResultsImportExport.h
+INCLUDEPATH += ../../../include \
+/usr/local/include/openbabel-2.0
+TEMPLATE = lib
+
+CONFIG += dll
+
+LIBS += -L../../../lib \
+-lNanorexUtility \
+-lNanorexInterface
+TARGETDEPS += ../../../lib/libNanorexUtility.so \
+../../../lib/libNanorexInterface.so
+DESTDIR = ../../../lib
+
diff --git a/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.cpp b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.cpp
new file mode 100644
index 000000000..56e579d53
--- /dev/null
+++ b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.cpp
@@ -0,0 +1,36 @@
+// Copyright 2008 Nanorex, Inc. See LICENSE file for details.
+
+#include "HDF5_SimResultsImportExportTest.h"
+
+
+CPPUNIT_TEST_SUITE_REGISTRATION(HDF5_SimResultsImportExportTest);
+CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(HDF5_SimResultsImportExportTest, "HDF5_SimResultsImportExportTestSuite");
+
+
+/* FUNCTION: setUp */
+void HDF5_SimResultsImportExportTest::setUp() {
+ logger = new NXLogger();
+ logger->addHandler(new NXConsoleLogHandler(NXLogLevel_Info));
+ entityManager = new NXEntityManager();
+}
+
+
+/* FUNCTION: tearDown */
+void HDF5_SimResultsImportExportTest::tearDown() {
+ delete entityManager;
+ delete logger;
+}
+
+
+/* FUNCTION: basicTest */
+void HDF5_SimResultsImportExportTest::basicTest() {
+ NXProperties* properties = new NXProperties();
+ properties->setProperty("NXEntityManager.importExport.0.plugin",
+ "../../../lib/libHDF5_SimResultsImportExport");
+ properties->setProperty("NXEntityManager.importExport.0.importFormats",
+ "nh5");
+ properties->setProperty("NXEntityManager.importExport.0.exportFormats",
+ "nh5");
+ entityManager->loadDataImportExportPlugins(properties);
+ CPPUNIT_ASSERT(true);
+}
diff --git a/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.h b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.h
new file mode 100644
index 000000000..11a51e639
--- /dev/null
+++ b/cad/plugins/NanoVision-1/src/Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.h
@@ -0,0 +1,31 @@
+// Copyright 2008 Nanorex, Inc. See LICENSE file for details.
+
+#ifndef HDF5_SIMRESULTSIMPORTEXPORT_H
+#define HDF5_SIMRESULTSIMPORTEXPORT_H
+
+#include <cppunit/extensions/HelperMacros.h>
+
+#include "Nanorex/Interface/NXEntityManager.h"
+
+using namespace Nanorex;
+
+
+/* CLASS: HDF5_SimResultsImportExportTest */
+class HDF5_SimResultsImportExportTest : public CPPUNIT_NS::TestFixture {
+
+ CPPUNIT_TEST_SUITE(HDF5_SimResultsImportExportTest);
+ CPPUNIT_TEST(basicTest);
+ CPPUNIT_TEST_SUITE_END();
+
+ public:
+ void setUp();
+ void tearDown();
+
+ void basicTest();
+
+ private:
+ NXEntityManager* entityManager;
+ NXLogger* logger;
+};
+
+#endif
diff --git a/cad/plugins/NanoVision-1/src/Testing/CppUnit/CppUnit.pro b/cad/plugins/NanoVision-1/src/Testing/CppUnit/CppUnit.pro
index cfda26135..38b58f68c 100644
--- a/cad/plugins/NanoVision-1/src/Testing/CppUnit/CppUnit.pro
+++ b/cad/plugins/NanoVision-1/src/Testing/CppUnit/CppUnit.pro
@@ -1,50 +1,34 @@
SOURCES += CppUnit.cpp \
- ../../Interface/NXNumbers.cpp \
- ../../Interface/NXNumbersTest.cpp \
- ../../Interface/NXEntityManager.cpp \
../../Interface/NXEntityManagerTest.cpp \
- ../../Interface/NXMoleculeSet.cpp \
- ../../Utility/NXLoggerTest.cpp \
- ../../Utility/NXCommandResult.cpp \
+ ../../Interface/NXNumbersTest.cpp \
../../Utility/NXCommandResultTest.cpp \
- ../../Utility/NXStringTokenizer.cpp \
+ ../../Utility/NXLoggerTest.cpp \
../../Utility/NXStringTokenizerTest.cpp \
- ../../Utility/NXUtility.cpp \
../../Utility/NXUtilityTest.cpp \
- ../../Utility/NXPlugin.cpp \
- ../../Utility/NXPluginGroup.cpp \
- ../../Utility/NXProperties.cpp \
- ../../Interface/NXDataImportExportPlugin.cpp \
- ../../Utility/NXLogger.cpp \
- ../../Interface/NXMoleculeData.cpp
+ ../../Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.cpp
TEMPLATE = app
TARGET = CppUnit
LIBS += -lcppunit \
- -lopenbabel
+ -lopenbabel \
+ -L../../../lib \
+ -lNanorexUtility \
+ -lNanorexInterface \
+ -lHDF5_SimResultsImportExport
-DESTDIR = /home/bh/11Nano/SVN-D/cad/plugins/NanoVision-1/src/Testing/CppUnit
-HEADERS += ../../Interface/NXNumbersTest.h \
-../../../include/Nanorex/Interface/NXNumbers.h \
- ../../../include/Nanorex/Interface/NXEntityManager.h \
- ../../../include/Nanorex/Interface/NXMoleculeSet.h \
- ../../../include/Nanorex/Utility/NXLogger.h \
- ../../Interface/NXEntityManagerTest.h \
- ../../Utility/NXLoggerTest.h \
- ../../Utility/NXCommandResultTest.h \
- ../../../include/Nanorex/Interface/NXNanoVisionResultCodes.h \
- ../../../include/Nanorex/Utility/NXStringTokenizer.h \
- ../../Utility/NXStringTokenizerTest.h \
- ../../Utility/NXUtilityTest.h \
- ../../../include/Nanorex/Utility/NXUtility.h \
- ../../../include/Nanorex/Utility/NXPluginGroup.h \
- ../../../include/Nanorex/Utility/NXPlugin.h \
- ../../../include/Nanorex/Utility/NXProperties.h \
- ../../../include/Nanorex/Interface/NXDataImportExportPlugin.h \
- ../../../include/Nanorex/Interface/NXMoleculeData.h
INCLUDEPATH += ../../../include \
/usr/local/include/openbabel-2.0/
+HEADERS += ../../Utility/NXCommandResultTest.h \
+../../Utility/NXLoggerTest.h \
+../../Utility/NXStringTokenizerTest.h \
+../../Utility/NXUtilityTest.h \
+../../Interface/NXEntityManagerTest.h \
+../../Interface/NXNumbersTest.h \
+../../Plugins/HDF5_SimResultsImportExport/HDF5_SimResultsImportExportTest.h
+TARGETDEPS += ../../../lib/libNanorexUtility.so \
+../../../lib/libNanorexInterface.so \
+../../../lib/libHDF5_SimResultsImportExport.so
diff --git a/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.kdevelop b/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.kdevelop
index 33f2b4b5d..de656e5a2 100644
--- a/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.kdevelop
+++ b/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.kdevelop
@@ -147,12 +147,15 @@
<directoryradio>executable</directoryradio>
<runarguments>
<CppUnit></CppUnit>
+ <HDF5_SimResultsImportExport/>
</runarguments>
<cwd>
<CppUnit>/home/bh/11Nano/SVN-D/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop</CppUnit>
+ <HDF5_SimResultsImportExport>/home/bh/11Nano/SVN-D/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop</HDF5_SimResultsImportExport>
</cwd>
<debugarguments>
<CppUnit></CppUnit>
+ <HDF5_SimResultsImportExport/>
</debugarguments>
<globaldebugarguments></globaldebugarguments>
<globalcwd>/home/bh/11Nano/SVN-D/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop</globalcwd>
@@ -162,7 +165,7 @@
<autoinstall>false</autoinstall>
<autokdesu>false</autokdesu>
<envvars>
- <envvar value="/usr/local/lib" name="LD_LIBRARY_PATH" />
+ <envvar value="/usr/local/lib:../../../lib" name="LD_LIBRARY_PATH" />
</envvars>
</run>
<general>
diff --git a/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.pro b/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.pro
index 3869f45cc..f88233658 100644
--- a/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.pro
+++ b/cad/plugins/NanoVision-1/src/Testing/CppUnit/KDevelop/cppunit.pro
@@ -1,5 +1,10 @@
-SUBDIRS += ../../CppUnit
+SUBDIRS += ../../CppUnit \
+ ../../../Plugins/HDF5_SimResultsImportExport \
+ ../../../Interface \
+ ../../..//Utility
TEMPLATE = subdirs
CONFIG += warn_on \
qt \
- thread
+ thread
+
+
diff --git a/cad/plugins/NanoVision-1/src/Utility/NXPluginGroup.cpp b/cad/plugins/NanoVision-1/src/Utility/NXPluginGroup.cpp
index 12347576d..7fe6a4ca2 100644
--- a/cad/plugins/NanoVision-1/src/Utility/NXPluginGroup.cpp
+++ b/cad/plugins/NanoVision-1/src/Utility/NXPluginGroup.cpp
@@ -82,11 +82,11 @@ bool NXPluginGroup::load(const char* libraryFilename) {
if (!image) {
std::string message = "Failed attempt to load " + libraryFilenameStr;
message += ": " + std::string(loadError);
- NXLOG_WARNING("PluginGroup", message);
+ NXLOG_WARNING("NXPluginGroup", message);
success = false;
} else {
- NXLOG_INFO("PluginGroup", "Loaded " + libraryFilenameStr);
+ NXLOG_INFO("NXPluginGroup", "Loaded " + libraryFilenameStr);
imageMap[libraryFilenameStr] = image;
}
return success;
diff --git a/cad/plugins/NanoVision-1/src/Utility/Utility.pro b/cad/plugins/NanoVision-1/src/Utility/Utility.pro
new file mode 100644
index 000000000..4de154837
--- /dev/null
+++ b/cad/plugins/NanoVision-1/src/Utility/Utility.pro
@@ -0,0 +1,33 @@
+SOURCES += NXCommandResult.cpp \
+ NXLogger.cpp \
+ NXPlugin.cpp \
+ NXPluginGroup.cpp \
+ NXProperties.cpp \
+ NXStringTokenizer.cpp \
+ NXUtility.cpp
+
+
+
+
+
+
+
+HEADERS += ../../include/Nanorex/Utility/NXLogger.h \
+../../include/Nanorex/Utility/NXPluginGroup.h \
+../../include/Nanorex/Utility/NXPlugin.h \
+../../include/Nanorex/Utility/NXProperties.h \
+../../include/Nanorex/Utility/NXStringTokenizer.h \
+../../include/Nanorex/Utility/NXUtility.h \
+ ../../include/Nanorex/Utility/NXCommandResult.h
+TEMPLATE = lib
+
+CONFIG += dll
+
+
+
+INCLUDEPATH += ../../include
+
+DESTDIR = ../../lib
+
+TARGET = NanorexUtility
+