Skip to content

[MAINTENANCE] Rename TrafficLayer to FIXS_Core and reorganize repository structure #67

@yunlishao

Description

@yunlishao

Task Summary

  1. Rename TrafficLayer.exe to FIXS_Core.exe (or FIXS.exe)
  2. Reorganize repository with proper src/ directory structure
  3. Improve overall file organization and folder hierarchy

Why is this needed?

  • TrafficLayer.exe is the core executable of the FIXS framework but the name doesn't reflect this
  • Current flat repository structure makes it difficult to navigate and understand the project layout
  • Better organization will improve maintainability and onboarding for new developers
  • Industry standard practice is to have src/, include/, tests/, docs/ structure

Scope of Work
Components involved:

  • TrafficLayer/ directory → rename to FIXS_Core/ or restructure
  • TrafficLayer.exe output name → FIXS_Core.exe or FIXS.exe
  • Update all build scripts, documentation, and references
  • Reorganize repository structure:
    • Consider src/ for source code
    • include/ or CommonLib/ for headers
    • tests/ already exists but may need reorganization
    • scripts/ for build and utility scripts
    • docs/ for documentation

Proposed Structure (to be finalized)

FIXS/
├── src/
│   ├── FIXS_Core/        (formerly TrafficLayer)
│   ├── ControlLayer/
│   ├── VehicleClient/
│   └── ...
├── include/              (formerly CommonLib headers?)
├── lib/                  (third-party libraries)
├── tests/
├── scripts/
├── docs/
└── README.md

Risks or Dependencies

  • Requires updating all build configurations (Visual Studio projects, CMake if applicable)
  • Documentation updates needed across README, setup guides, examples
  • May break existing user scripts or workflows that reference TrafficLayer.exe
  • Should coordinate with any ongoing PRs to minimize merge conflicts

Additional Context

  • Related to clean up #7 (cleanup task)
  • Should be done after version management system is in place (handled in separate PR)
  • Consider creating a migration guide for users
  • May want to keep symbolic link or alias for backward compatibility during transition period

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions