/**********************************************************************
// @@@ START COPYRIGHT @@@
//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements.  See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership.  The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License.  You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied.  See the License for the
// specific language governing permissions and limitations
// under the License.
//
// @@@ END COPYRIGHT @@@
**********************************************************************/
#include "CmpMessage.cpp"
#include "ComKeyMDAM.cpp"
#include "ComKeyRange.cpp"
#include "ComKeySingleSubset.cpp"
#include "ComQueue.cpp"
#include "ComRCB.cpp"
#include "ComResourceInfo.cpp"
#include "ComRowHidingPred.cpp"
#include "ComTdbCompoundStmt.cpp"
#include "ComTdbControl.cpp"
#include "ComTdbDDL.cpp"
#include "ComTdbExeUtil.cpp"
#include "ComTdbDp2Insert.cpp"
#include "ComTdbDp2Oper.cpp"
#include "ComTdbDp2SubsOper.cpp"
#include "ComTdbDp2UniqueOper.cpp"
#include "ComTdbDp2UniqueLeanOper.cpp"
#include "ComTdbEidRoot.cpp"
#include "ComTdbExplain.cpp"
#include "ComTdbFirstN.cpp"
#include "ComTdbHashGrby.cpp"
#include "ComTdbHashj.cpp"
#include "ComTdbInterpretAsRow.cpp"
#include "ComTdbLock.cpp"
#include "ComTdbMj.cpp"
#include "ComTdbOnlj.cpp"
#include "ComTdbPackRows.cpp"
#include "ComTdbPartnAccess.cpp"
#include "ComTdbProbeCache.cpp"
#include "ComTdbRoot.cpp"
#include "ComTdbSample.cpp"
#include "ComTdbSendBottom.cpp"
#include "ComTdbSendTop.cpp"
#include "ComTdbSequence.cpp"
#include "ComTdbSort.cpp"
#include "ComTdbSortGrby.cpp"
#include "ComTdbSplitBottom.cpp"
#include "ComTdbSplitTop.cpp"
#include "ComTdbStats.cpp"
#include "ComTdbStoredProc.cpp"
#include "ComTdbTimeout.cpp"
#include "ComTdbTransaction.cpp"
#include "ComTdbTranspose.cpp"
#include "ComTdbTuple.cpp"
#include "ComTdbTupleFlow.cpp"
#include "ComTdbUnion.cpp"
#include "ComTdbUnPackRows.cpp"
#include "ExplainTuple.cpp"
#include "FragDir.cpp"
#include "FragmentDir.cpp"
#include "LateBindInfo.cpp"
#include "NAExecTrans.cpp"
#include "PartInputDataDesc.cpp"
#include "SqlSessionData.cpp"
#include "ComTdbUdr.cpp"
#include "UdrFormalParamInfo.cpp"
#include "udrtabledescinfo.cpp"
#include "ComExtractInfo.cpp"
#include "ComTrace.cpp"
#include "ComTdbCancel.cpp"
#include "ComTdbBlockingHdfsScan.cpp"

