Skip to content
Snippets Groups Projects
Commit d9d30318 authored by Firat Yusuf Duran's avatar Firat Yusuf Duran :moyai:
Browse files

add profile core segment to skillmemory

parent f3f676b0
No related branches found
No related tags found
2 merge requests!458Fluxio/dev get types,!449Fluxio preliminary release
......@@ -47,6 +47,7 @@ namespace armarx
statechartListenerProviderSegment(iceAdapter()),
executableSkillCoreSegment(iceAdapter()),
composedSkillCoreSegment(iceAdapter()),
profileCoreSegment(iceAdapter()),
skillEventCoreSegment(iceAdapter()),
skillExecutionRequestCoreSegment(iceAdapter())
{
......@@ -62,6 +63,7 @@ namespace armarx
statechartListenerProviderSegment.defineProperties(defs, prefix + "statechartlistener.");
executableSkillCoreSegment.defineProperties(defs, prefix + "executableskill.");
composedSkillCoreSegment.defineProperties(defs, prefix + "composedskill.");
profileCoreSegment.defineProperties(defs, prefix + "profile.");
skillExecutionRequestCoreSegment.defineProperties(defs, prefix + "executionrequest.");
skillEventCoreSegment.defineProperties(defs, prefix + "event.");
......@@ -81,6 +83,7 @@ namespace armarx
statechartListenerProviderSegment.init();
executableSkillCoreSegment.init();
composedSkillCoreSegment.init();
profileCoreSegment.init();
skillExecutionRequestCoreSegment.init();
skillEventCoreSegment.init();
}
......
......@@ -29,6 +29,7 @@
#include <ArmarXCore/interface/core/Profiler.h>
#include <ArmarXCore/observers/ObserverObjectFactories.h>
#include "RobotAPI/libraries/armem_skills/server/segment/ProfileLibrarySegment.h"
#include <RobotAPI/interface/skills/SkillMemoryInterface.h>
#include <RobotAPI/libraries/armem/server/plugins/ReadWritePluginUser.h>
#include <RobotAPI/libraries/armem_skills/aron/Statechart.aron.generated.h>
......@@ -135,6 +136,7 @@ namespace armarx
skills::segment::StatechartListenerProviderSegment statechartListenerProviderSegment;
skills::segment::ExecutableSkillLibraryCoreSegment executableSkillCoreSegment;
skills::segment::ComposedSkillLibraryCoreSegment composedSkillCoreSegment;
skills::segment::ProfileLibraryCoreSegment profileCoreSegment;
skills::segment::SkillEventCoreSegment skillEventCoreSegment;
skills::segment::SkillExecutionRequestCoreSegment skillExecutionRequestCoreSegment;
};
......
......@@ -22,6 +22,7 @@ armarx_add_library(
./server/segment/StatechartListenerSegment.cpp
./server/segment/ExecutableSkillLibrarySegment.cpp
./server/segment/ComposedSkillLibrarySegment.cpp
./server/segment/ProfileLibrarySegment.cpp
./server/segment/SkillExecutionRequestSegment.cpp
./server/segment/SkillEventSegment.cpp
HEADERS
......@@ -32,6 +33,7 @@ armarx_add_library(
./server/segment/StatechartListenerSegment.h
./server/segment/ExecutableSkillLibrarySegment.h
./server/segment/ComposedSkillLibrarySegment.h
./server/segment/ProfileLibrarySegment.h
./server/segment/SkillExecutionRequestSegment.h
./server/segment/SkillEventSegment.h
)
......
#include "ProfileLibrarySegment.h"
#include <SimoxUtility/algorithm/string.h>
#include <ArmarXCore/core/time/ice_conversions.h>
#include <RobotAPI/libraries/armem/server/MemoryToIceAdapter.h>
#include <RobotAPI/libraries/armem_skills/aron_conversions.h>
#include <RobotAPI/libraries/aron/converter/datatype/DatatypeConverterVisitor.h>
#include <RobotAPI/libraries/aron/converter/json/NLohmannJSONConverter.h>
#include <RobotAPI/libraries/skills/core/aron/FluxioProfile.aron.generated.h>
namespace armarx::skills::segment
{
ProfileLibraryCoreSegment::ProfileLibraryCoreSegment(
armem::server::MemoryToIceAdapter& iceMemory) :
Base(iceMemory, CoreSegmentName, skills::manager::arondto::FluxioProfile::ToAronType())
{
}
void
ProfileLibraryCoreSegment::defineProperties(PropertyDefinitionsPtr defs,
const std::string& prefix)
{
this->setDefaultMaxHistorySize(3);
Base::defineProperties(defs, prefix);
}
void
ProfileLibraryCoreSegment::init()
{
Base::init();
}
void
ProfileLibraryCoreSegment::addProfile(const skills::manager::arondto::FluxioProfile& profile)
{
// // add skills
// auto provId = id().withProviderSegmentName(skill.skillProviderId.id);
// armem::Commit commit;
// auto& entityUpdate = commit.add();
// entityUpdate.confidence = 1.0;
// entityUpdate.referencedTime = armem::Time::Now();
// entityUpdate.sentTime = armem::Time::Now();
// entityUpdate.arrivedTime = armem::Time::Now();
// entityUpdate.instancesData = {skill.toAron()};
// entityUpdate.entityID = provId.withEntityName("ArmarBlow");
// // Commit data to memory and notify
// iceMemory.commit(commit);
}
} // namespace armarx::skills::segment
#pragma once
// Base Class
#include <RobotAPI/libraries/armem/server/segment/SpecializedSegment.h>
// ArmarX
#include <ArmarXCore/core/application/properties/PropertyDefinitionContainer.h>
#include <ArmarXCore/interface/core/Profiler.h>
#include <ArmarXCore/observers/ObserverObjectFactories.h>
#include <RobotAPI/interface/skills/SkillManagerInterface.h>
#include <RobotAPI/interface/skills/SkillProviderInterface.h>
#include <RobotAPI/libraries/armem_skills/aron/Skill.aron.generated.h>
#include <RobotAPI/libraries/skills/core/ProviderInfo.h>
#include <RobotAPI/libraries/skills/core/aron/FluxioProfile.aron.generated.h>
namespace armarx::skills::segment
{
class ProfileLibraryCoreSegment : public armem::server::segment::SpecializedCoreSegment
{
using Base = armem::server::segment::SpecializedCoreSegment;
public:
static constexpr const char* CoreSegmentName = "Profile";
ProfileLibraryCoreSegment(armem::server::MemoryToIceAdapter& iceMemory);
void defineProperties(PropertyDefinitionsPtr defs, const std::string& prefix);
void init();
void addProfile(const skills::manager::arondto::FluxioProfile& profile);
size_t size() const;
};
} // namespace armarx::skills::segment
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment