objecthandler-cvs Mailing List for ObjectHandler (Page 6)
Brought to you by:
ericehlers,
nando
You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(115) |
Jun
(109) |
Jul
(85) |
Aug
(49) |
Sep
(19) |
Oct
(105) |
Nov
(16) |
Dec
(43) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(63) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Eric E. <eri...@us...> - 2006-10-30 16:21:46
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv4178/ohxl Modified Files: objecthandlerxl.cpp Log Message: reformat error message depending on context: - logfile: "cell address - function name - message" - calling range: "function name - message" Index: objecthandlerxl.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/objecthandlerxl.cpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** objecthandlerxl.cpp 29 Oct 2006 16:13:44 -0000 1.20 --- objecthandlerxl.cpp 30 Oct 2006 16:21:40 -0000 1.21 *************** *** 221,229 **** void ObjectHandlerXL::logError(const std::string& message, const bool &append) { ! logMessage(message, 2); if (FunctionCall::instance().getCallerType() == Cell) { boost::shared_ptr<CallingRange> callingRange = getCallingRange(true); ! callingRange->setErrorMessage(message, append); } } --- 221,235 ---- void ObjectHandlerXL::logError(const std::string& message, const bool &append) { ! std::ostringstream msgLog; if (FunctionCall::instance().getCallerType() == Cell) { + FunctionCall::instance().setError(); + std::ostringstream msgCell; + msgCell << FunctionCall::instance().getFunctionName() << " - " << message; boost::shared_ptr<CallingRange> callingRange = getCallingRange(true); ! callingRange->setErrorMessage(msgCell.str(), append); ! msgLog << FunctionCall::instance().getAddressString() << " - "; } + msgLog << FunctionCall::instance().getFunctionName() << " - " << message; + logMessage(msgLog.str(), 2); } |
From: Eric E. <eri...@us...> - 2006-10-30 15:46:56
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv22247/ohxl Modified Files: functioncall.cpp functioncall.hpp Log Message: on successful completion of function, delete any error message associated with the calling cell Index: functioncall.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/functioncall.cpp,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** functioncall.cpp 18 Sep 2006 11:20:37 -0000 1.10 --- functioncall.cpp 30 Oct 2006 15:46:51 -0000 1.11 *************** *** 17,21 **** */ ! #include <oh/objecthandler.hpp> #include <oh/exception.hpp> #include <ohxl/functioncall.hpp> --- 17,21 ---- */ ! #include <ohxl/objecthandlerxl.hpp> #include <oh/exception.hpp> #include <ohxl/functioncall.hpp> *************** *** 30,34 **** FunctionCall::FunctionCall(const std::string functionName) : functionName_(functionName), callerDimensions_(Uninitialized), ! callerType_(Uninitialized2){ if (instance_) throw Exception("Multiple attempts to initialize global FunctionCall object"); --- 30,34 ---- FunctionCall::FunctionCall(const std::string functionName) : functionName_(functionName), callerDimensions_(Uninitialized), ! callerType_(Uninitialized2), error_(false) { if (instance_) throw Exception("Multiple attempts to initialize global FunctionCall object"); *************** *** 41,44 **** --- 41,46 ---- FunctionCall::~FunctionCall() { + if (!error_) + ObjectHandlerXL::instance().clearError(); instance_ = 0; if (xCaller_.xltype) Excel(xlFree, 0, 1, &xCaller_); Index: functioncall.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/functioncall.hpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** functioncall.hpp 18 Sep 2006 11:20:37 -0000 1.7 --- functioncall.hpp 30 Oct 2006 15:46:51 -0000 1.8 *************** *** 55,58 **** --- 55,61 ---- CallerType getCallerType(); bool IsCalledByFuncWiz(); + void setError() { + error_ = true; + } private: static FunctionCall *instance_; *************** *** 65,68 **** --- 68,72 ---- CallerDimensions callerDimensions_; CallerType callerType_; + bool error_; }; |
From: Eric E. <eri...@us...> - 2006-10-30 12:58:31
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl/Functions In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv19995/ohxl/Functions Modified Files: manual.cpp Log Message: ohFunctionCount()/qlFunctionCount() - include hand-written functions Index: manual.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/Functions/manual.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** manual.cpp 29 Oct 2006 14:11:38 -0000 1.4 --- manual.cpp 30 Oct 2006 12:58:23 -0000 1.5 *************** *** 92,98 **** XLL_DEC long *ohFunctionCount() { ! // FUNCTION_COUNT gives the number of autogenerated functions, ! // add 4 for the hand-written functions in this file ! static long returnValue = FUNCTION_COUNT + 4; return &returnValue; } --- 92,96 ---- XLL_DEC long *ohFunctionCount() { ! static long returnValue = FUNCTION_COUNT; return &returnValue; } |
From: Eric E. <eri...@us...> - 2006-10-30 12:32:17
|
Update of /cvsroot/objecthandler/ObjectHandler/gensrc/stubs In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9651/gensrc/stubs Modified Files: stub.copyright Log Message: ohFunctionCount()/qlFunctionCount() - include hand-written functions Index: stub.copyright =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/gensrc/stubs/stub.copyright,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** stub.copyright 15 Sep 2006 22:33:12 -0000 1.2 --- stub.copyright 30 Oct 2006 12:32:06 -0000 1.3 *************** *** 1,5 **** /* %(copyright)s - This file is part of QuantLib, a free-software/open-source library for financial quantitative analysts and developers - http://quantlib.org/ --- 1,4 ---- |
From: Eric E. <eri...@us...> - 2006-10-29 16:13:50
|
Update of /cvsroot/objecthandler/ObjectHandler/oh In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9174/oh Modified Files: objecthandler.cpp Log Message: case-preserving logic for object IDs Index: objecthandler.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/oh/objecthandler.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** objecthandler.cpp 26 Oct 2006 10:14:41 -0000 1.5 --- objecthandler.cpp 29 Oct 2006 16:13:43 -0000 1.6 *************** *** 34,40 **** // std::map cannot be exported across DLL boundaries ! // so instead we use a static variable std::map<std::string, boost::shared_ptr<Object> > repository_; ObjectHandler::ObjectHandler() { instance_ = this; --- 34,50 ---- // std::map cannot be exported across DLL boundaries ! // so instead we use a static variables ! ! // Map object ID to object reference std::map<std::string, boost::shared_ptr<Object> > repository_; + // Map uppercase object ID to the ID in original case, + // e.g. convertCase_["MYOBJECT"] = "MyObject" + // This allows "case-preserving" behavior: + // storeObject("MyObject") // store "MyObject" + // retrieveObject("MyObJeCt") // retrieve "MyObject" + // storeObject("MYOBJECT") // overwrite "MyObject" + std::map<std::string, std::string> convertCase_; + ObjectHandler::ObjectHandler() { instance_ = this; *************** *** 55,69 **** const std::string &objectID, const boost::shared_ptr<Object> &object) { ! std::string objectIDUpper = uppercase(objectID); ! repository_[objectIDUpper] = object; ! return objectIDUpper; } boost::shared_ptr<Object> ObjectHandler::retrieveObjectImpl( const std::string &objectID) const { ! std::string objectIDUpper = uppercase(objectID); ! std::map<std::string, boost::shared_ptr<Object> >::const_iterator result ! = repository_.find(objectIDUpper); ! if (result == repository_.end()) { std::ostringstream msg; msg << "ObjectHandler error: attempt to retrieve object " --- 65,78 ---- const std::string &objectID, const boost::shared_ptr<Object> &object) { ! convertCase_[uppercase(objectID)] = objectID; ! repository_[objectID] = object; ! return objectID; } boost::shared_ptr<Object> ObjectHandler::retrieveObjectImpl( const std::string &objectID) const { ! std::map<std::string, std::string>::const_iterator result ! = convertCase_.find(uppercase(objectID)); ! if (result == convertCase_.end()) { std::ostringstream msg; msg << "ObjectHandler error: attempt to retrieve object " *************** *** 71,80 **** throw Exception(msg.str()); } else ! return result->second; } void ObjectHandler::deleteObject(const std::string &objectID) { ! std::string objectIDUpper = uppercase(objectID); ! repository_.erase(objectIDUpper); } --- 80,89 ---- throw Exception(msg.str()); } else ! return repository_[result->second]; } void ObjectHandler::deleteObject(const std::string &objectID) { ! repository_.erase(convertCase_[uppercase(objectID)]); ! convertCase_.erase(uppercase(objectID)); } *************** *** 82,85 **** --- 91,95 ---- if (deletePermanent) { repository_.clear(); + convertCase_.clear(); } else { std::map<std::string, boost::shared_ptr<Object> >::const_iterator iter_current, iter_previous; *************** *** 92,95 **** --- 102,106 ---- if (!object->permanent()) { repository_.erase(key); + convertCase_.erase(uppercase(key)); } } *************** *** 127,135 **** } - // this function assumes that objectID has already been converted to uppercase void ObjectHandler::checkName(const std::string &objectID) { ! std::map<std::string, boost::shared_ptr<Object> >::const_iterator result = ! repository_.find(objectID); ! if (result != repository_.end()) { std::ostringstream msg; msg << "ObjectHandler error: cannot create object " --- 138,145 ---- } void ObjectHandler::checkName(const std::string &objectID) { ! std::map<std::string, std::string>::const_iterator result = ! convertCase_.find(uppercase(objectID)); ! if (result != convertCase_.end()) { std::ostringstream msg; msg << "ObjectHandler error: cannot create object " |
From: Eric E. <eri...@us...> - 2006-10-29 16:13:50
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9174/ohxl Modified Files: objecthandlerxl.cpp objecthandlerxl.hpp Log Message: case-preserving logic for object IDs Index: objecthandlerxl.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/objecthandlerxl.cpp,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** objecthandlerxl.cpp 29 Oct 2006 13:04:27 -0000 1.19 --- objecthandlerxl.cpp 29 Oct 2006 16:13:44 -0000 1.20 *************** *** 137,149 **** } } ! ! boost::shared_ptr<Object> ObjectHandlerXL::retrieveObjectImpl(const std::string &objectID) const { ! std::string objectIDStub; int counterOffset = objectID.length() - 5; if (counterOffset >= 0 && objectID[counterOffset] == '#') ! objectIDStub = objectID.substr(0, counterOffset); else ! objectIDStub = objectID; ! return ObjectHandler::retrieveObjectImpl(objectIDStub); } --- 137,150 ---- } } ! std::string ObjectHandlerXL::getStub(const std::string &objectID) const { int counterOffset = objectID.length() - 5; if (counterOffset >= 0 && objectID[counterOffset] == '#') ! return objectID.substr(0, counterOffset); else ! return objectID; ! } ! ! boost::shared_ptr<Object> ObjectHandlerXL::retrieveObjectImpl(const std::string &objectID) const { ! return ObjectHandler::retrieveObjectImpl(getStub(objectID)); } *************** *** 167,171 **** } std::ostringstream s; ! s << "OBJ_" << std::setw(COUNT_WIDTH) << std::setfill('0') << std::setbase(COUNT_BASE) << objectIDCount_++; return s.str(); } --- 168,172 ---- } std::ostringstream s; ! s << "obj_" << std::setw(COUNT_WIDTH) << std::setfill('0') << std::setbase(COUNT_BASE) << objectIDCount_++; return s.str(); } *************** *** 192,195 **** --- 193,200 ---- } + void ObjectHandlerXL::deleteObject(const std::string &objectID) { + ObjectHandler::deleteObject(getStub(objectID)); + } + void ObjectHandlerXL::deleteAllObjects(const bool &deletePermanent) { if (deletePermanent) { Index: objecthandlerxl.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/objecthandlerxl.hpp,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** objecthandlerxl.hpp 29 Oct 2006 13:04:27 -0000 1.17 --- objecthandlerxl.hpp 29 Oct 2006 16:13:44 -0000 1.18 *************** *** 59,62 **** --- 59,63 ---- virtual boost::shared_ptr<Object> retrieveObjectImpl(const std::string &objectID) const; virtual void collectGarbage(const bool &deletePermanent = false); + virtual void deleteObject(const std::string &objectID); virtual void deleteAllObjects(const bool &deletePermanent = false); *************** *** 78,81 **** --- 79,83 ---- void clearCallingRange(boost::shared_ptr<CallingRange> callingRange); static unsigned long objectIDCount_; + std::string getStub(const std::string &objectID) const; }; |
From: Eric E. <eri...@us...> - 2006-10-29 14:11:43
|
Update of /cvsroot/objecthandler/ObjectHandler/gensrc/metadata In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv26246/gensrc/metadata Modified Files: functions.xml Log Message: ohDependsOn() - throw exception if inputs contain error values Index: functions.xml =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/gensrc/metadata/functions.xml,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** functions.xml 29 Oct 2006 13:04:26 -0000 1.24 --- functions.xml 29 Oct 2006 14:11:37 -0000 1.25 *************** *** 76,80 **** </Procedure> ! <Procedure name='ohDependsOn'> <description>forces a dependency between two functions and returns the update counter</description> <alias>ObjHandler::dependsOn</alias> --- 76,80 ---- </Procedure> ! <Procedure name='ohDependsOn' dependencyTrigger='false'> <description>forces a dependency between two functions and returns the update counter</description> <alias>ObjHandler::dependsOn</alias> |
From: Eric E. <eri...@us...> - 2006-10-29 14:11:43
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl/Functions In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv26246/ohxl/Functions Modified Files: manual.cpp Log Message: ohDependsOn() - throw exception if inputs contain error values Index: manual.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/Functions/manual.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** manual.cpp 18 Oct 2006 13:01:29 -0000 1.3 --- manual.cpp 29 Oct 2006 14:11:38 -0000 1.4 *************** *** 42,47 **** OPER *dummy7, OPER *dummy8, ! OPER *dummy9, ! OPER *trigger) { boost::shared_ptr<ObjHandler::FunctionCall> functionCall; try { --- 42,46 ---- OPER *dummy7, OPER *dummy8, ! OPER *dummy9) { boost::shared_ptr<ObjHandler::FunctionCall> functionCall; try { *************** *** 53,57 **** if (functionCall->IsCalledByFuncWiz()) return 0; - ObjHandler::validateTrigger(trigger); // initialize the QuantLib session ID (if enabled) --- 52,55 ---- *************** *** 64,69 **** // invoke the utility function ! static std::map < std::string, long > iterators; static long returnValue; returnValue = iterators[ObjHandler::FunctionCall::instance().getAddressString()]++; --- 62,77 ---- // invoke the utility function + ObjHandler::validateReference(dummy0, "dummy0"); + ObjHandler::validateReference(dummy1, "dummy1"); + ObjHandler::validateReference(dummy2, "dummy2"); + ObjHandler::validateReference(dummy3, "dummy3"); + ObjHandler::validateReference(dummy4, "dummy4"); + ObjHandler::validateReference(dummy5, "dummy5"); + ObjHandler::validateReference(dummy6, "dummy6"); + ObjHandler::validateReference(dummy7, "dummy7"); + ObjHandler::validateReference(dummy8, "dummy8"); + ObjHandler::validateReference(dummy9, "dummy9"); ! static std::map<std::string, long> iterators; static long returnValue; returnValue = iterators[ObjHandler::FunctionCall::instance().getAddressString()]++; |
From: Eric E. <eri...@us...> - 2006-10-29 14:11:42
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv26246/ohxl Modified Files: conversions.cpp conversions.hpp Log Message: ohDependsOn() - throw exception if inputs contain error values Index: conversions.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/conversions.cpp,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** conversions.cpp 1 Sep 2006 21:28:10 -0000 1.10 --- conversions.cpp 29 Oct 2006 14:11:38 -0000 1.11 *************** *** 31,47 **** } ! DLL_API void validateTrigger(const OPER *xTrigger) { ! if (xTrigger->xltype == xltypeErr) { ! throw Exception("trigger parameter has error value"); ! } else if (xTrigger->xltype == xltypeMulti) { ! if (!validateMulti(xTrigger)) ! throw Exception("trigger parameter has error value"); ! } else if (xTrigger->xltype == xltypeRef || xTrigger->xltype == xltypeSRef) { ! XLOPER xMulti; ! Excel(xlCoerce, &xMulti, 1, xTrigger, TempInt(xltypeMulti)); ! bool isValid = validateMulti(&xMulti); ! Excel(xlFree, 0, 1, &xMulti); ! if (!isValid) ! throw Exception("trigger parameter has error value"); } } --- 31,55 ---- } ! DLL_API void validateReference(const OPER *xReference, const std::string &name) { ! if (xReference->xltype == xltypeErr) { ! std::ostringstream msg; ! msg << "parameter '" << name << "' has error value"; ! throw Exception(msg.str()); ! } else if (xReference->xltype == xltypeMulti) { ! if (!validateMulti(xReference)) { ! std::ostringstream msg; ! msg << "parameter '" << name << "' has error value"; ! throw Exception(msg.str()); ! } ! //} else if (xReference->xltype == xltypeRef || xReference->xltype == xltypeSRef) { ! // XLOPER xMulti; ! // Excel(xlCoerce, &xMulti, 1, xReference, TempInt(xltypeMulti)); ! // bool isValid = validateMulti(&xMulti); ! // Excel(xlFree, 0, 1, &xMulti); ! // if (!isValid) { ! // std::ostringstream msg; ! // msg << "parameter '" << name << "' has error value"; ! // throw Exception(msg.str()); ! // } } } Index: conversions.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/conversions.hpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** conversions.hpp 11 Sep 2006 19:50:23 -0000 1.11 --- conversions.hpp 29 Oct 2006 14:11:38 -0000 1.12 *************** *** 28,32 **** namespace ObjHandler { ! DLL_API void validateTrigger(const OPER *xTrigger); DLL_API void stringToChar(char *c, const std::string &s); void operToOper(OPER *xTarget, const OPER *xSource); --- 28,32 ---- namespace ObjHandler { ! DLL_API void validateReference(const OPER *xReference, const std::string &name); DLL_API void stringToChar(char *c, const std::string &s); void operToOper(OPER *xTarget, const OPER *xSource); |
From: Eric E. <eri...@us...> - 2006-10-29 13:04:30
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv32148/ohxl Modified Files: objecthandlerxl.cpp objecthandlerxl.hpp Log Message: ohRetrieveError() - query user-specified range rather than active range Index: objecthandlerxl.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/objecthandlerxl.cpp,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** objecthandlerxl.cpp 26 Oct 2006 10:14:41 -0000 1.18 --- objecthandlerxl.cpp 29 Oct 2006 13:04:27 -0000 1.19 *************** *** 223,240 **** } ! std::string ObjectHandlerXL::retrieveError() { // XLOPER which might need freeing in the event of an exception ! XLOPER xSelectionRef, xSelectionText; try { ! ! Excel(xlfSelection, &xSelectionRef, 0); ! Excel(xlfReftext, &xSelectionText, 1, &xSelectionRef); ! std::string selectionText; ! operToScalar(selectionText, xSelectionText); ! Excel(xlFree, 0, 2, &xSelectionRef, &xSelectionText); ! RangeReference selectionReference(selectionText); for (rangeMapIter i = callingRanges_.begin(); i != callingRanges_.end(); i++) { --- 223,241 ---- } ! std::string ObjectHandlerXL::retrieveError(const XLOPER *xRangeRef) { // XLOPER which might need freeing in the event of an exception ! XLOPER xRangeText; try { ! if (xRangeRef->xltype != xltypeRef && xRangeRef->xltype != xltypeSRef) { ! throw Exception("input parameter is not a range reference."); ! } ! Excel(xlfReftext, &xRangeText, 1, xRangeRef); ! std::string rangeStr; ! operToScalar(rangeStr, xRangeText); ! Excel(xlFree, 0, 1, &xRangeText); ! RangeReference selectionReference(rangeStr); for (rangeMapIter i = callingRanges_.begin(); i != callingRanges_.end(); i++) { *************** *** 249,253 **** // free any memory that may have been allocated ! Excel(xlFree, 0, 2, &xSelectionRef, &xSelectionText); // propagate the exception --- 250,254 ---- // free any memory that may have been allocated ! Excel(xlFree, 0, 1, &xRangeText); // propagate the exception Index: objecthandlerxl.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/objecthandlerxl.hpp,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** objecthandlerxl.hpp 26 Oct 2006 10:14:41 -0000 1.16 --- objecthandlerxl.hpp 29 Oct 2006 13:04:27 -0000 1.17 *************** *** 24,27 **** --- 24,28 ---- #include <oh/objecthandler.hpp> + #include <xlsdk/xlsdkdefines.hpp> //! ObjHandler *************** *** 70,74 **** void logError(const std::string &message, const bool &append = false); ! std::string retrieveError(); void clearError(); private: --- 71,75 ---- void logError(const std::string &message, const bool &append = false); ! std::string retrieveError(const XLOPER *range); void clearError(); private: |
From: Eric E. <eri...@us...> - 2006-10-29 13:04:30
|
Update of /cvsroot/objecthandler/ObjectHandler/gensrc/metadata In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv32148/gensrc/metadata Modified Files: functions.xml Log Message: ohRetrieveError() - query user-specified range rather than active range Index: functions.xml =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/gensrc/metadata/functions.xml,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** functions.xml 9 Oct 2006 09:48:27 -0000 1.23 --- functions.xml 29 Oct 2006 13:04:26 -0000 1.24 *************** *** 1,430 **** <Category name='functions'> ! <description>ObjectHandler functions</description> ! <displayName>ObjectHandler</displayName> ! <xlFunctionWizardCategory>ObjectHandler</xlFunctionWizardCategory> ! <copyright> ! Copyright (C) 2004, 2005 Ferdinando Ametrano ! Copyright (C) 2004, 2005, 2006 Eric Ehlers ! Copyright (C) 2005, 2006 Plamen Neykov ! Copyright (C) 2004 StatPro Italia srl ! </copyright> ! <Functions> ! <Procedure name='ohCollectGarbage'> ! <description>delete orphaned objects from repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().collectGarbage</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='deletePermanent' default='false'> ! <type>bool</type> ! <tensorRank>scalar</tensorRank> ! <description>also delete permanent objects</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohDeleteAllObjects'> ! <description>delete all objects from repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().deleteAllObjects</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='deletePermanent' default='false'> ! <type>bool</type> ! <tensorRank>scalar</tensorRank> ! <description>also delete permanent objects</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohDeleteObject'> ! <description>delete object from repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().deleteObject</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='ObjectID'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>ID of object to be deleted</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohDependsOn'> ! <description>forces a dependency between two functions and returns the update counter</description> ! <alias>ObjHandler::dependsOn</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='dummy0' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy1' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy2' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy3' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy4' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy5' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy6' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy7' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy8' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy9' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohFunctionCount'> ! <description>returns the number of functions in this addin</description> ! <alias>ObjHandler::version</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohListObjectIDs'> ! <description>list the IDs of objects in repository matching regex</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().listObjectIDs</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='regex'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>optional matching pattern in UNIX format (wildcard is .*)</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>vector</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohLogAllObjects'> ! <description>write all object descriptions to log file</description> ! <alias>ObjHandler::logAllObjects</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohLogMessage'> ! <description>log a message</description> ! <alias>ObjHandler::logMessage</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='logMessage'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>message to be logged</description> ! </Parameter> ! <Parameter name='logLevel' default='4'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>threshold for log messages</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohLogObject'> ! <description>write object description to log file</description> ! <alias>ObjHandler::logObject</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='objectID'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>ID of object to be logged</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohObjectCount'> ! <description>#/objects in repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().objectCount</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohPack'> ! <description>trim error values from bottom/right of matrix/vector</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().packMatrix</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='inputRange'> ! <type>any</type> ! <tensorRank>matrix</tensorRank> ! <description>scalar/vector/matrix of values to be packed</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>any</type> ! <tensorRank>matrix</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohParseField' dependencyTrigger='False'> ! <description>Extract the ith number from a whitespace-delimited list of fields</description> ! <alias>ObjHandler::parseField</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='line'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>text to be parsed</description> ! </Parameter> ! <Parameter name='index'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>index (1-based) of desired field</description> ! </Parameter> ! <Parameter name='dataType' default='"NUMBER"'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>expected datatype - NUMBER or STRING (default = NUMBER)</description> ! </Parameter> ! <Parameter name='delim' default='"[:space:]"'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>delimiter (default = whitespace)</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Member name='ohPropertyNames' objectClass='Object'> ! <description>retrieve the property names of a given object</description> ! <libraryFunction>propertyNames</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>vector</tensorRank> ! </ReturnValue> ! </Member> ! <Member name='ohPropertyValue' objectClass='Object' dependencyTrigger='true'> ! <description>retrieve the value of a named property</description> ! <libraryFunction>propertyValue</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='fieldName'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>name of property</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! <Procedure name='ohRetrieveError'> ! <description>retrieve error message associated with a given cell</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().retrieveError</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohSetLogFile'> ! <description>begin logging to named file</description> ! <alias>ObjHandler::setLogFile</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='logFileName'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>path and name of log file</description> ! </Parameter> ! <Parameter name='logLevel' default='4'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>threshold for log messages</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohSetLogLevel'> ! <description>set threshold for log messages</description> ! <alias>ObjHandler::setLogLevel</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='logLevel'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>threshold for log messages</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! <description>returns new logging threshold</description> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohVersion'> ! <description>returns the version number of ObjectHandler</description> ! <alias>ObjHandler::version</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! </Functions> </Category> - --- 1,435 ---- <Category name='functions'> ! <description>ObjectHandler functions</description> ! <displayName>ObjectHandler</displayName> ! <xlFunctionWizardCategory>ObjectHandler</xlFunctionWizardCategory> ! <copyright> ! Copyright (C) 2004, 2005 Ferdinando Ametrano ! Copyright (C) 2004, 2005, 2006 Eric Ehlers ! Copyright (C) 2005, 2006 Plamen Neykov ! Copyright (C) 2004 StatPro Italia srl ! </copyright> ! <Functions> ! <Procedure name='ohCollectGarbage'> ! <description>delete orphaned objects from repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().collectGarbage</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='deletePermanent' default='false'> ! <type>bool</type> ! <tensorRank>scalar</tensorRank> ! <description>also delete permanent objects</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohDeleteAllObjects'> ! <description>delete all objects from repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().deleteAllObjects</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='deletePermanent' default='false'> ! <type>bool</type> ! <tensorRank>scalar</tensorRank> ! <description>also delete permanent objects</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohDeleteObject'> ! <description>delete object from repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().deleteObject</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='ObjectID'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>ID of object to be deleted</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohDependsOn'> ! <description>forces a dependency between two functions and returns the update counter</description> ! <alias>ObjHandler::dependsOn</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='dummy0' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy1' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy2' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy3' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy4' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy5' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy6' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy7' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy8' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! <Parameter name='dummy9' ignore='true'> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! <description>dummy parameter (ignored)</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohFunctionCount'> ! <description>returns the number of functions in this addin</description> ! <alias>ObjHandler::version</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohListObjectIDs'> ! <description>list the IDs of objects in repository matching regex</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().listObjectIDs</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='regex'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>optional matching pattern in UNIX format (wildcard is .*)</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>vector</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohLogAllObjects'> ! <description>write all object descriptions to log file</description> ! <alias>ObjHandler::logAllObjects</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohLogMessage'> ! <description>log a message</description> ! <alias>ObjHandler::logMessage</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='logMessage'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>message to be logged</description> ! </Parameter> ! <Parameter name='logLevel' default='4'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>threshold for log messages</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohLogObject'> ! <description>write object description to log file</description> ! <alias>ObjHandler::logObject</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='objectID'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>ID of object to be logged</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohObjectCount'> ! <description>#/objects in repository</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().objectCount</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohPack'> ! <description>trim error values from bottom/right of matrix/vector</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().packMatrix</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='inputRange'> ! <type>any</type> ! <tensorRank>matrix</tensorRank> ! <description>scalar/vector/matrix of values to be packed</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>any</type> ! <tensorRank>matrix</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohParseField' dependencyTrigger='False'> ! <description>Extract the ith number from a whitespace-delimited list of fields</description> ! <alias>ObjHandler::parseField</alias> ! <SupportedPlatforms> ! <Excel implementation='manual'/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='line'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>text to be parsed</description> ! </Parameter> ! <Parameter name='index'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>index (1-based) of desired field</description> ! </Parameter> ! <Parameter name='dataType' default='"NUMBER"'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>expected datatype - NUMBER or STRING (default = NUMBER)</description> ! </Parameter> ! <Parameter name='delim' default='"[:space:]"'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>delimiter (default = whitespace)</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Member name='ohPropertyNames' objectClass='Object'> ! <description>retrieve the property names of a given object</description> ! <libraryFunction>propertyNames</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>vector</tensorRank> ! </ReturnValue> ! </Member> ! <Member name='ohPropertyValue' objectClass='Object' dependencyTrigger='true'> ! <description>retrieve the value of a named property</description> ! <libraryFunction>propertyValue</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='fieldName'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>name of property</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>any</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! <Procedure name='ohRetrieveError'> ! <description>retrieve error message associated with a given range</description> ! <alias>ObjHandler::ObjectHandlerXL::instance().retrieveError</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='range'> ! <type>reference</type> ! <tensorRank>scalar</tensorRank> ! <description>range to query (omit to query active range)</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohSetLogFile'> ! <description>begin logging to named file</description> ! <alias>ObjHandler::setLogFile</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='logFileName'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>path and name of log file</description> ! </Parameter> ! <Parameter name='logLevel' default='4'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>threshold for log messages</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohSetLogLevel'> ! <description>set threshold for log messages</description> ! <alias>ObjHandler::setLogLevel</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='logLevel'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>threshold for log messages</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>void</type> ! <tensorRank>scalar</tensorRank> ! <description>returns new logging threshold</description> ! </ReturnValue> ! </Procedure> ! <Procedure name='ohVersion'> ! <description>returns the version number of ObjectHandler</description> ! <alias>ObjHandler::version</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! </Functions> </Category> |
From: Eric E. <eri...@us...> - 2006-10-26 11:29:53
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv22756/ohxl Modified Files: rangereference.cpp rangereference.hpp Log Message: enhanced support for processing of range references Index: rangereference.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/rangereference.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** rangereference.cpp 20 Sep 2006 20:17:07 -0000 1.1 --- rangereference.cpp 26 Oct 2006 11:29:50 -0000 1.2 *************** *** 25,40 **** RangeReference::RangeReference(const std::string &address) ! : originalAddress_(address) { ! std::string addressUpper = uppercase(address); ! static boost::regex r( ! "=?'?.*\\[([\\w\\s]+)(?:\\.XLS)?\\]([\\w\\s]+)'?!R(\\d*)C(\\d*)(?::R(\\d*)C(\\d*))?"); ! boost::smatch m; ! if (!boost::regex_match(addressUpper, m, r)) { std::ostringstream err; err << "the string '" << address << "' is not a valid range reference"; throw Exception(err.str().c_str()); } bookName_ = m[1]; --- 25,46 ---- RangeReference::RangeReference(const std::string &address) ! : addressOriginal_(address) { ! addressUpper_ = uppercase(address); ! if (!init1() && !init2()) { std::ostringstream err; err << "the string '" << address << "' is not a valid range reference"; throw Exception(err.str().c_str()); } + } + + bool RangeReference::init1() { + // try to handle case where book name != sheet name + static boost::regex r( + "=?'?.*\\[([\\w\\s]+)(?:\\.XLS)?\\]([\\w\\s]+)'?!R(\\d*)C(\\d*)(?::R(\\d*)C(\\d*))?"); + boost::smatch m; + if (!boost::regex_match(addressUpper_, m, r)) + return false; bookName_ = m[1]; *************** *** 51,54 **** --- 57,85 ---- colEndNum_ = -1; } + return true; + } + + bool RangeReference::init2() { + // try to handle case of book containing single sheet w/same name + static boost::regex r( + "=?'?([\\w\\s]+)(?:\\.XLS)'?!R(\\d*)C(\\d*)(?::R(\\d*)C(\\d*))?"); + boost::smatch m; + if (!boost::regex_match(addressUpper_, m, r)) + return false; + + bookName_ = m[1]; + sheetName_ = m[1]; + rowStartNum_ = boost::lexical_cast<int>(m[2]); + colStartNum_ = boost::lexical_cast<int>(m[3]); + if (m[4].matched) { + multicell_ = true; + rowEndNum_ = boost::lexical_cast<int>(m[4]); + colEndNum_ = boost::lexical_cast<int>(m[5]); + } else { + multicell_ = false; + rowEndNum_ = -1; + colEndNum_ = -1; + } + return true; } *************** *** 82,86 **** bool RangeReference::operator==(const RangeReference &r) const { ! if (this->originalAddress_ == r.originalAddress_) return true; return this->bookName_ == r.bookName_ --- 113,117 ---- bool RangeReference::operator==(const RangeReference &r) const { ! if (this->addressOriginal_ == r.addressOriginal_) return true; return this->bookName_ == r.bookName_ *************** *** 94,98 **** std::ostream &operator<<(std::ostream &out, const RangeReference &r) { ! out << "originalAddress = " << r.originalAddress_ << std::endl; out << "bookName = " << r.bookName_ << std::endl; out << "sheetName = " << r.sheetName_ << std::endl; --- 125,129 ---- std::ostream &operator<<(std::ostream &out, const RangeReference &r) { ! out << "originalAddress = " << r.addressOriginal_ << std::endl; out << "bookName = " << r.bookName_ << std::endl; out << "sheetName = " << r.sheetName_ << std::endl; Index: rangereference.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/rangereference.hpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** rangereference.hpp 20 Sep 2006 20:17:07 -0000 1.1 --- rangereference.hpp 26 Oct 2006 11:29:50 -0000 1.2 *************** *** 32,58 **** The following formats are supported: ! normal: "[Book1.xls]Sheet1!R1C1" ! some excel functions prepend an '=' sign: "=[Book1.xls]Sheet1!R1C1" ! if book or sheet name contains spaces then Excel encloses the text in single quotes: "'[Bo ok1.xls]Sheet1'!R1C1" ! for a new book that hasn't yet been saved, excel omits the .xls suffix: "[Book1]Sheet1!R1C1" ! sometimes the string includes the filesystem path: "='C:\\path\\to\\[Book1.xls]Sheet1'!R1C1" In all cases, the cell reference, represented above as R1C1, may also be given as R1C1:R9C9 i.e. a range consisting of multiple cells, in which case the RangeReference constructor sets multicell_ to true. - - There is one further case which is not supported. If a workbook contains - a single sheet which has the same name as the book, Excel gives the string - reference in the following format, which the RangeReference constructor - doesn't recognize: - "xxx.xls!R1C1" - - Unsupported formats cause an exception to be thrown. */ --- 32,55 ---- The following formats are supported: ! Normal: "[Book1.xls]Sheet1!R1C1" ! Some excel functions prepend an '=' sign: "=[Book1.xls]Sheet1!R1C1" ! If book or sheet name contains spaces then Excel encloses the text in single quotes: "'[Bo ok1.xls]Sheet1'!R1C1" ! For a new book that hasn't yet been saved, excel omits the .xls suffix: "[Book1]Sheet1!R1C1" ! Sometimes the string includes the filesystem path: "='C:\\path\\to\\[Book1.xls]Sheet1'!R1C1" + If the book contains a single sheet with the same name as the book, + then the sheet name is omitted altogether and the book name is not + enclosed in []s: + "same_name.xls!R1C1" + "'same name.xls'!R1C1" In all cases, the cell reference, represented above as R1C1, may also be given as R1C1:R9C9 i.e. a range consisting of multiple cells, in which case the RangeReference constructor sets multicell_ to true. */ *************** *** 64,68 **** friend std::ostream &operator<<(std::ostream&, const RangeReference&); private: ! std::string originalAddress_; std::string bookName_; std::string sheetName_; --- 61,66 ---- friend std::ostream &operator<<(std::ostream&, const RangeReference&); private: ! std::string addressOriginal_; ! std::string addressUpper_; std::string bookName_; std::string sheetName_; *************** *** 72,75 **** --- 70,75 ---- int rowEndNum_; int colEndNum_; + bool init1(); + bool init2(); }; |
From: Eric E. <eri...@us...> - 2006-10-26 10:14:45
|
Update of /cvsroot/objecthandler/ObjectHandler/oh In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv19553/oh Modified Files: objecthandler.cpp objecthandler.hpp utilities.hpp Log Message: convert object IDs to upper case Index: utilities.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/oh/utilities.hpp,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** utilities.hpp 4 Oct 2006 09:37:43 -0000 1.12 --- utilities.hpp 26 Oct 2006 10:14:41 -0000 1.13 *************** *** 80,88 **** // some basic utilities std::vector<std::string> split( const std::string &line, unsigned int maxRequired, const std::string &delim); ! std::string uppercase(const std::string& s); //@} --- 80,90 ---- // some basic utilities + std::vector<std::string> split( const std::string &line, unsigned int maxRequired, const std::string &delim); ! ! std::string uppercase(const std::string&); //@} *************** *** 90,92 **** #endif - --- 92,93 ---- Index: objecthandler.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/oh/objecthandler.hpp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** objecthandler.hpp 7 Oct 2006 16:07:23 -0000 1.15 --- objecthandler.hpp 26 Oct 2006 10:14:41 -0000 1.16 *************** *** 47,52 **** /*! Any existing Object with that ID is deleted. */ ! virtual std::string storeObject(std::string objectID, ! const boost::shared_ptr < Object > &object); //! Retrieve Object with given ID. --- 47,52 ---- /*! Any existing Object with that ID is deleted. */ ! virtual std::string storeObject(const std::string &objectID, ! const boost::shared_ptr<Object> &object); //! Retrieve Object with given ID. *************** *** 55,59 **** virtual boost::shared_ptr<Object> retrieveObjectImpl(const std::string &objectID) const; ! template < typename T > void retrieveObject(boost::shared_ptr<T> &ret, const std::string &id) { boost::shared_ptr<Object> object = retrieveObjectImpl(id); --- 55,59 ---- virtual boost::shared_ptr<Object> retrieveObjectImpl(const std::string &objectID) const; ! template <class T> void retrieveObject(boost::shared_ptr<T> &ret, const std::string &id) { boost::shared_ptr<Object> object = retrieveObjectImpl(id); *************** *** 96,101 **** /*! Returns empty list if repository is empty. */ ! virtual const std::vector < std::string > listObjectIDs( ! const std::string regex = ""); //@} protected: --- 96,101 ---- /*! Returns empty list if repository is empty. */ ! virtual const std::vector<std::string> listObjectIDs( ! const std::string ®ex = ""); //@} protected: *************** *** 109,113 **** template <class ObjectClass> std::vector<boost::shared_ptr<ObjectClass> > getObjectVector( ! std::vector<std::string> objectIDs) { std::vector<boost::shared_ptr<ObjectClass> > ret; for (std::vector<std::string>::const_iterator i = objectIDs.begin(); --- 109,113 ---- template <class ObjectClass> std::vector<boost::shared_ptr<ObjectClass> > getObjectVector( ! const std::vector<std::string> &objectIDs) { std::vector<boost::shared_ptr<ObjectClass> > ret; for (std::vector<std::string>::const_iterator i = objectIDs.begin(); Index: objecthandler.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/oh/objecthandler.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** objecthandler.cpp 4 Oct 2006 09:37:43 -0000 1.4 --- objecthandler.cpp 26 Oct 2006 10:14:41 -0000 1.5 *************** *** 23,26 **** --- 23,27 ---- #include <oh/objecthandler.hpp> #include <oh/exception.hpp> + #include <oh/utilities.hpp> #include <ostream> #include <sstream> *************** *** 45,62 **** ObjectHandler &ObjectHandler::instance() { ! if (instance_) { ! return *instance_; ! } else throw Exception("Attempt to reference uninitialized ObjectHandler object"); } ! std::string ObjectHandler::storeObject(std::string objectID, const boost::shared_ptr<Object> &object) { ! repository_[objectID] = object; ! return objectID; } ! boost::shared_ptr<Object> ObjectHandler::retrieveObjectImpl(const std::string &objectID) const { ! std::map<std::string, boost::shared_ptr<Object> >::const_iterator result = repository_.find(objectID); if (result == repository_.end()) { std::ostringstream msg; --- 46,68 ---- ObjectHandler &ObjectHandler::instance() { ! if (instance_) ! return *instance_; ! else throw Exception("Attempt to reference uninitialized ObjectHandler object"); } ! std::string ObjectHandler::storeObject( ! const std::string &objectID, const boost::shared_ptr<Object> &object) { ! std::string objectIDUpper = uppercase(objectID); ! repository_[objectIDUpper] = object; ! return objectIDUpper; } ! boost::shared_ptr<Object> ObjectHandler::retrieveObjectImpl( ! const std::string &objectID) const { ! std::string objectIDUpper = uppercase(objectID); ! std::map<std::string, boost::shared_ptr<Object> >::const_iterator result ! = repository_.find(objectIDUpper); if (result == repository_.end()) { std::ostringstream msg; *************** *** 69,73 **** void ObjectHandler::deleteObject(const std::string &objectID) { ! repository_.erase(objectID); } --- 75,80 ---- void ObjectHandler::deleteObject(const std::string &objectID) { ! std::string objectIDUpper = uppercase(objectID); ! repository_.erase(objectIDUpper); } *************** *** 76,80 **** repository_.clear(); } else { ! std::map < std::string, boost::shared_ptr < Object > >::const_iterator iter_current, iter_previous; iter_current = repository_.begin(); while (iter_current != repository_.end()) { --- 83,87 ---- repository_.clear(); } else { ! std::map<std::string, boost::shared_ptr<Object> >::const_iterator iter_current, iter_previous; iter_current = repository_.begin(); while (iter_current != repository_.end()) { *************** *** 82,86 **** iter_current++; std::string key = iter_previous->first; ! boost::shared_ptr < Object > object = iter_previous->second; if (!object->permanent()) { repository_.erase(key); --- 89,93 ---- iter_current++; std::string key = iter_previous->first; ! boost::shared_ptr<Object> object = iter_previous->second; if (!object->permanent()) { repository_.erase(key); *************** *** 103,108 **** } ! const std::vector < std::string > ObjectHandler::listObjectIDs(const std::string regex) { ! std::vector < std::string > objectIDs; if (regex.empty()) { for (std::map<std::string, boost::shared_ptr<Object> >::const_iterator i=repository_.begin(); i!=repository_.end(); i++) --- 110,116 ---- } ! const std::vector<std::string> ObjectHandler::listObjectIDs( ! const std::string ®ex) { ! std::vector<std::string> objectIDs; if (regex.empty()) { for (std::map<std::string, boost::shared_ptr<Object> >::const_iterator i=repository_.begin(); i!=repository_.end(); i++) *************** *** 119,122 **** --- 127,131 ---- } + // this function assumes that objectID has already been converted to uppercase void ObjectHandler::checkName(const std::string &objectID) { std::map<std::string, boost::shared_ptr<Object> >::const_iterator result = |
From: Eric E. <eri...@us...> - 2006-10-26 10:14:45
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv19553/ohxl Modified Files: objecthandlerxl.cpp objecthandlerxl.hpp Log Message: convert object IDs to upper case Index: objecthandlerxl.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/objecthandlerxl.cpp,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** objecthandlerxl.cpp 20 Sep 2006 20:17:07 -0000 1.17 --- objecthandlerxl.cpp 26 Oct 2006 10:14:41 -0000 1.18 *************** *** 102,106 **** } ! void ObjectHandlerXL::resetCaller(bool createIfNone) { if (FunctionCall::instance().getCallerType() != Cell) return; --- 102,106 ---- } ! void ObjectHandlerXL::resetCaller(const bool &createIfNone) { if (FunctionCall::instance().getCallerType() != Cell) return; *************** *** 110,119 **** std::string ObjectHandlerXL::storeObject( ! std::string objectID, const boost::shared_ptr<Object> &object) { ! if (objectID.empty()) { objectID = generateObjectID(); object->setAnonymous(); } --- 110,122 ---- std::string ObjectHandlerXL::storeObject( ! const std::string &objectIDOrig, const boost::shared_ptr<Object> &object) { ! std::string objectID; ! if (objectIDOrig.empty()) { objectID = generateObjectID(); object->setAnonymous(); + } else { + objectID = objectIDOrig; } *************** *** 164,168 **** } std::ostringstream s; ! s << "obj_" << std::setw(COUNT_WIDTH) << std::setfill('0') << std::setbase(COUNT_BASE) << objectIDCount_++; return s.str(); } --- 167,171 ---- } std::ostringstream s; ! s << "OBJ_" << std::setw(COUNT_WIDTH) << std::setfill('0') << std::setbase(COUNT_BASE) << objectIDCount_++; return s.str(); } Index: objecthandlerxl.hpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/objecthandlerxl.hpp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** objecthandlerxl.hpp 4 Oct 2006 09:37:43 -0000 1.15 --- objecthandlerxl.hpp 26 Oct 2006 10:14:41 -0000 1.16 *************** *** 54,58 **** Performance in such special cases is sub-optimal. */ ! virtual std::string storeObject(std::string objectID, const boost::shared_ptr<Object> &object); virtual boost::shared_ptr<Object> retrieveObjectImpl(const std::string &objectID) const; --- 54,58 ---- Performance in such special cases is sub-optimal. */ ! virtual std::string storeObject(const std::string &objectID, const boost::shared_ptr<Object> &object); virtual boost::shared_ptr<Object> retrieveObjectImpl(const std::string &objectID) const; *************** *** 65,69 **** which set the caller's status to "busy". */ ! virtual void resetCaller(bool createIfNone = false); virtual void dump(std::ostream&); --- 65,69 ---- which set the caller's status to "busy". */ ! virtual void resetCaller(const bool &createIfNone = false); virtual void dump(std::ostream&); |
From: Eric E. <eri...@us...> - 2006-10-19 23:34:20
|
Update of /cvsroot/objecthandler/log4cxx-0.9.7/docs In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv1372/docs Modified Files: Doxyfile Log Message: preparing for release Index: Doxyfile =================================================================== RCS file: /cvsroot/objecthandler/log4cxx-0.9.7/docs/Doxyfile,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Doxyfile 7 Aug 2006 13:36:27 -0000 1.2 --- Doxyfile 19 Oct 2006 23:34:18 -0000 1.3 *************** *** 24,28 **** # if some version control system is used. ! PROJECT_NUMBER = "Version 0.9.7a" # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) --- 24,28 ---- # if some version control system is used. ! PROJECT_NUMBER = "Version 0.9.7b" # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) *************** *** 868,872 **** # have no effect if this option is set to NO (the default) ! HAVE_DOT = no # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen --- 868,872 ---- # have no effect if this option is set to NO (the default) ! HAVE_DOT = yes # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen |
From: Eric E. <eri...@us...> - 2006-10-19 23:34:20
|
Update of /cvsroot/objecthandler/log4cxx-0.9.7 In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv1372 Modified Files: .cvsignore configure.in Log Message: preparing for release Index: .cvsignore =================================================================== RCS file: /cvsroot/objecthandler/log4cxx-0.9.7/.cvsignore,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** .cvsignore 31 Jul 2006 14:26:57 -0000 1.1 --- .cvsignore 19 Oct 2006 23:34:18 -0000 1.2 *************** *** 7,8 **** --- 7,9 ---- configure libtool + *.gz Index: configure.in =================================================================== RCS file: /cvsroot/objecthandler/log4cxx-0.9.7/configure.in,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** configure.in 7 Aug 2006 13:36:27 -0000 1.2 --- configure.in 19 Oct 2006 23:34:18 -0000 1.3 *************** *** 25,29 **** #define LOG4CXX_EXPORT]) ! AM_INIT_AUTOMAKE(log4cxx, 0.9.7a) # Checks for programs --- 25,29 ---- #define LOG4CXX_EXPORT]) ! AM_INIT_AUTOMAKE(log4cxx, 0.9.7b) # Checks for programs |
From: Eric E. <eri...@us...> - 2006-10-19 22:08:48
|
Update of /cvsroot/objecthandler/log4cxx-0.9.7 In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv32224 Modified Files: log4cxx.nsi Log Message: preparing for release Index: log4cxx.nsi =================================================================== RCS file: /cvsroot/objecthandler/log4cxx-0.9.7/log4cxx.nsi,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** log4cxx.nsi 10 Aug 2006 01:03:34 -0000 1.3 --- log4cxx.nsi 19 Oct 2006 22:08:40 -0000 1.4 *************** *** 4,8 **** SetCompressor lzma ! !define VER_NUMBER "0.9.7a" !define /date NOW "%Y%m%d-%H_%M" --- 4,8 ---- SetCompressor lzma ! !define VER_NUMBER "0.9.7b" !define /date NOW "%Y%m%d-%H_%M" |
From: Eric E. <eri...@us...> - 2006-10-19 16:26:07
|
Update of /cvsroot/objecthandler/ObjectHandler/Docs/pages In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv25195/Docs/pages Modified Files: Tag: R000105f0-branch history.docs installation.docs Log Message: increment log4cxx version number Index: history.docs =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/Docs/pages/history.docs,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** history.docs 11 Oct 2006 13:28:25 -0000 1.3 --- history.docs 19 Oct 2006 16:26:04 -0000 1.3.2.1 *************** *** 33,44 **** LOG4CXX ! No changes to the log4cxx environment. ObjectHandler 0.1.5 continues ! to rely on the customized log4cxx "0.9.7a" package which shipped ! with ObjectHandler version 0.1.4 (see below). REQUIRED PACKAGES - Boost version 1.31.0 or later ! - log4cxx version 0.9.7.a - gensrc version 0.1.5 --- 33,44 ---- LOG4CXX ! - a couple of minor fixes to makefiles ! - repackaged as version 0.9.7b (see below for explanation of ! log4cxx version numbers) REQUIRED PACKAGES - Boost version 1.31.0 or later ! - log4cxx version 0.9.7.b - gensrc version 0.1.5 Index: installation.docs =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/Docs/pages/installation.docs,v retrieving revision 1.3.2.1 retrieving revision 1.3.2.2 diff -C2 -d -r1.3.2.1 -r1.3.2.2 *** installation.docs 19 Oct 2006 14:04:38 -0000 1.3.2.1 --- installation.docs 19 Oct 2006 16:26:04 -0000 1.3.2.2 *************** *** 36,43 **** <a href="http://logging.apache.org/log4cxx/index.html">log4cxx</a>, the logging framework for the Apache project. ObjectHandler uses a customized ! copy of log4cxx version 0.9.7, called "log4cxx 0.9.7a", amended to provide a boost compliant build process and other minor enhancements. ! ObjectHandler and log4cxx 0.9.7a are available for download from the <a href="http://sourceforge.net/project/showfiles.php?group_id=12740&package_id=141162">QuantLib downloads page on sourceforge</a> --- 36,43 ---- <a href="http://logging.apache.org/log4cxx/index.html">log4cxx</a>, the logging framework for the Apache project. ObjectHandler uses a customized ! copy of log4cxx version 0.9.7, called "log4cxx 0.9.7b", amended to provide a boost compliant build process and other minor enhancements. ! ObjectHandler and log4cxx 0.9.7b are available for download from the <a href="http://sourceforge.net/project/showfiles.php?group_id=12740&package_id=141162">QuantLib downloads page on sourceforge</a> *************** *** 75,82 **** \subsection inst_win_prerequisites Prerequisites ! Before building ObjectHandler you need to build log4cxx 0.9.7a. <ul> ! <li>download the log4cxx 0.9.7a zip from the QuantLib downloads page</li> <li>log4cxx should be unzipped to a path containing no spaces as the library seems to complain otherwise</li> --- 75,82 ---- \subsection inst_win_prerequisites Prerequisites ! Before building ObjectHandler you need to build log4cxx 0.9.7b. <ul> ! <li>download the log4cxx 0.9.7b zip from the QuantLib downloads page</li> <li>log4cxx should be unzipped to a path containing no spaces as the library seems to complain otherwise</li> *************** *** 85,89 **** to directory <tt>log4cxx-0.9.7\\msvc\\Lib</tt></li> <li>you need to manually set environment variable \c LOG4CXX_DIR to the ! top level log4cxx directory e.g. <tt>C:\\log4cxx-0.9.7</tt></li> <li>if VC is running you need to restart it to pick up the new environment variable.</li> --- 85,89 ---- to directory <tt>log4cxx-0.9.7\\msvc\\Lib</tt></li> <li>you need to manually set environment variable \c LOG4CXX_DIR to the ! top level log4cxx directory e.g. <tt>C:\\log4cxx-0.9.7b</tt></li> <li>if VC is running you need to restart it to pick up the new environment variable.</li> *************** *** 249,254 **** tar file from the QuantLib downloads page and install as follows: \verbatim ! tar zxfv log4cxx-0.9.7a.tar.gz ! cd log4cxx-0.9.7a ./autogen.sh ./configure --- 249,254 ---- tar file from the QuantLib downloads page and install as follows: \verbatim ! tar zxfv log4cxx-0.9.7b.tar.gz ! cd log4cxx-0.9.7b ./autogen.sh ./configure |
From: Eric E. <eri...@us...> - 2006-10-19 14:04:51
|
Update of /cvsroot/objecthandler/ObjectHandler/Docs/pages In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv1558/Docs/pages Modified Files: Tag: R000105f0-branch design.docs installation.docs Log Message: update docs Index: design.docs =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/Docs/pages/design.docs,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** design.docs 3 Oct 2006 21:08:38 -0000 1.3 --- design.docs 19 Oct 2006 14:04:38 -0000 1.3.2.1 *************** *** 71,75 **** </dl> \section sec_1 1. Design ! <div class="center"><img src="quep011a.png"></div> \section sec_1_1 1.1 ObjectHandler \par --- 71,75 ---- </dl> \section sec_1 1. Design ! <div class="center"><img src="images/quep011a.png"></div> \section sec_1_1 1.1 ObjectHandler \par *************** *** 320,324 **** } \endcode ! <div class="center"><img src="quep011b.png"></div> \section sec_3 3 Proposed Enhancements \subsection sec_3_1 3.1 ohMethodValue --- 320,324 ---- } \endcode ! <div class="center"><img src="images/quep011b.png"></div> \section sec_3 3 Proposed Enhancements \subsection sec_3_1 3.1 ohMethodValue Index: installation.docs =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/Docs/pages/installation.docs,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** installation.docs 11 Oct 2006 13:28:25 -0000 1.3 --- installation.docs 19 Oct 2006 14:04:38 -0000 1.3.2.1 *************** *** 107,112 **** NB: The ohxll build of ObjectHandler requires a DLL version of the ! VC runtime library (i.e. <b>Debug Multithreaded DLL</b> or <b>Release ! Multithreaded DLL</b>). \subsection inst_win_usage Usage --- 107,112 ---- NB: The ohxll build of ObjectHandler requires a DLL version of the ! VC runtime library (i.e. <b>Debug CRTDLL</b> or <b>Release ! CRTDLL</b>). \subsection inst_win_usage Usage |
From: Eric E. <eri...@us...> - 2006-10-18 13:01:32
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv21879/ohxl Modified Files: .cvsignore Log Message: put functioncount.hpp in Functions directory Index: .cvsignore =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/.cvsignore,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** .cvsignore 28 Sep 2006 15:46:20 -0000 1.4 --- .cvsignore 18 Oct 2006 13:01:26 -0000 1.5 *************** *** 2,7 **** Makefile.in export.hpp - functioncount.hpp - functions.cpp - register.cpp - unregister.cpp --- 2,3 ---- |
From: Eric E. <eri...@us...> - 2006-10-18 13:01:32
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl/ohxllib In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv21879/ohxl/ohxllib Modified Files: ohxllib.vcproj ohxllib_vc8.vcproj Log Message: put functioncount.hpp in Functions directory Index: ohxllib_vc8.vcproj =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/ohxllib/ohxllib_vc8.vcproj,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** ohxllib_vc8.vcproj 5 Oct 2006 20:16:39 -0000 1.13 --- ohxllib_vc8.vcproj 18 Oct 2006 13:01:29 -0000 1.14 *************** *** 418,422 **** </File> <File ! RelativePath="..\functioncount.hpp" > </File> --- 418,422 ---- </File> <File ! RelativePath="..\Functions\functioncount.hpp" > </File> Index: ohxllib.vcproj =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/ohxllib/ohxllib.vcproj,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** ohxllib.vcproj 17 Oct 2006 18:31:04 -0000 1.11 --- ohxllib.vcproj 18 Oct 2006 13:01:29 -0000 1.12 *************** *** 405,409 **** </File> <File ! RelativePath="..\functioncount.hpp"> </File> <File --- 405,409 ---- </File> <File ! RelativePath="..\Functions\functioncount.hpp"> </File> <File |
From: Eric E. <eri...@us...> - 2006-10-18 13:01:32
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl/Functions In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv21879/ohxl/Functions Modified Files: .cvsignore manual.cpp Log Message: put functioncount.hpp in Functions directory Index: .cvsignore =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/Functions/.cvsignore,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** .cvsignore 3 Oct 2006 09:32:37 -0000 1.2 --- .cvsignore 18 Oct 2006 13:01:29 -0000 1.3 *************** *** 1 **** --- 1,2 ---- functions.cpp + functioncount.hpp Index: manual.cpp =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/Functions/manual.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** manual.cpp 9 Oct 2006 09:48:27 -0000 1.2 --- manual.cpp 18 Oct 2006 13:01:29 -0000 1.3 *************** *** 24,28 **** #include <ohxl/conversions.hpp> #include <ohxl/functioncall.hpp> ! #include <ohxl/functioncount.hpp> #include <sstream> #include <map> --- 24,28 ---- #include <ohxl/conversions.hpp> #include <ohxl/functioncall.hpp> ! #include <ohxl/Functions/functioncount.hpp> #include <sstream> #include <map> |
From: Eric E. <eri...@us...> - 2006-10-18 13:01:32
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl/ohxll In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv21879/ohxl/ohxll Modified Files: ohxll.vcproj ohxll_vc8.vcproj Log Message: put functioncount.hpp in Functions directory Index: ohxll_vc8.vcproj =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/ohxll/ohxll_vc8.vcproj,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** ohxll_vc8.vcproj 5 Oct 2006 20:16:39 -0000 1.14 --- ohxll_vc8.vcproj 18 Oct 2006 13:01:29 -0000 1.15 *************** *** 309,312 **** --- 309,316 ---- </File> <File + RelativePath="..\Functions\functioncount.hpp" + > + </File> + <File RelativePath="..\Functions\manual.cpp" > Index: ohxll.vcproj =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/ohxll/ohxll.vcproj,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** ohxll.vcproj 5 Oct 2006 20:16:39 -0000 1.9 --- ohxll.vcproj 18 Oct 2006 13:01:29 -0000 1.10 *************** *** 227,230 **** --- 227,233 ---- </File> <File + RelativePath="..\Functions\functioncount.hpp"> + </File> + <File RelativePath="..\Functions\manual.cpp"> </File> |
From: Ferdinando A. <na...@us...> - 2006-10-17 18:31:06
|
Update of /cvsroot/objecthandler/ObjectHandler/ohxl/ohxllib In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv7250/ohxl/ohxllib Modified Files: ohxllib.vcproj Log Message: Index: ohxllib.vcproj =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ohxl/ohxllib/ohxllib.vcproj,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** ohxllib.vcproj 5 Oct 2006 20:16:39 -0000 1.10 --- ohxllib.vcproj 17 Oct 2006 18:31:04 -0000 1.11 *************** *** 4,7 **** --- 4,8 ---- Version="7.10" Name="ohxllib" + ProjectGUID="{F7772758-2AD8-4420-92D5-154F549566C1}" SccProjectName="" SccLocalPath=""> |
From: Chiara F. <chi...@us...> - 2006-10-17 17:12:54
|
Update of /cvsroot/objecthandler/ObjectHandler In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv8832 Modified Files: ObjectHandler_vc8.sln Log Message: Index: ObjectHandler_vc8.sln =================================================================== RCS file: /cvsroot/objecthandler/ObjectHandler/ObjectHandler_vc8.sln,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** ObjectHandler_vc8.sln 28 Aug 2006 10:02:09 -0000 1.9 --- ObjectHandler_vc8.sln 17 Oct 2006 17:12:51 -0000 1.10 *************** *** 1,5 ****  Microsoft Visual Studio Solution File, Format Version 9.00 ! # Visual C++ Express 2005 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ExampleCpp", "Examples\C++\ExampleCpp_vc8.vcproj", "{90BF5136-C003-45AB-BB63-7AE014A07F4E}" ProjectSection(ProjectDependencies) = postProject --- 1,5 ----  Microsoft Visual Studio Solution File, Format Version 9.00 ! # Visual Studio 2005 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ExampleCpp", "Examples\C++\ExampleCpp_vc8.vcproj", "{90BF5136-C003-45AB-BB63-7AE014A07F4E}" ProjectSection(ProjectDependencies) = postProject *************** *** 35,40 **** Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xlsdk", "xlsdk\xlsdk_vc8.vcproj", "{4BD77A1E-AAE9-47A4-81FE-2308E5A460AF}" EndProject - Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gensrc", "gensrc\gensrc_vc8.vcproj", "{88BE5568-6E55-41C5-A251-670FAFB44336}" - EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ExampleXllDynamic1", "Examples\xl\ExampleXllDynamic1_vc8.vcproj", "{BB902802-D59B-466F-ABB6-23368860D803}" ProjectSection(ProjectDependencies) = postProject --- 35,38 ---- *************** *** 45,48 **** --- 43,48 ---- Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "docs", "Docs\docs_vc8.vcproj", "{74479EEA-CD1C-487E-8D31-F3EBF506ED40}" EndProject + Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ohgensrc", "gensrc\ohgensrc_vc8.vcproj", "{88BE5568-6E55-41C5-A251-670FAFB44336}" + EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution *************** *** 113,126 **** {4BD77A1E-AAE9-47A4-81FE-2308E5A460AF}.Release|Win32.ActiveCfg = Release|Win32 {4BD77A1E-AAE9-47A4-81FE-2308E5A460AF}.Release|Win32.Build.0 = Release|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.All|Win32.ActiveCfg = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.All|Win32.Build.0 = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug CRTDLL|Win32.ActiveCfg = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug CRTDLL|Win32.Build.0 = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug|Win32.ActiveCfg = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug|Win32.Build.0 = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Release CRTDLL|Win32.ActiveCfg = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Release CRTDLL|Win32.Build.0 = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Release|Win32.ActiveCfg = All|Win32 - {88BE5568-6E55-41C5-A251-670FAFB44336}.Release|Win32.Build.0 = All|Win32 {BB902802-D59B-466F-ABB6-23368860D803}.All|Win32.ActiveCfg = Release CRTDLL|Win32 {BB902802-D59B-466F-ABB6-23368860D803}.Debug CRTDLL|Win32.ActiveCfg = Debug CRTDLL|Win32 --- 113,116 ---- *************** *** 140,143 **** --- 130,143 ---- {74479EEA-CD1C-487E-8D31-F3EBF506ED40}.Release|Win32.ActiveCfg = All|Win32 {74479EEA-CD1C-487E-8D31-F3EBF506ED40}.Release|Win32.Build.0 = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.All|Win32.ActiveCfg = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.All|Win32.Build.0 = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug CRTDLL|Win32.ActiveCfg = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug CRTDLL|Win32.Build.0 = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug|Win32.ActiveCfg = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Debug|Win32.Build.0 = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Release CRTDLL|Win32.ActiveCfg = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Release CRTDLL|Win32.Build.0 = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Release|Win32.ActiveCfg = All|Win32 + {88BE5568-6E55-41C5-A251-670FAFB44336}.Release|Win32.Build.0 = All|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution |