16c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen/*
26c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * Copyright (C) 2012 The Android Open Source Project
36c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen *
46c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * Licensed under the Apache License, Version 2.0 (the "License");
56c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * you may not use this file except in compliance with the License.
66c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * You may obtain a copy of the License at
76c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen *
86c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen *      http://www.apache.org/licenses/LICENSE-2.0
96c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen *
106c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * Unless required by applicable law or agreed to in writing, software
116c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * distributed under the License is distributed on an "AS IS" BASIS,
126c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
136c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * See the License for the specific language governing permissions and
146c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * limitations under the License.
156c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen */
166c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
176c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen/*
186c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * A service that exchanges time synchronization information between
196c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen * a master that defines a timeline and clients that follow the timeline.
206c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen */
216c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
226c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen#define LOG_TAG "common_time"
236c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen#include <utils/Log.h>
246c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
256c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen#include <binder/IPCThreadState.h>
266c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen#include <binder/ProcessState.h>
276c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
286c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen#include "common_time_server.h"
296c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
306c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chenint main(int argc, char *argv[]) {
316c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen    using namespace android;
326c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
336c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen    sp<CommonTimeServer> service = new CommonTimeServer();
346c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen    if (service == NULL)
356c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen        return 1;
366c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
376c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen    ProcessState::self()->startThreadPool();
386c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen    service->run("CommonTimeServer", ANDROID_PRIORITY_NORMAL);
396c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
406c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen    IPCThreadState::self()->joinThreadPool();
416c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen    return 0;
426c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen}
436c929510474caa14dc9d56826b2c65552861d6b3Mike J. Chen
44