Katerina Mania

106 papers A* 5B 4C 7Misc 2Journal 19Unranked 63
YearRankTypeTitle / Venue / Authors
2025 conf
VR Workshops
Michalis Nikiforakis, Ioannis Liaskas, Evangelia Stamataki, Anastasios Pavlopoulos, Katerina Mania
2025 conf
Eurographics (Posters)
Konstantina Mammou, Katerina Mania
2025 conf
ISMAR-Adjunct
Konstantinos Charalampakis, Ioannis Safranoglou, Alexios Stavroulakis, Marcel Ebel, Iris Graessler, Despina Dimelli, Katerina Mania
2025 B conf
VRST
George Ramiotis, Katerina Mania
2025 J jnl
ACM Journal on Computing and Cultural Heritage
Fotis Giariskanis, Yannis Kritikos, Eftychia Protopapadaki, Anthi Papanastasiou, Eleni Papadopoulou, Katerina Mania
2025 conf
VR Workshops
Froso Sarri, Katerina Mania
2025 conf
CHI Greece
Maria Algiannaki, Panagiotis Parthenios, Katerina Mania
2025 Misc conf
ISWC
Michael Efraimidis, Katerina Mania
2024 conf
ISMAR-Adjunct
Ioannis Safranoglou, Alexios Stavroulakis, Marcel Ebel, Jens Pottebaum, Georgios Lamprinakis, Despina Dimelli, Katerina Mania
2024 ed.
AMID@MobileHCI
Christos Fidas, Stella Sylaiou, Tsvi Kuflik, Fotis Liarokapis, Panayiotis Koutsabasis, Manolis Wallace, Dimitrios Koukopoulos, Angeliki Antoniou, Katerina Mania, Ioanna Lykourentzou
2023 conf
ISMAR-Adjunct
Michael Roumeliotis, Katerina Mania
2023 conf
TMM_CH
Athanasia Psalti, Marilena Tsakoumaki, Christina Mamaloukaki, Michael Xinogalos, Nikolaos Bolanakis, Christos Kavallaris, Andreas Polychronakis, Katerina Mania, Emmanuel Maravelakis
2023 conf
EGSR (ST)
Andreas Polychronakis, George Alex Koulieris, Katerina Mania
2023 C conf
IMX
Yannis Kritikos, Fotis Giariskanis, Eftychia Protopapadaki, Anthi Papanastasiou, Eleni Papadopoulou, Katerina Mania
2023 conf
ISMAR-Adjunct
Theodoros Chalimas, Katerina Mania
2023 C conf
IMX
Minas Katsiokalis, Elisavet Tsekeri, Aikaterini Lilli, Konstantinos Gobakis, Dionysia S. Kolokotsa, Katerina Mania
2023 conf
MobileHCI (Companion)
Christos Fidas, Stella Sylaiou, Tsvi Kuflik, Fotis Liarokapis, Panayiotis Koutsabasis, Manolis Wallace, Dimitrios Koukopoulos, Angeliki Antoniou, Katerina Mania, Ioanna Lykourentzou
2022 conf
GCH
Yannis Kritikos, Fotios Giariskanis, Eftychia Protopapadaki, Anthi Papanastasiou, Eleni Papadopoulou, Katerina Mania
2022 conf
ISMAR Adjunct
Grigoris Daskalogrigorakis, Ann McNamara, Angelos Marinakis, Aristomenis Antoniadis, Katerina Mania
2022 conf
IMET
Yannis Kritikos, Katerina Mania
2022 conf
IMET
Froso Sarri, Lemonia Ragia, Antigoni Panagiotopoulou, Katerina Mania
2022 C conf
IMX
Fotis Giariskanis, Yannis Kritikos, Eftychia Protopapadaki, Anthi Papanastasiou, Eleni Papadopoulou, Katerina Mania
2021 C conf
EDUCON
Marina Giannaraki, Nektarios Moumoutzis, Yiannis Papatzanis, Elias Kourkoutas, Katerina Mania
2021 conf
IISA
Katerina Mania, Athanasia Psalti, Dimitra-Maria Lala, Marilena Tsakoumaki, Andreas Polychronakis, Anastasia Rempoulaki, Michael Xinogalos, Emmanuel Maravelakis
2021 conf
SIGGRAPH ASIA Posters
Michael Roumeliotis, Katerina Mania
2021 C conf
MIG
Andreas Polychronakis, George Alex Koulieris, Katerina Mania
2021 J jnl
ACM Trans. Appl. Percept.
Panagiotis Drakopoulos, George Alex Koulieris, Katerina Mania
2021 C conf
EDUCON
Grigoris Daskalogrigorakis, Salva Kirakosian, Angelos Marinakis, Vaggelis Nikolidakis, Ioanna Pateraki, Aristomenis Antoniadis, Katerina Mania
2021 conf
SIGGRAPH Courses
Katerina Mania, Ann McNamara, Andreas Polychronakis
2021 conf
SIGGRAPH Posters
Grigoris Daskalogrigorakis, Ann McNamara, Katerina Mania
2021 C conf
CoG
Salva Kirakosian, Grigoris Daskalogrigorakis, Emmanuel Maravelakis, Katerina Mania
2021 conf
ICAART (2)
Nikolaos I. Spanoudakis, Konstantinos Kostis, Katerina Mania
2020 Misc conf
SAC
Nikolaos Spanoudakis, Konstantinos Kostis, Katerina Mania
2020 conf
VR Workshops
Panagiotis Drakopoulos, George Alex Koulieris, Katerina Mania
2020 J jnl
Multim. Tools Appl.
Gregory Kontadakis, Dimitrios Chasiouras, Despeina Proimaki, Manolis Halkiadakis, Maria Fyntikaki, Katerina Mania
2020 conf
XR@ISS
Minas Katsiokalis, Lemonia Ragia, Katerina Mania
2020 conf
SIGGRAPH Asia Posters
Michael Efraimidis, Katerina Mania
2019 conf
IMCL
Marina Giannaraki, Nektarios Moumoutzis, Elias Kourkoutas, Katerina Mania
2019 conf
VS-GAMES
Fotis Giariskanis, Panagiotis Parthenios, Katerina Mania
2019 conf
VS-GAMES
Salva Kirakosian, Emmanuel Maravelakis, Katerina Mania
2019 J jnl
Comput. Graph. Forum
George Alex Koulieris, Kaan Aksit, Michael Stengel, Rafal Mantiuk, Katerina Mania, Christian Richardt
2018 J jnl
ISPRS Int. J. Geo Inf.
Chris Panou, Lemonia Ragia, Despina Dimelli, Katerina Mania
2018 conf
GISTAM
Chris Panou, Lemonia Ragia, Despina Dimelli, Katerina Mania
2018 J jnl
J. Geogr. Syst.
Lemonia Ragia, Froso Sarri, Katerina Mania
2017 J jnl
Int. J. Arts Technol.
Stella Sylaiou, Katerina Mania, Ioannis Paliokas, Laia Pujol-Tost, Vassilis Killintzis, Fotis Liarokapis
2017 conf
VS-GAMES
Gregory Kontadakis, Dimitrios Chasiouras, Despeina Proimaki, Katerina Mania
2016 A* conf
VR
George Alex Koulieris, George Drettakis, Douglas W. Cunningham, Katerina Mania
2015 conf
GISTAM
Lemonia Ragia, Froso Sarri, Katerina Mania
2015 conf
WEVR@VR
Nikolaos Sidorakis, George Alex Koulieris, Katerina Mania
2014 J jnl
ACM Trans. Appl. Percept.
George Alex Koulieris, George Drettakis, Douglas W. Cunningham, Katerina Mania
2014 conf
SIGGRAPH Courses
Ann McNamara, Katerina Mania, George Alex Koulieris, Laurent Itti
2014 J jnl
Comput. Graph. Forum
George Alex Koulieris, George Drettakis, Douglas W. Cunningham, Katerina Mania
2014 conf
SIGGRAPH Posters
George Alex Koulieris, George Drettakis, Douglas W. Cunningham, Nikolaos Sidorakis, Katerina Mania
2014 conf
SIGGRAPH Posters
Evangelia Mavromihelaki, Jessica Eccles, Neil A. Harrison, Hugo D. Critchley, Katerina Mania
2014 conf
VS-GAMES
Evangelia Mavromihelaki, Jessica Eccles, Neil A. Harrison, Thomas Grice-Jackson, Jamie Ward, Hugo D. Critchley, Katerina Mania
2014 conf
SIGGRAPH Talks
George Alex Koulieris, George Drettakis, Douglas W. Cunningham, Katerina Mania
2014 ch.
Handbook of Human Centric Visualization
Matthew Coxon, Katerina Mania
2014 conf
SIGGRAPH Posters
Stefan Petrovski, Panos Parthenios, Aineias Oikonomou, Katerina Mania
2014 conf
HCI (17)
Stella Sylaiou, Vassilis Killintzis, Ioannis Paliokas, Katerina Mania, Petros Patias
2013 B conf
Intelligent Environments (Workshops)
Stella Sylaiou, Katerina Mania, Ioannis Paliokas, Vassilis Killintzis, Fotis Liarokapis, Petros Patias
2012 conf
VRCAI
Christos Paraskeva, George Alex Koulieris, Matthew Coxon, Katerina Mania
2012 J jnl
Int. J. Hum. Comput. Stud.
Nicholaos Mourkoussis, Fiona M. Rivera, Tom Troscianko, Rycharde Hawkes, Phil L. Watten, Katerina Mania
2011 conf
VRCAI
Giorgos Papadakis, Katerina Mania, Eftichios Koutroulis
2011 conf
VS-GAMES
Katerina Mania, Nick Medford, Giannis Christodoulou, Phil L. Watten, Fiona M. Rivera, Eugenia Radulescu, Hugo D. Critchley
2011 conf
SIGGRAPH Asia Courses
Ann McNamara, Katerina Mania, Diego Gutierrez
2011 conf
VRCAI
Giorgos Papadakis, Katerina Mania, Matthew Coxon, Eftichios Koutroulis
2010 conf
APGV
Maria Sifniotis, Ben J. C. Jackson, Katerina Mania, N. Vlassis, Phil L. Watten, Martin White
2010 J jnl
ACM Trans. Appl. Percept.
Katerina Mania, Shahrul Badariah, Matthew Coxon, Phil L. Watten
2010 J jnl
ACM Trans. Appl. Percept.
Katerina Mania, Martin S. Banks
2010 J jnl
Int. J. Hum. Comput. Stud.
Stella Sylaiou, Katerina Mania, Athanasis Karoulis, Martin White
2010 conf
SIGGRAPH Courses
Ann McNamara, Katerina Mania, Marty Banks, Christopher G. Healey
2010 ed.
APGV
Diego Gutierrez, Joe K. Kearney, Marty Banks, Katerina Mania
2010 J jnl
ACM Trans. Appl. Percept.
Nicholaos Mourkoussis, Fiona M. Rivera, Tom Troscianko, Timothy D. Dixon, Rycharde Hawkes, Katerina Mania
2010 conf
SIGGRAPH Posters
Fiona M. Rivera, Phil L. Watten, Patrick Holroyd, Felix Beacher, Katerina Mania, Hugo D. Critchley
2010 conf
APGV
Adam Bennett, Matthew Coxon, Katerina Mania
2009 conf
APGV
Alexandros Zotos, Katerina Mania, Nicholaos Mourkoussis
2009 conf
SIGGRAPH Posters
Alexandros Zotos, Katerina Mania, Nicholaos Mourkoussis
2009 ed.
APGV
Katerina Mania, Bernhard E. Riecke, Stephen N. Spencer, Bobby Bodenheimer, Carol O'Sullivan
2009 conf
APGV
Giorgos Papadakis, Katerina Mania
2008 ed.
Eurographics (Short Papers)
Katerina Mania, Eric R. Reinhard
2008 conf
Eurographics (Tutorials)
Katerina Mania, Erik Reinhard
2008 B conf
SMC
Katerina Mania, Nicholaos Mourkoussis, Alexandros Zotos
2007 conf
APGV
Nicholaos Mourkoussis, Fiona M. Rivera, Tom Troscianko, Katerina Mania, Rycharde Hawkes
2007 conf
VAST
Maria Sifniotis, Phil L. Watten, Katerina Mania, Martin White
2006 ed.
VAST
Marinos Ioannides, David Arnold, Franco Niccolucci, Katerina Mania
2006 conf
SIGGRAPH Research Posters
Nicholaos Mourkoussis, Katerina Mania, Tom Troscianko, Fiona M. Rivera, Rycharde Hawkes
2006 conf
VSMM
Panagiotis Petridis, Daniel Pletinckx, Katerina Mania, Martin White
2006 J jnl
IEEE Trans. Vis. Comput. Graph.
Katerina Mania, Dave Wooldridge, Matthew Coxon, Andrew Robinson
2006 B conf
VRST
Panagiotis Petridis, Katerina Mania, Daniel Pletinckx, Martin White
2006 conf
SIGGRAPH Sketches
Maria Sifniotis, Ben J. C. Jackson, Martin White, Katerina Mania, Phil L. Watten
2005 J jnl
Comput. Graph.
Katerina Mania, Andrew Robinson
2005 conf
SIGGRAPH Posters
Nicholaos Mourkoussis, Katerina Mania, Tom Troscianko, Rycharde Hawkes
2005 A* conf
VR
Katerina Mania, Heinrich H. Bülthoff, Douglas W. Cunningham, Bernard D. Adelstein, Nadia Magnenat-Thalmann, Nicholaos Mourkoussis, Tom Troscianko, J. Edward Swan II
2005 J jnl
Presence Teleoperators Virtual Environ.
Katerina Mania, Andrew Robinson, Karen R. Brandt
2005 conf
SIGGRAPH Posters
Katerina Mania, Adam Bennett
2005 conf
APGV
Shahrul Badariah, Katerina Mania
2004 conf
VRCAI
Andrew Robinson, Katerina Mania, Philippe Perey
2004 conf
APGV
Katerina Mania, Bernard D. Adelstein, Stephen R. Ellis, Michael I. Hill
2004 conf
SMC (3)
Katerina Mania
2004 conf
VRCAI
Katerina Mania, Andrew Robinson
2003 J jnl
Presence Teleoperators Virtual Environ.
Katerina Mania, Tom Troscianko, Rycharde Hawkes, Alan Chalmers
2003 A* conf
SIGGRAPH
Katerina Mania, Andrew Robinson
2002 A* conf
VR
Katerina Mania, Stephen R. Ellis, Mark Billinghurst, Anthony Steed
2001 conf
Afrigraph
Katerina Mania
2001 J jnl
Cyberpsychology Behav. Soc. Netw.
Katerina Mania, Alan Chalmers
2001 A* conf
VR
Stephen R. Ellis, Katerina Mania, Alan Chalmers, Mark Billinghurst, Anthony Steed
tests/unit/conftest.py
← Index tests/unit/conftest.py python
"""
Unit test configuration.

Replaces the redb.extractors package with a minimal stub so that
``from redb.extractors.database_exporters import ...`` works without
pulling in the heavy __init__.py import chain (pefile, elftools,
signify, magic, etc.).

Also stubs out redb.settings so that Elasticsearch / ClickHouse
clients are never actually created during unit tests.

Additionally installs binaryninja stubs for decompiler unit tests.

Stubs heavy third-party packages (pefile, magic, psutil, etc.) so that
redb.workers, redb.queries, redb.ingestor, and redb.s3_utils can all
be imported and patched in unit tests without requiring the real packages.
"""
import sys
import types
from pathlib import Path
from unittest.mock import MagicMock

# ---------------------------------------------------------------------------
# 0. Install binaryninja stubs FIRST — must happen before any decompiler
#    module is imported (triggered by __init__.py chain).
# ---------------------------------------------------------------------------
from tests.unit.conftest_binja_stubs import install_binja_stubs as _install_binja_stubs
_install_binja_stubs()

# ---------------------------------------------------------------------------
# 1. Stub external packages required by database_exporters.py itself,
#    the decompiler chain, and the workers/ingestor modules.
# ---------------------------------------------------------------------------
_heavy_deps = [
    # Database / networking
    "elasticsearch", "clickhouse_connect", "dotenv",
    # Binary analysis — top-level packages
    "pefile", "magic", "machofile",
    # Archive handling
    "py7zr", "pyzipper",
    # File type detection
    "magika",
    # System monitoring
    "psutil",
    # S3 / MinIO (submodule paths needed for `from minio.error import S3Error`)
    "minio", "minio.error",
    # YARA
    "yara_x",
    # Binary parsing — elftools tree
    "elftools", "elftools.elf", "elftools.elf.elffile",
    "elftools.common", "elftools.common.exceptions",
    # Code signing — signify tree
    "signify", "signify.fingerprinter", "signify.authenticode",
    # LIEF
    "lief",
    # Fuzzy hashing
    "ppdeep",
    # .NET analysis
    "dotnetfile",
    # Crypto / ASN.1
    "asn1crypto", "asn1crypto.cms", "asn1crypto.pem", "asn1crypto.x509", "asn1crypto.core",
    # Hashing
    "xxhash", "blake3", "mmh3", "numpy",
    # APK analysis
    "androguard", "androguard.core", "androguard.core.apk",
    "androguard.core.dex", "androguard.core.api_specific_resources",
    "androguard.misc",
    "permhash",
]
for _mod in _heavy_deps:
    if _mod not in sys.modules:
        try:
            __import__(_mod)
        except (ImportError, ModuleNotFoundError):
            sys.modules[_mod] = MagicMock()

# Stub urllib3 with a real Warning subclass (warnings.filterwarnings needs a class)
if "urllib3" not in sys.modules or isinstance(sys.modules.get("urllib3"), MagicMock):
    try:
        import urllib3  # noqa: F401
    except (ImportError, ModuleNotFoundError):
        _urllib3_mod = types.ModuleType("urllib3")
        _urllib3_exc = types.ModuleType("urllib3.exceptions")

        class _InsecureRequestWarning(UserWarning):
            pass

        _urllib3_exc.InsecureRequestWarning = _InsecureRequestWarning
        _urllib3_mod.exceptions = _urllib3_exc
        sys.modules["urllib3"] = _urllib3_mod
        sys.modules["urllib3.exceptions"] = _urllib3_exc

# Provide a functional ppdeep stub (tests call ppdeep.hash() and expect a string).
# Must overwrite the MagicMock that the loop above may have installed.
_ppdeep_existing = sys.modules.get("ppdeep")
if _ppdeep_existing is None or isinstance(_ppdeep_existing, MagicMock):
    _ppdeep_mod = types.ModuleType("ppdeep")
    _ppdeep_mod.__name__ = "ppdeep"

    def _ppdeep_hash(data):
        """Fake ssdeep hash — returns a deterministic placeholder."""
        if isinstance(data, str):
            data = data.encode("utf-8")
        if len(data) < 50:
            return None
        import hashlib
        h = hashlib.md5(data).hexdigest()
        return f"3:{h[:16]}:{h[16:]}"

    _ppdeep_mod.hash = _ppdeep_hash
    sys.modules["ppdeep"] = _ppdeep_mod

# Stub mmh3 if the C extension is not available
_mmh3_existing = sys.modules.get("mmh3")
if _mmh3_existing is None or isinstance(_mmh3_existing, MagicMock):
    _mmh3_mod = types.ModuleType("mmh3")
    _mmh3_mod.__name__ = "mmh3"

    def _mmh3_hash(data, seed=0):
        """Fake MurmurHash3 — deterministic hash using built-in hashlib."""
        import hashlib
        if isinstance(data, str):
            data = data.encode("utf-8")
        seed_bytes = (seed & 0xFFFFFFFF).to_bytes(8, "little")
        h = hashlib.md5(data + seed_bytes).digest()
        return int.from_bytes(h[:4], "little", signed=True)

    _mmh3_mod.hash = _mmh3_hash
    sys.modules["mmh3"] = _mmh3_mod

# Stub tlsh if the C extension is not available
if "tlsh" not in sys.modules:
    try:
        import tlsh as _real_tlsh  # noqa: F401
    except (ImportError, ModuleNotFoundError):
        _tlsh_mock = types.ModuleType("tlsh")
        _tlsh_mock.__name__ = "tlsh"

        def _tlsh_hash(data):
            """Fake TLSH hash — returns a deterministic placeholder.

            Returns empty string for data < 50 bytes or data with very
            low entropy (e.g. repeating patterns), mimicking the real
            TLSH library's "TNULL" behaviour.
            """
            if isinstance(data, str):
                data = data.encode("utf-8")
            if len(data) < 50:
                return ""
            # Real TLSH returns "" for low-entropy input
            if len(set(data)) < 8:
                return ""
            import hashlib
            return "T1" + hashlib.sha256(data).hexdigest()[:70].upper()

        _tlsh_mock.hash = _tlsh_hash
        sys.modules["tlsh"] = _tlsh_mock

# ---------------------------------------------------------------------------
# 2. Stub redb.settings (package) so module-level code never runs
# ---------------------------------------------------------------------------
_settings_mock = MagicMock()
_settings_mock.__name__ = "redb.settings"
sys.modules["redb.settings"] = _settings_mock
sys.modules["redb.settings.elasticsearch"] = MagicMock()
sys.modules["redb.settings.clickhouse"] = MagicMock()

# ---------------------------------------------------------------------------
# 3. Replace redb.extractors with a minimal package that does NOT eagerly
#    import every extractor (and their heavy deps).  Sub-module imports
#    like ``from redb.extractors.database_exporters import ...`` still work
#    because __path__ points to the real package directory.
# ---------------------------------------------------------------------------
_repo_root = Path(__file__).resolve().parents[2]
_extractors_pkg = types.ModuleType("redb.extractors")
_extractors_pkg.__path__ = [str(_repo_root / "redb" / "extractors")]
_extractors_pkg.__package__ = "redb.extractors"
sys.modules["redb.extractors"] = _extractors_pkg

# ---------------------------------------------------------------------------
# 4. Force-import redb submodules so that @patch('redb.workers.xxx'),
#    @patch('redb.queries.xxx'), etc. can resolve at decoration time.
#    This works because all heavy deps are already stubbed above.
# ---------------------------------------------------------------------------
import redb.logging_utils   # noqa: F401, E402
import redb.s3_utils         # noqa: F401, E402
import redb.queries          # noqa: F401, E402
import redb.workers          # noqa: F401, E402
import redb.ingestor         # noqa: F401, E402