Update ooo320-m1
[ooovba.git] / autodoc / source / parser / cpp / tkp_cpp.cxx
blob91ae0037f60ed98d8cc26af0b14a5c892813e7fb
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: tkp_cpp.cxx,v $
10 * $Revision: 1.6 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #include <precomp.h>
32 #include "tkp_cpp.hxx"
34 // NOT FULLY DECLARED SERVICES
35 #include "cx_c_std.hxx"
36 #include "c_dealer.hxx"
39 namespace cpp {
44 TokenParser_Cpp::TokenParser_Cpp( DYN autodoc::TkpDocuContext & let_drDocuContext )
45 : pBaseContext( new Context_CppStd( let_drDocuContext ) ),
46 pCurContext(0),
47 pDealer(0),
48 pCharacterSource(0)
50 SetStartContext();
53 TokenParser_Cpp::~TokenParser_Cpp()
57 void
58 TokenParser_Cpp::AssignPartners( CharacterSource & io_rCharacterSource,
59 cpp::Distributor & o_rDealer )
61 pDealer = &o_rDealer;
62 pBaseContext->AssignDealer(o_rDealer);
63 pCharacterSource = &io_rCharacterSource;
66 void
67 TokenParser_Cpp::StartNewFile( const csv::ploc::Path & i_file )
69 csv_assert(pDealer != 0);
70 pDealer->StartNewFile(i_file);
72 csv_assert(pCharacterSource != 0);
73 Start(*pCharacterSource);
76 void
77 TokenParser_Cpp::SetStartContext()
79 pCurContext = pBaseContext.Ptr();
82 void
83 TokenParser_Cpp::SetCurrentContext( TkpContext & io_rContext )
85 pCurContext = &io_rContext;
88 TkpContext &
89 TokenParser_Cpp::CurrentContext()
91 return *pCurContext;
94 } // namespace cpp