Loading...
Searching...
No Matches
EsfJournal Class Reference

Stores a collection of edit reasons associated with scene objects. More...

#include <journal.h>

Public Member Functions

EsfJournalAdd (const SdfPath &path, EsfEditReason editReason)
 Adds or updates a new entry in the journal.
 
void Merge (const EsfJournal &other)
 Merges the entries from the other EsfJournal into this one.
 
bool operator== (const EsfJournal &other) const
 
bool operator!= (const EsfJournal &other) const
 

Iteration API

These types and methods allow EsfJournal to be used in range-based for-loops.

using value_type = _HashMap::value_type
 
using iterator = _HashMap::iterator
 
using const_iterator = _HashMap::const_iterator
 
iterator begin () &
 
iterator end () &
 
const_iterator begin () const &
 
const_iterator end () const &
 
const_iterator cbegin () const &
 
const_iterator cend () const &
 

Detailed Description

Stores a collection of edit reasons associated with scene objects.

Exec compilation uses an EsfJournal to log all scene queries performed while compiling a node or forming connections in the exec network. An instance of EsfJournal is passed to public methods of scene adapter interfaces (e.g. EsfPrimInterface::GetParent), and those methods add entries to the journal.

Given the scene adapter method calls made to produce a node in the network, the resulting journal contains all scene changes that would trigger uncompilation of that node. Likewise, when the exec compiler uses the scene adapter to identify the connections flowing into a node in the exec network, the resulting journal contains all scene changes that would trigger uncompilation of those connections.

Definition at line 37 of file journal.h.

Member Typedef Documentation

◆ const_iterator

using const_iterator = _HashMap::const_iterator

Definition at line 85 of file journal.h.

◆ iterator

using iterator = _HashMap::iterator

Definition at line 84 of file journal.h.

◆ value_type

using value_type = _HashMap::value_type

Definition at line 83 of file journal.h.

Member Function Documentation

◆ Add()

EsfJournal & Add ( const SdfPath path,
EsfEditReason  editReason 
)
inline

Adds or updates a new entry in the journal.

If a journal entry already exists for path, then its edit reasons are extended by editReason.

Returns a reference to the current journal, so multiple Add calls can be chained together.

Definition at line 50 of file journal.h.

◆ begin() [1/2]

iterator begin ( ) &
inline

Definition at line 87 of file journal.h.

◆ begin() [2/2]

const_iterator begin ( ) const &
inline

Definition at line 95 of file journal.h.

◆ cbegin()

const_iterator cbegin ( ) const &
inline

Definition at line 103 of file journal.h.

◆ cend()

const_iterator cend ( ) const &
inline

Definition at line 107 of file journal.h.

◆ end() [1/2]

iterator end ( ) &
inline

Definition at line 91 of file journal.h.

◆ end() [2/2]

const_iterator end ( ) const &
inline

Definition at line 99 of file journal.h.

◆ Merge()

void Merge ( const EsfJournal other)
inline

Merges the entries from the other EsfJournal into this one.

If this journal and other have entries for the same path, then the merged entry contains the union of both reasons.

Definition at line 62 of file journal.h.

◆ operator!=()

bool operator!= ( const EsfJournal other) const
inline

Definition at line 72 of file journal.h.

◆ operator==()

bool operator== ( const EsfJournal other) const
inline

Definition at line 68 of file journal.h.


The documentation for this class was generated from the following file: