[xiph-commits] r7400 - in trunk/oggdsf:
illiminable at dactyl.lonelymoon.com
illiminable
Wed Jul 28 12:08:29 PDT 2004
sln/libOOOggWithToolsAndTests src/lib/core/ogg/libOOOgg
src/lib/helper src/lib/helper/libilliCore src/tools/OOOggDump
src/tools/OOOggStat
Message-ID: <20040728190829.D93059AAAB at dactyl.lonelymoon.com>
Author: illiminable
Date: Wed Jul 28 12:08:29 2004
New Revision: 7400
Added:
trunk/oggdsf/src/lib/helper/libilliCore/
trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.cpp
trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.h
trunk/oggdsf/src/lib/helper/libilliCore/OggMath.cpp
trunk/oggdsf/src/lib/helper/libilliCore/OggMath.h
trunk/oggdsf/src/lib/helper/libilliCore/ReadMe.txt
trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.cpp
trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.h
trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.cpp
trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.h
trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.cpp
trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.h
trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.cpp
trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.h
trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.vcproj
trunk/oggdsf/src/lib/helper/libilliCore/stdafx.cpp
trunk/oggdsf/src/lib/helper/libilliCore/stdafx.h
Removed:
trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.h
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.h
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.h
trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.h
Modified:
trunk/oggdsf/sln/libOOOggWithToolsAndTests/libOOOggWithToolsAndTests.sln
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.h
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.h
trunk/oggdsf/src/lib/core/ogg/libOOOgg/StampedOggPacket.h
trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj
trunk/oggdsf/src/tools/OOOggDump/OOOggDump.cpp
trunk/oggdsf/src/tools/OOOggStat/OOOggStat.cpp
Log:
* Moving some files around.
Modified: trunk/oggdsf/sln/libOOOggWithToolsAndTests/libOOOggWithToolsAndTests.sln
===================================================================
--- trunk/oggdsf/sln/libOOOggWithToolsAndTests/libOOOggWithToolsAndTests.sln 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/sln/libOOOggWithToolsAndTests/libOOOggWithToolsAndTests.sln 2004-07-28 19:08:26 UTC (rev 7400)
@@ -27,6 +27,10 @@
{223ACC19-608E-4E1B-A054-067F0CACB272} = {223ACC19-608E-4E1B-A054-067F0CACB272}
EndProjectSection
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libilliCore", "..\..\src\lib\helper\libilliCore\libilliCore.vcproj", "{2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
@@ -55,6 +59,10 @@
{191217F4-1F30-426D-A2AB-A9E613D9A401}.Debug.Build.0 = Debug|Win32
{191217F4-1F30-426D-A2AB-A9E613D9A401}.Release.ActiveCfg = Release|Win32
{191217F4-1F30-426D-A2AB-A9E613D9A401}.Release.Build.0 = Release|Win32
+ {2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}.Debug.ActiveCfg = Debug|Win32
+ {2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}.Debug.Build.0 = Debug|Win32
+ {2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}.Release.ActiveCfg = Release|Win32
+ {2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,69 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#include "StdAfx.h"
-#include "flacmath.h"
-
-FLACMath::FLACMath(void)
-{
-}
-
-FLACMath::~FLACMath(void)
-{
-}
-
-unsigned long FLACMath::charArrToULong(unsigned char* inCharArray)
-{
- //Turns the next four bytes from the pointer in a long MSB (most sig. byte first/leftmost)
- unsigned long locVal = 0;
- for (int i = 0; i < 4; i++) {
- locVal <<= 8;
- locVal += inCharArray[i];
- }
- return locVal;
-}
-void FLACMath::ULongToCharArr(unsigned long inLong, unsigned char* outCharArray)
-{
- //Writes a long MSB (Most sig. byte first/leftmost) out to the char arr
- unsigned long locLong = inLong;
- outCharArray[0] = (unsigned char) (inLong >> 24);
- outCharArray[1] = (unsigned char) ((inLong << 8) >> 24);
- outCharArray[2] = (unsigned char) ((inLong << 16) >> 24);
- outCharArray[3] = (unsigned char) ((inLong << 24) >> 24);
-
-}
-
-unsigned short FLACMath::charArrToUShort(unsigned char* inCharArray) {
- unsigned short retShort = inCharArray[0];
- retShort = (retShort << 8) + inCharArray[1];
- return retShort;
-
-}
\ No newline at end of file
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/FLACMath.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,43 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#pragma once
-
-class LIBOOOGG_API FLACMath
-{
-public:
- FLACMath(void);
- ~FLACMath(void);
- static unsigned long charArrToULong(unsigned char* inCharArray);
- static void ULongToCharArr(unsigned long inLong, unsigned char* outCharArray);
- static unsigned short charArrToUShort(unsigned char* inCharArray);
-
-};
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -101,8 +101,8 @@
OggDataBuffer::eDispatchResult OggDataBuffer::dispatch(OggPage* inOggPage) {
//TODO::: Who owns this pointer inOggPage ?
debugLog<<"Dispatching page..."<<endl<<endl;
- bool locIsOK;
+
//Fire off the oggpage to whoever is registered to get it
if (mVirtualCallback != NULL) {
@@ -117,38 +117,12 @@
} else {
return DISPATCH_FALSE;
}
- } else (
- return DISPATCH_NO_CALLBACK;
}
- //for (unsigned long i = 0; i < mAlwaysCallList.size(); i++) {
- // mAlwaysCallList[i]->dispatch(inOggPage);
- //}
-
- ////Fire off the oggpage to those that registered for a particular seriao number.
- ////CHECK::: Does this actually even check for serial number matches ??
- //for (unsigned long i = 0; i < mSerialNoCallList.size(); i++) {
- // mSerialNoCallList[i]->dispatch(inOggPage);
- //}
-
- ////The above callbacks will only call back to global functions or static members. They won't match the callback
- //// function specification if they are bound memebr functions
- //
- ////Any class that implements the IOggCallback interface can pass a point to themselves into this class
- //// and then a call back can be delivered to a function in a specific instance of an object.
- //for (unsigned long i = 0; i < mVirtualCallbackList.size(); i++) {
- // locIsOK = mVirtualCallbackList[i]->acceptOggPage(inOggPage);
- // if (!locIsOK) {
- // debugLog<<"Dispatch : **************** acceptOggPage returned false."<<endl;
- // //Somethings happened deeper in the stack like we are being asked to stop.
- // return false;
- // }
- //}
-
//Delete the page... if the called functions wanted a copy they should have taken one for themsselves.
delete inOggPage;
pendingPage = NULL;
- return true;
+ return DISPATCH_NO_CALLBACK;
}
OggDataBuffer::eFeedResult OggDataBuffer::feed(const unsigned char* inData, unsigned long inNumBytes) {
@@ -350,12 +324,12 @@
debugLog<<"ProcessDataSegment : num bytes needed = "<<mNumBytesNeeded<<endl;
//Dispatch the finished pagbve
- bool locRet = dispatch(pendingPage);
+ eDispatchResult locRet = dispatch(pendingPage);
- if (locRet == true) {
+ if (locRet == DISPATCH_OK) {
debugLog<<"ProcessDataSegment : Transition to AWAITING_BASE_HEADER"<<endl;
mState = AWAITING_BASE_HEADER;
- return PROCESS_OK;;
+ return PROCESS_OK;
} else {
debugLog<<"ProcessDataSegment : Dispatch failed."<<endl;
return PROCESS_DISPATCH_FAILED;
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggDataBuffer.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -42,11 +42,9 @@
//
using namespace std;
-class LIBOOOGG_API OggDataBuffer
-
-
-{
+class LIBOOOGG_API OggDataBuffer {
public:
+ //Public Constants and enums
enum eState {
EOS,
AWAITING_BASE_HEADER = 32,
@@ -65,7 +63,6 @@
DISPATCH_OK,
DISPATCH_NO_CALLBACK = 512,
DISPATCH_FALSE
-
};
enum eProcessResult {
@@ -82,57 +79,50 @@
(OggPageHeader::MAX_NUM_SEGMENTS * OggPageHeader::MAX_SEGMENT_SIZE) + //Page Data
(OggPageHeader::SEGMENT_WIDTH * OggPageHeader::MAX_NUM_SEGMENTS); //Segment table
-
- OggDataBuffer(void);
//Debug only
OggDataBuffer::OggDataBuffer(bool x);
+ void debugWrite(string inString);
//
+
+ //Constructors
+ OggDataBuffer(void);
~OggDataBuffer(void);
+ //Setting callbacks
bool registerStaticCallback(fPageCallback inPageCallback);
bool registerVirtualCallback(IOggCallback* inPageCallback);
- //bool registerSerialNo(SerialNoRego* inSerialRego);
+ //Buffer Control
+ eFeedResult feed(const unsigned char* inData, unsigned long inNumBytes);
void clearData();
- eFeedResult feed(const unsigned char* inData, unsigned long inNumBytes);
-
+ //Buffer state
unsigned long numBytesAvail();
-
eState state();
- //Debug only
- void debugWrite(string inString);
- //
-
protected:
-
- //stringstream mStream;
+ //FIFO Buffer
IFIFOBuffer* mBuffer;
- eState mState;
- eProcessResult processBuffer();
- virtual eDispatchResult dispatch(OggPage* inOggPage);
-
+ //Buffer State
unsigned long mNumBytesNeeded;
-
+ eState mState;
OggPage* pendingPage;
+ //Callback pointers
IOggCallback* mVirtualCallback;
fPageCallback mStaticCallback;
-
- //vector<OggCallbackRego*> mAlwaysCallList;
- //vector<SerialNoRego*> mSerialNoCallList;
- //vector<IOggCallback*> mVirtualCallbackList;
+ //Internal processing
+ eProcessResult processBuffer();
+ eProcessResult processBaseHeader();
+ eProcessResult processSegTable();
+ eProcessResult processDataSegment();
+ //Internal dispatch
+ virtual eDispatchResult dispatch(OggPage* inOggPage);
+
//DEBUG
fstream debugLog;
//
-
-private:
-
- eProcessResult processBaseHeader();
- eProcessResult processSegTable();
- eProcessResult processDataSegment();
};
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,73 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#include "StdAfx.h"
-#include "oggint64.h"
-
-OggInt64::OggInt64(void)
-{
- mData = 0;
-}
-
-OggInt64::~OggInt64(void)
-{
-}
-OggInt64* OggInt64::clone() {
- OggInt64* retVal = new OggInt64;
- retVal->mData = mData;
- return retVal;
-
-}
-void OggInt64::rawData(unsigned char* outData) {
- for (unsigned char i = 0; i < 8; i++) {
- outData[i] = (unsigned char)((mData << ((7 - i) * 8)) >> 56);
- }
-}
-void OggInt64::setData(unsigned char* inData)
-{
- __int64 locData = 0;
-
- for (int i = 7; i >= 0; i--) {
- locData <<= 8;
- locData += inData[i];
- }
- mData = locData;
-}
-
-__int64 OggInt64::value()
-{
- return mData;
-
-}
-
-void OggInt64::setValue(__int64 inValue) {
- mData = inValue;
-}
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggInt64.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,49 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#pragma once
-
-class LIBOOOGG_API OggInt64
-{
-public:
- OggInt64(void);
- ~OggInt64(void);
- OggInt64* clone();
-
- void rawData(unsigned char* outData);
- void setData(unsigned char* inData);
- __int64 value();
- void setValue(__int64 inValue);
-
-private:
- __int64 mData;
-
-};
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,79 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#include "StdAfx.h"
-#include ".\oggmath.h"
-
-OggMath::OggMath(void)
-{
-}
-
-OggMath::~OggMath(void)
-{
-}
-
-unsigned long OggMath::charArrToULong(const unsigned char* inCharArray)
-{
- //Turns the next four bytes from the pointer in a long LSB (least sig. byte first/leftmost)
- unsigned long locVal = 0;
- for (int i = 3; i >= 0; i--) {
- locVal <<= 8;
- locVal += inCharArray[i];
- }
- return locVal;
-}
-void OggMath::ULongToCharArr(unsigned long inLong, unsigned char* outCharArray)
-{
- //Writes a long LSB (least sig. byte first/leftmost) out to the char arr
-
- outCharArray[3] = (unsigned char) (inLong >> 24);
- outCharArray[2] = (unsigned char) ((inLong << 8) >> 24);
- outCharArray[1] = (unsigned char) ((inLong << 16) >> 24);
- outCharArray[0] = (unsigned char) ((inLong << 24) >> 24);
-
-}
-
-__int64 OggMath::CharArrToInt64(const unsigned char* inCharArray) {
- __int64 locData = 0;
-
- for (int i = 7; i >= 0; i--) {
- locData <<= 8;
- locData += inCharArray[i];
- }
- return locData;
-}
-
-void OggMath::Int64ToCharArr(__int64 inInt64, unsigned char* outCharArray) {
- for (unsigned char i = 0; i < 8; i++) {
- //This way sux !
- outCharArray[i] = (unsigned char)((inInt64 << ((7 - i) * 8)) >> 56);
- }
-}
\ No newline at end of file
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMath.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,46 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#pragma once
-
-class LIBOOOGG_API OggMath
-{
-public:
- OggMath(void);
- ~OggMath(void);
- static unsigned long charArrToULong(const unsigned char* inCharArray);
- static void ULongToCharArr(unsigned long inLong, unsigned char* outCharArray);
- static __int64 CharArrToInt64(const unsigned char* inCharArray);
- static void Int64ToCharArr(__int64 inInt64, unsigned char* outCharArray);
-
-
-
-};
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -121,8 +121,6 @@
return retStr;
}
-
-
string OggPacket::padField(string inString, unsigned long inPadWidth, unsigned char inPadChar) {
//NOTE::: Need check for string being bigger than pad space
string retStr = "";
@@ -144,8 +142,6 @@
string retStr = padField(" ", locPadding, ' ');
-
-
//Loop through the characters
for (unsigned long i = 0; i < inNumChars; i++) {
@@ -166,7 +162,7 @@
-unsigned long OggPacket::packetSize() {
+unsigned long OggPacket::packetSize() const {
return mPacketSize;
}
@@ -175,7 +171,7 @@
}
-bool OggPacket::isComplete() {
+bool OggPacket::isComplete() const {
return mIsComplete;
}
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacket.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -37,33 +37,37 @@
class LIBOOOGG_API OggPacket
{
public:
+ //Constructors
OggPacket(void);
OggPacket(unsigned char* inPackData, unsigned long inPacketSize, bool inIsComplete);
virtual ~OggPacket(void);
+ virtual OggPacket* clone();
static const unsigned long HEX_DUMP_LINE_LENGTH = 16;
-
-
- virtual OggPacket* clone();
- unsigned long packetSize();
+ //Packet accessors
+ unsigned long packetSize() const;
unsigned char* packetData();
- bool isComplete();
+ bool isComplete() const;
+ //Packet Mutators
void setIsComplete (bool inIsComplete );
void setPacketSize (unsigned long inPacketSize );
void setPacketData (unsigned char* inPacketData );
+ //Merge function
virtual void merge(OggPacket* inMorePacket);
+
+ //TODO::: Should this be here ?
string toPackDumpString();
protected:
+ //Packet member data
unsigned long mPacketSize;
unsigned char* mPacketData;
bool mIsComplete;
-
-
+ //TODO::Should these be here ?
string OggPacket::dumpNCharsToString(unsigned char* inStartPoint, unsigned long inNumChars) ;
string OggPacket::padField(string inString, unsigned long inPadWidth, unsigned char inPadChar);
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/StampedOggPacket.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/StampedOggPacket.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/StampedOggPacket.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -36,27 +36,33 @@
: public OggPacket
{
public:
+ //Constructors
StampedOggPacket(void);
- //StampedOggPacket(unsigned char* inPackData, unsigned long inPacketSize, bool inIsComplete);
StampedOggPacket(unsigned char* inPackData, unsigned long inPacketSize, bool inIsComplete, __int64 inStartTime, __int64 inEndTime, unsigned short inStampType);
virtual ~StampedOggPacket(void);
+ virtual OggPacket* clone();
+ //Public Constants and Enums
enum eStampType {
NONE = 0,
OGG_END_ONLY = 1,
OGG_BOTH = 2,
DIRECTSHOW = 3
};
+ //TODO::: should not be global.
unsigned short mStampType;
- virtual OggPacket* clone();
-
- virtual void merge(StampedOggPacket* inMorePacket);
+
+ //Time stamp access
__int64 startTime();
__int64 endTime();
void setStartTime(__int64 inStartTime);
void setEndTime(__int64 inEndTime);
void StampedOggPacket::setTimeStamp(__int64 inStartTime, __int64 inEndTime, StampedOggPacket::eStampType inStampType);
+
+ //Merge function
+ virtual void merge(StampedOggPacket* inMorePacket);
+
protected:
__int64 mStartTime;
__int64 mEndTime;
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,124 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#include "StdAfx.h"
-#include ".\stringhelper.h"
-
-StringHelper::StringHelper(void)
-{
-}
-
-StringHelper::~StringHelper(void)
-{
-}
-
-wstring StringHelper::toWStr(string inString) {
- wstring retVal;
-
- //LPCWSTR retPtr = new wchar_t[retVal.length() + 1];
- for (std::string::const_iterator i = inString.begin(); i != inString.end(); i++) {
- retVal.append(1, *i);
- }
-
-
- return retVal;
-}
-
-
-string StringHelper::toNarrowStr(wstring inString) {
- string retVal;
-
- //LPCWSTR retPtr = new wchar_t[retVal.length() + 1];
- for (std::wstring::const_iterator i = inString.begin(); i != inString.end(); i++) {
- retVal.append(1, *i);
- }
-
-
- return retVal;
-}
-
-string StringHelper::numToString(unsigned __int64 inNum) {
- char locDigit = 0;
- string retStr = "";
- string temp = "";
-
- if (inNum == 0) return "0";
-
- while (inNum > 0) {
- locDigit = ((char)(inNum % 10)) + '0';
- inNum /= 10;
- temp = locDigit;
- temp.append(retStr);
- retStr = temp;
- //retStr.append(1, locDigit);
- }
- return retStr;
-}
-
-unsigned __int64 StringHelper::stringToNum(string inString) {
- int locDigit = 0;
- unsigned __int64 retVal = 0;
- size_t locStrLen = inString.length();
-
- for (unsigned long i = 0; i < locStrLen; i++) {
- locDigit = inString[i] - '0';
- //If it's not in the range 0-9 we bail out
- if ( !((locDigit >= 0) && (locDigit <=9)) ) {
- //FIX::: throw exception
- throw 0;
- }
- retVal *= 10;
- retVal += locDigit;
-
- }
- return retVal;
-
-}
-
-//These should go out to the string helper.
-unsigned char StringHelper::digitToHex(unsigned char inDigit) {
-
- unsigned char locDigit = (inDigit > 9) ? (inDigit - 10) + A_BASE
- : (inDigit) + ZERO_BASE;
- return locDigit;
-
-}
-
-string StringHelper::charToHexString(unsigned char inChar) {
-
- string retStr ="";
- retStr +=digitToHex(inChar / 16);
-
- retStr+= digitToHex(inChar % 16);
- return retStr;
-
-
-}
Deleted: trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/StringHelper.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -1,53 +0,0 @@
-//===========================================================================
-//Copyright (C) 2003, 2004 Zentaro Kavanagh
-//
-//Redistribution and use in source and binary forms, with or without
-//modification, are permitted provided that the following conditions
-//are met:
-//
-//- Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-//- Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-//
-//- Neither the name of Zentaro Kavanagh nor the names of contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
-//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//===========================================================================
-
-#pragma once
-
-#include "dllstuff.h"
-#include <string.h>
-using namespace std;
-class LIBOOOGG_API StringHelper
-{
-public:
- StringHelper(void);
- ~StringHelper(void);
- static const unsigned char A_BASE = 65; //A in ASCII
- static const unsigned char ZERO_BASE = 48;
-
- static unsigned char digitToHex(unsigned char inChar);
- static string charToHexString(unsigned char inChar);
-
- static string numToString(unsigned __int64 inNum);
- static unsigned __int64 stringToNum(string inString);
- static wstring StringHelper::toWStr(string inString);
- static string StringHelper::toNarrowStr(wstring inString);
-
-};
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj 2004-07-28 19:08:26 UTC (rev 7400)
@@ -134,9 +134,6 @@
RelativePath=".\CircularBuffer.cpp">
</File>
<File
- RelativePath="FLACMath.cpp">
- </File>
- <File
RelativePath="libOOOgg.cpp">
</File>
<File
@@ -146,9 +143,6 @@
RelativePath="OggDataBuffer.cpp">
</File>
<File
- RelativePath="OggMath.cpp">
- </File>
- <File
RelativePath="OggMuxStream.cpp">
</File>
<File
@@ -207,9 +201,6 @@
RelativePath="dllstuff.h">
</File>
<File
- RelativePath="FLACMath.h">
- </File>
- <File
RelativePath=".\IFIFOBuffer.h">
</File>
<File
@@ -237,9 +228,6 @@
RelativePath="OggDataBuffer.h">
</File>
<File
- RelativePath="OggMath.h">
- </File>
- <File
RelativePath="OggMuxStream.h">
</File>
<File
Added: trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,69 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#include "StdAfx.h"
+#include "flacmath.h"
+
+FLACMath::FLACMath(void)
+{
+}
+
+FLACMath::~FLACMath(void)
+{
+}
+
+unsigned long FLACMath::charArrToULong(unsigned char* inCharArray)
+{
+ //Turns the next four bytes from the pointer in a long MSB (most sig. byte first/leftmost)
+ unsigned long locVal = 0;
+ for (int i = 0; i < 4; i++) {
+ locVal <<= 8;
+ locVal += inCharArray[i];
+ }
+ return locVal;
+}
+void FLACMath::ULongToCharArr(unsigned long inLong, unsigned char* outCharArray)
+{
+ //Writes a long MSB (Most sig. byte first/leftmost) out to the char arr
+ unsigned long locLong = inLong;
+ outCharArray[0] = (unsigned char) (inLong >> 24);
+ outCharArray[1] = (unsigned char) ((inLong << 8) >> 24);
+ outCharArray[2] = (unsigned char) ((inLong << 16) >> 24);
+ outCharArray[3] = (unsigned char) ((inLong << 24) >> 24);
+
+}
+
+unsigned short FLACMath::charArrToUShort(unsigned char* inCharArray) {
+ unsigned short retShort = inCharArray[0];
+ retShort = (retShort << 8) + inCharArray[1];
+ return retShort;
+
+}
\ No newline at end of file
Added: trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/FLACMath.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,43 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#pragma once
+
+class LIBOOOGG_API FLACMath
+{
+public:
+ FLACMath(void);
+ ~FLACMath(void);
+ static unsigned long charArrToULong(unsigned char* inCharArray);
+ static void ULongToCharArr(unsigned long inLong, unsigned char* outCharArray);
+ static unsigned short charArrToUShort(unsigned char* inCharArray);
+
+};
Added: trunk/oggdsf/src/lib/helper/libilliCore/OggMath.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/OggMath.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/OggMath.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,79 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#include "StdAfx.h"
+#include ".\oggmath.h"
+
+OggMath::OggMath(void)
+{
+}
+
+OggMath::~OggMath(void)
+{
+}
+
+unsigned long OggMath::charArrToULong(const unsigned char* inCharArray)
+{
+ //Turns the next four bytes from the pointer in a long LSB (least sig. byte first/leftmost)
+ unsigned long locVal = 0;
+ for (int i = 3; i >= 0; i--) {
+ locVal <<= 8;
+ locVal += inCharArray[i];
+ }
+ return locVal;
+}
+void OggMath::ULongToCharArr(unsigned long inLong, unsigned char* outCharArray)
+{
+ //Writes a long LSB (least sig. byte first/leftmost) out to the char arr
+
+ outCharArray[3] = (unsigned char) (inLong >> 24);
+ outCharArray[2] = (unsigned char) ((inLong << 8) >> 24);
+ outCharArray[1] = (unsigned char) ((inLong << 16) >> 24);
+ outCharArray[0] = (unsigned char) ((inLong << 24) >> 24);
+
+}
+
+__int64 OggMath::CharArrToInt64(const unsigned char* inCharArray) {
+ __int64 locData = 0;
+
+ for (int i = 7; i >= 0; i--) {
+ locData <<= 8;
+ locData += inCharArray[i];
+ }
+ return locData;
+}
+
+void OggMath::Int64ToCharArr(__int64 inInt64, unsigned char* outCharArray) {
+ for (unsigned char i = 0; i < 8; i++) {
+ //This way sux !
+ outCharArray[i] = (unsigned char)((inInt64 << ((7 - i) * 8)) >> 56);
+ }
+}
\ No newline at end of file
Added: trunk/oggdsf/src/lib/helper/libilliCore/OggMath.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/OggMath.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/OggMath.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,46 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#pragma once
+
+class LIBOOOGG_API OggMath
+{
+public:
+ OggMath(void);
+ ~OggMath(void);
+ static unsigned long charArrToULong(const unsigned char* inCharArray);
+ static void ULongToCharArr(unsigned long inLong, unsigned char* outCharArray);
+ static __int64 CharArrToInt64(const unsigned char* inCharArray);
+ static void Int64ToCharArr(__int64 inInt64, unsigned char* outCharArray);
+
+
+
+};
Added: trunk/oggdsf/src/lib/helper/libilliCore/ReadMe.txt
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/ReadMe.txt 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/ReadMe.txt 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,32 @@
+========================================================================
+ DYNAMIC LINK LIBRARY : libilliCore Project Overview
+========================================================================
+
+AppWizard has created this libilliCore DLL for you.
+This file contains a summary of what you will find in each of the files that
+make up your libilliCore application.
+
+
+libilliCore.vcproj
+ This is the main project file for VC++ projects generated using an Application Wizard.
+ It contains information about the version of Visual C++ that generated the file, and
+ information about the platforms, configurations, and project features selected with the
+ Application Wizard.
+
+libilliCore.cpp
+ This is the main DLL source file.
+
+/////////////////////////////////////////////////////////////////////////////
+Other standard files:
+
+StdAfx.h, StdAfx.cpp
+ These files are used to build a precompiled header (PCH) file
+ named libilliCore.pch and a precompiled types file named StdAfx.obj.
+
+/////////////////////////////////////////////////////////////////////////////
+Other notes:
+
+AppWizard uses "TODO:" comments to indicate parts of the source code you
+should add to or customize.
+
+/////////////////////////////////////////////////////////////////////////////
Added: trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,124 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#include "StdAfx.h"
+#include ".\stringhelper.h"
+
+StringHelper::StringHelper(void)
+{
+}
+
+StringHelper::~StringHelper(void)
+{
+}
+
+wstring StringHelper::toWStr(string inString) {
+ wstring retVal;
+
+ //LPCWSTR retPtr = new wchar_t[retVal.length() + 1];
+ for (std::string::const_iterator i = inString.begin(); i != inString.end(); i++) {
+ retVal.append(1, *i);
+ }
+
+
+ return retVal;
+}
+
+
+string StringHelper::toNarrowStr(wstring inString) {
+ string retVal;
+
+ //LPCWSTR retPtr = new wchar_t[retVal.length() + 1];
+ for (std::wstring::const_iterator i = inString.begin(); i != inString.end(); i++) {
+ retVal.append(1, *i);
+ }
+
+
+ return retVal;
+}
+
+string StringHelper::numToString(unsigned __int64 inNum) {
+ char locDigit = 0;
+ string retStr = "";
+ string temp = "";
+
+ if (inNum == 0) return "0";
+
+ while (inNum > 0) {
+ locDigit = ((char)(inNum % 10)) + '0';
+ inNum /= 10;
+ temp = locDigit;
+ temp.append(retStr);
+ retStr = temp;
+ //retStr.append(1, locDigit);
+ }
+ return retStr;
+}
+
+unsigned __int64 StringHelper::stringToNum(string inString) {
+ int locDigit = 0;
+ unsigned __int64 retVal = 0;
+ size_t locStrLen = inString.length();
+
+ for (unsigned long i = 0; i < locStrLen; i++) {
+ locDigit = inString[i] - '0';
+ //If it's not in the range 0-9 we bail out
+ if ( !((locDigit >= 0) && (locDigit <=9)) ) {
+ //FIX::: throw exception
+ throw 0;
+ }
+ retVal *= 10;
+ retVal += locDigit;
+
+ }
+ return retVal;
+
+}
+
+//These should go out to the string helper.
+unsigned char StringHelper::digitToHex(unsigned char inDigit) {
+
+ unsigned char locDigit = (inDigit > 9) ? (inDigit - 10) + A_BASE
+ : (inDigit) + ZERO_BASE;
+ return locDigit;
+
+}
+
+string StringHelper::charToHexString(unsigned char inChar) {
+
+ string retStr ="";
+ retStr +=digitToHex(inChar / 16);
+
+ retStr+= digitToHex(inChar % 16);
+ return retStr;
+
+
+}
Added: trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/StringHelper.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,53 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#pragma once
+
+#include "dllstuff.h"
+#include <string.h>
+using namespace std;
+class LIBILLICORE_API StringHelper
+{
+public:
+ StringHelper(void);
+ ~StringHelper(void);
+ static const unsigned char A_BASE = 65; //A in ASCII
+ static const unsigned char ZERO_BASE = 48;
+
+ static unsigned char digitToHex(unsigned char inChar);
+ static string charToHexString(unsigned char inChar);
+
+ static string numToString(unsigned __int64 inNum);
+ static unsigned __int64 stringToNum(string inString);
+ static wstring StringHelper::toWStr(string inString);
+ static string StringHelper::toNarrowStr(wstring inString);
+
+};
Added: trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,69 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#include "StdAfx.h"
+#include "iBE_Math.h"
+
+iBE_Math::iBE_Math(void)
+{
+}
+
+iBE_Math::~iBE_Math(void)
+{
+}
+
+unsigned long iBE_Math::charArrToULong(unsigned char* inCharArray)
+{
+ //Turns the next four bytes from the pointer in a long MSB (most sig. byte first/leftmost)
+ unsigned long locVal = 0;
+ for (int i = 0; i < 4; i++) {
+ locVal <<= 8;
+ locVal += inCharArray[i];
+ }
+ return locVal;
+}
+void iBE_Math::ULongToCharArr(unsigned long inLong, unsigned char* outCharArray)
+{
+ //Writes a long MSB (Most sig. byte first/leftmost) out to the char arr
+ unsigned long locLong = inLong;
+ outCharArray[0] = (unsigned char) (inLong >> 24);
+ outCharArray[1] = (unsigned char) ((inLong << 8) >> 24);
+ outCharArray[2] = (unsigned char) ((inLong << 16) >> 24);
+ outCharArray[3] = (unsigned char) ((inLong << 24) >> 24);
+
+}
+
+unsigned short iBE_Math::charArrToUShort(unsigned char* inCharArray) {
+ unsigned short retShort = inCharArray[0];
+ retShort = (retShort << 8) + inCharArray[1];
+ return retShort;
+
+}
\ No newline at end of file
Added: trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/iBE_Math.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,43 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#pragma once
+
+class LIBILLICORE_API iBE_Math
+{
+public:
+ iBE_Math(void);
+ ~iBE_Math(void);
+ static unsigned long charArrToULong(unsigned char* inCharArray);
+ static void ULongToCharArr(unsigned long inLong, unsigned char* outCharArray);
+ static unsigned short charArrToUShort(unsigned char* inCharArray);
+
+};
Added: trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,79 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#include "StdAfx.h"
+#include ".\iLE_Math.h"
+
+iLE_Math::iLE_Math(void)
+{
+}
+
+iLE_Math::~iLE_Math(void)
+{
+}
+
+unsigned long iLE_Math::charArrToULong(const unsigned char* inCharArray)
+{
+ //Turns the next four bytes from the pointer in a long LSB (least sig. byte first/leftmost)
+ unsigned long locVal = 0;
+ for (int i = 3; i >= 0; i--) {
+ locVal <<= 8;
+ locVal += inCharArray[i];
+ }
+ return locVal;
+}
+void iLE_Math::ULongToCharArr(unsigned long inLong, unsigned char* outCharArray)
+{
+ //Writes a long LSB (least sig. byte first/leftmost) out to the char arr
+
+ outCharArray[3] = (unsigned char) (inLong >> 24);
+ outCharArray[2] = (unsigned char) ((inLong << 8) >> 24);
+ outCharArray[1] = (unsigned char) ((inLong << 16) >> 24);
+ outCharArray[0] = (unsigned char) ((inLong << 24) >> 24);
+
+}
+
+__int64 iLE_Math::CharArrToInt64(const unsigned char* inCharArray) {
+ __int64 locData = 0;
+
+ for (int i = 7; i >= 0; i--) {
+ locData <<= 8;
+ locData += inCharArray[i];
+ }
+ return locData;
+}
+
+void iLE_Math::Int64ToCharArr(__int64 inInt64, unsigned char* outCharArray) {
+ for (unsigned char i = 0; i < 8; i++) {
+ //This way sux !
+ outCharArray[i] = (unsigned char)((inInt64 << ((7 - i) * 8)) >> 56);
+ }
+}
\ No newline at end of file
Added: trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/iLE_Math.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,46 @@
+//===========================================================================
+//Copyright (C) 2003, 2004 Zentaro Kavanagh
+//
+//Redistribution and use in source and binary forms, with or without
+//modification, are permitted provided that the following conditions
+//are met:
+//
+//- Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+//- Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+//
+//- Neither the name of Zentaro Kavanagh nor the names of contributors
+// may be used to endorse or promote products derived from this software
+// without specific prior written permission.
+//
+//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+//``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+//PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
+//CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+//EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+//PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+//PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+//LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+//NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+//SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//===========================================================================
+
+#pragma once
+
+class LIBILLICORE_API iLE_Math
+{
+public:
+ iLE_Math(void);
+ ~iLE_Math(void);
+ static unsigned long charArrToULong(const unsigned char* inCharArray);
+ static void ULongToCharArr(unsigned long inLong, unsigned char* outCharArray);
+ static __int64 CharArrToInt64(const unsigned char* inCharArray);
+ static void Int64ToCharArr(__int64 inInt64, unsigned char* outCharArray);
+
+
+
+};
Added: trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,20 @@
+// libilliCore.cpp : Defines the entry point for the DLL application.
+//
+
+#include "stdafx.h"
+#include "libilliCore.h"
+BOOL APIENTRY DllMain( HANDLE hModule,
+ DWORD ul_reason_for_call,
+ LPVOID lpReserved
+ )
+{
+ switch (ul_reason_for_call)
+ {
+ case DLL_PROCESS_ATTACH:
+ case DLL_THREAD_ATTACH:
+ case DLL_THREAD_DETACH:
+ case DLL_PROCESS_DETACH:
+ break;
+ }
+ return TRUE;
+}
Added: trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,12 @@
+// The following ifdef block is the standard way of creating macros which make exporting
+// from a DLL simpler. All files within this DLL are compiled with the LIBILLICORE_EXPORTS
+// symbol defined on the command line. this symbol should not be defined on any project
+// that uses this DLL. This way any other project whose source files include this file see
+// LIBILLICORE_API functions as being imported from a DLL, whereas this DLL sees symbols
+// defined with this macro as being exported.
+#ifdef LIBILLICORE_EXPORTS
+#define LIBILLICORE_API __declspec(dllexport)
+#else
+#define LIBILLICORE_API __declspec(dllimport)
+#endif
+
Added: trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.vcproj
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.vcproj 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/libilliCore.vcproj 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="7.10"
+ Name="libilliCore"
+ ProjectGUID="{2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}"
+ Keyword="Win32Proj">
+ <Platforms>
+ <Platform
+ Name="Win32"/>
+ </Platforms>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="2"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBILLICORE_EXPORTS"
+ MinimalRebuild="TRUE"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="3"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="4"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/libilliCore.dll"
+ LinkIncremental="2"
+ GenerateDebugInformation="TRUE"
+ ProgramDatabaseFile="$(OutDir)/libilliCore.pdb"
+ SubSystem="2"
+ ImportLibrary="$(OutDir)/libilliCore.lib"
+ TargetMachine="1"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="2"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBILLICORE_EXPORTS"
+ RuntimeLibrary="0"
+ UsePrecompiledHeader="3"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="3"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/libilliCore.dll"
+ LinkIncremental="1"
+ GenerateDebugInformation="TRUE"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ ImportLibrary="$(OutDir)/libilliCore.lib"
+ TargetMachine="1"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
+ <File
+ RelativePath=".\iBE_Math.cpp">
+ </File>
+ <File
+ RelativePath=".\iLE_Math.cpp">
+ </File>
+ <File
+ RelativePath=".\libilliCore.cpp">
+ </File>
+ <File
+ RelativePath=".\stdafx.cpp">
+ <FileConfiguration
+ Name="Debug|Win32">
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"/>
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32">
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"/>
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\StringHelper.cpp">
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
+ <File
+ RelativePath=".\iBE_Math.h">
+ </File>
+ <File
+ RelativePath=".\iLE_Math.h">
+ </File>
+ <File
+ RelativePath=".\libilliCore.h">
+ </File>
+ <File
+ RelativePath=".\stdafx.h">
+ </File>
+ <File
+ RelativePath=".\StringHelper.h">
+ </File>
+ </Filter>
+ <Filter
+ Name="Resource Files"
+ Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
+ UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">
+ </Filter>
+ <File
+ RelativePath=".\ReadMe.txt">
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
Added: trunk/oggdsf/src/lib/helper/libilliCore/stdafx.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/stdafx.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/stdafx.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,8 @@
+// stdafx.cpp : source file that includes just the standard includes
+// libilliCore.pch will be the pre-compiled header
+// stdafx.obj will contain the pre-compiled type information
+
+#include "stdafx.h"
+
+// TODO: reference any additional headers you need in STDAFX.H
+// and not in this file
Added: trunk/oggdsf/src/lib/helper/libilliCore/stdafx.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libilliCore/stdafx.h 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/lib/helper/libilliCore/stdafx.h 2004-07-28 19:08:26 UTC (rev 7400)
@@ -0,0 +1,13 @@
+// stdafx.h : include file for standard system include files,
+// or project specific include files that are used frequently, but
+// are changed infrequently
+//
+
+#pragma once
+
+
+#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
+// Windows Header Files:
+#include <windows.h>
+
+// TODO: reference additional headers your program requires here
Modified: trunk/oggdsf/src/tools/OOOggDump/OOOggDump.cpp
===================================================================
--- trunk/oggdsf/src/tools/OOOggDump/OOOggDump.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/tools/OOOggDump/OOOggDump.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -37,13 +37,11 @@
#include <dllstuff.h>
#include <iostream>
-
-
#include <fstream>
-//This will be called by the callback
unsigned long bytePos;
+//This will be called by the callback
bool pageCB(OggPage* inOggPage) {
cout<<"Page Location : "<<bytePos;
bytePos += inOggPage->pageSize();
@@ -53,8 +51,7 @@
cout << "Num Packets : " << inOggPage->numPackets() << endl;;
for (unsigned long i = 0; i < inOggPage->numPackets(); i++) {
locPack = inOggPage->getPacket(i);
- cout << "------ Packet "<< i <<" (";
- cout<<locPack->packetSize()<< " bytes) -------";
+ cout << "------ Packet " << i << " (" << locPack->packetSize() << " bytes) -------";
if (!locPack->isComplete()) {
cout<<" ** INCOMPLETE **";
@@ -69,23 +66,24 @@
int __cdecl _tmain(int argc, _TCHAR* argv[])
{
-
-
//This program just dumps the pages out of a file in ogg format.
// Currently does not error checking. Check your command line carefully !
// USAGE :: OggDump <OggFile>
//
+
bytePos = 0;
+
if (argc < 2) {
cout<<"Usage : OOOggDump <filename>"<<endl;
} else {
OggDataBuffer testOggBuff;
- OggCallbackRego* locCBRego = new OggCallbackRego(&pageCB);
- const BUFF_SIZE = 8092;
- testOggBuff.registerPageCallback(locCBRego);
+
+ testOggBuff.registerStaticCallback(&pageCB);
fstream testFile;
testFile.open(argv[1], ios_base::in | ios_base::binary);
+
+ const unsigned short BUFF_SIZE = 8092;
char* locBuff = new char[BUFF_SIZE];
while (!testFile.eof()) {
testFile.read(locBuff, BUFF_SIZE);
Modified: trunk/oggdsf/src/tools/OOOggStat/OOOggStat.cpp
===================================================================
--- trunk/oggdsf/src/tools/OOOggStat/OOOggStat.cpp 2004-07-28 18:28:11 UTC (rev 7399)
+++ trunk/oggdsf/src/tools/OOOggStat/OOOggStat.cpp 2004-07-28 19:08:26 UTC (rev 7400)
@@ -105,9 +105,9 @@
} else {
streamNo = 0;
OggDataBuffer testOggBuff;
- OggCallbackRego* locCBRego = new OggCallbackRego(&pageCB);
+ //OggCallbackRego* locCBRego = new OggCallbackRego(&pageCB);
const BUFF_SIZE = 8092;
- testOggBuff.registerPageCallback(locCBRego);
+ testOggBuff.registerStaticCallback(&pageCB);
fstream testFile;
testFile.open(argv[1], ios_base::in | ios_base::binary);
More information about the commits
mailing list