Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
U
uniset2
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
UniSet project repositories
uniset2
Commits
018cd873
Commit
018cd873
authored
Aug 07, 2016
by
Pavel Vainerman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(SM): продолжение рефакторинга кода (удаление лишнего, оптимизация).
parent
56670e52
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
17 additions
and
17 deletions
+17
-17
SharedMemory.cc
extensions/SharedMemory/SharedMemory.cc
+4
-5
SharedMemory.h
extensions/SharedMemory/SharedMemory.h
+11
-11
IONotifyController.h
include/IONotifyController.h
+0
-1
IONotifyController.cc
src/Processes/IONotifyController.cc
+2
-0
No files found.
extensions/SharedMemory/SharedMemory.cc
View file @
018cd873
...
@@ -108,7 +108,7 @@ SharedMemory::SharedMemory( ObjectId id, const std::string& datafile, const std:
...
@@ -108,7 +108,7 @@ SharedMemory::SharedMemory( ObjectId id, const std::string& datafile, const std:
// ----------------------
// ----------------------
buildHistoryList
(
confnode
);
buildHistoryList
(
confnode
);
signal_change_value
().
connect
(
sigc
::
mem_fun
(
*
this
,
&
SharedMemory
::
updateHistory
));
signal_change_value
().
connect
(
sigc
::
mem_fun
(
*
this
,
&
SharedMemory
::
checkFuse
));
for
(
auto
i
=
hist
.
begin
();
i
!=
hist
.
end
();
++
i
)
for
(
auto
i
=
hist
.
begin
();
i
!=
hist
.
end
();
++
i
)
histmap
[
i
->
fuse_id
].
push_back
(
i
);
histmap
[
i
->
fuse_id
].
push_back
(
i
);
...
@@ -207,7 +207,7 @@ void SharedMemory::timerInfo( const TimerMessage* tm )
...
@@ -207,7 +207,7 @@ void SharedMemory::timerInfo( const TimerMessage* tm )
askTimer
(
tm
->
id
,
0
);
askTimer
(
tm
->
id
,
0
);
}
}
else
if
(
tm
->
id
==
tmHistory
)
else
if
(
tm
->
id
==
tmHistory
)
saveHistory
();
save
To
History
();
else
if
(
tm
->
id
==
tmPulsar
)
else
if
(
tm
->
id
==
tmPulsar
)
{
{
if
(
sidPulsar
!=
DefaultObjectId
)
if
(
sidPulsar
!=
DefaultObjectId
)
...
@@ -725,7 +725,7 @@ SharedMemory::HistorySlot SharedMemory::signal_history()
...
@@ -725,7 +725,7 @@ SharedMemory::HistorySlot SharedMemory::signal_history()
return
m_historySignal
;
return
m_historySignal
;
}
}
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
void
SharedMemory
::
saveHistory
()
void
SharedMemory
::
save
To
History
()
{
{
if
(
hist
.
empty
()
)
if
(
hist
.
empty
()
)
return
;
return
;
...
@@ -747,7 +747,7 @@ void SharedMemory::saveHistory()
...
@@ -747,7 +747,7 @@ void SharedMemory::saveHistory()
}
}
}
}
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
void
SharedMemory
::
updateHistory
(
std
::
shared_ptr
<
USensorInfo
>&
usi
,
IOController
*
)
void
SharedMemory
::
checkFuse
(
std
::
shared_ptr
<
USensorInfo
>&
usi
,
IOController
*
)
{
{
if
(
hist
.
empty
()
)
if
(
hist
.
empty
()
)
return
;
return
;
...
@@ -758,7 +758,6 @@ void SharedMemory::updateHistory( std::shared_ptr<USensorInfo>& usi, IOControlle
...
@@ -758,7 +758,6 @@ void SharedMemory::updateHistory( std::shared_ptr<USensorInfo>& usi, IOControlle
HistoryItList
&
lst
=
*
(
static_cast
<
HistoryItList
*>
(
usi
->
userdata
[
udataHistory
]));
HistoryItList
&
lst
=
*
(
static_cast
<
HistoryItList
*>
(
usi
->
userdata
[
udataHistory
]));
// auto i = histmap.find(s_it->si.id);
// auto i = histmap.find(s_it->si.id);
//
// if( i == histmap.end() )
// if( i == histmap.end() )
// return;
// return;
...
...
extensions/SharedMemory/SharedMemory.h
View file @
018cd873
...
@@ -387,14 +387,6 @@ class SharedMemory:
...
@@ -387,14 +387,6 @@ class SharedMemory:
typedef
std
::
list
<
History
::
iterator
>
HistoryItList
;
typedef
std
::
list
<
History
::
iterator
>
HistoryItList
;
typedef
std
::
unordered_map
<
UniSetTypes
::
ObjectId
,
HistoryItList
>
HistoryFuseMap
;
typedef
std
::
unordered_map
<
UniSetTypes
::
ObjectId
,
HistoryItList
>
HistoryFuseMap
;
//! \warning Оптимизация использует userdata! Это опасно, если кто-то ещё захочет
//! использовать userdata[2]. (0,1 - использует IONotifyController)
// оптимизация с использованием userdata (IOController::USensorInfo::userdata) нужна
// чтобы не использовать поиск в HistoryFuseMap (см. updateHistory)
// т.к. 0,1 - использует IONotifyController (см. IONotifyController::UserDataID)
// то используем 2 - в качестве элемента userdata
static
const
size_t
udataHistory
=
2
;
typedef
sigc
::
signal
<
void
,
const
HistoryInfo
&>
HistorySlot
;
typedef
sigc
::
signal
<
void
,
const
HistoryInfo
&>
HistorySlot
;
HistorySlot
signal_history
();
/*!< сигнал о срабатывании условий "сброса" дампа истории */
HistorySlot
signal_history
();
/*!< сигнал о срабатывании условий "сброса" дампа истории */
...
@@ -490,13 +482,21 @@ class SharedMemory:
...
@@ -490,13 +482,21 @@ class SharedMemory:
virtual
void
dumpOrdersList
(
const
UniSetTypes
::
ObjectId
sid
,
const
IONotifyController
::
ConsumerListInfo
&
lst
)
override
{};
virtual
void
dumpOrdersList
(
const
UniSetTypes
::
ObjectId
sid
,
const
IONotifyController
::
ConsumerListInfo
&
lst
)
override
{};
virtual
void
dumpThresholdList
(
const
UniSetTypes
::
ObjectId
sid
,
const
IONotifyController
::
ThresholdExtList
&
lst
)
override
{}
virtual
void
dumpThresholdList
(
const
UniSetTypes
::
ObjectId
sid
,
const
IONotifyController
::
ThresholdExtList
&
lst
)
override
{}
bool
dblogging
;
bool
dblogging
=
{
false
};
//! \warning Оптимизация использует userdata! Это опасно, если кто-то ещё захочет
//! использовать userdata[2]. (0,1 - использует IONotifyController)
// оптимизация с использованием userdata (IOController::USensorInfo::userdata) нужна
// чтобы не использовать поиск в HistoryFuseMap (см. checkFuse)
// т.к. 0,1 - использует IONotifyController (см. IONotifyController::UserDataID)
// то используем не занятый "2" - в качестве элемента userdata
static
const
size_t
udataHistory
=
2
;
History
hist
;
History
hist
;
HistoryFuseMap
histmap
;
/*!< map для оптимизации поиска */
HistoryFuseMap
histmap
;
/*!< map для оптимизации поиска */
virtual
void
updateHistory
(
std
::
shared_ptr
<
IOController
::
USensorInfo
>&
usi
,
IOController
*
);
virtual
void
checkFuse
(
std
::
shared_ptr
<
IOController
::
USensorInfo
>&
usi
,
IOController
*
);
virtual
void
saveHistory
();
virtual
void
save
To
History
();
void
buildHistoryList
(
xmlNode
*
cnode
);
void
buildHistoryList
(
xmlNode
*
cnode
);
void
checkHistoryFilter
(
UniXML
::
iterator
&
it
);
void
checkHistoryFilter
(
UniXML
::
iterator
&
it
);
...
...
include/IONotifyController.h
View file @
018cd873
...
@@ -302,7 +302,6 @@ class IONotifyController:
...
@@ -302,7 +302,6 @@ class IONotifyController:
virtual
void
localSetValue
(
std
::
shared_ptr
<
USensorInfo
>&
usi
,
virtual
void
localSetValue
(
std
::
shared_ptr
<
USensorInfo
>&
usi
,
CORBA
::
Long
value
,
UniSetTypes
::
ObjectId
sup_id
)
override
;
CORBA
::
Long
value
,
UniSetTypes
::
ObjectId
sup_id
)
override
;
//! \warning Оптимизация использует userdata! Это опасно, если кто-то ещё захочет его использовать!
//! \warning Оптимизация использует userdata! Это опасно, если кто-то ещё захочет его использовать!
// идентификаторы данные в userdata (см. USensorInfo::userdata)
// идентификаторы данные в userdata (см. USensorInfo::userdata)
enum
UserDataID
enum
UserDataID
...
...
src/Processes/IONotifyController.cc
View file @
018cd873
...
@@ -50,6 +50,8 @@ IONotifyController::IONotifyController(const string& name, const string& section
...
@@ -50,6 +50,8 @@ IONotifyController::IONotifyController(const string& name, const string& section
trshMutex
(
name
+
"trshMutex"
),
trshMutex
(
name
+
"trshMutex"
),
maxAttemtps
(
uniset_conf
()
->
getPIntField
(
"ConsumerMaxAttempts"
,
5
))
maxAttemtps
(
uniset_conf
()
->
getPIntField
(
"ConsumerMaxAttempts"
,
5
))
{
{
conUndef
=
signal_change_undefined_state
().
connect
(
sigc
::
mem_fun
(
*
this
,
&
IONotifyController
::
onChangeUndefinedState
));
conInit
=
signal_init
().
connect
(
sigc
::
mem_fun
(
*
this
,
&
IONotifyController
::
initItem
));
}
}
IONotifyController
::
IONotifyController
(
ObjectId
id
,
std
::
shared_ptr
<
NCRestorer
>
d
)
:
IONotifyController
::
IONotifyController
(
ObjectId
id
,
std
::
shared_ptr
<
NCRestorer
>
d
)
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment