Skip to content

Commit 4ded8e8

Browse files
hageboeckdpiparo
authored andcommitted
Add release notes for the auto registration off mode.
1 parent d980cfd commit 4ded8e8

1 file changed

Lines changed: 26 additions & 0 deletions

File tree

README/ReleaseNotes/v640/index.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -594,6 +594,32 @@ Entries within the buffer are shuffled together before batching if shuffling is
594594

595595
## Experimental features
596596

597+
### Opting out of object auto registration
598+
In preparation for ROOT 7, ROOT 6.40 introduces an experimental mode for opting out of the auto-registration of objects.
599+
In ROOT 7, this will be the default, and an opt-in will be required to make these objects auto-register themselves.
600+
The table below shows which objects currently honour this mode, and which objects are planned to be added on the path to ROOT 7.
601+
602+
The planned ROOT 7 behaviour can be enabled in one of three ways:
603+
1. `ROOT::Experimental::DisableObjectAutoRegistration()`: This disables auto registration *for the current thread*.
604+
2. Setting the environment variable `ROOT_OBJECT_AUTO_REGISTRATION=0`: This sets the default for every thread that starts.
605+
3. In `.rootrc`, set the entry `Root.ObjectAutoRegistration: 0`: This sets the default for every thread that starts.
606+
607+
**Note that method 1 affects only the current thread**, whereas methods 2 and 3 set the default for every thread that is started in this ROOT session.
608+
Using `ROOT::Experimental::EnableObjectAutoRegistration()`, the auto-registration can be enabled for a single thread without affecting the rest of the session.
609+
610+
Consult the doxygen documentation of these functions in the [ROOT::Experimental namespace](https://root.cern.ch/doc/v640/namespaceROOT_1_1Experimental.html) for details.
611+
612+
| | Honours `DisableObjectAutoRegistration()`? | Could this be disabled previously? |
613+
| --------------------- | ------------------------------------------ | ---------------------------------- |
614+
| TH1 and derived | Yes | TH1::AddDirectoryStatus() |
615+
| TGraph2D | Yes | TH1::AddDirectoryStatus() |
616+
| RooPlot | Yes | RooPlot::addDirectoryStatus() |
617+
| TEfficiency | Yes | No |
618+
| TProfile2D | Yes | TH1::AddDirectoryStatus() |
619+
| TEntryList | No, but planned for 6.42 | No |
620+
| TEventList | No, but planned for 6.42 | No |
621+
| TFunction | No, but work in progress | No |
622+
597623
## Versions of built-in packages
598624

599625
The version of the following packages has been updated:

0 commit comments

Comments
 (0)