Appendix : Codebase Navigation Guide
Introduction
Directory Structure
SHAMap Source Files
rippled/src/xrpld/shamap/
├── SHAMap.h # Main SHAMap class
├── SHAMapInnerNode.h # Inner node implementation
├── SHAMapLeafNode.h # Leaf node implementations
├── SHAMapNodeID.h # Node identification
├── SHAMapHash.h # Hash computation
├── SHAMapMissingNode.h # Missing node tracking
├── detail/
│ ├── SHAMap.cpp # Core algorithms
│ ├── SHAMapSync.cpp # Synchronization logic
│ └── SHAMapDelta.cpp # Tree traversalNodeStore Source Files
Integration Points
Key Classes and Their Locations
SHAMap Classes
Class
File
Purpose
NodeStore Classes
Class
File
Purpose
Navigation by Task
Understanding SHAMap Structure
Understanding Node Synchronization
Understanding NodeStore Architecture
Understanding Database Rotation
Understanding Cache Layer
Common Code Patterns
Accessing a Node in SHAMap
Storing a Node in NodeStore
Retrieving a Node
Cache Hit Path
Important Files to Read
Essential (Required Reading)
Important (Strongly Recommended)
Reference (For Deep Understanding)
Building and Exploring
Compile rippled
Navigate with IDE
Debug and Trace
Test Files
Configuration Reference
Configuration Files
Common Configuration Patterns
Quick Reference
Task
File
Function
Learning Path
Last updated

