2005-09-11 OpenSCADA 0.4.0 - /System: OpenSCADA 0.4.0 released. - /System: Add release 0.4.0 overview document. - /System: Update the to do document. - /System: Update the roadmap document. 2005-09-10 - /Contr/BlockCalc: Fixed no stoped timer and reassign signal SIGALRM handler. - /Contr/OperationSystem: Fixed no stoped timer and reassign signal SIGALRM handler. - /Contr/DiamondBoards: Relised 0.5.0. - /Contr/DiamondBoards: Add documentation. - /Transport/Sockets: Relised 1.2.0. - /UI/QTCfg: Relised 1.0.0. - /UI/WebCfg: Relised 1.2.0. - /System: Fixed early node enabled for TValue. 2005-09-09 - /Special/FreeFuncLibs: Fix connect/disconnect module. - /Special/FreeFuncLibs: Relised 0.5.0. - /Special/FreeFuncLibs: Add documentation. - /Special/StaticFuncLibs: Relised 0.9.0. - /Special/StaticFuncLibs: Add documentation. - /Special/SystemTests: Relised 1.2.0. - /Contr/BlockCalc: Relised 0.5.0. - /Contr/BlockCalc: Add documentation. - /Contr/OperationSystem: Relised 0.7.0. - /ModSchedul: Fix connect/disconnect modules. - /UI/QTCfg: Fix change language trap. 2005-09-07 - /Archive/BaseArh: Relised 0.4.0. - /DB/DBF: Relised 1.6.0. - /DB/MySQL: Relised 1.1.0. - /DB/SQLite: Relised 1.0.0. - /Protocol/HTTP: Relised 1.2.0. - /System: Remove function TModule::modConnect(). To use function TCntrNode::postEnable(). - /System: Make warning TValFunc and TFunction at structure changed. - /System: Fix orthographical error sequrity to security 2005-09-02 - /Special/FreeFuncLibs: Fix the two parameters build functions code generation. - /System: Add demo data bases. - /Doc: Update OpenSACAD project finised. - /System: Update spec-file. 2005-09-01 - /System: Fix many bugs; - /System: Add generic system load and saving. - /System: Add functions TSubSYS::subSave() and TModule::mosSave(). - /System: Remove test subdirs and add demo subdirs. 2005-08-23 - /System: Add function TElem::fldAvoid(); - /Archive/BaseArh: Reviewed and optimized. - /Archive/BaseArh: Make fast geting of the archive file info (without XML-parsing) - /Archive/BaseArh: Remove fragmen-effect. - /Archive/BaseArh: Make the archive file size and the files number control. - /System/Doc: Update system documentation. 2005-08-16 - /Spec/test_kernel: Add the contol language test. Test used from debug access to elements of page. - !!!!: /System: Delete function TError::what(). Use public atributes cat and mess. - !!!!: /System: Add the back link to TCntrNode object. - !!!!: /System: Subsystems were optimized and put to TCntrNode-container of TError object. - !!!!: /System: TGRPModule rename to TSubSYS and use as generic subsystem class. You can add new subsystems from your modules now. Fix TCntrNode tree break into subsystems. Rename files tgrpmodule.* to tsubsys.*. - /System: Delete function TMess::put_s(). Now using TMess::put() function. - /System: Delete internall message-function mPut*() from system's objects. Now using TMess::put() function. - !!!!: /System: For create messages using the full path from function TCntrNode::nodePath(). - !!!!: /System: Delete node TKernel. Node funtctions move to TSYS. Delete files: tkernel.h and tkernel.cpp - !!!!: /System: Replace functions owner() to the node preview functions TCntrNode::nodePrev(). - /System: Delete the access chain config file based at cfgNode(). For access now using function TCntrNode::nodePath(). - /System: Restore the help call from command line (-h, --help). - /System: Translate of the base information system messages to Russian and Ukranian languages. - /Arhive/Message: Make category messages filter at patterns. Support special symbols: '*', '?', '\'. - /System: Messages subsystem reconstruction finised. - /System: Make separate files for object ResAlloc (resalloc.cpp, resalloc.h) - /System: Rename all modules to humanly names. 2005-08-03 - /System: Project's tree renamed to OpenSCADA. - /Controller/diamond: Add translate to Russian and Ukranian languages. - !!!!: /System: Separate element type and flags into TFld. Update TConfig, TValue, all system and modules. - /System: Separate functions TConfig::getS(), ... ,TConfig::getB() to functions for direct(getSd()) and universal(getS()) access. - /System: Make universal access for functions TValFunc::getS() ... TValFunc::getI(). - /System: Add makroses vmin() and vmax(). - /System: Make universal access for functions TValue::getS() ... TValue::getI(). - !!!!: /Spec/FreeFunc: Full rebuild compiler and VM. Make support of four data types: bool,int,real,string. Add buildin functions. Delete generic access to local variables. - /Spec/FreeFunc: Update Russian and Ukranian translate. - /Controller/virtual: Add translate to Russian and Ukranian languages. - /UI/QTCfg: Add checking atribute "descr" to a size for the changing structure page detect. 2005-07-14 - !!!!: AutoHD: Make no dependent from TContrNode. To AutoHD can connect to every object with functions: connect() and disConnect(). - All: Update include calls from *.h files. - TSYS: Move the string proces function from TContrNode to TSYS. - UI: WebCfg: Use the string proces function. - UI: QTCfg: Use the string proces function. - UI: QTCfg: Fix the listbox no select element trap. - Spec: StatFunc: Add Russian and Ukranian translates. - Spec: FreeFunc: Add Russian and Ukranian translates. 2005-07-07 - !!!!: Special: FreeFunc: Make interpreter based at Byson syntax creator. - Special: FreeFunc: Add library "tech_app". - !!!!: Special: FuncStatic: Add "math" library. - UI: QTCfg: Make autocreating qtcfg.moc. - UI: QTCfg: Return to using of QCheckTableItem from QTable. No cheking was for theme Aloy! - UI: QTCfg: Fix index list using for the command checkbox. - UI: QTCfg: To extend list command for index list. - UI: WebCfg: To extend list command for index list. - !!!!: Replace functions checkCommandLine() and updateOpt() at load() everywhere. - !!!!: TKernel: Add function load() and start() instead run(). - !!!!: TKernel: Rename subsystem's names. - !!!!: TGrpModule and childs: Replace function gmdInit() to gmdLoad(). - TGrpModule: Add function gmdStart() and gmdStop(). - !!!!: TMessage: Rename to TMess. - !!!!: TMess: Set message level to union Type. - !!!!: TMess: Add function load(). - TFuctionS, TLibFunc, TFunction: add function start() and state started. - TModSchedul: Redisined API. Add function loadLibS(), load(), loadAll(), startAll(), stopAll() and schedStop(). - TModule: Add function modStart(), modStop(). - TSecurity: Replace init() to load(). - TSYS: make periodic calc CPU frquency (for notebooks) and put to Control lang. - DB: MySQL: Set field type "text" for strings with length > 200. - DOC: Add doc "Programming area of OpenSCADA" 2005-06-09 - Delete the individual modules path. Use single path. - !!!!: Make generic data access for several subsystems. - Control: Fix path to list element. - !!!!: Control: Make new API for operated to list elements. - !!!!: Control: Add operated API for table elements. - Control: Set default access timeout to 2sek. - Control: Delete the valid check from "set*" and "*get" functions. - Control: Add the empty check for new children - chldAdd(). - Modules: Separate modules name to 'id' and 'name'. - BDS: Fix TBDS::open() for close DB if open table error. - BDS: Add the control for opened tables. - Functions: Use indes-list. - Functions: Add functions ioSize(), ioIns(), ioDel(), ioMove(). - Functions: Add TLibFunc::avoid(). - Functions: Move IO from TFunction. - Functions: Change IO tables view. - !!!!: Functions: Separate IO type to type and mode. - GrpModule: Delete gmdModPath(). - SYS: Add TZ(). System timer clock. - BD::SQLite: Set exception catcher into destructor. - Protocol::http: Adapted to XHTML1.0. - !!!!: Special::FreeFunc: Make library, function and IO without interpretation. - Special::TestKernel: Add The function subsystem test. - Controller::diamond: Add DIO support. - Controller::system: Add OpenSCADA use CPU control. - UI::QTCfg: Add full support of index list. - UI::QTCfg: Add the table modification support. - UI::QTCfg: Add string field modification controll. - UI::QTCfg: Add the QTextBox modification support. - UI::QTCfg: Add new API Control "Set" support. 2005-04-18 - Fix connect user headers to stdout headers. No close stdout, stdin and stderr for demon mode! - Control: add index-list support; - Subsystem: Go to true index-list. - TGrpModule: Add subsystem index. - !!!!:Control: All move to new API and delete old API support. - Contoll: Fix root field make into ctrInsNode(). - TConfig: Make view no blocked. Only stat flag! - TConfig: Rename change() to cfgChange() - TParamContr: Add "Enable" parameter state. - TVal: Fix call function vlSet() from setR(). - TContr::SYS: Add "Enable" mode support. - !!!!: Add controller type "Diamond" to repository. - UI: WebCfg: Add index-list support. - UI: QtCfg: Add index-list support. - UI: Fix exception trap. 2005-04-03 - Spec: Change requires - Spec: Add init.d script and PreReq: chkconfig - Spec: Add post and preun scripts for init.d - Spec: Change config directory operation - Move config file from doc/oscada.xml to oscada.xml - Add init script to repository. File oscada.init - SYS: Add demon load mode. - Archives, Transports: Go to new control API. - DB: Make no terminated mode for TBDS::open() and TBDS::close(). - DB: Add function TBDS::dataSeek() for generic access to data (first DB -> second config file) - TCntrNode: Make true access to Controll nodes. Fix function cntrCmd() - !!!!: Change to lower-size metod access for more function. Use instead type parameters. - TKernel, TGrpModule, TModule, TSYS: Add function cfgNodeName(). Use for make path to Object node into config file. - TMessage, TSYS: Fix no checking of a return value function getenv(); - TKernel: Move atributes of the default DB to private section; - !!!!: Go to using default DB from all subsystems. - XMLNode: Add function attr_() for space saving. - UI:QTCfg: Add signal handler for pressing at the navigation tree. 2005-03-18 - TContrNode: Add new Info API internal cntrCmd_() instaed ctrStat_(). New API allow request internal branches. - TArhives: Go to new Controll API. - TSYS: Add the Config file seek function. - TTransportS: Use the config file seek function if DB no avoid. - XML::attr: Delete parameter 'add'. Now, always add atributes. 2005-03-17 - Add Generic BD support. Add option to TKernel and adapted all subsystems. - TSYS: Add function strSepParse for safe parsing a patern parameters (prm1:prm2:prm3). Adapted all subsystems. - UI::WebCfg: Fix table's parsing. 2005-03-16 - Add default config file doc/oscada.xml for install to /etc/oscada.xml - Rename test/oscada.xml to test/oscada_test.xml - Delete cfg/alg.cfg - Delete default station name and make load first avoid station config if not found wanting. - Add athena build to specfile. 2005-03-08 - DB: Fix close DBs and tables; 2005-03-05 - !!!!: Integrate TContr and THD to TContrNode. Make tree resource controll and full rebuild. - TContrNode: Add simple prefix support for branche's names; - TContrNode: Add summary client command function TContrNode::cntrCmd_(). To use instead function ctrDinGet_() and ctrDinSet_(). - !!!!: TContrNode: Add generic function TContrNode::cntrCmd() for simple access to controll tree. - TContrNode: Move self-parse function of TConfig and TValue to them. - UI::QTCfg: Use generic control function TContrNode::cntrCmd(). - UI::QTCfg: Make noredraw update of equal structure's pages. - UI::QTCfg: Add Quit menu item. - UI::WebCfg: Use generic control function TContrNode::cntrCmd(). - UI::WebCfg: Add JavaScript based messages support; - UI::WebCfg: Add session class. - !!!!: Add virtual block controller: Controll::virtual; - Move clean DB operations to self-object functions: TContrNode::postDisable; - BD: Replace TTable::fieldList() to TTable::fieldSeek(); - BD: Fix composite keys support. - !!!!: BD::MySQL - full rebuild (into SQLite style) - BD::MySQL - Disable sequence controll. MySQL nosupport misc ADD and AFTER into ALTER requests! - BD::SQLite - Move transaction function operators: "BEGIN" and "COMMIT" to DB open and close. - BD: Close DBs and tables if it no used. - Controller: full fix start/stop/enable/disable controller's procedure; - !!!!: Add function's subsystem. - !!!!: Add the static functions libraries modul. Include the Complex1 compatibility functions. - !!!!: Add the free functions libraries modul. - Main: Add try->catch block. - Main: Change kernel scaning to node-count method. - GroupModule: Make gmdDel() to novirtual and delete everywhere. Walk to TContrNode::pre[post]Disable(). - TError: Use makro __func__ for identify error points. - SYS: Set LC_NUMERIC=C locale for correct float to string and back converting. - SYS: Use environment: LANGUAGE, LANG and LC_MESSAGES for full language controll. - SYS: Add short time dimension functions: sysClk() and shrtCnt(). - TModSchedul: Change Module's links storing. - TModule: Change acces to export finctions. Change function modGetFunc() and modFreeFunc() to modFunc(). - TModule: Add register function modFuncReg(); - XML: Add copying operator: operator=(); - And more small changes! 2004-12-11 - BD::sqlite Relised 0.9.0 version 2004-12-07 - !!!!: add sqlite BD-module; - TModschedul: remove Path converting; - Archive::Base: remove Path converting; - Special::TestKernel: add The modify table structure test for DB-test; 2004-11-11 OpenSCADA 0.3.1 (Bug fix) - fix UI::QTCfg for qt-3.1.1. - fix UI::QTCfg form widgets display. - fix Transport::socket Pthread flow memory bug. Use PTHREAD_CREATE_DETACHED metod!!! - fix TConfig, TCfg - no return object from operator=()! - fix TContr::SYS length of atribute "seconds full" for uptime more than 5 symbols. - add ru and uk localization: - BD::direct_dbf; - BD::my_sql; - Special::test_kernel; - add doc for modules - Protocol::http; - Special::test_kernel; - Controller::sys; - Transport::socket; - UI::web_cfg; - UI::QTCfg; 2004-11-03 OpenSCADA 0.3.0 - !!!!: Release modules: ui_qtcfg 0.9.0; ui_web_cfg 1.1.0; bd_my_sql 1.0.0; bd_direct_dbf 1.5.0; spec_test_kernel 1.0.0; arh_base 0.3.0; prot_http 1.1.0; cntr_sys 0.6.0; cntr_virt1 0.0.15; tr_socket 1.1.0; - !!!!: Anywhere fix public functions name (to Java style). - !!!!: BD: Change module API for access to table! - !!!!: BD: Add full support MySQL BD to bd_my_sql module! - !!!!: UI: Add QT based configurator! - !!!!: Add documents: release_0.3.0.sxw, roadmap.sxw, task_history.sxw, to_do.sxw - !!!!: Add documents from modules: Archive::base_arh, BD::direct_dbf, BD::my_sql - !!!!: Full update generic document: - !!!!: Delete modules: and - !!!!: spec_test_kernel: add tests: bd and transports. Make multitest support! - !!!!: Add anywhere! - !!!!: TConfig: Delete multi-fields support and make it to generic structure for tabes! - Delete Table: and - Add Table: and - Add diagram: - UI::qtcfg: Add files: dlguser.cpp, dlguser.h for user dialog! - UI::qtcfg: Delete file: qtcfg.ui! - UI::qtcfg: Add images to repository! - UI::qtcfg: Fix go childs method! - Remove from repository all *.pot files! - TFld&TElem: Change method create/load new fields! - TMessage: rename and replace structure SBufRec to TMessage::SRec; - TContr: Change Table support. Delete internal commands! - TContr: Delete function . And comands move to function ! - TConfig: Add flag F_KEY for marked BD key element! - THD: fix no releasing resources in the time waiting of free resources! - THD: Add function for check avoid of object: ; - TMessage: Put messages to bufer always! - Update TContr XML language content for all subsystems! - Add of deleting The Table fields if deleted Element! - TTipController: Clean odd function! - TTransports: Separated input and output transports! - XMLNode: Delete new_xml() and public clean() function! 2004-10-07 - UI:qtcfg: Relised 0.5.0 version - !!!!: Fix name error Arhive to Archive, anywhere. - !!!!: BD: Full change access mode to "AutoHD<>" mode use. - !!!!: Controller: Full change access mode to "AutoHD<>" mode use. - !!!!: Parameter: Full change access mode to "AutoHD<>" mode use. - !!!!: BD: Fix public functions name (to Java style). - !!!!: Controller: Fix public functions name (to Java style). - !!!!: GRPModule: Fix public functions name (to Java style). - !!!!: Module: Fix public functions name (to Java style). - !!!!: Archive: Fix public functions name (to Java style). - TTable: Add owner to object. - TContr: Add pathCode() and pathEncode() functions. - TContr: Add "encode" option to ctr_path_l(). - TContr: Add "pos" option to ctr_cfg_parse(), ctr_val_parse() and ctr_fld_parse(). - THD: Add obj_avoid() for the avoid control. - TModule: Separate module "name" to "id" and "name". - Controller::virtual1: Add document directory and static diagram. - UI::qt_gui: Add document directory and "TZ" for Presentations Environment. 2004-09-09 - Move the Control tree into ctr_fill_info() for all; - Update the option help for all; - Made full path check into controll functions ctr_din_get(), ctr_din_set() .... - TContr: change list prefix from "sel:" to "sel_" - Add exception to last Control functions ctr_din_get(), ctr_din_set() .... - Fix Controll chains for all; - TMessage: change prototip functions: Sconv(), SConvIn(), SConvOut(); - XML: add clean_childs() function and fix destructor! - Protocol::http: Go to XHTML1.0 standart! - Controller::virtual_v1: Experemental add TFrm; - !!!!: Add UI::QTCfg modul! - !!!!: Del UI::QTGUI modul! 2004-07-25 OpenScada 0.2.6 - UI::web_cfg: Fix The fiel type "time"; - Archive::base_arh: Fix a parameter type for The function get(); - Module: Change the parameters type for The function attach(); 2004-07-24 OpenScada 0.2.5 (socket 1.0.0; http 1.0.0; direct_dbf 1.0.0; web_cfg 1.0.0; SysContr 0.5.0; ) - Released 2004-07-23 - !!!!: Add auto release to THD: AutoHD; - Replace call parameters to <& string> for fast and size; - TContr: Change attach metod to metod with AutoHD; - TArchiveS: delete the bridge attach functions; - TTransportS: delete the bridge attach functions; - TValue: Add AutoHD resources for access to atribute; - THD: Add function hd_hd() and hd_obj(); - Update Test BD; 2004-07-13 - Add Copyright to all source files; - TCfg: Add and check of visible a config element; - TValue: Add modifily of TValue; - TParamContr: Fix no return value if attribut no avoid; 2004-07-12 - Admin: Delete clean_tree. For clean tree use ; - !!!!: Add localisation to the controller SYS; - !!!!: TArchives: Made separe BD for the value and message Archives; - !!!!: Merge TConfigElem and TValueElem to TElem; - !!!!: Add TVal for TValue container; - !!!!: Add TCfg for TConfig container; - TContr: Made direct init the XMLNode value; - TContr: Add value parser; - TContr: Add write mode controll; - Change enable and start mode manipulation: - TController; - TParamContr; - TTransportS; - TUIS; - TSpecialS: Make private acces to Tvalue; - !!!!: TSYS: Make ResAlloc and apply autofreeing mode for resources (for - TSYS: Sygnal handling moved to constructor. - !!!!: TValue: fullish remake; - BD::direct_dbg: Fix long size for x86_64; - Special::test_kernel: Add value test; - Controller::virtual_v1: Fix value; - Controller::sys: Add: CPU, Mem, HDDTemp, LmSensors; - Transport::socket: update output transport; - UI::web_cfg: Add checking of change The group element after press "Apply" 2004-05-11 OpenScada 0.2.1 - The kernel libs build were updated, and The kernel version was added. - Necesarely static part was deleted from TContr. 2004-04-11 OpenScada 0.2.0 - !!!!:AUTOMAKE: make better integration: - set default prefix to /usr; - define locale dir: oscd_localedir; - add modul prefix; - move modules to self directories; - add a self modules po directory; - make po/Makefile.am for kernel and modules - add EXTRA_DIST everywhere; - !!!!:RPM: full update OpenScada.spec: - make 3 packets: OpenScada, OpenScada-devel, OpenScada-testdata; - add languages: ru, uk - make packages from 'make -dist' package; - !!!!:Delete bin directory; - !!!!:Add test directory; - TConfigElem: From struct delete field view and add types: DEC, OCT, HEX - I18N: Make for: ALL! - TArchives: make firs start Archives and second Get message counter. - TArchives: add quit attribute for do make last get message cycle before quit. - HELP: Go to standart structure describe of options descriptions. - TContr: Add access symbol ',' for real type. - TContr: Add interim function ctr_cmd_go. - TContr: Add function for TConfig support: ctr_cfg_parse, ctr_cfg_get, ctr_cfg_set - !!!:TController*: Full rebuild controll scheme! - THD: Esceptions messages fix. - TMessage: add functions: lang. - TModule: add translate functions for modules: I18N, I18Ns - XMLNode: add exception to function get_child. 2004-03-17 OpenScada 0.1.17 (prot_http.so 0.6.0; tr_socket.so 0.6.0; ui_web_cfg.so 0.6.0; arh_base 0.1.0 ) - Rewrite configure.in and change to Automake 1.7. - Replace common compile options to configure.in. - Make build static and dinamic executable modul. - !!!!:Go TControl to - TArchiveS - TKernel - TMessage - TModule - TProtocolS - TSecurity - TSYS - TTransportS - TUIS - Archive::base - Protocol::http - Transport::socket - UI::QT_GUI - UI::web_cfg - Change misc params names into config file to standart name "prm". - !!!!:TArchiveS: Change BD work metod. - TArchiveS: Add start and stop commands to Message Archives. - TArchiveS: Fix time check and add level sort into MessArhTask. - TArchiveS: Change metod of bd parameters stored. - TTable: Add function Clean(). - TConfig: Add integer, real and boolen functions returned pointer (for fast access) - TConfig: Fix trap with negative parameters into cf_SaveValBD; - TContr: Into ctr_id make field path processing. - TContr: Into chk_opt_val add checking file and directory avoid. - TContr: Del buffers using. - TContr: Add path parameter to ctr_det() and ctr_at() functions. - TGRPModule: Add exceptions to branch functions. - THD: Fix no freeing resource into obj_add() - TSecurity: add subsystems functions. - TSecurity: Full made. - TSecurity: Add sequrity table: security.dbf. - TSYS: add static function int2str() and real2str() for central converting values to string. - !!!!:TTransportS: Change BD work metod. - TTransportS: Add start and stop commands to transports. - TTransportS: Change metod of bd parameters stored. - XML: Add new get_child for access throw id name of node. - BD::direct_dbf: Fix resource blocking into AddColum(). - Protocol::http: Fix fragmentation request processing (Konqueror specific). - Transport::socket: Add start() and stop() commands - UI::web_cfg: Add about page, head all info pages, navigation field, user stat field and more other changes. - DOC: Litle changes. 2004-03-04 OpenScada 0.1.16 (prot_http.so 0.5.0; tr_socket.so 0.5.0; ui_web_cfg.so 0.5.0) - Add "s_name" for store The humanly modules subsystem name - TGRPModule - TModSchedul - TParamS - TSecurity - !!!!: Make change per language specification to - !!!!:UI::web_cfg - TContr - TGRPModule - TKernel - TModSchedul - TModule - TParamS - TSecurity - TSYS - !!!!:DOC: Make cotrol language specification - TKernel: add checking stat controller (no second run) - Change comandline help function to for: - TKernel - TMessage - TSYS - TMessage: delete prefix "*:" from messages. Station prefix must add TArchive - TProtocols: Change return value function ! (For support brackes and no full messages) - Protocol::http: make support brackes and no full messages; - Protocol::http: repair check message content and variables; - Transport::socket: set default input buffer to 1k; - Transport::socket: make support brackes and no full messages; - !!!!:UI::web_info: deleted; 2004-02-18 OpenScada 0.1.15 (prot_http.so 0.3.0; tr_socket.so 0.3.0; ui_web_cfg.so 0.3.0) - !!!!:NEW: Add security subsystems. Objects: TSecurity, TUser, TGroup - tsecurity.cpp(h) - !!!!:NEW: Make new message system for direct point message from! - TMessage: Set default debug level to 0; - TMessage: Add function put_s; - !!!!:TMessage: Add and use direct message functions: m_put, m_put_s to: - tgrpmodule.cpp(h) - tArchives.cpp(h) - tcontrollers.cpp(h) - tcontroller.cpp(h) - tkernel.cpp(h) - tmodshedule.cpp(h) - tmodule.cpp(h) - tsys.cpp(h) - transports.cpp(h) - Special::test_bd; - Special::test_kernel; - Special::test_transp; - Controller::virtual_v1; - Transport::socket; - TContr: add functions: - ctr_id( XMLNode &inf, string name_id ); - chk_opt_val( XMLNode *fld, bool fix ); - ctr_din_set( XMLNode *fld); - ctr_din_get( XMLNode *fld); - TContr: delete: - ctr_opts_apply; - ctr_br_add; - ctr_br_del; - ctr_br_rot; - TContr: rename: - ctr_opt to "ctr_opt( XMLNode *inf, unsigned numb)"; - ctr_opt_getS to "string ctr_opt_getS(XMLNode *fld)"; - ctr_opt_getI to "int ctr_opt_getI(XMLNode *fld)"; - ctr_opt_getR to "double ctr_opt_getR(XMLNode *fld)"; - ctr_opt_getB to "bool ctr_opt_getB(XMLNode *fld)"; - ctr_opt_getB to "bool ctr_opt_getB(XMLNode *fld)"; - ctr_opt_setS to "ctr_opt_setS(XMLNode *fld, string val)"; - ctr_opt_setI to "ctr_opt_setI(XMLNode *fld, int val)"; - ctr_opt_setR to "ctr_opt_setR(XMLNode *fld, double val)"; - ctr_opt_setB to "ctr_opt_setB(XMLNode *fld, bool val)"; - ctr_br_putlist to "ctr_br_putlist(XMLNode *fld, vector string); - ctr_cmd_go to "ctr_cmd_go(XMLNode *fld)"; - ctr_att to "unsigned ctr_att( XMLNode *br ); - ctr_at to "TContr &ctr_at( XMLNode *br ); - TGRPModule: replace function ctr_opts_apply to ctr_din_get; - TKernel: replace function ctr_opts_apply to ctr_din_get; - TModSchedul: use static access to resources; - TModSchedul: delete ctr_opts_apply; - TModule: replace function ctr_opts_apply to ctr_din_get; - TProtocols: add parameter sender into function mess; - TSYS: replace function ctr_opts_apply to ctr_din_get; - TSYS: add function ctr_cmd_go; - TSYS: change size temporary buffers to 2024; - XML: add function del_child; - Protocol::http: add parameter sender into function mess; - Protocol::http: add values parsing and contein evolve; - Protocol::http: add POST metod support; - Protocol::http: update index page; - Protocol::self: add parameter sender into function mess; - Transport::socket: add parameter sender into function PutMess for support TProtocol::mess; - Transport::socket: change parameter of ClSock from 'int sock' to 'SSock &s_in'; - Transport::socket: add field sender into struct SSockIn; - !!!!:UI::web_cfg: make base user config interface with support: security, view value, command branch, change value, put command and jump to next branch; - UI::web_dbg: add export function HttpPost; - UI::web_dbg: add parameter sender into function HttpGet; - UI::web_info: add export function HttpPost; - UI::web_info: add parameter sender into function HttpGet; - UI::web_info: update html generator; - DOC: update static class diagram and add Control language description; 2004-02-05 OpenScada 0.1.12 (prot_http.so 0.1.0; ui_web_info.so 0.1.0) - TBDS: add function delete tables del(); - TContr: add atribute "o_name"; - TContr: make check "fld" nodes to ctr_opt_get and ctr_opt_set; - TContr: change brance name store from Node->text to Node->attr("id"); - TContr: delete inf from ctr_opt_apply(); - TContr: add apply flag into functions: ctr_opt_get*(); - integrate to standart control (TContr) for: - tgrpmodule.cpp(h) - tkernel.cpp(h) - tmodschedul.cpp(h) - tmodule.cpp(h) - tparams.cpp(h) - TMessage: move function setlocale(LC_ALL) from TSYS to TMessage; - TMessage: add resource to message buffer manipulations; - TMessage: rename function: SetDLevel->d_level; SetLogDir->log_direct; SetCharset->charset - TMessage: add function mess_buf_len (for set and get size of inernal message buffer) - TProtocolS: rebuild protocol arhitecture. Make individual transport mode for input protocols (scheme Open,Close,At). - TSYS: add TMessage option into TControl; - TSYS: make branchs links; - Protocol::http: make individual transport mode; - Protocol::http: make index page for dysplaing and linking witch web modules; - Protocol::self: make individual transport mode; - BaseDate::my_sql: fix delete and create table; - Transport::socket: add socket header to PutMess for individual transport mode; - UI::web_info: make info pages from TControl subsystem of OpenSCADA; 2004-01-28 OpenScada 0.1.11 - integrate access header (THD) to: - tsys.cpp(h) - NEW: Add object TContr - tcontr.cpp(h) - TSYS: make resource functions as static; - THD: change access to static resource; - THD: add string description for attached user into hd; - TParams: add string description option into att; - start integrating to standart control (TContr) for: - tsys.cpp(h) - Special::test_kernel: add The base controll test; - Controller::virtual_v1: add Free to destructor; - Controller::virtual_v1: use pointers into vector for decrease module size; - Transport::socket: use value STD_WAIT_DELAY for sockets event wait; 2004-01-08 OpenScada 0.1.10 (cntr_virt1.so 0.0.9) - THD: add into constructor pointer into children object name; - THD: rename function: hd_obj_cnt -> obj_cnt; hd_obj_list -> obj_list; hd_obj_add -> obj_add; hd_obj_del -> obj_del; - THD: delete dublicating function: obj(unsigned i_hd); - THD: add function obj_rotate() for change trim object into list; - TConfig: change type of return value to "&" for fast access for functions: cf_Get_SEL() and cf_Get_S(); - TController: add UnRegParamS() to Disable(); - TController: change return parameter for "string &Name()"; - TController: change prototip function ParamAttach(); - integrate access header (THD) to: - tcontrollers.cpp(h) - tparams.cpp(h) - TKernel: add into destructor stoping and disabling all controllers; - TParamContr: change constructor's prototipe; - TParamContr: del t_sync atribut; - TParamContr: change return type for "string &Name()"; - !!!!: TParam: full rebuild; - TParamS: add owner and o_name atributes; - Special::test_kernel: fix cycle time; - Special::test_kernel: update access into parameters; - Controller::virtual_v2: deleted; - !!!!: Controller::virtual_v1: full rebuild; - DOC: update roadmap, and modules description; 2003-12-30 OpenScada 0.1.9 - build: rename OpenScada kernel library to liboscada.la; - build: change to default static build - build: fix bug 4 (add link options -Wl,-whole-Archive and -z modules - tArchives: add copyright title - !!!!: global: add version to type modules and make check version; - THD: add timeout support into hd_obj_del; - TModule: rename field "FileName" to "Source" - Archive::base_arh: add copyright title - Archive::base_arh: add contol Archives file permission - DOC: update doc 2003-12-23 OpenScada 0.1.8 - Threads: add function pthread_join for wait of pthread clean. - TConfig: fix no ANSIC++ standart call function vector::insert(); - TMessage: fix no ANSIC++ standart call function vector::insert(); - TValueElem: fix no ANSIC++ standart call function vector::insert(); - Controller::virtual_v1: fix no ANSIC++ standart call function vector::insert(); - Controller::virtual_v2: fix no ANSIC++ standart call function vector::insert(); - TController: use object SBDS for store bd address; - TController: add call function Stop() and Free() into destructor; - TTipController: use SBDS into ContrAttach(); - BD::my_sql: add define option USE_OLD_FUNCTIONS for use old functions; - DOC: make numbering of bugs; 2003-12-16 OpenScada 0.1.7 - TSYS: add STD_WAIT_DELAY define constant; - TSYS: use STD_WAIT_DELAY into ResDelete(), WResRequest() and Start(); - TSYS: add function "event_wait" for central control for slep wait and fast check go events! - event_wait() use into: - TArchives; - TTipBD; - TBD; - TModSchedul; - Archive::base_arh; - Special::test_kernel; - Controller::virtual_v1,virtual_v2; - Transport::socket; - UI::QT_GUI; - THD: add hd_obj.free(): stat object for signal about 0 objects (for event_wait() ); - TArchiveS: made store BD adress into SBDS; - TArchiveS: use STD_WAIT_DELAY into MessArhTask(); - TTable: delete noused: ENTER() and EXIT(); - TController: move ParamAttach() into private section; - TControllerS: made store BD adress into SBDS; - TKernel: delete dublication calls CheckComandLine() and UpdateOpt() into starting; - TModSchedule: use STD_WAIT_DELAY into SchedTask(); - TParamS: connect into TConfig (but no use, while )! - TTransportS: made store BD adress into SBDS; - Special::test_kernel: use STD_WAIT_DELAY into SchedTask(); - Special::test_kernel: add atribut "on" into config tree; - Update doc; 2003-12-09 OpenScada 0.1.5 (bd_direct_dbf.so 0.1.2) - add standart access header description !!!!! ( add files: thd.cpp, thd.h ) - integrate access header to: - tArchives.cpp(h) - tbds.cpp(h) - tcontrollers.cpp(h) - tgrpmodule.cpp(h) - ttipcontroller.cpp(h) - ttransports.cpp(h) - TTable: change tables call mode. Move resources to modules; - TTable: add Name(); - TTipArchive: rename at_tp() to gmd_at(); - TBDS: rename at_tp() to gmd_at(); - TControllerS: rename at_tp() to gmd_at(); - TProtocolS: rename at_tp() to gmd_at(); - TTransportS: rename at_tp() to gmd_at(); - TGRPModule: change element type to string: NameType; - TMessage: change parameters type for functions: SconvIn, SconvOut, Sconv - TModule: change element type to string: FileName, NameModul, NameType, Vers, Autors, DescrMod, License; - TSYS: add config parameters: m_cr_f_per, m_cr_d_perm. ( Set default permition for creating files and directories ) - bd_direct_dbf: make resource and internal string recoding; - spec_test_kernel: add config atribut "t_arh" and rename "Archive" to "arh" for MESS test; 2003-11-26 OpenScada 0.1.0 (arh_base.so 0.0.3; spec_test_kernel.so 0.0.4; tr_socket.so 0.1.1) - add defines to TSYS.h for fixed buffers len: STR_BUF_LEN; - delete using signal SIGALRM for stoped threads. Stoped threads self! - change return type of TArchiveS::Mess_at(), TArchiveS::Val_at(), TTipArchive::atMess() to TTipArchive::atVal(); - add debug printing pthread's pid for start; - rename TSYS::GetMess() to TSYS::get(); - fix bug of buffer overflov into: TError::TError(...), TMessage::put(); - replace bug method signals handle into TSYS::Start(); - XMLNode: add functions: ins_child(..); - arh_base: fix config's params; - arh_base: decrease scan dir frquence to 5 sec; - arh_base: change method of create the Archive file names (humanly date view); - arh_base: add owner to TFileArh; - arh_base: add get() functions; - arh_base: allocate resources at function TMessArh::ScanDir(); - arh_base: add atribut "m_access" for control time access to Archive file and free Archive file memory if long not use; - arh_base: add data sort controll to put(); - arh_base: add support of free memory to Sync(); - arh_base: delete codepage support functions; - spec_test_kernel: add nolimyted wait of task stoped; - spec_test_kernel: update MESS test. Add system Archive and select kenel module Archive test. - spec_test_transport: add SIGPIPE signal handler ( Broken pipe signals go! ) - tr_sock: add wite client task stoped to TSocketIn::Task(); - tr_sock: delete TSocketIn::sighd(); - tr_sock: add using select to TSocketIn::ClSock(); - tr_sock: fix error into TSocketIn::UnregClient(). Element first free and second using!!! - tr_sock: fix unlimited while cicle into TSocketIn::~TSocketIn(); - ui_QT_GUI: add unllimited white of closing qt window; 2003-11-26 OpenScada 0.0.9 - add support message Archives (write mode, read in future); - add OS/bin/Archive and OS/bin/Archive/MESS directory; - add Archives table: OS/bin/DATA/Archive.dbf; - add Archive module base_arh (moduls/arhiv/base.cpp and moduls/arhiv/base.h) - add description field to table OS/bin/DATA/generic.dbf and OS/bin/DATA/transport.dbf; - Update doc: - add general SCADA description; - add diagram SCADA.dia; - rewiev doc; - separate resource to Read and Write resource; - add requesting to write resource into ResDelete and add delete mode for generated exception when will go request resource; - add structure flags into TSYS resource (SSem); - use resources everithing; - update of debug info generate: - add debug informations; - change metod single used mode for TConfig ( simple for using and stability ) - change structure used into TConfigElem; - replace state identificator into TControllerS, from id_mod to use; - add gmd_DelM() into: TControllers, TTransportS, TArchiveS for free deleting module's elements; - raise buffer len up 1024b into TKernel ( fixed bufer this bad!! ); - rebuild modules sheduler: - check and fixed stat all modules into list; - replace list mod_allow and mod_deny to mod_auto. For auto attached and inited modules; - add function for simple attach and detach any avoid modul; - TModSchedule fully rewrited; - raise buffer len up 1024b into TMessage ( fixed bufer this bad!! ); - add level into message buffer of TMessage; - TMessage: add function GetCharset(); - TMessage: add into function GetMess() parameters: category and level; - Add to destructor of TModShedule detaching all modules; - Add check type config file into TSYS->UpdateOpt(); - Add intercepting signales SIGALRM and SIGPIPE into TSYS; - Add function TSYS->FixName() for convert path name to absolutely view; - Fix no cleaned atribute in function XMLNode::cleanup(); - Fix no loading atributes of root XML node into XMLNode::load_xml(); - add user mode for genarate XML file (XMLNode::get_xml()); - add XMLNode::new_xml() for cleaning XMLNode tree; - Fix time answer into "self" protocol module; - Add hard control to start and stop pthreads; - Add cycle testing mode to test_kernel special module; - Add Attach/Detach test mode to test_kernel special module; - Remain problem int QT_GUI UI module: no stoped pthread!!!!!; 2003-11-12 CVS commit - Add a kernel list and functions for kernel manipulating to TSYS; - Make TMessage first initing an last destroyed; - Move scan change config file to TSYS. Update system for change config file; - Move signal handler function to TSYS; - Add template description to TArchiveS (To next commit will have maked support Message Archives); - Clean n_opt atributes anywhere; - Update a message creating methodic (anywhere). Add category parameter for messages. - Add Name() function and atribut name to TKernel; - Add Message buffer to TMessage, add a process function for it and add config file options; - Add List clean to TValueElem; - Fix error mem malloc to TSYS for load config file buffer; (add null end byte) - Fix no free parser mem from XML, and set root value directly from load_xml; - Add test buffer and modify test Param to test_kernel module; - Add a template realised Controller module sys; - Update doc; 2003-11-04 CVS commit - add support XML to progect (add files xml.cpp and xml.h); - change simple text config to XML based config (delete /bin/scada.conf and add /bin/oscada.xml) - reserve to XML config multikernel and multistation support; - add multikernel to progect; - add function XMLCfgNode() to: TSYS - "OpenScada" and "station" node (attribute "id" - name station); TKernel - "kernel" named node (attribut "id" - name kernel); TGRPModule - groupe module "section" nodes (attribut "id" - name groupe modules); TModule - "module" nodes (attribute "id" - modules name); - update config file option; - free progect from want gcc option -D_GLIBCPP_DEPRECATED; - add message definrs: MESS_DEBUG, MESS_INFO, MESS_NOTICE, MESS_WARNING, MESS_ERR, MESS_CRIT, MESS_ALLERT, MESS_EMERG - add commandline option Station; - add XML parsing TEST to test_kernel.cpp test module (add option for enable/disable and select parsed file); 2003-10-28 CVS commit - rename type modules "GUI" to "UI" (user interface) - object TGUI to TUI; - TKernel element gui to ui; - rename files: tguis.cpp to tuis.cpp and tguis.h to tuis.h; - remove info elements: FuncList, FuncPrototip, FuncDescr from TModule::mod_info(); - add function: mos_ListFunc(), mod_Func() to TModule; - add first version OpenScada.spec file (for created RPM); - move special modules: web_cfg, web_dbg, web_info to ui type modules; - update doc; - rename qt_cfg to qt_gui and test updeted; 2003-10-14 CVS commit - separate file ttipparam.cpp from ttipcontroller.cpp; - change TController stat, create self bit for states mode; - anywhere add printing name modul a debug function's; - to TGRPModule rename function: gmd_StopAll -> gmd_Stop, gmd_InitAll -> gmd_Init, gmd_StartAll -> gmd_Start - from TModule remove function: mod_init, mod_deinit, mod_start, mod_stop - to TModule add function mod_connect (connecting to TGRPModule, add first checking commandline and config file) - to TGUIS add object TGUI and smal update; - add GUI modul qt_cfg.cpp (testing); - delete GUI modul test_gui.cpp; - from TModSchedul delete test section; - from TModule delete stat mode (make cheking to NULL); - to TParam and TParamS for function at() change return type to <&>; - to TSpecialS add object TSpecial with function Start, Stop; - to TValue change return type for vl_Elem() to <&>; - change kernel and modules version to type > 0.2.2; - add Special test modules: test_bd, test_kernel, test_transp; - update doc; 2003-10-07 CVS commit - move deleting modules to TGrpModule (central)! - for generality "at" and "operator[]" function change return value to <&> ( for simple use with operator[] and use <.> ) - create method Owner() instead public atribute owner; - move owner children of TModule to TModule and set owner to TGRPModule; - delete gmd_AddM from children of TGRPModule; - change BD, Archive ... atributes of TKernel to BD(), Archive() ... function - delete checking version of module and delete mod_Version(); - set updete module if change file's date; - change system geting and creating modules info with mod_info; - add variant function mod_info for geting info elements list; - delete TSpecial object (don't need); - add Info element SubType to Special module and set WWW subtype for WWW page modules; - add checking SubType WWW to http protocols module; - add using "namespace" keyword into Controller and Special modules !!! - rename modul virtual to virtual1; - mirored module virtual1 to virtual2 (to future); - update doc; 2003-09-30 CVS commit - add script "clean-tree" for auto clean progect tree (prepare to CVS commit) - delete virtual function gmd_DelM from children: TBDS, TControllerS, TProtocolS; - add support default type and name BD into TTransportS and TControllerS; - add replacing operator "[]" to mostly function and test into TModSchedule; - rename object TTipProtocol to TProtocol - add TSpecial and update TSpecialS; - delete export functions from some modules (no used) - update http protocol. Separate protocol and web pages. Web pages called HttpGet from TSpecial; - delete test_special.cpp - add special web modules: web_cfg, web_dbg, web_info; - fix bug into transport module socket - no closed handed client's sockets; - delete perl test modules; - update doc; 2003-09-22 CVS commit - delete odd vectors at TBDS, TControllerS, TTransportS; - add index operation - [] to TBDS, TControllerS, TTransportS; - make TTipController -> TConfigElem parent link; - add to TConfig a conecting/unconecting TConfigElem; - make TProtocolS; - add protocols "self", "http" (basic); - connect TransportS and TProtocolS - add option proto to TTranspotrtS; - add option tr_prot to config file of TTransportS; - add mode option to config file for Input socket transport (0 - no hold; 1 - hold connect) - change module's version to 0.2 for finished modules; - delete test_transport; - add mail transport (template); - delete test_protocol; - add http and self protocols (templates); - delete test_tcontr; - updete doc; 2003-09-13 CVS commit - add prefix "mod" to function of object TModule; - add prefix "gmd" to function of object TGRPModule; - add prefix "cf" to function of object TConfig; - add prefix "cfe" to function of object TConfigElem; - add prefix "vl" to function of object TValue; - add prefix "vle" to function of object TValueElem; - add auto open transport from BD and config file; - fix opening mode to TControllerS mix configs to one; - add to transport socket support out sockets; - mix separated bd elements to onli config option for TControllerS; - add table transport.dbf for transport description; - fix transport tr_socket.o. UDP already work; 2003-09-09 CVS commit - move all system function from TKernel to TSYS - delete arguments from function CheckCommandLine; - add to function GetOpt: value level and select exception work; - move some command line, config file option and function from TKernel to TMessage and TSYS; - add test support TCP,UDP,UNIX sockets (input) into transport modules socket.so; 2003-09-02 CVS commit - add system object TSYS; - add resource function to TSYS; - add resource to TBDS; - add resource to TTransports; - add object TTipParam; - attach object TTipParam to TParmContr; - misc type params into TController in one massive; - update sckelet of TTransport; - fix TController commands: Start(), Stop() - fix error into module virtual.cpp and kernel: check and use locale/globale params; - create object TVirtAlgb into module virtual.cpp for separate loading and manipulated whith modul's config file; - TControllers: change mode of free into destructor: firs - stoped; second - free! - add processing of a exception into a start and a stop controller commands; - delete stats of modules; - add checking name and version OS; - update documents; 2003-08-26 CVS commit - Start changelog file! - fix destructor ~TGRPModule and into childs; - fix pr_opr_descr anywhere; - change sheme of connect modules; - delete function: TModule->Connect and other - update transport connection arhitecture: ttransports.h - many update DOCS; - delete odd files without CVS repository