First import Dwell buttons
authorThomas Pietrzak <thomas.pietrzak@gmail.com>
Wed, 15 Feb 2012 13:39:26 +0000 (13:39 +0000)
committerThomas Pietrzak <thomas.pietrzak@gmail.com>
Wed, 15 Feb 2012 13:39:26 +0000 (13:39 +0000)
git-svn-id: svn+ssh://thomaspietrzak.com/var/svn/rep@45 47cf9a05-e0a8-4ed5-9e9b-101a649bc004

TactonLibrary.suo
TactonPlayer/TactonPlayer.cpp
TactonPlayer/TactonPlayer.vcxproj
TactonPlayer/TactonPlayer.vcxproj.filters

index 70e4b0443ee2254c7c108cfffc975293eca39965..592721446cd606d7c54e95e53ac64722c231c1a2 100644 (file)
Binary files a/TactonLibrary.suo and b/TactonLibrary.suo differ
index 3e8fa2c7dcc8f03b4feafde5d8078a3e92bb0663..35eab85be01eb67c557204d2322384eb1ae12dc0 100644 (file)
@@ -5,8 +5,14 @@
 #include <stdexcept>\r
 \r
 TactonPlayer::TactonPlayer(const char *port)\r
-:_comport(new SerialWindows(port))\r
 {\r
+       try\r
+       {\r
+               _comport = new SerialWindows(port);\r
+       }\r
+       catch(...)\r
+       {\r
+       }\r
 }\r
 \r
 TactonPlayer::~TactonPlayer()\r
@@ -16,16 +22,21 @@ TactonPlayer::~TactonPlayer()
 \r
 void TactonPlayer::start()\r
 {\r
-       _comport->WriteData("S", 1);\r
+       if (_comport)\r
+               _comport->WriteData("S", 1);\r
 }\r
 \r
 void TactonPlayer::stop()\r
 {\r
-       _comport->WriteData("Q", 1);\r
+       if (_comport)\r
+               _comport->WriteData("Q", 1);\r
 }\r
 \r
 void TactonPlayer::regist(const Tacton &t)\r
 {\r
+       if (!_comport)\r
+               return;\r
+\r
        unsigned int nbframes = t.getNbFrames();\r
        unsigned char *buffer = new unsigned char[3 + 6 * nbframes];\r
        buffer[0] = 'N';\r
@@ -38,6 +49,8 @@ void TactonPlayer::regist(const Tacton &t)
 \r
 unsigned int TactonPlayer::registFile(char *filename)\r
 {\r
+       if (!_comport)\r
+               return -1;\r
        unsigned int nb = 0;\r
 \r
        //load icons\r
@@ -66,6 +79,8 @@ unsigned int TactonPlayer::registFile(char *filename)
 \r
 void TactonPlayer::play(unsigned char index)\r
 {\r
+       if (!_comport)\r
+               return;\r
        unsigned char buffer[2];\r
        buffer[0] = 'T';\r
        buffer[1] = index;\r
@@ -74,6 +89,9 @@ void TactonPlayer::play(unsigned char index)
 \r
 void TactonPlayer::play(const Tacton &t)\r
 {\r
+       if (!_comport)\r
+               return;\r
+\r
        unsigned int nbframes = t.getNbFrames();\r
        unsigned char *buffer = new unsigned char[3 + 6 * nbframes];\r
        buffer[0] = 'V';\r
@@ -86,6 +104,9 @@ void TactonPlayer::play(const Tacton &t)
 \r
 void TactonPlayer::schedule(unsigned char index, unsigned long timestamp)\r
 {\r
+       if (!_comport)\r
+               return;\r
+\r
        unsigned char buffer[6];\r
        buffer[0] = 'P';\r
        buffer[1] = index;\r
@@ -98,5 +119,6 @@ void TactonPlayer::schedule(unsigned char index, unsigned long timestamp)
 \r
 void TactonPlayer::debugRead(char *res, int nb) const\r
 {\r
-       _comport->ReadData(res, nb);\r
+       if (_comport)\r
+               _comport->ReadData(res, nb);\r
 }\r
index 770df4b6ea53367bafdf8b93804f136a9f76ccf5..790227485bf0e9f08f6e685134f47741327e822a 100644 (file)
       <Optimization>Disabled</Optimization>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;TACTONPLAYER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <DisableSpecificWarnings>4996</DisableSpecificWarnings>\r
+      <AdditionalIncludeDirectories>ArduinoSerial</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
+      <AdditionalDependencies>arduinoserial.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
     <PostBuildEvent>\r
       <Command>copy /y $(CodeAnalysisInputAssembly) C:\Windows\system\\r
@@ -72,12 +74,14 @@ copy /y $(OutDir)$(ProjectName).lib $(VSInstallDir)VC\lib</Command>
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;TACTONPLAYER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <DisableSpecificWarnings>4996</DisableSpecificWarnings>\r
+      <AdditionalIncludeDirectories>ArduinoSerial</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <OptimizeReferences>true</OptimizeReferences>\r
+      <AdditionalDependencies>arduinoserial.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
     <PostBuildEvent>\r
       <Command>REM copy /y $(CodeAnalysisInputAssembly) C:\Windows\system\\r
@@ -86,14 +90,10 @@ REM copy /y $(OutDir)$(ProjectName).lib $(VSInstallDir)VC\lib</Command>
     </PostBuildEvent>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
-    <ClInclude Include="Serial.hpp" />\r
-    <ClInclude Include="SerialWindows.hpp" />\r
     <ClInclude Include="Tacton.hpp" />\r
     <ClInclude Include="TactonPlayer.hpp" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ClCompile Include="Serial.cpp" />\r
-    <ClCompile Include="SerialWindows.cpp" />\r
     <ClCompile Include="Tacton.cpp" />\r
     <ClCompile Include="TactonPlayer.cpp" />\r
   </ItemGroup>\r
index 8f2e3f73b9402459a49ef29957b16d891096ed81..13e88f8ca1c7b1b03f8f48d3650213e878281509 100644 (file)
     </Filter>\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ClInclude Include="SerialWindows.hpp">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="Serial.hpp">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
     <ClInclude Include="Tacton.hpp">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
     <ClCompile Include="Tacton.cpp">\r
       <Filter>Source Files</Filter>\r
     </ClCompile>\r
-    <ClCompile Include="Serial.cpp">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="SerialWindows.cpp">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
     <ClCompile Include="TactonPlayer.cpp">\r
       <Filter>Source Files</Filter>\r
     </ClCompile>\r