git-svn-id: https://svn.microneil.com/svn/CodeDweller/trunk@3 d34b734f-a00e-4b39-a726-e4eeb87269abwx
@@ -700,7 +700,7 @@ bool ConfigurationElement::interpret(ConfigurationData& Data) { | |||
++Index; // past it and scan for our name. | |||
} | |||
for(int I = 0; I < myName.length(); I++) { // For the length of our name, | |||
for(unsigned int I = 0; I < myName.length(); I++) { // For the length of our name, | |||
char x = Data.Data(Index + I); // get each corresponding Data byte | |||
if(x != myName.at(I)) { // check it sudden death style. | |||
return false; // No-Match means we are not it. | |||
@@ -821,7 +821,7 @@ bool ConfigurationElement::interpret(ConfigurationData& Data) { | |||
) { // Then it _should_ be our own. | |||
Stopdex = Index; // Capture this position for content. | |||
Index += 2; // Move Index to where the name starts. | |||
for(int I = 0; I < myName.length(); I++) { // For the length of the name, | |||
for(unsigned int I = 0; I < myName.length(); I++) { // For the length of the name, | |||
char x = Data.Data(Index + I); // check each corresponding Data byte. | |||
if(x != myName.at(I)) { // If we fail to match at any point | |||
return false; // then things are very broken | |||
@@ -1051,7 +1051,7 @@ bool ConfigurationAttribute::interpret(ConfigurationData& Data) { | |||
// Find our name. | |||
for(int I = 0; I < myName.length(); I++) { // For the length of the name, | |||
for(unsigned int I = 0; I < myName.length(); I++) { // For the length of the name, | |||
char x = Data.Data(Index + I); // get each corresponding Data byte | |||
if(x != myName.at(I)) { // check it sudden death style. | |||
return false; // No-Match means we are not it. |
@@ -1,9 +1,7 @@ | |||
// configuration.hpp | |||
// | |||
// (C) 2006 - 2009 MicroNeil Research Corporation. | |||
// | |||
// This program is part of the MicroNeil Research Open Library Project. For | |||
// more information go to http://www.microneil.com/OpenLibrary/index.html | |||
// See http://www.codedweller.com for details. | |||
// | |||
// This program is free software; you can redistribute it and/or modify it | |||
// under the terms of the GNU General Public License as published by the | |||
@@ -611,7 +609,8 @@ class ConfigurationData { | |||
// collection of the basic translators used for built-in mapTo()s. | |||
class ConfigurationTranslator { // Translators exist | |||
public: | |||
public: | |||
virtual ~ConfigurationTranslator(){}; // Stop No Virt Dtor warnings. | |||
virtual void translate(const char* Value) = 0; // Pure virtual translator. | |||
virtual void initialize() = 0; // Pure virtual initializer. | |||
}; |
@@ -29,8 +29,8 @@ inline ConfigurationElement::ConfigurationElement(const char* Name) : | |||
myLine(0), | |||
myIndex(0), | |||
myLength(0), | |||
myInitOnInterpretFlag(false), | |||
myCleanFlag(true) { | |||
myCleanFlag(true), | |||
myInitOnInterpretFlag(false) { | |||
} | |||
inline ConfigurationElement::ConfigurationElement(const string Name) : // Construct with a c++ string. | |||
@@ -39,8 +39,8 @@ inline ConfigurationElement::ConfigurationElement(const string Name) : | |||
myLine(0), | |||
myIndex(0), | |||
myLength(0), | |||
myInitOnInterpretFlag(false), | |||
myCleanFlag(true) { | |||
myCleanFlag(true), | |||
myInitOnInterpretFlag(false) { | |||
} | |||
inline ConfigurationElement::ConfigurationElement( // Construct sub element w/ cstring. | |||
@@ -52,8 +52,8 @@ inline ConfigurationElement::ConfigurationElement( | |||
myLine(0), | |||
myIndex(0), | |||
myLength(0), | |||
myInitOnInterpretFlag(false), | |||
myCleanFlag(true) { | |||
myCleanFlag(true), | |||
myInitOnInterpretFlag(false) { | |||
} | |||
inline ConfigurationElement::ConfigurationElement( // Construct sub element w/ string. | |||
@@ -65,8 +65,8 @@ inline ConfigurationElement::ConfigurationElement( | |||
myLine(0), | |||
myIndex(0), | |||
myLength(0), | |||
myInitOnInterpretFlag(false), | |||
myCleanFlag(true) { | |||
myCleanFlag(true), | |||
myInitOnInterpretFlag(false) { | |||
} | |||
inline string ConfigurationElement::Name() { return myName; } // Get the name of this element. | |||
@@ -232,8 +232,8 @@ inline ConfigurationAttribute::ConfigurationAttribute( | |||
myName(string(Name)), // We convert the name to a string. | |||
myParent(Parent), // We just grab the parent. | |||
myLine(0), // Everything else gets zeroed. | |||
myLength(0), | |||
myIndex(0) { | |||
myIndex(0), | |||
myLength(0) { | |||
} | |||
inline ConfigurationAttribute::ConfigurationAttribute( // Attributes are constrictued with a | |||
@@ -241,8 +241,8 @@ inline ConfigurationAttribute::ConfigurationAttribute( | |||
myName(Name), // We grab them and zero the rest. | |||
myParent(Parent), | |||
myLine(0), | |||
myLength(0), | |||
myIndex(0) { | |||
myIndex(0), | |||
myLength(0) { | |||
} | |||
inline string ConfigurationAttribute::Name() { // Get the name of this attribute. |
@@ -249,7 +249,7 @@ const char* SocketAddress::getAddress(char* str) { | |||
if(NULL == str) { // If the caller did not provide a | |||
str = IPStringBuffer; // buffer to use then we will use ours. | |||
} | |||
int a0, a1, a2, a3, i=0; // Grab a bunch of handy integers. | |||
int a0, a1, a2, a3; // Grab a bunch of handy integers. | |||
getAddress(a0, a1, a2, a3); // Get the address as octets. | |||
sprintf(str, "%d.%d.%d.%d", a0, a1, a2, a3); // Format as dotted decimal notation. | |||
return str; // Return the output buffer. |
@@ -259,7 +259,7 @@ class Socket { | |||
public: | |||
Socket(); // Constructor sets initial state. | |||
~Socket(); // Destructor closes Socket if open. | |||
virtual ~Socket(); // Destructor closes Socket if open. | |||
hSocket getHandle(); // Returns the current SocketId. | |||
bool isNonBlocking(); // Returns true if socket is NonBlocking | |||
@@ -388,7 +388,6 @@ class TCPClient : public Socket, public MessagePort { | |||
TCPListener& MyListener; | |||
char ReadBuffer[TCPClientBufferSize]; // Buffer for delimited reading. | |||
//int ReadBufferSize; // Size of buffer. | |||
char* ReadPointer; // Read position. | |||
int DataLength; // Length of data in buffer. | |||
@@ -112,14 +112,19 @@ inline IP4Address::IP4Address(const char* newIP) { (*this) = newIP; } | |||
inline IP4Address::IP4Address(const string& newIP) { (*this) = newIP; } // Constructing with a cppstring. | |||
inline IP4Address& | |||
IP4Address::operator=(const unsigned long int Right) { IP = Right; } // Convert from unsigned long int. | |||
IP4Address::operator=(const unsigned long int Right) { // Convert from unsigned long int. | |||
IP = Right; | |||
return *this; | |||
} | |||
inline IP4Address& IP4Address::operator=(const char* Right) { // Convert from c string. | |||
IP = ntohl(inet_addr(Right)); | |||
IP = ntohl(inet_addr(Right)); | |||
return *this; | |||
} | |||
inline IP4Address& IP4Address::operator=(const string& Right) { // Convert from cpp string. | |||
IP = ntohl(inet_addr(Right.c_str())); | |||
IP = ntohl(inet_addr(Right.c_str())); | |||
return *this; | |||
} | |||
inline bool IP4Address::operator<(const IP4Address Right) const { // < Comparison. | |||
@@ -211,7 +216,7 @@ inline Socket::Socket() : | |||
} | |||
inline Socket::~Socket() { // When shutting down, be sure | |||
close(); // any open socket is closed. | |||
if(isOpen()) close(); // any open socket is closed. | |||
} | |||
inline void Socket::close() { // When we close, |
@@ -175,9 +175,9 @@ thread_primative Thread::getMyThread() { return MyThread; } | |||
Thread::Thread() : // When constructing a WIN32 thread | |||
MyThreadType(Thread::Type), // Use generic Thread Type. | |||
MyThreadName("UnNamed Thread"), // Use a generic Thread Name. | |||
MyThread(NULL), // Null the thread handle. | |||
RunningFlag(false), // Couldn't be running yet. | |||
BadFlag(false), // Couldn't be bad yet. | |||
MyThread(NULL) { // Null the thread handle. | |||
BadFlag(false) { // Couldn't be bad yet. | |||
Threads.rememberThread(this); // Remember this thread. | |||
CurrentThreadState(ThreadInitialized); // Set our initialized state. | |||
} | |||
@@ -185,9 +185,9 @@ Thread::Thread() : | |||
Thread::Thread(const ThreadType& T, const string N) : // Construct with specific Type/Name | |||
MyThreadType(T), // Use generic Thread Type. | |||
MyThreadName(N), // Use a generic Thread Name. | |||
MyThread(NULL), // Null the thread handle. | |||
RunningFlag(false), // Couldn't be running yet. | |||
BadFlag(false), // Couldn't be bad yet. | |||
MyThread(NULL) { // Null the thread handle. | |||
BadFlag(false) { // Couldn't be bad yet. | |||
Threads.rememberThread(this); // Remember this thread. | |||
CurrentThreadState(ThreadInitialized); // Set our initialized state. | |||
} | |||
@@ -202,7 +202,9 @@ Thread::~Thread() { | |||
} | |||
unsigned __stdcall runThreadTask(void* thread_object) { // The WIN32 version has this form. | |||
((Thread*)thread_object)->launchTask(); | |||
((Thread*)thread_object)->launchTask(); // Run the task. | |||
_endthreadex(0); // Signal the thread is finished. | |||
return 0; // Satisfy the unsigned return. | |||
} | |||
void Thread::run() { // Run a WIN32 thread... |
@@ -119,10 +119,10 @@ class ThreadStatusRecord { | |||
Pointer(P), | |||
Type(&T), | |||
State(&S), | |||
Name(N), | |||
isRunning(R), | |||
isBad(B), | |||
Fault(F), | |||
Name(N) | |||
Fault(F) | |||
{} | |||
ThreadStatusRecord& operator=(const ThreadStatusRecord& Right) { // Minimal Assignment Operator | |||
@@ -132,7 +132,8 @@ class ThreadStatusRecord { | |||
isRunning = Right.isRunning; | |||
isBad = Right.isBad; | |||
Fault = Right.Fault; | |||
Name = Right.Name; | |||
Name = Right.Name; | |||
return *this; | |||
} | |||
bool operator<(const ThreadStatusRecord& Right) { // Minimal Comparison Operator. | |||
@@ -228,7 +229,7 @@ class Thread { | |||
Thread(); // Constructor (just in case) | |||
Thread(const ThreadType& T, string N); // Construct with specific Type/Name | |||
~Thread(); // Destructor (just in case) | |||
virtual ~Thread(); // Destructor (just in case) | |||
void run(); // Method to launch this thread. | |||
void join(); // Method to Join this thread. |