MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / internalOpen

Method internalOpen

src/jrd/recsrc/AggregatedStream.cpp:66–86  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

64
65template <typename ThisType, typename NextType>
66void BaseAggWinStream<ThisType, NextType>::internalOpen(thread_db* tdbb) const
67{
68 Request* const request = tdbb->getRequest();
69 Impure* const impure = getImpure(request);
70
71 impure->irsb_flags = irsb_open;
72
73 impure->state = STATE_GROUPING;
74
75 VIO_record(tdbb, &request->req_rpb[m_stream], m_format, tdbb->getDefaultPool());
76
77 unsigned impureCount = m_group ? m_group->getCount() : 0;
78
79 if (!impure->groupValues && impureCount > 0)
80 {
81 impure->groupValues = FB_NEW_POOL(*tdbb->getDefaultPool()) impure_value[impureCount];
82 memset(impure->groupValues, 0, sizeof(impure_value) * impureCount);
83 }
84
85 m_next->open(tdbb);
86}
87
88template <typename ThisType, typename NextType>
89void BaseAggWinStream<ThisType, NextType>::close(thread_db* tdbb) const

Callers

nothing calls this directly

Calls 5

VIO_recordFunction · 0.85
getRequestMethod · 0.45
getDefaultPoolMethod · 0.45
getCountMethod · 0.45
openMethod · 0.45

Tested by

no test coverage detected