diff options
Diffstat (limited to 'autodoc/source/ary/kernel')
-rw-r--r-- | autodoc/source/ary/kernel/ary_disp.cxx | 111 | ||||
-rw-r--r-- | autodoc/source/ary/kernel/cessentl.cxx | 89 | ||||
-rw-r--r-- | autodoc/source/ary/kernel/makefile.mk | 63 | ||||
-rw-r--r-- | autodoc/source/ary/kernel/namesort.cxx | 103 | ||||
-rw-r--r-- | autodoc/source/ary/kernel/qualiname.cxx | 108 | ||||
-rw-r--r-- | autodoc/source/ary/kernel/reposy.cxx | 221 | ||||
-rw-r--r-- | autodoc/source/ary/kernel/slots.cxx | 167 |
7 files changed, 862 insertions, 0 deletions
diff --git a/autodoc/source/ary/kernel/ary_disp.cxx b/autodoc/source/ary/kernel/ary_disp.cxx new file mode 100644 index 000000000000..b9608f2f547a --- /dev/null +++ b/autodoc/source/ary/kernel/ary_disp.cxx @@ -0,0 +1,111 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#include <precomp.h> +#include <ary/ary_disp.hxx> + + +// NOT FULLY DECLARED SERVICES +#include <ary/cpp/c_ce.hxx> +#include <ary/cpp/c_gate.hxx> +#include <ary/cpp/cp_ce.hxx> + + + +namespace ary +{ + +void +Display::DisplaySlot_Rid( ary::Rid i_nId ) +{ + const cpp::Gate * + pGate = Get_ReFinder(); + if (pGate != 0) + { + const ary::cpp::CodeEntity * + pRE = pGate->Ces().Search_Ce( cpp::Ce_id(i_nId) ); + if (pRE != 0) + { + pRE->Accept( *this ); + return; + } + } + + do_DisplaySlot_Rid( i_nId ); +} + + +void +Display::DisplaySlot_LocalCe( ary::cpp::Ce_id i_nId, + const String & i_sName ) +{ + const cpp::Gate * + pGate = Get_ReFinder(); + if (pGate != 0) + { + const ary::cpp::CodeEntity * + pRE = pGate->Ces().Search_Ce(i_nId); + if (pRE != 0) + { + pRE->Accept( *this ); + return; + } + } + + do_DisplaySlot_LocalCe( i_nId, i_sName ); +} + + + +// Dummy implementations for class Display + +void +Display::do_StartSlot() +{ +} + +void +Display::do_FinishSlot() +{ +} + +void +Display::do_DisplaySlot_Rid( ary::Rid ) +{ +} + +void +Display::do_DisplaySlot_LocalCe( ary::cpp::Ce_id , + const String & ) +{ +} + + +} // namespace ary + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/ary/kernel/cessentl.cxx b/autodoc/source/ary/kernel/cessentl.cxx new file mode 100644 index 000000000000..0fcf37542a6a --- /dev/null +++ b/autodoc/source/ary/kernel/cessentl.cxx @@ -0,0 +1,89 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#include <precomp.h> +#include <ary/cessentl.hxx> + + +// NOT FULLY DEFINED SERVICES +#include <ary/cpp/c_ce.hxx> +#include <ary/doc/d_oldcppdocu.hxx> + + +namespace ary +{ +namespace cpp +{ + + +CeEssentials::CeEssentials() + : sLocalName(), + nOwner(0), + nLocation(0) +{ +} + +CeEssentials::CeEssentials( const String & i_sLocalName, + Cid i_nOwner, + loc::Le_id i_nLocation ) + : sLocalName(i_sLocalName), + nOwner(i_nOwner), + nLocation(i_nLocation) +{ +} + +CeEssentials::~CeEssentials() +{ +} + + + +inline bool +IsInternal(const doc::Documentation & i_doc) +{ + const ary::doc::OldCppDocu * + docu = dynamic_cast< const ary::doc::OldCppDocu* >(i_doc.Data()); + if (docu != 0) + return docu->IsInternal(); + return false; +} + + +bool +CodeEntity::IsVisible() const +{ + // KORR_FUTURE: Improve the whole handling of internal and visibility. + return bIsVisible && NOT IsInternal(Docu()); +} + + + +} // namespace cpp +} // namespace ary + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/ary/kernel/makefile.mk b/autodoc/source/ary/kernel/makefile.mk new file mode 100644 index 000000000000..6c90252bc3b8 --- /dev/null +++ b/autodoc/source/ary/kernel/makefile.mk @@ -0,0 +1,63 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ=..$/..$/.. + +PRJNAME=autodoc +TARGET=ary_kernel + + + +# --- Settings ----------------------------------------------------- + +ENABLE_EXCEPTIONS=true +PRJINC=$(PRJ)$/source + +.INCLUDE : settings.mk +.INCLUDE : $(PRJ)$/source$/mkinc$/fullcpp.mk + + + +# --- Files -------------------------------------------------------- + + +OBJFILES= \ + $(OBJ)$/ary_disp.obj \ + $(OBJ)$/cessentl.obj \ + $(OBJ)$/namesort.obj \ + $(OBJ)$/qualiname.obj \ + $(OBJ)$/reposy.obj \ + $(OBJ)$/slots.obj + + + +# --- Targets ------------------------------------------------------ + +.INCLUDE : target.mk + + + diff --git a/autodoc/source/ary/kernel/namesort.cxx b/autodoc/source/ary/kernel/namesort.cxx new file mode 100644 index 000000000000..3854ece73e7b --- /dev/null +++ b/autodoc/source/ary/kernel/namesort.cxx @@ -0,0 +1,103 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#include <precomp.h> +#include <ary/namesort.hxx> + + +// NOT FULLY DEFINED SERVICES + + + +namespace +{ + + +int C_cAutodocNameOrdering1[256] = + { 0,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, // 0 .. + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, // 32 .. + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,255,255, 255,255,255,255, + + 255, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, // 64 .. + 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61,255, 255,255,255, 63, + 255, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, // 96 .. + 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61,255, 255,255,255,255, + + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, //128 .. + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, //160 .. + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255 + }; + +int C_cAutodocNameOrdering2[256] = + { 0,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, // 0 .. + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, // 32 .. + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,255,255, 255,255,255,255, + + 255, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, // 64 .. + 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61,255, 255,255,255, 63, + 255, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, // 96 .. + 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62,255, 255,255,255,255, + + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, //128 .. + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, //160 .. + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255, + 255,255,255,255, 255,255,255,255, 255,255,255,255, 255,255,255,255 + }; + + +} // namespace anonymous + + +namespace ary +{ + + +const csv::CharOrder_Table +LesserName::aOrdering1_(C_cAutodocNameOrdering1); + +const csv::CharOrder_Table +LesserName::aOrdering2_(C_cAutodocNameOrdering2); + + + +} // namespace ary + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/ary/kernel/qualiname.cxx b/autodoc/source/ary/kernel/qualiname.cxx new file mode 100644 index 000000000000..8db4ea07919b --- /dev/null +++ b/autodoc/source/ary/kernel/qualiname.cxx @@ -0,0 +1,108 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#include <precomp.h> +#include <ary/qualiname.hxx> + + +// NOT FULLY DECLARED SERVICES + + +namespace ary +{ + + +QualifiedName::QualifiedName( uintt i_nSize ) + : aNamespace(), + sLocalName(), + bIsAbsolute(false), + bIsFunction() +{ + if (i_nSize > 0) + aNamespace.reserve(i_nSize); +} + +QualifiedName::QualifiedName( const char * i_sText, + const char * i_sSeparator ) + : aNamespace(), + sLocalName(), + bIsAbsolute(false), + bIsFunction() +{ + AssignText(i_sText,i_sSeparator); +} + +QualifiedName::~QualifiedName() +{ +} + +void +QualifiedName::AssignText( const char * i_sText, + const char * i_sSeparator ) +{ + csv_assert(NOT csv::no_str(i_sText) AND NOT csv::no_str(i_sSeparator)); + bIsAbsolute = false; + bIsFunction = false; + csv::erase_container( aNamespace ); + + uintt nSepLen = strlen(i_sSeparator); + const char * sNext = i_sText; + + const char * ps = strstr( i_sText, i_sSeparator ); + if (ps == i_sText) + { + bIsAbsolute = true; + sNext = ps + nSepLen; + } + + for ( ps = strstr(sNext, i_sSeparator); + ps != 0; + ps = strstr(sNext, i_sSeparator) ) + { + String sPart(sNext, ps - sNext); + aNamespace.push_back(sPart); + sNext = ps + nSepLen; + } + + uintt sNameLen = strlen(sNext); + if ( sNameLen > 2 ) + { + ps = sNext + sNameLen - 2; + if (*ps == '(' AND *(ps+1) == ')') + { + sNameLen -= 2; + bIsFunction = true; + } + } + sLocalName = String(sNext,sNameLen); +} + + +} // namespace ary + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/ary/kernel/reposy.cxx b/autodoc/source/ary/kernel/reposy.cxx new file mode 100644 index 000000000000..5d28d46bb1be --- /dev/null +++ b/autodoc/source/ary/kernel/reposy.cxx @@ -0,0 +1,221 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#include <precomp.h> +#include <reposy.hxx> + + +// NOT FULLY DECLARED SERVICES +#include <cpp_internalgate.hxx> +#include <idl_internalgate.hxx> + + +namespace ary +{ + + +//***************** Repository ************// + +DYN Repository & +Repository::Create_() +{ + return *new RepositoryCenter; +} + + + + +RepositoryCenter::RepositoryCenter() + : sDisplayedName(), + aLocation(), + pCppPartition(0), + pIdlPartition(0) +{ + pCppPartition = & cpp::InternalGate::Create_Partition_(*this); + pIdlPartition = & idl::InternalGate::Create_Partition_(*this); +} + +RepositoryCenter::~RepositoryCenter() +{ +} + +const ::ary::cpp::Gate & +RepositoryCenter::Gate_Cpp() const +{ + csv_assert(pCppPartition); + return *pCppPartition; +} + +const ::ary::idl::Gate & +RepositoryCenter::Gate_Idl() const +{ + csv_assert(pIdlPartition); + return *pIdlPartition; +} + +const String & +RepositoryCenter::Title() const +{ + return sDisplayedName; +} + + +::ary::cpp::Gate & +RepositoryCenter::Gate_Cpp() +{ + csv_assert(pCppPartition); + return *pCppPartition; +} + +::ary::idl::Gate & +RepositoryCenter::Gate_Idl() +{ + csv_assert(pIdlPartition); + return *pIdlPartition; +} + +void +RepositoryCenter::Set_Title(const String & i_sName) +{ + sDisplayedName = i_sName; +} + + + + +//********************* Repository Type Info Data ****************// + +// !!! IMPORTANT - NEVER DELETE OR CHANGE - ADDING ALLOWED + + + +/* ClassType-Ids + ------------- + + cpp 1000 + idl 2000 + corba 3000 + java 4000 + information 5000 + logic location 6000 + phys location 7000 + sec. prod. 8000 + + + cpp + --- + Namespace 1000 + Class 1001 + Enum 1002 + Typedef 1003 + Function 1004 + Variable 1005 + EnumValue 1006 + NamespaceAlias 1007 + + BuiltInType 1200 + CeType_Final 1201 + CeType_Extern 1202 + UsedType 1203 + PtrType 1211 + RefType 1212 + ConstType 1221 + VolatileType 1222 + ArrayType 1230 + TemplateInstance 1235 + FunctionPtr 1240 + DataMemberPtr 1250 + OperationMemberPtr 1260 + + TplParam_Type 1301 + TplParam_Value 1302 + + OpSignature 1400 + + Define 1601 + Macro 1602 + + ProjectGroup 1901 + FileGroup 1902 + + TopProject 1921 + + + + idl + --- + + Module 2000 + Interface 2001 + Function 2002 + Service 2003 + Property 2004 + Enum 2005 + EnumValue 2006 + Typedef 2007 + Struct 2008 + StructElement 2009 + Exception 2010 + ConstantGroup 2011 + Constant 2012 + Singleton 2013 + Attribute 2014 + SglIfcService 2015 + SglIfcSingleton 2016 + + BuiltInType 2200 + CeType 2201 + Sequence 2202 + ExplicitType 2203 + ExplicitNameRoom 2204 + TemplateParamType 2205 + + + java + ---- + Package 4000 + Interface 4001 + Class 4002 + + physical location + ----------------- + Root 7000 + Directory 7030 + File 7100 + + + info + ---- + CodeInformation + (IDL) 11002 +*/ + + +} // namespace ary + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/ary/kernel/slots.cxx b/autodoc/source/ary/kernel/slots.cxx new file mode 100644 index 000000000000..5689432cd8e8 --- /dev/null +++ b/autodoc/source/ary/kernel/slots.cxx @@ -0,0 +1,167 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#include <precomp.h> +#include <slots.hxx> + + +// NOT FULLY DEFINED SERVICES +#include <ary/ary_disp.hxx> + + + +namespace ary +{ + + +//*********************** Slot ********************// + + +void +Slot::StoreAt( Display & o_rDestination ) const +{ + o_rDestination.StartSlot(); + StoreEntries(o_rDestination); + o_rDestination.FinishSlot(); +} + + +//*********************** Slot_Null ********************// + +Slot_Null::~Slot_Null() +{ +} + +void +Slot_Null::StoreAt( Display & ) const +{ + // Does nothing +} + +uintt +Slot_Null::Size() const +{ + return 0; +} + +void +Slot_Null::StoreEntries( Display & ) const +{ + // Does nothing +} + +//*********************** Slot_MapLocalCe ********************// + +Slot_MapLocalCe::Slot_MapLocalCe( const cpp::Map_LocalCe & i_rData ) + : pData(&i_rData) +{ +} + +Slot_MapLocalCe::~Slot_MapLocalCe() +{ +} + +uintt +Slot_MapLocalCe::Size() const +{ + return pData->size();; +} + +void +Slot_MapLocalCe::StoreEntries( Display & o_rDestination ) const +{ + for ( cpp::Map_LocalCe::const_iterator it = pData->begin(); + it != pData->end(); + ++it ) + { + o_rDestination.DisplaySlot_LocalCe( (*it).second, (*it).first ); + } +} + + + +//*********************** Slot_MapOperations ********************// + +Slot_MapOperations::Slot_MapOperations( const std::multimap<String, cpp::Ce_id> & i_rData ) + : pData(&i_rData) +{ +} + +Slot_MapOperations::~Slot_MapOperations() +{ +} + +uintt +Slot_MapOperations::Size() const +{ + return pData->size();; +} + +void +Slot_MapOperations::StoreEntries( Display & o_rDestination ) const +{ + for ( std::multimap<String, cpp::Ce_id>::const_iterator it = pData->begin(); + it != pData->end(); + ++it ) + { + o_rDestination.DisplaySlot_LocalCe( (*it).second, (*it).first ); + } +} + +//*********************** Slot_ListLocalCe ********************// + +Slot_ListLocalCe::Slot_ListLocalCe( const cpp::List_LocalCe & i_rData ) + : pData(&i_rData) +{ +} + +Slot_ListLocalCe::~Slot_ListLocalCe() +{ +} + +uintt +Slot_ListLocalCe::Size() const +{ + return pData->size();; +} + +void +Slot_ListLocalCe::StoreEntries( Display & o_rDestination ) const +{ + for ( cpp::List_LocalCe::const_iterator it = pData->begin(); + it != pData->end(); + ++it ) + { + o_rDestination.DisplaySlot_LocalCe( (*it).nId, (*it).sLocalName ); + } +} + + +} // namespace ary + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |