---
Language:        Cpp
AccessModifierOffset: -4
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: true
AlignConsecutiveDeclarations: true
AlignEscapedNewlinesLeft: true
AlignOperands:   true
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: true
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: Inline
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: true
BinPackArguments: false
BinPackParameters: false
BraceWrapping:
  AfterClass:      true
  AfterControlStatement: true
  AfterEnum:       true
  AfterFunction:   true
  AfterNamespace:  true
  AfterObjCDeclaration: true
  AfterStruct:     true
  AfterUnion:      true
  BeforeCatch:     true
  BeforeElse:      true
  IndentBraces:    false
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeBraces: Allman
BreakBeforeTernaryOperators: true
BreakConstructorInitializers: AfterColon
BreakAfterJavaFieldAnnotations: false
BreakInheritanceList: AfterColon
BreakStringLiterals: true
ColumnLimit:     100
CommentPragmas:  '^ IWYU pragma:|NOLINT'
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 8
Cpp11BracedListStyle: false
DerivePointerAlignment: false
DisableFormat:   false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:   [ foreach, Q_FOREACH, BOOST_FOREACH ]
IncludeBlocks: Regroup
IncludeCategories:
  # Make sure gmxpre.h goes first.
  - Regex:           'gmxpre.h'
    Priority:        -1
  # config.h goes immediately after the main header.
  - Regex:           'config.h'
    Priority:        1
  # Group deprecated C compatibility headers.
  - Regex:           '^<[^/]*\.h>'
    Priority:        2
  # Group C compatibility headers.
  - Regex:           '^<c(assert|ctype|errno|fenv|float|inttypes|limits|locale|math|setjmp|signal|stdarg|stddef|stdint|stdio|stdlib|string|time|uchar|wchar|wctype)>'
    Priority:        3
  # Get remaining C++ headers, as best we can tell.
  - Regex:           '^<[^/]*>'
    Priority:        4
  # Get any other headers included from the system.
  - Regex:           '^<.*>'
    Priority:        5
  # Group headers by API level.
  # Non-private gromacs headers.
  - Regex:           'gromacs/.*'
    Priority:        20
  - Regex:           'testutils/.*'
    Priority:        30
  - Regex:           'programs/.*'
    Priority:        40
  - Regex:           'gmxapi/.*'
    Priority:        50
  - Regex:           'nblib/.*'
    Priority:        60
  # Try to match external headers by looking for paths not yet matched,
  # but insert before recognized paths.
  - Regex:           '.*/.*'
    Priority:        10
  # Private headers. Unfortunately, also matches headers without subdirectories or angle-brackets.
  - Regex:           '.*'
    Priority:        100
IncludeIsMainRegex: '(([-_](test|tests|unittest))?([-_][0-9]+)*)$'
IncludeIsMainSourceRegex: '(\.cu)$'
IndentPPDirectives: AfterHash
IndentCaseLabels: true
IndentWidth:     4
IndentWrappedFunctionNames: false
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
MacroBlockBegin: ''
MacroBlockEnd:   ''
MaxEmptyLinesToKeep: 2
NamespaceIndentation: None
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: false
PenaltyBreakBeforeFirstCallParameter: 1
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyExcessCharacter: 2
PenaltyReturnTypeOnItsOwnLine: 100
PointerAlignment: Left
ReflowComments:  true
SortIncludes:    true
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles:  false
SpaceAfterTemplateKeyword: false
SpacesInContainerLiterals: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard:        Cpp11
TabWidth:        8
UseTab:          Never
...
